{
  "openapi": "3.0.3",
  "info": {
    "version": "29.1.1",
    "title": "Electrum Regulated Payments Partner API",
    "description": "The Electrum Regulated Payments API is an asynchronous API that allows partners to participate in various nationally\nregulated payment schemes.\n\nAs the Regulated Payments API is asynchronous, partners have a choice of how to integrate with Electrum:\n- Webhooks: Electrum will send events to the partner containing inbound payments to action, or responses to\n  outbound payment requests. Webhooks are defined in the _Electrum Regulated Payments Partner API_.\n- Partner API: Electrum will call operations exposed by the partner containing inbound payments to action, or responses to\n  outbound payment requests. The operations are defined in _this_ document.\n\nReceiving transactional events via webhooks or API are equivalent, except that it may be more familiar or convenient\nto implement one style or the other.\n\nThis document describes the operations a _partner_ must implement for _Electrum_ to consume in order to complete\nthe integration with the Electrum Regulated Payments API.\n",
    "contact": {
      "name": "Electrum Support",
      "email": "support@electrum.co.za",
      "url": "https://electrum.co.za"
    },
    "x-logo": {
      "url": "https://electrumpayments.github.io/qr-payment-service-interface-docs/images/logo-small.png"
    }
  },
  "servers": [
    {
      "url": "https://example.com/path/payments/partner-api/v1",
      "description": "Partner API sandbox"
    }
  ],
  "tags": [
    {
      "name": "transactional",
      "description": "Operations that participate in transaction processing, which may or may not have financial impact."
    },
    {
      "name": "financial",
      "description": "Operations that participate in transaction processing and have financial impact."
    },
    {
      "name": "credit-transfer",
      "description": "Operations related to credit transfer transactions."
    },
    {
      "name": "direct-debit",
      "description": "Operations related to direct debit transactions."
    },
    {
      "name": "payment-return",
      "description": "Operations related to payment returns."
    },
    {
      "name": "identifier-determination",
      "description": "Operations used to retrieve additional information related to an identifier"
    },
    {
      "name": "funds-management",
      "description": "Operations related to the management of funds, including reservations, postings, and voiding of reservations."
    },
    {
      "name": "risk-assessment",
      "description": "Operations related to the assessment and identification of risk in transactions."
    },
    {
      "name": "fraud-assessment",
      "description": "Operations related to the processing of fraud assessments for payment transactions."
    },
    {
      "name": "account-management",
      "description": "Operations that involve customer account information."
    },
    {
      "name": "sanctions-assessment",
      "description": "Operations related to the processing of sanctions assessment for payment transactions."
    },
    {
      "name": "mandate-management",
      "description": "Operations related to the lifecycle management of direct debit mandates."
    }
  ],
  "paths": {
    "/health": {
      "get": {
        "summary": "Do a system health check",
        "tags": [
          "operational"
        ],
        "description": "This **synchronous** operation reports on the overall health of the system and is called by Electrum periodically\nto ascertain the partner systems overall health.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✓\nZA_AC  | ✓\nZA_AVS | ✓\nZA_CDV | ✓\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "partnerHealthCheck",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK. [RFC9110 - 200](https://www.rfc-editor.org/rfc/rfc9110#name-200-ok)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HealthReport"
                },
                "examples": {
                  "Healthy": {
                    "$ref": "#/components/examples/Healthy"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)"
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)"
          }
        }
      }
    },
    "/transactions/outbound/direct-debit-response": {
      "post": {
        "summary": "Receive the response to an outbound customer direct debit request",
        "tags": [
          "direct-debit",
          "financial",
          "transactional"
        ],
        "description": "This operation is **asynchronous**. It starts with the [outboundDirectDebit operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/direct-debit/outbounddirectdebit).\n\nInvoked when a response to an outbound FI-to-FI-customer direct debit is available. The response will indicate the success\nor failure of the outbound direct debit.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "outboundDirectDebitResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentStatusReport"
              },
              "examples": {
                "EFT_APPROVED": {
                  "$ref": "#/components/examples/PaymentStatusReportApprovedEFT"
                },
                "AC_APPROVED": {
                  "$ref": "#/components/examples/PaymentStatusReportApprovedAC"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/credit-transfer-response": {
      "post": {
        "summary": "Receive the response to an outbound customer credit transfer request",
        "tags": [
          "credit-transfer",
          "financial",
          "transactional"
        ],
        "description": "This operation is **asynchronous**. It starts with the [outboundCreditTransfer operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/credit-transfer/outboundcredittransfer).\n\nInvoked when a response to an outbound FI-to-FI-customer credit transfer is available. The response will indicate the success\nor failure of the outbound credit transfer.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✓\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "outboundCreditTransferResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentStatusReport"
              },
              "examples": {
                "RTC_APPROVED": {
                  "$ref": "#/components/examples/PaymentStatusReportInboundRtcApproved"
                },
                "EFT_APPROVED": {
                  "$ref": "#/components/examples/PaymentStatusReportApprovedEFT"
                },
                "CBPR": {
                  "$ref": "#/components/examples/PaymentStatusReportPendingCBPRFiToFiCustomer"
                },
                "TCIB": {
                  "$ref": "#/components/examples/TCIBOutboundPaymentStatusReport"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/fi-to-fi-credit-transfer-response": {
      "post": {
        "summary": "Receive the response to an outbound FI-to-FI credit transfer request",
        "tags": [
          "credit-transfer",
          "financial",
          "transactional"
        ],
        "description": "This operation is **asynchronous**. It starts with the [outboundFiToFiCreditTransfer](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/credit-transfer/outboundfitoficredittransfer)\noperation or [getOutboundCreditTransferStatus](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/credit-transfer/getoutboundcredittransferstatus)\noperation.\n\nInvoked when a response to an outbound FI-to-FI credit transfer is available. The response will indicate the \nsuccess or failure of the outbound credit transfer.\n\nSee the [outboundCreditTransferResponse](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-partner-redoc/credit-transfer/outboundcredittransferresponse)\noperation for responses to outbound FI-to-FI-customer credit transfers.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "outboundFiToFiCreditTransferResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FiToFiPaymentStatusReport"
              },
              "examples": {
                "CBPR_PENDING": {
                  "$ref": "#/components/examples/FiToFiPaymentStatusReportPendingCBPR"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/bulk/credit-transfer-response": {
      "post": {
        "summary": "Receive the response to an outbound bulk credit transfer request",
        "tags": [
          "credit-transfer",
          "financial",
          "transactional",
          "bulk"
        ],
        "description": "This operation is **asynchronous**. It starts with the [outboundBulkCreditTransfer operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/bulk/outboundbulkcredittransfer).\n\nInvoked when a response to an outbound bulk credit transfer is available. The response will indicate the success\nor failure of the outbound bulk credit transfer.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "outboundBulkCreditTransferResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentInitiationStatusReport"
              },
              "examples": {
                "RPP_COMPLETED": {
                  "$ref": "#/components/examples/PaymentInitiationStatusReportCompletedRPP"
                },
                "PARTIALLY_APPROVED": {
                  "$ref": "#/components/examples/PaymentInitiationStatusReportPartiallyApprovedRPP"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/credit-transfer": {
      "post": {
        "tags": [
          "credit-transfer",
          "transactional"
        ],
        "summary": "Perform an inbound customer credit transfer",
        "description": "This operation is **asynchronous**. It is responded to by invoking the [inboundCreditTransferResponse](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/credit-transfer/inboundcredittransferresponse) operation.\n\nThe inbound customer credit transfer operation is called when a credit transfer to one of your account holders is\nreceived. This event must be followed by a call to the `inboundCreditTransferResponse` operation to indicate whether the\ncredit payment was actioned or not. Note that the payment is expected to have immediate financial impact if\napproved; there is no completion leg such as for credit transfers carried out via the\n`inboundCreditTransferAuthorisation` operation.\n\nThis operation must be idempotent, i.e., no action should be taken if the operation is received more than once\nwith an identical request body. This allows Electrum to retry the request if the initial request fails.\nAn identical HTTP response is expected to be returned for each retry.\n\nNote:\n| This operation differs from the `inboundCreditTransferAuthorisation` operation as this operation has immediate\n| financial impact and does not include a completion leg.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✓\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "inboundCreditTransfer",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreditTransfer"
              },
              "examples": {
                "EFT": {
                  "$ref": "#/components/examples/InboundCreditTransferEFT"
                },
                "TCIB": {
                  "$ref": "#/components/examples/TCIBInboundCreditTransfer"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/credit-transfer-authorisation": {
      "post": {
        "tags": [
          "credit-transfer",
          "transactional"
        ],
        "summary": "Authorise an inbound customer credit transfer",
        "description": "This operation is **asynchronous**. It is responded to by invoking the [inboundCreditTransferAuthorisationResponse](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/credit-transfer/inboundcredittransferauthorisationresponse) operation.\n\nThe inbound customer credit transfer authorisation operation is called when a payment authorisation to one of your\naccount holders is received. This event must be followed by a call to the `inboundCreditTransferAuthorisationResponse`\noperation to indicate whether the payment will be allowed or not. No funds should be credited at this point;\nonly if a subsequent `onInboundCreditTransferCompletion` operation is invoked should funds be credited.\nNote, though, that a completion containing successful response code (e.g. `ACCP`) may not be rejected if the authorisation was\napproved. Any completions that cannot be applied should be treated as exception cases that require manual\nintervention by your operational teams.\n\nNote:\n| This operation differs from the `inboundCreditTransfer` operation which has immediate financial impact and\n| does not include a completion leg. Typically, `inboundCreditTransfer` is used for delayed payments while\n| `inboundCreditTransferAuthorisation` is used for immediate payments.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "inboundCreditTransferAuthorisation",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreditTransfer"
              },
              "examples": {
                "RTC": {
                  "$ref": "#/components/examples/CreditTransferInboundAuthRtc"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/credit-transfer-authorisation-sync": {
      "post": {
        "tags": [
          "credit-transfer",
          "transactional"
        ],
        "summary": "Authorise an inbound customer credit transfer synchronously",
        "description": "This operation is **synchronous**.\n\nThe inbound synchronous credit transfer authorisation operation is called when a payment authorisation to one of\nyour account holders is received and should be accompanied by a response to approve or decline the authorisation\nrequest. No funds should be credited at this point; only if a successful subsequent\n`onInboundCreditTransferCompletion` operation is invoked should funds be credited. Note, though, that a completion\ncontaining a successful response code (e.g. `ACCP`) cannot be rejected if the authorisation was approved. Any completions that\ncannot be applied should be treated as exception cases that require manual intervention by your operational\nteams.\n\nNote:\n| This operation differs from the `inboundCreditTransfer` operation which has immediate financial impact and\n| does not include a completion leg. Typically, `inboundCreditTransfer` is used for delayed payments while\n| `inboundSynchronousCreditTransferAuthorisation` is used for immediate payments.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "inboundSynchronousCreditTransferAuthorisation",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreditTransfer"
              },
              "examples": {
                "RTC": {
                  "$ref": "#/components/examples/CreditTransferInboundAuthRtc"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK. [RFC9110 - 200](https://www.rfc-editor.org/rfc/rfc9110#name-200-ok)\n\nNote that a response containing a 200 (OK) HTTP status does not necessarily mean that the response contains\na positive outcome but rather that the Partner successfully processed the request and is providing a\nresponse. The *functional* outcome might still be a negative one. In the event that the Partner encounters a\n*technical* error when processing a synchronous credit transfer authorisation request, the appropriate 4xx\nor 5xx response should be used.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentStatusReport"
                },
                "examples": {
                  "RTC_APPROVED": {
                    "$ref": "#/components/examples/PaymentStatusReportInboundRtcApproved"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/credit-transfer-completion": {
      "post": {
        "tags": [
          "credit-transfer",
          "transactional"
        ],
        "summary": "Complete an inbound customer credit transfer",
        "description": "This operation is invoked to complete a successful inbound customer credit transfer that was authorized\nby an earlier call to the [inboundCreditTransferAuthorisation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-partner-redoc/credit-transfer/inboundcredittransferauthorisation) operation.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "inboundCreditTransferCompletion",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentStatusReport"
              },
              "examples": {
                "RTC_APPROVED": {
                  "$ref": "#/components/examples/PaymentStatusReportSuccessExample"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "404": {
            "description": "Not Found. [RFC9110 - 404](https://www.rfc-editor.org/rfc/rfc9110#name-404-not-found)\n\nIndicates that the associated transaction cannot be found.\n"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/direct-debit": {
      "post": {
        "tags": [
          "financial",
          "direct-debit",
          "transactional"
        ],
        "summary": "Perform an inbound customer direct debit",
        "description": "This operation is **asynchronous**. It is responded to by the [inboundDirectDebitResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/direct-debit/inbounddirectdebitresponse).\n\nThe inbound customer direct debit operation is called when a direct debit against one of your accounts is received. This\nmust be followed by a call to the `inboundDirectDebitResponse` operation to indicate whether the debit payment was\nactioned or not. Note that the payment is expected to have immediate financial impact if approved; there is no\ncompletion leg.\n\nThis operation must be idempotent, i.e., no action should be taken if the operation is received more than once\nwith an identical request body. This allows Electrum to retry the request if the initial request fails.\nAn identical HTTP response is expected to be returned for each retry.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "inboundDirectDebit",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DirectDebit"
              },
              "examples": {
                "EFT": {
                  "$ref": "#/components/examples/InboundDirectDebitEFT"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/payment-return": {
      "post": {
        "tags": [
          "payment-return",
          "transactional"
        ],
        "summary": "Receive the return for an earlier outbound customer direct debit or outbound customer credit transfer",
        "description": "This operation is **asynchronous**. It is responded to with the [inboundPaymentReturnResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/payment-return/inboundpaymentreturnresponse).\n\nInvoked when an inbound return is received for an earlier outbound customer direct debit or customer credit transfer. \nThe response to this operation will indicate the success or failure of the return. Note that some payment schemes\nmay not support rejecting the return. In these cases, a rejected response will cause Electrum to flag the\ntransaction as broken.\n\nThe return is expected to have immediate financial impact if approved; there is no completion leg associated\nwith this operation.\n\nThis operation must be idempotent, i.e., no action should be taken if the operation is received more than once\nwith an identical request body. This allows Electrum to retry the request if the initial request fails.\nAn identical HTTP response is expected to be returned for each retry.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✓\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "inboundPaymentReturn",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentReturn"
              },
              "examples": {
                "EFT": {
                  "$ref": "#/components/examples/PaymentReturnEFT"
                },
                "TCIB": {
                  "$ref": "#/components/examples/TCIBInboundPaymentReturn"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/payment-return-response": {
      "post": {
        "tags": [
          "payment-return",
          "transactional"
        ],
        "summary": "Receive the response to an outbound return",
        "description": "This operation is **asynchronous**. It starts with the [outboundPaymentReturn operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/payment-return/outboundpaymentreturn).\n\nInvoked when a response to an outbound payment return for an inbound customer credit transfer or inbound customer\ndirect debit is available. The response will indicate the success or failure of the return.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✓\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "outboundPaymentReturnResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentStatusReport"
              },
              "examples": {
                "EFT": {
                  "$ref": "#/components/examples/PaymentStatusReportApprovedEFT"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/request-to-pay": {
      "post": {
        "tags": [
          "request-to-pay"
        ],
        "summary": "Request a payment to an account",
        "description": "A request from an Industry Participant to credit an account held at the participant.\n\nThis request should be shown to the debtor (i.e., the partner's customer).\nAn initial [inboundRequestToPayResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/inboundrequesttopayresponse)\nmust be sent to indicate that the request to pay has been accepted by the partner\nand to confirm it will be displayed to the debtor.\n\nIf the debtor agrees, an [outboundCreditTransfer operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/credit-transfer/outboundcredittransfer)\nmay be performed to credit the account i.e. it is not necessary to send another\n[inboundRequestToPayResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/inboundrequesttopayresponse)\nto indicate that the debtor has accepted the request to pay. But if the debtor rejects the\nrequest, this must be communicated via an [inboundRequestToPayResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/inboundrequesttopayresponse).\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "inboundRequestToPay",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestToPay"
              },
              "examples": {
                "RequestToPayExact": {
                  "$ref": "#/components/examples/RequestToPayExact"
                },
                "RequestToPayAnyAmount": {
                  "$ref": "#/components/examples/RequestToPayAnyAmount"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/request-to-pay-response": {
      "post": {
        "tags": [
          "request-to-pay"
        ],
        "summary": "Response to a prior request to pay or status request",
        "description": "Communicates the status of a prior request to pay initiated by a customer of the partner.\n\nAn `outboundRequestToPayResponse` may indicate that a request to pay,\nsent to Electrum by the partner on behalf of a partner's customer, will\nbe presented to the debtor, has already been paid or has failed for some\nreason. A new unsolicited `outboundRequestToPayResponse` may be received\nfor each status update of the request to pay.\n\nIf the partner is unsure of the status of an `outboundRequestToPay`, an\n[outboundRequestToPayStatusRequest](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopaystatusrequest)\nmay be used to solicit an up-to-date `outboundRequestToPayResponse`.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "outboundRequestToPayResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestToPayResponse"
              },
              "examples": {
                "RequestToPayResponsePresented": {
                  "$ref": "#/components/examples/RequestToPayResponsePresented"
                },
                "RequestToPayResponseCancelled": {
                  "$ref": "#/components/examples/RequestToPayResponseCancelled"
                },
                "RequestToPayResponseRejected": {
                  "$ref": "#/components/examples/RequestToPayResponseRejected"
                },
                "RequestToPayResponseExpired": {
                  "$ref": "#/components/examples/RequestToPayResponseExpired"
                },
                "RequestToPayResponsePaid": {
                  "$ref": "#/components/examples/RequestToPayResponsePaid"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/request-to-pay/cancellation-request": {
      "post": {
        "tags": [
          "request-to-pay"
        ],
        "summary": "Cancel a prior request for a payment to an account",
        "description": "A request from an Industry Participant that a prior [inboundRequestToPay operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-partner-redoc/request-to-pay/inboundrequesttopay)\nshould be cancelled if it's not yet been completed. This does not\nguarantee a cancellation however as the requested payment may have\nalready been paid or rejected or expired etc. Whether the cancellation was successful or not is\ncommunicated via an [inboundRequestToPayCancellationResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/inboundrequesttopaycancellationresponse).\nIf the cancellation was successful, the status will be `CANCELLED`. Otherwise the status will\nreflect the current status of the RTP.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "inboundRequestToPayCancellationRequest",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestToPayCancellation"
              },
              "examples": {
                "RequestToPayCancellation": {
                  "$ref": "#/components/examples/RequestToPayCancellation"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/request-to-pay/cancellation-response": {
      "post": {
        "tags": [
          "request-to-pay"
        ],
        "summary": "The outcome of a prior outboundRequestToPayCancellationRequest operation",
        "description": "Communicates the outcome of a prior [outboundRequestToPayCancellationRequest operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopaycancellationrequest).\n\nAn [outboundRequestToPayCancellationRequest operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopaycancellationrequest)\nis not guaranteed to be successful. For example, if the associated [outboundRequestToPay](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopay)\nhas already been paid then it cannot be cancelled.\n\nNote too that if the associated [outboundRequestToPay](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopay)\nwas rejected or has already expired then the [outboundRequestToPayCancellationRequest operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopaycancellationrequest)\nwill be deemed to have failed despite the net result of no subsequent payment.\nThis is because the final status of the [outboundRequestToPay](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/outboundrequesttopay)\nwill be something other than a cancellation.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "outboundRequestToPayCancellationResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestToPayCancellationResponse"
              },
              "examples": {
                "RequestToPayCancellationResponseCancelled": {
                  "$ref": "#/components/examples/RequestToPayCancellationResponseCancelled"
                },
                "RequestToPayCancellationResponseAlreadyPaid": {
                  "$ref": "#/components/examples/RequestToPayCancellationResponseAlreadyPaid"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/refund-initiation-response": {
      "post": {
        "tags": [
          "refund",
          "request-to-pay"
        ],
        "summary": "The outcome of a prior outboundRefundInitiation operation",
        "description": "This operation is *asynchronous*. It starts with the [outboundRefundInitiation operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/refund/outboundrefundinitiation). \n\nInvoked when a response to the outbound refund initiation is available. The response will indicate the success or failure of the refund request. \n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "outboundRefundInitiationResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentStatusReport"
              },
              "examples": {
                "PaymentStatusReportApprovedRtpRefund": {
                  "$ref": "#/components/examples/PaymentStatusReportApprovedRtpRefund"
                },
                "PaymentStatusReportRejectedRtpRefund": {
                  "$ref": "#/components/examples/PaymentStatusReportRejectedRtpRefund"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/request-to-pay/status-request": {
      "post": {
        "tags": [
          "request-to-pay"
        ],
        "summary": "Request the latest status of a prior request to pay",
        "description": "Requests the latest status of a prior [inboundRequestToPay operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-partner-redoc/request-to-pay/inboundrequesttopay).\n\nThis operation may be called if Electrum doesn't receive an expected [inboundRequestToPayResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/inboundrequesttopayresponse)\nor if an Industry Participant is requesting the latest status and the last status\nobserved by Electrum was not a final status (i.e. it was one such as\n`ACCP`, `PDNG` or `PRES`).\n\nThe requested status is communicated via an\n[inboundRequestToPayResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/request-to-pay/inboundrequesttopayresponse).\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "inboundRequestToPayStatusRequest",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestToPayStatusRequest"
              },
              "examples": {
                "RequestToPayStatusRequest": {
                  "$ref": "#/components/examples/RequestToPayStatusRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/bulk/request-to-pay-response": {
      "post": {
        "tags": [
          "bulk",
          "request-to-pay",
          "transactional"
        ],
        "summary": "Receive the response to an outbound bulk request to pay",
        "description": "This operation is **asynchronous**. It starts with the [outboundBulkRequestToPay operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/bulk/outboundbulkrequesttopay)\nor[getOutboundBulkRequestToPayStatus operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/bulk/getoutboundbulkrequesttopaystatus).\n\nCommunicates the bulk status of a prior bulk request to pay.\n\nAn `outboundBulkRequestToPayResponse` contains the information indicating the state of the bulk as a whole and\nthe status of the individual request to pay transactions\n\nIf the partner is unsure of the status of an `outboundBulkRequestToPay`, an\n[getOutboundBulkRequestToPayStatus](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/bulk/getoutboundbulkrequesttopaystatus)\nmay be used to solicit an up-to-date `outboundBulkRequestToPayResponse`.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✓\nZA_RTC | ✗\n",
        "operationId": "outboundBulkRequestToPayResponse",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RequestToPayInitiationResponse"
              },
              "examples": {
                "RequestToPayStatusRequest": {
                  "$ref": "#/components/examples/RequestToPayInitiationResponse"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/identifiers/inbound/identifier-determination": {
      "post": {
        "tags": [
          "identifier-determination"
        ],
        "summary": "Request identifier information",
        "description": "This operation is **asynchronous**. The outcome of the request is delivered by the `inboundIdentifierDeterminationReport`\n[operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/identifier-determination/inboundidentifierdeterminationreport).\n\nThe inbound identifier determination operation can be called to resolve additional information about an identifier, for example\nto resolve a proxy.\n\nIn the context of an inbound payment, Electrum sends an identifier determination to the partner for processing.\n\nScheme | Applicable | Function Enabled\n------ | ---------- | -------------------------------------------------------------------------------------------------------------\nCBPR+  | ✗          | N/A\nTCIB   | ✗          | N/A\nZA_AC  | ✗          | N/A\nZA_AVS | ✗          | N/A\nZA_CDV | ✗          | N/A\nZA_EFT | ✗          | N/A\nZA_RMS | ✗          | N/A\nZA_RPP | ✓          | Proxy Resolution - Validate a proxy and return additional information for use in a subsequent credit transfer\nZA_RTC | ✗          | N/A\n",
        "operationId": "inboundIdentifierDetermination",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IdentifierDeterminationRequest"
              },
              "examples": {
                "ZA-RPP-Proxy-Resolution-Request": {
                  "$ref": "#/components/examples/ZaRppProxyResolutionIdentifierDeterminationRequest"
                },
                "ZA-RPP-Account-Resolution-Request": {
                  "$ref": "#/components/examples/ZaRppAccountResolutionIdentifierDeterminationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/identifiers/outbound/identifier-determination-report": {
      "post": {
        "tags": [
          "identifier-determination"
        ],
        "summary": "Deliver additional identifier information",
        "description": "This operation is **asynchronous**. It communicates the outcome of an `outboundIdentifierDetermination`\n[operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/identifier-determination/outboundidentifierdetermination).\n\nThe outbound identifier determination operation can be called to determine information related to an identifier, for example\nto resolve a proxy. This operation is the asynchronous response to that operation.\n\nIn the context of an outbound payment, Electrum sends a response to an identifier determination previously received from the partner.\n\nScheme | Applicable | Function Enabled\n------ | ---------- | -------------------------------------------------------------------------------------------------------------\nCBPR+  | ✗          | N/A\nTCIB   | ✗          | N/A\nZA_AC  | ✗          | N/A\nZA_AVS | ✗          | N/A\nZA_CDV | ✗          | N/A\nZA_EFT | ✗          | N/A\nZA_RMS | ✗          | N/A\nZA_RPP | ✓          | Proxy Resolution - Validate a proxy and return additional information for use in a subsequent credit transfer\nZA_RTC | ✗          | N/A\n",
        "operationId": "outboundIdentifierDeterminationReport",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IdentifierDeterminationResponse"
              },
              "examples": {
                "Successful-ZA-RPP-Proxy-Resolution-Response": {
                  "$ref": "#/components/examples/ZaRppProxyResolutionSuccessfulResponse"
                },
                "Unsuccessful-ZA-RPP-Proxy-Resolution-Response": {
                  "$ref": "#/components/examples/ZaRppProxyResolutionUnsuccessfulResponse"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/identifiers/inbound/identifier-determination-sync": {
      "post": {
        "tags": [
          "identifier-determination"
        ],
        "summary": "Request identifier information synchronously",
        "description": "This operation is **synchronous**.\n\nThe inbound identifier determination operation can be called to resolve additional information about an identifier, for example\nto resolve a proxy.\n\nIn the context of an inbound payment, Electrum sends an identifier determination to the partner for processing.\n\nScheme | Applicable | Function Enabled\n------ | ---------- | -------------------------------------------------------------------------------------------------------------\nCBPR+  | ✗          | N/A\nTCIB   | ✗          | N/A\nZA_AC  | ✗          | N/A\nZA_AVS | ✗          | N/A\nZA_CDV | ✗          | N/A\nZA_EFT | ✗          | N/A\nZA_RMS | ✗          | N/A\nZA_RPP | ✓          | Proxy Resolution - Validate a proxy and return additional information for use in a subsequent credit transfer\nZA_RTC | ✗          | N/A\n",
        "operationId": "inboundSynchronousIdentifierDetermination",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IdentifierDeterminationRequest"
              },
              "examples": {
                "ZA-RPP-Proxy-Resolution-Request": {
                  "$ref": "#/components/examples/ZaRppProxyResolutionIdentifierDeterminationRequest"
                },
                "ZA-RPP-Account-Resolution-Request": {
                  "$ref": "#/components/examples/ZaRppAccountResolutionIdentifierDeterminationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK. [RFC9110 - 200](https://www.rfc-editor.org/rfc/rfc9110#name-200-ok)\n\nNote that a response containing a 200 (OK) HTTP status does not necessarily mean that the response contains a positive outcome but rather that the Partner successfully processed the request and is providing a response. The *functional* outcome might still be a negative one (e.g. the identifier was not found). In the event that the partner encounters a *technical* error when processing a synchronous identifier determination request, the appropriate 4xx or 5xx response should be used.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdentifierDeterminationResponse"
                },
                "examples": {
                  "Successful-ZA-RPP-Proxy-Resolution-Response": {
                    "$ref": "#/components/examples/ZaRppProxyResolutionSuccessfulResponse"
                  },
                  "Unsuccessful-ZA-RPP-Proxy-Resolution-Response": {
                    "$ref": "#/components/examples/ZaRppProxyResolutionUnsuccessfulResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "409": {
            "description": "Conflict. [RFC9110 - 409](https://www.rfc-editor.org/rfc/rfc9110#name-409-conflict)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/accounts/inbound/account-verification": {
      "post": {
        "tags": [
          "account-verification"
        ],
        "summary": "Verify account information",
        "description": "This operation is **asynchronous**. The outcome of the request is delivered by the `inboundAccountVerificationReport`\n[operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/account-verification/inboundaccountverificationreport).\n\nThe outbound account verification operation can be called to verify whether information held by the caller regarding\nan account (store of value) is valid.\n\nIn the context of payments, this operation is often used prior to making payment, or loading a beneficiary to\na banking profile.\n\nScheme | Applicable | Function Enabled\n------ | ---------- | -----------------------------\nCBPR+  | ✗          | N/A\nTCIB   | ✗          | N/A\nZA_AC  | ✗          | N/A\nZA_AVS | ✓          | Verifying account information\nZA_CDV | ✗          | N/A\nZA_EFT | ✗          | N/A\nZA_RMS | ✗          | N/A\nZA_RPP | ✗          | N/A\nZA_RTC | ✗          | N/A\n",
        "operationId": "inboundAccountVerification",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountVerificationRequest"
              },
              "examples": {
                "ZA-Account-Verification-Request": {
                  "$ref": "#/components/examples/ZaAccountVerificationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/accounts/outbound/account-verification-report": {
      "post": {
        "tags": [
          "account-verification"
        ],
        "summary": "Deliver account verification outcome",
        "description": "This operation is **asynchronous**. It communicates the outcome of an `outboundAccountVerification`\n[operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/account-verification/outboundaccountverification).\n\nThe outbound account verification report operation can be called to deliver the outcome of a previously requested\naccount verification request.\n\nScheme | Applicable | Function Enabled\n------ | ---------- | -----------------------------\nCBPR+  | ✗          | N/A\nTCIB   | ✗          | N/A\nZA_AC  | ✗          | N/A\nZA_AVS | ✓          | Verifying account information\nZA_CDV | ✗          | N/A\nZA_EFT | ✗          | N/A\nZA_RMS | ✗          | N/A\nZA_RPP | ✗          | N/A\nZA_RTC | ✗          | N/A\n",
        "operationId": "outboundAccountVerificationReport",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountVerificationResponse"
              },
              "examples": {
                "ZA-Account-Verification-Response": {
                  "$ref": "#/components/examples/ZaAccountVerificationResponse"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/funds-management/reservation": {
      "post": {
        "tags": [
          "funds-management"
        ],
        "summary": "Perform a reservation of funds on an account",
        "description": "This operation is **asynchronous**. It is responded to by the [createReservationResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/funds-management/createreservationresponse).\n\nThe create reservation operation is invoked by Electrum to request that funds be reserved against an account \nbefore a payment instruction is processed further.\n\nFunds reservations are scheme agnostic and may be used in conjunction with any scheme.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "createReservation",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReservationRequest"
              },
              "examples": {
                "CreateReservation": {
                  "$ref": "#/components/examples/ReservationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/funds-management/reservation/void": {
      "post": {
        "tags": [
          "funds-management"
        ],
        "summary": "Void a reservation of funds",
        "description": "This operation is **asynchronous**. It is responded to by the [voidReservationResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/funds-management/voidreservationresponse).\nA previous reservation should exist for this to be successful [createReservation operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-partner-redoc/funds-management/createreservation).\n\nThe void reservation operation is invoked by Electrum to request that a previous funds reservation against an\naccount be released, making the funds available once more.\n\nFunds reservations are scheme agnostic and may be used in conjunction with any scheme.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "voidReservation",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VoidReservationRequest"
              },
              "examples": {
                "VoidReservation": {
                  "$ref": "#/components/examples/VoidReservationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/funds-management/posting": {
      "post": {
        "tags": [
          "funds-management"
        ],
        "summary": "Perform a posting to an account",
        "description": "This operation is **asynchronous**. It is responded to by the [createPostingResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/funds-management/createpostingresponse).\n\nThe create posting operation is invoked by Electrum in order for a posting be made against the relevant account\nto reflect the movement of funds in relation to a payment that has been processed.\n\nPostings are scheme agnostic and may be used in conjunction with any scheme.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "createPosting",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PostingRequest"
              },
              "examples": {
                "CreatePosting": {
                  "$ref": "#/components/examples/PostingRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/risk-assessment/fraud-assessment-request": {
      "post": {
        "tags": [
          "risk-assessment",
          "fraud-assessment"
        ],
        "summary": "Submit a payment message for fraud evaluation.",
        "description": "This operation is **asynchronous**, and is responded to by the [fraudAssessmentResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/risk-assessment/fraudassessmentresponse).\n\nThis operation is invoked by Electrum during transaction processing so that the transaction can be assessed for fraud risk before being processed further.\nThe result of the fraud assessment is delivered back to Electrum by invoking the `fraudAssessmentResponse` operation, whose outcome determines how\nthe transaction is handled thereafter by Electrum.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✓\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "fraudAssessment",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FraudAssessmentRequest"
              },
              "examples": {
                "FraudAssessmentRequestWithCreditTransfer": {
                  "$ref": "#/components/examples/FraudAssessmentRequestWithCreditTransfer"
                },
                "FraudAssessmentRequestWithDirectDebit": {
                  "$ref": "#/components/examples/FraudAssessmentRequestWithDirectDebit"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/risk-assessment/sanctions-assessment-request": {
      "post": {
        "tags": [
          "risk-assessment",
          "sanctions-assessment"
        ],
        "summary": "Submit a payment message for sanctions evaluation.",
        "description": "This operation is **asynchronous**, and is responded to by the [sanctionsAssessmentResponse operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/risk-assessment/sanctionsAssessmentResponse).\n\nThis operation is invoked by Electrum during transaction processing so that the transaction can be assessed for sanctions before being processed further.\nThe result of the sanctions assessment is delivered back to Electrum by invoking the `sanctionsAssessmentResponse` operation, whose outcome determines how\nthe transaction is handled thereafter by Electrum.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✓\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✓\nZA_RPP | ✓\nZA_RTC | ✓\n",
        "operationId": "sanctionsAssessment",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SanctionsAssessmentRequest"
              },
              "examples": {
                "SanctionsAssessmentRequestWithPacs008": {
                  "$ref": "#/components/examples/SanctionsAssessmentRequestWithPacs008"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/transactions/inbound/payment-cancellation": {
      "post": {
        "tags": [
          "transactional",
          "financial"
        ],
        "summary": "Receive a cancellation request for a prior payment instruction",
        "description": "This operation is invoked by Electrum to request the cancellation of a prior payment instruction such as a `direct-debit` or `credit-transfer`.\n\nThis operation is **asynchronous**. \nFor `ZA_AC` and `ZA_EFT` cancellations of type `SYSTEM_ERROR_CORRECTION_REQUEST` a successful correction should \nresult in the initiation of a financial [payment return](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/transactional/outboundpaymentreturn).\n\nOtherwise, the result of the payment cancellation is delivered back to Electrum by invoking the\n[inboundPaymentCancellationResolution operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/transactional/inboundpaymentcancellationresolution)\nwhich conveys the outcome of payment cancellation request.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✓\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "inboundPaymentCancellation",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FiToFiPaymentCancellationRequest"
              },
              "examples": {
                "FiToFiPaymentCancellationRequest": {
                  "$ref": "#/components/examples/FiToFiPaymentCancellationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/outbound/payment-cancellation-resolution": {
      "post": {
        "tags": [
          "financial",
          "transactional"
        ],
        "summary": "Receive the response to an outbound payment cancellation request",
        "description": "This operation is **asynchronous**. It starts with the [outboundPaymentCancellation operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/transactional/outboundpaymentcancellation).\n\nThis operation begins with the partner sending a request to cancel a prior payment instruction such as  a `direct-debit` or `credit-transfer`.\nElectrum will invoke this operation to deliver a `ResolutionOfInvestigation` which contains the resolution outcome of the payment cancellation request.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "outboundPaymentCancellationResolution",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResolutionOfInvestigation"
              },
              "examples": {
                "ResolutionOfInvestigation": {
                  "$ref": "#/components/examples/ResolutionOfInvestigation_PaymentCancellation"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/accounts/validate-account-payment-eligibility": {
      "post": {
        "tags": [
          "account-verification"
        ],
        "summary": "Check if an account is eligible to proceed with a payment",
        "description": "This **synchronous** operation checks if a particular customer account will be able to enact a related payment, responding with either a 'passed' or 'failed' outcome along with a reason.\nThe `accountId` is a unique identifier for the account (e.g. `GenericAccountIdentifier.value`).\nInformation about the related payment (e.g. whether it is a debit or a credit) is supplied in the request so that the appropriate validation checks can be performed.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✓\nZA_AC  | ✗\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✓\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "validateAccountPaymentEligibilityWithPOST",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountPaymentEligibilityValidationRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK. [RFC9110 - 200](https://www.rfc-editor.org/rfc/rfc9110#name-200-ok)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountPaymentEligibilityValidationResponse"
                },
                "examples": {
                  "AccountValidationResponse": {
                    "$ref": "#/components/examples/AccountPaymentEligibilityValidationResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "429": {
            "description": "Too Many Requsts. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/mandates/inbound/initiation": {
      "post": {
        "operationId": "inboundMandateInitiation",
        "tags": [
          "mandate-management"
        ],
        "summary": "Receive inbound mandate initiation request",
        "description": "This operation is **asynchronous**. The partner responds by calling the  [inboundMandateAcceptanceReport](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/inboundmandateacceptancereport) operation.\n\nReceives a mandate initiation request from Electrum when a creditor initiates a new direct debit mandate.\nThe partner should authenticate the mandate with the debtor, validate the request, and respond with the debtor's acceptance or rejection decision.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MandateInitiationRequest"
              },
              "examples": {
                "AC_MANDATE_INITIATION": {
                  "$ref": "#/components/examples/MandateInitiationRequest"
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad Request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/mandates/inbound/amendment": {
      "post": {
        "operationId": "inboundMandateAmendment",
        "tags": [
          "mandate-management"
        ],
        "summary": "Receive inbound mandate amendment request",
        "description": "This operation is **asynchronous**. The partner responds by calling the  [inboundMandateAcceptanceReport](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/inboundmandateacceptancereport) operation.\n\nReceives a mandate amendment request from Electrum when a creditor requests changes to an existing mandate.\nThe partner should authenticate the amendment with the debtor (if required by the change type), validate the technical details,\nand respond with the debtor's acceptance or rejection decision.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MandateAmendmentRequest"
              },
              "examples": {
                "AC_MANDATE_AMENDMENT": {
                  "$ref": "#/components/examples/MandateAmendmentRequest"
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad Request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/mandates/inbound/cancellation": {
      "post": {
        "operationId": "inboundMandateCancellation",
        "tags": [
          "mandate-management"
        ],
        "summary": "Receive inbound mandate cancellation request",
        "description": "This operation is **asynchronous**. The partner responds by calling the  [inboundMandateAcceptanceReport](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/inboundmandateacceptancereport) operation.\n\nReceives a mandate cancellation request from Electrum when a creditor requests termination of an existing mandate.\n\nIf the partner maintains the mandate register, the partner should validate and process the cancellation request.\nOtherwise, this operation notifies the partner of a mandate cancellation validated and processed by Electrum.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MandateCancellationRequest"
              },
              "examples": {
                "AC_MANDATE_CANCELLATION": {
                  "$ref": "#/components/examples/MandateCancellationRequest"
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad Request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/mandates/inbound/suspension": {
      "post": {
        "tags": [
          "mandate-management"
        ],
        "summary": "Receive inbound mandate suspension request",
        "description": "This operation is **asynchronous**. It is responded to by the [inboundMandateStatusReport](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/inboundmandatestatusreport) operation.\n\nReceives a mandate suspension request from Electrum when a debtor requests suspension of an existing mandate.\n\nIf the partner maintains the mandate register, the partner should validate and process the suspension request.\nOtherwise, this operation notifies the partner of a mandate suspension validated and processed by Electrum.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "inboundMandateSuspension",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MandateSuspensionRequest"
              },
              "examples": {
                "AC_MANDATE_SUSPENSION": {
                  "$ref": "#/components/examples/MandateSuspensionRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/mandates/inbound/information-request": {
      "post": {
        "tags": [
          "mandate-management"
        ],
        "summary": "Request information of an existing mandate",
        "description": "Receives a request from Electrum for Mandate Information to be retrieved in order to obtain the current status and details of a mandate from the authoritative Mandate Register.\n\nThis operation is **asynchronous**. The outcome is delivered via the \n[inboundMandateAcceptanceReport operation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-partner-redoc/mandate-management/inboundmandateacceptancereport).\n\n**Usage :**\n1. **Creditor Verify (Interbank):** Instructs Electrum to send a request to the Debtor's Bank. This is used by a Creditor to verify that the Mandate Information stored on the Debtor Bank's register matches their records.\n2. **Debtor Inquiry (Hosted Store):** Used by the Debtor Bank to retrieve mandate details from the Mandate Store to fulfill a request from the Debtor. This is only supported when Electrum hosts the Mandate Store. \n\nThe debtor and creditor may be at the same bank.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "operationId": "inboundMandateInformationRequest",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MandateInformationRequest"
              },
              "examples": {
                "AC_MANDATE_INFORMATION_REQUEST": {
                  "$ref": "#/components/examples/MandateInformationRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/mandates/inbound/status-report": {
      "post": {
        "operationId": "inboundMandateStatusReport",
        "summary": "Receive a mandate status report relating to an inbound mandate maintenance operation",
        "tags": [
          "mandate-management"
        ],
        "description": "This operation is **asynchronous**.\n\nUse cases include:\n- Mandate maintenance rejection (e.g. validation failure)\n- Acknowledgement of Mandate Acceptance Report\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerPaymentStatusReport"
              },
              "examples": {
                "AC_MANDATE_STATUS_REPORT_PENDING": {
                  "$ref": "#/components/examples/CustomerPaymentStatusReportPending"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/mandates/outbound/status-report": {
      "post": {
        "operationId": "outboundMandateStatusReport",
        "tags": [
          "mandate-management"
        ],
        "summary": "Receive a mandate status report relating to an outbound mandate maintenance operation",
        "description": "\nThis operation is **asynchronous**.\n\nUse cases include:\n  - Mandate maintenance acknowledgment (e.g., validation passed, debtor contacted)\n  - Mandate maintenance rejection (validation failure)\n  - To indicate whether the mandate suspension was accepted or rejected i.e. it is also used to respond to the\n  [outboundMandateSuspension](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/outboundmandatesuspension) operation.\n\nInvoked to indicate whether the mandate suspension was accepted or rejected.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerPaymentStatusReport"
              },
              "examples": {
                "AC_MANDATE_STATUS_REPORT_PENDING": {
                  "$ref": "#/components/examples/CustomerPaymentStatusReportPending"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "422": {
            "description": "Unprocessable content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/mandates/outbound/acceptance-report": {
      "post": {
        "operationId": "outboundMandateAcceptanceReport",
        "tags": [
          "mandate-management"
        ],
        "summary": "Receive mandate acceptance report for an outbound initiated, amended, or cancelled mandate",
        "description": "This operation is **asynchronous**. It is the response to:\n- [outboundMandateInitiation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/outboundmandateinitiation)\n- [outboundMandateAmendment](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/outboundmandateamendment)\n- [outboundMandateCancellation](https://docs.electrumsoftware.com/openapi/elpapi-cicd/elpapi-redoc/mandate-management/outboundmandatecancellation)\n\nReceives the debtor's acceptance or rejection of a mandate request from Electrum after authentication and validation.\nThe `originalMessageIdentification` field in the payload indicates which operation this is responding to.\n\nScheme | Applicable\n------ | ----------\nCBPR+  | ✗\nTCIB   | ✗\nZA_AC  | ✓\nZA_AVS | ✗\nZA_CDV | ✗\nZA_EFT | ✗\nZA_RMS | ✗\nZA_RPP | ✗\nZA_RTC | ✗\n",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MandateAcceptanceReport"
              },
              "examples": {
                "AC_MANDATE_ACCEPTANCE_REPORT": {
                  "$ref": "#/components/examples/MandateAcceptanceReport"
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted. [RFC9110 - 202](https://www.rfc-editor.org/rfc/rfc9110#name-202-accepted)"
          },
          "400": {
            "description": "Bad Request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content. [RFC9110 - 422](https://www.rfc-editor.org/rfc/rfc9110#name-422-unprocessable-content)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          }
        }
      }
    },
    "/accounts/get": {
      "post": {
        "tags": [
          "account-management"
        ],
        "summary": "Retrieve a customer account record",
        "description": "This **synchronous** operation retrieves the details of all accounts given an `accountId` when using an external\nendpoint to request customer account details.\nThe `accountId` is one of the unique identifiers for an account (e.g. `GenericAccountIdentifier.value` or\n`MobileNumberIdentifier.value`).\n",
        "operationId": "getCustomerAccountWithPOST",
        "parameters": [
          {
            "in": "header",
            "name": "traceparent",
            "schema": {
              "$ref": "#/components/schemas/traceparent"
            }
          },
          {
            "in": "header",
            "name": "tracestate",
            "schema": {
              "$ref": "#/components/schemas/tracestate"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountIdentifier"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK. [RFC9110 - 200](https://www.rfc-editor.org/rfc/rfc9110#name-200-ok)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountLookupResponse"
                },
                "examples": {
                  "AccountLookupResponse": {
                    "$ref": "#/components/examples/AccountLookupResponseExample"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request. [RFC9110 - 400](https://www.rfc-editor.org/rfc/rfc9110#name-400-bad-request)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. [RFC9110 - 401](https://www.rfc-editor.org/rfc/rfc9110#name-401-unauthorized)"
          },
          "403": {
            "description": "Forbidden. [RFC9110 - 403](https://www.rfc-editor.org/rfc/rfc9110#name-403-forbidden)"
          },
          "404": {
            "description": "Not Found. [RFC9110 - 404](https://www.rfc-editor.org/rfc/rfc9110#name-404-not-found)\n\nIndicates that the associated account cannot be found.\n"
          },
          "405": {
            "description": "Method not allowed. [RFC9110 - 405](https://www.rfc-editor.org/rfc/rfc9110#name-405-method-not-allowed)"
          },
          "429": {
            "description": "Too Many Requests. [RFC6585 - 429](https://www.rfc-editor.org/rfc/rfc6585.html#section-4)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. [RFC9110 - 500](https://www.rfc-editor.org/rfc/rfc9110#name-500-internal-server-error)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service unavailable. [RFC9110 - 503](https://www.rfc-editor.org/rfc/rfc9110#name-503-service-unavailable)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetail"
                },
                "examples": {
                  "ServerError": {
                    "$ref": "#/components/examples/ErrorDetailServerError"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "traceparent": {
        "description": "A value used to trace an HTTP message within an Electrum Regulated Payments implementation.\nThis field must be set as per the `traceparent` element defined in the [W3C Trace Context Level 2\nspecification](https://www.w3.org/TR/trace-context-2).\n",
        "pattern": "^[A-Fa-f0-9]{2}\\-[A-Fa-f0-9]{32}\\-[A-Fa-f0-9]{16}\\-[A-Fa-f0-9]{2}$",
        "type": "string"
      },
      "tracestate": {
        "description": "A value used to provide context to an HTTP message as it is traced within an Electrum Regulated\nPayments implementation. This field must be set as per the `tracestate` element defined in the\n[W3C Trace Context Level 2 specification](https://www.w3.org/TR/trace-context-2).\n",
        "pattern": "^[A-Za-z0-9=, _\\*/@]{0,1024}$",
        "type": "string"
      },
      "HealthDetail": {
        "properties": {
          "component": {
            "description": "The name of the component reporting",
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "component",
          "message"
        ],
        "type": "object"
      },
      "HealthReport": {
        "properties": {
          "detail": {
            "items": {
              "$ref": "#/components/schemas/HealthDetail"
            },
            "type": "array"
          },
          "status": {
            "description": "* `PASS`: The service is healthy\n* `FAIL`: The service is unhealthy\n* `WARN`: The service is healthy with some concerns\n",
            "enum": [
              "PASS",
              "FAIL",
              "WARN"
            ],
            "type": "string"
          },
          "version": {
            "description": "The version of the service",
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "MessageIdentifiers": {
        "description": "Holds a point-to-point unique message identification string as well as a message's creation date time.\n",
        "properties": {
          "creationDateTime": {
            "description": "The date and time at which the message was created, in senders local timezone or UTC.\nThe date *must* be formatted as defined by `date-time` in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\n",
            "format": "date-time",
            "type": "string"
          },
          "messageIdentification": {
            "description": "A reference used to unambiguously identify the message between the sending and receiving party.\nTake note that this uniquely identifies a single message in a potentially multi-message exchange to complete a payment.\n",
            "maxLength": 35,
            "type": "string"
          }
        },
        "required": [
          "messageIdentification",
          "creationDateTime"
        ],
        "type": "object"
      },
      "SupplementaryData": {
        "additionalProperties": {
          "type": "string"
        },
        "description": "A list of key-value pairs to support adding any supplementary/additional data to an Electrum Regulated Payments API message.\n",
        "type": "object"
      },
      "BaseMessage": {
        "description": "A model containing the foundational elements shared across messages and generally expected in a message used\nduring processing with the Electrum Regulated Payments API.\n",
        "properties": {
          "messageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "supplementaryData": {
            "$ref": "#/components/schemas/SupplementaryData"
          }
        },
        "required": [
          "messageIdentifiers"
        ],
        "type": "object"
      },
      "BaseResponseMessage": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "An extension of `BaseMessage` which includes additional information pertinent to an asynchronous response\nmessage. In particular, original message identifiers.\n",
            "properties": {
              "originalMessageIdentifiers": {
                "$ref": "#/components/schemas/MessageIdentifiers"
              }
            },
            "required": [
              "originalMessageIdentifiers"
            ],
            "type": "object"
          }
        ]
      },
      "TransactionIdentifiers": {
        "description": "Holds a series of identifiers to identify the transaction or an individual message that is part of a transaction.\n",
        "properties": {
          "endToEndIdentification": {
            "description": "Unique identification, as assigned by the initiating party, to unambiguously identify the\ntransaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.\nNote: this is distinct from the UETR.\n",
            "maxLength": 35,
            "type": "string"
          },
          "instructionIdentification": {
            "description": "Unique identification, as assigned by an instructing party for an instructed party, to\nunambiguously identify the instruction. The instruction identification is a point to point\nreference that can be used between the instructing party and the instructed party to refer\nto the individual instruction. It can be included in several messages related to the instruction.\n",
            "maxLength": 35,
            "type": "string"
          },
          "transactionIdentification": {
            "description": "Unique identification, as assigned by the first instructing agent, to unambiguously identify the\ntransaction that is passed on, unchanged, throughout the entire interbank chain.\nUsage: The transaction identification can be used for reconciliation, tracking or to link tasks relating to the transaction on the interbank level.\nUsage: The instructing agent has to make sure that the transaction identification is unique for a pre-agreed period.\n",
            "maxLength": 35,
            "type": "string"
          },
          "uetr": {
            "description": "Universally unique identifier to provide an end-to-end reference of a payment transaction.\nThis identifier remains the same for all messages related to the same transaction.\n",
            "format": "UUID",
            "type": "string"
          }
        },
        "required": [
          "endToEndIdentification",
          "uetr"
        ],
        "type": "object"
      },
      "BaseTransactionResponseMessage": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "description": "An extension of `BaseTransactionMessage` which includes additional information pertinent to an asynchronous\nresponse message. In particular, original message identifiers.\n",
            "properties": {
              "transactionIdentifiers": {
                "$ref": "#/components/schemas/TransactionIdentifiers"
              }
            },
            "required": [
              "transactionIdentifiers"
            ],
            "type": "object"
          }
        ]
      },
      "CustomIdentifier": {
        "allOf": [
          {
            "$ref": "#/components/schemas/NonBankingIdentifier"
          },
          {
            "properties": {
              "value": {
                "maxLength": 2048,
                "minLength": 1,
                "type": "string"
              }
            },
            "required": [
              "value"
            ],
            "type": "object"
          }
        ]
      },
      "NonBankingIdentifier": {
        "discriminator": {
          "mapping": {
            "CUSTOM": "#/components/schemas/CustomIdentifier",
            "MOBILE": "#/components/schemas/MobileNumberIdentifier"
          },
          "propertyName": "schema"
        },
        "properties": {
          "namespace": {
            "description": "An identifier's namespace provides a context for the identifier to distinguish different identifiers which\nmay have the same value but be intended to identify different accounts. For example, a bank may use the same\nMSISDN (identifier) with different namespaces to distinguish between a customer's cheque or savings accounts.\n\nThis may be used by the following schemes:\n  - ZA_RPP\n",
            "maxLength": 40,
            "minLength": 1,
            "type": "string"
          },
          "schema": {
            "description": "Indicates the schema of the identifier, e.g. `MOBILE`, `CUSTOM`.",
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "PhoneNumber": {
        "pattern": "^\\+[0-9]{1,3}-[0-9()+\\-]{1,30}$",
        "type": "string"
      },
      "MobileNumberIdentifier": {
        "allOf": [
          {
            "$ref": "#/components/schemas/NonBankingIdentifier"
          },
          {
            "properties": {
              "value": {
                "$ref": "#/components/schemas/PhoneNumber"
              }
            },
            "required": [
              "value"
            ],
            "type": "object"
          }
        ]
      },
      "FinancialInstitutionIdentifier": {
        "properties": {
          "bicfi": {
            "description": "A code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority as\ndescribed in ISO 9362 Banking - Banking telecommunication messages - Business identifier code (BIC)\n",
            "pattern": "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type": "string"
          },
          "memberId": {
            "description": "Identification of a member of a clearing system.",
            "maxLength": 35,
            "type": "string"
          },
          "namespaces": {
            "items": {
              "description": "An identifier's namespace provides a context for the identifier to distinguish different identifiers which\nmay have the same value but be intended to identify different accounts. For example, a bank may use the same\nMSISDN (identifier) with different namespaces to distinguish between a customer's cheque or savings accounts.\n\nThis may be used by the following schemes:\n  - ZA_RPP\n",
              "maxLength": 40,
              "minLength": 1,
              "type": "string"
            },
            "type": "array"
          },
          "schema": {
            "description": "Indicates the account identifier is a Financial Institution Identifier, always `FII`",
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ExternalAccountIdentificationCode": {
        "description": "* `AIIN`: Issuer Identification Number - identifies a card issuing institution in an international interchange environment. Issued by ABA (American Bankers Association).\n* `BBAN`: Basic Bank Account Number - identifier used nationally by financial institutions, ie, in individual countries, generally as part of a National Account Numbering Scheme(s), to uniquely identify the account of a customer.\n* `CUID`: (United States) Clearing House Interbank Payments System (CHIPS) Universal Identification (UID) - identifies entities that own accounts at CHIPS participating financial institutions, through which CHIPS payments are effected. The CHIPS UID is assigned by the New York Clearing House.\n* `UPIC`: Universal Payment Identification Code - identifier used by the New York Clearing House to mask confidential data, such as bank accounts and bank routing numbers. UPIC numbers remain with business customers, regardless of banking relationship changes.\n",
        "enum": [
          "AIIN",
          "BBAN",
          "CUID",
          "UPIC"
        ],
        "type": "string"
      },
      "GenericAccountIdentificationSchemeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalAccountIdentificationCode"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "ProprietaryValueLiteral": {
        "description": "A proprietary value.",
        "maxLength": 35,
        "type": "string"
      },
      "ProprietaryValue": {
        "description": "A model that describes a proprietary value assigned by some party, the purpose of which is to provide for the\npossibility of parties using values that are not standardised.\n",
        "properties": {
          "schema": {
            "description": "Identifies the value as being proprietary (i.e. not published in an external list). Always `PROPRIETARY`\n",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ProprietaryValueLiteral"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "GenericAccountIdentificationScheme": {
        "description": "Identifies the scheme that defines the identification of a generic account.",
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/GenericAccountIdentificationSchemeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/GenericAccountIdentificationSchemeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "GenericAccountIdentifier": {
        "properties": {
          "issuer": {
            "description": "The entity that assigns the identification",
            "maxLength": 35,
            "type": "string"
          },
          "schema": {
            "description": "Identifies this account identifier as generic, always `GENERIC`",
            "type": "string"
          },
          "scheme": {
            "$ref": "#/components/schemas/GenericAccountIdentificationScheme"
          },
          "value": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "IBAN": {
        "description": "An identifier used internationally by financial institutions to uniquely identify the account of a customer at\na financial institution, as described in the latest edition of the international standard ISO 13616: 2007\n",
        "pattern": "[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}",
        "type": "string"
      },
      "IBANIdentifier": {
        "properties": {
          "schema": {
            "description": "Indicates the account identifier is an IBAN, always `IBAN`",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/IBAN"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "AccountIdentifier": {
        "discriminator": {
          "mapping": {
            "CUSTOM": "#/components/schemas/CustomIdentifier",
            "FII": "#/components/schemas/FinancialInstitutionIdentifier",
            "GENERIC": "#/components/schemas/GenericAccountIdentifier",
            "IBAN": "#/components/schemas/IBANIdentifier",
            "MOBILE": "#/components/schemas/MobileNumberIdentifier"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/IBANIdentifier"
          },
          {
            "$ref": "#/components/schemas/GenericAccountIdentifier"
          },
          {
            "$ref": "#/components/schemas/MobileNumberIdentifier"
          },
          {
            "$ref": "#/components/schemas/CustomIdentifier"
          },
          {
            "$ref": "#/components/schemas/FinancialInstitutionIdentifier"
          }
        ],
        "type": "object"
      },
      "PaymentSchemeName": {
        "description": "Identifies the scheme used for the payment\n* `ZA_RTC`: South African Realtime Clearing scheme.\n* `ZA_RPP`: South African Realtime Payments Platform scheme.\n* `ZA_EFT`: South African Electronic Funds Transfer scheme.\n* `ZA_AC` : South African Authenticated Collections scheme.\n* `ZA_RMS`: South African Registered Mandate Service scheme.\n* `CBPR_PLUS`: Cross-Border Payments and Reporting Plus.\n* `TCIB`: Transactions Cleared on an Immediate Basis scheme.\n",
        "enum": [
          "ZA_RTC",
          "ZA_RPP",
          "ZA_EFT",
          "ZA_AC",
          "ZA_RMS",
          "CBPR_PLUS",
          "TCIB"
        ],
        "type": "string"
      },
      "AccountIdentification": {
        "description": "Holds details pertaining to an identifier of an account or store of value.",
        "properties": {
          "accountKnownAs": {
            "description": "A name or label of the account.",
            "maxLength": 40,
            "type": "string"
          },
          "identifier": {
            "$ref": "#/components/schemas/AccountIdentifier"
          },
          "registeredSchemes": {
            "description": "The list of schemes with which the identifier is registered.",
            "items": {
              "$ref": "#/components/schemas/PaymentSchemeName"
            },
            "type": "array"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "AddressTypeCode": {
        "description": "* `ADDR`: A postal address.\n* `PBOX`: A postal office (PO) box address.\n* `HOME`: A (residential) home address.\n* `BIZZ`: A business address.\n* `MLTO`: Address to which mail is sent.\n* `DLVY`: Address to which delivery is to take place\n",
        "enum": [
          "ADDR",
          "PBOX",
          "HOME",
          "BIZZ",
          "MLTO",
          "DLVY"
        ],
        "type": "string"
      },
      "CountryCode": {
        "description": "A code to identify a country, a dependency, or another area of particular geopolitical interest,\non the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
        "pattern": "[A-Z]{2,2}",
        "type": "string"
      },
      "PostalAddress": {
        "properties": {
          "addressLine": {
            "items": {
              "maxLength": 70,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 7,
            "minItems": 0,
            "type": "array"
          },
          "addressType": {
            "$ref": "#/components/schemas/AddressTypeCode"
          },
          "buildingName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "buildingNumber": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/CountryCode"
          },
          "countrySubDivision": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "department": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string"
          },
          "districtName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "floor": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string"
          },
          "postBox": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string"
          },
          "postCode": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string"
          },
          "room": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string"
          },
          "streetName": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string"
          },
          "subDepartment": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string"
          },
          "townLocationName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "townName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "BranchIdentification": {
        "properties": {
          "address": {
            "$ref": "#/components/schemas/PostalAddress"
          },
          "identification": {
            "description": "Unique and unambiguous identification of a branch of a financial institution.",
            "type": "string"
          },
          "name": {
            "description": "The name by which this branch is known and is usually used to identify the branch.",
            "maxLength": 140,
            "type": "string"
          }
        },
        "required": [
          "identification"
        ],
        "type": "object"
      },
      "ExternalClearingSystemIdentification1Code": {
        "description": "* `MA` (MoroccoClearingSystemID): Clearing System ID used in Morocco\n* `ATBLZ` (AustrianBankleitzahl): Bank Branch code used in Austria.\n* `AUBSB` (AustralianBankStateBranchCodeBSB): Bank Branch code used in Australia.\n* `CACPA` (CanadianPaymentsAssociationPaymentRoutingNumber): Bank Branch code used in Canada.\n* `CHBCC` (SwissFinancialInstitutionIdentificationShort): Financial Institution Identification (IID) used in Switzerland, without check digit.\n* `CHSIC` (SwissFinancialInstitutionIdentificationLong): Financial Institution Identification (IID) used in Switzerland, including check digit.\n* `CNAPS` (CNAPSIdentifier): Bank Branch code used in China.\n* `DEBLZ` (GermanBankleitzahl): Bank Branch code used in Germany.\n* `ESNCC` (SpanishDomesticInterbankingCode): Bank Branch code used in Spain.\n* `GBDSC` (UKDomesticSortCode): Bank Branch code used in the UK.\n* `GRBIC` (HelenicBankIdentificationCode): Bank Branch code used in Greece.\n* `HKNCC` (HongKongBankCode): Bank Branch code used in Hong Kong.\n* `IENCC` (IrishNationalClearingCode): Bank Branch code used in Ireland.\n* `INFSC` (IndianFinancialSystemCode): Bank Branch code used in India.\n* `ITNCC` (ItalianDomesticIdentificationCode): Bank Branch code used in Italy.\n* `JPZGN` (JapanZenginClearingCode): Bank Branch code used in Japan.\n* `NZNCC` (NewZealandNationalClearingCode): Bank Branch code used in New Zealand.\n* `PLKNR` (PolishNationalClearingCode): Bank Branch code used in Poland.\n* `PTNCC` (PortugueseNationalClearingCode): Bank Branch code used in Portugal.\n* `RUCBC` (RussianCentralBankIdentificationCode): Bank Branch code used in Russia.\n* `SESBA` (SwedenBankgiroClearingCode): Bank Branch code used in Sweden.\n* `SGIBG` (IBGSortCode): Bank Branch code used in Singapore.\n* `THCBC` (ThaiCentralBankIdentificationCode): Bank Identification code used in Thailand.\n* `TWNCC` (FinancialInstitutionCode): Bank Branch code used in Taiwan.\n* `USABA` (UnitedStatesRoutingNumberFedwireNACHA): Routing Transit number assigned by the ABA for US financial institutions.\n* `USPID` (CHIPSParticipantIdentifier): Bank identifier used by CHIPs in the US.\n* `ZANCC` (SouthAfricanNationalClearingCode): Bank Branch code used in South Africa.\n* `NZRSA` (NewZealandRTGSClearingCode): RTGS settlement account used in New Zealand.\n* `MZBMO` (BancoDeMocambiqueRTGS): Banco de Mocambique RTGS system.\n* `CNCIP` (CrossBorderInterbankPaymentSystem): Chinese Cross-border Interbank Payment System (CIPS) Identifier.\n* `KRBOK` (SouthKoreaCentralBankIdentificationCode): Participant Institution code used by BOK-Wire+ in South Korea.\n* `BRISP` (BrazilianBankIdentificationCode): Bank Identification code used in Brazil (ISPB).\n* `NACSC` (NamibiaClearingSystemCode): Clearing system Identification code used in Namibia.\n* `ZWTSS` (ZimbabweClearingSystemCode): System Identification Code used in the Zimbabwe settlement system.\n* `AD` (AndorraClearingSystemID): Clearing System ID used in Andorra\n* `EGNCC` (EgyptianNationalClearingCode): RTGS Clearing system Identification code used in Egypt.\n* `AE` (UnitedArabEmiratesClearingSystemID): Clearing System ID used in United Arab Emirates\n* `AF` (AfghanistanClearingSystemID): Clearing System ID used in Afghanistan\n* `AI` (AntiguaandBermudaClearingSystemID): Clearing System ID used in Antigua and Bermuda\n* `AL` (AlbaniaClearingSystemID): Clearing System ID used in Albania\n* `AM` (ArmeniaClearingSystemID): Clearing System ID used in Armenia\n* `AO` (AngolaClearingSystemID): Clearing System ID used in Angola\n* `AR` (ArgentinaClearingSystemID): Clearing System ID used in Argentina\n* `AS` (AmericanSamoaClearingSystemID): Clearing System ID used in American Samoa\n* `AW` (ArubaClearingSystemID): Clearing System ID used in Aruba\n* `AZ` (AzerbaijanClearingSystemID): Clearing System ID used in Azerbaijan\n* `BA` (BosniaandHerzegovinaClearingSystemID): Clearing System ID used in Bosnia and Herzegovina\n* `BD` (BangladeshClearingSystemID): Clearing System ID used in Bangladesh\n* `BG` (BulgariaClearingSystemID): Clearing System ID used in Bulgaria\n* `BH` (BahrainClearingSystemID): Clearing System ID used in Bahrain\n* `BI` (BurundiClearingSystemID): Clearing System ID used in Burundi\n* `BL` (SaintBarthelemyClearingSystemID): Clearing System ID used in Saint Barthelemy\n* `BM` (BermudaClearingSystemID): Clearing System ID used in Bermuda\n* `BN` (BruneiDarussalamClearingSystemID): Clearing System ID used in Brunei Darussalam\n* `BO` (BoliviaClearingSystemID): Clearing System ID used in Bolivia\n* `BS` (BahamasClearingSystemID): Clearing System ID used in Bahamas\n* `BT` (BhutanClearingSystemID): Clearing System ID used in Bhutan\n* `BW` (BotswanaClearingSystemID): Clearing System ID used in Botswana\n* `BY` (BelarusClearingSystemID): Clearing System ID used in Belarus\n* `BZ` (BelizeClearingSystemID): Clearing System ID used in Belize\n* `CD` (DemocraticRepublicofTheCongoClearingSystemID): Clearing System ID used in Democratic Republic of The Congo\n* `CL` (ChileClearingSystemID): Clearing System ID used in Chile\n* `CO` (ColombiaClearingSystemID): Clearing System ID used in Colombia\n* `CR` (CostaRicaClearingSystemID): Clearing System ID used in Costa Rica\n* `CV` (CaboVerdeClearingSystemID): Clearing System ID used in Cabo Verde\n* `CW` (CuracaoClearingSystemID): Clearing System ID used in Curacao\n* `CY` (CyprusClearingSystemID): Clearing System ID used in Cyprus\n* `CZ` (CzechRepublicClearingSystemID): Clearing System ID used in Czech Republic\n* `DO` (DominicanRepublicClearingSystemID): Clearing System ID used in Dominican Republic\n* `DZ` (AlgeriaClearingSystemID): Clearing System ID used in Algeria\n* `EC` (EcuadorClearingSystemID): Clearing System ID used in Ecuador\n* `EE` (EstoniaClearingSystemID): Clearing System ID used in Estonia\n* `GE` (GeorgiaClearingSystemID): Clearing System ID used in Georgia\n* `GH` (GhanaClearingSystemID): Clearing System ID used in Ghana\n* `GN` (GuineaClearingSystemID): Clearing System ID used in Guinea\n* `GT` (GuatemalaClearingSystemID): Clearing System ID used in Guatemala\n* `GY` (GuyanaClearingSystemID): Clearing System ID used in Guyana\n* `HN` (HondurasClearingSystemID): Clearing System ID used in Honduras\n* `HR` (CroatiaClearingSystemID): Clearing System ID used in Croatia\n* `HT` (HaitiClearingSystemID): Clearing System ID used in Haiti\n* `HU` (HungaryClearingSystemID): Clearing System ID used in Hungary\n* `ID` (IndonesiaClearingSystemID): Clearing System ID used in Indonesia\n* `IL` (IsraelClearingSystemID): Clearing System ID used in Israel\n* `IQ` (IraqClearingSystemID): Clearing System ID used in Iraq\n* `IS` (IcelandClearingSystemID): Clearing System ID used in Iceland\n* `JM` (JamaicaClearingSystemID): Clearing System ID used in Jamaica\n* `JO` (JordanClearingSystemID): Clearing System ID used in Jordan\n* `KE` (KenyaClearingSystemID): Clearing System ID used in Kenya\n* `KG` (TheKyrgyzRepublicClearingSystemID): Clearing System ID used in The Kyrgyz Republic\n* `KH` (CambodiaClearingSystemID): Clearing System ID used in Cambodia\n* `KM` (ComorosClearingSystemID): Clearing System ID used in Comoros\n* `KW` (KuwaitClearingSystemID): Clearing System ID used in Kuwait\n* `KZ` (KazakhstanClearingSystemID): Clearing System ID used in Kazakhstan\n* `LB` (LebanonClearingSystemID): Clearing System ID used in Lebanon\n* `LK` (SriLankaClearingSystemID): Clearing System ID used in Sri Lanka\n* `LR` (LiberiaClearingSystemID): Clearing System ID used in Liberia\n* `LS` (LesothoClearingSystemID): Clearing System ID used in Lesotho\n* `LT` (LithuaniaClearingSystemID): Clearing System ID used in Lithuania\n* `LV` (LatviaClearingSystemID): Clearing System ID used in Latvia\n* `LY` (LibyaClearingSystemID): Clearing System ID used in Libya\n* `MD` (MoldovaClearingSystemID): Clearing System ID used in Moldova\n* `ME` (MontenegroClearingSystemID): Clearing System ID used in Montenegro\n* `MG` (MadagascarClearingSystemID): Clearing System ID used in Madagascar\n* `MK` (NorthMacedoniaClearingSystemID): Clearing System ID used in North Macedonia\n* `MN` (MongoliaClearingSystemID): Clearing System ID used in Mongolia\n* `MO` (MacaoClearingSystemID): Clearing System ID used in Macao\n* `MR` (MauritaniaClearingSystemID): Clearing System ID used in Mauritania\n* `MT` (MaltaClearingSystemID): Clearing System ID used in Malta\n* `MU` (MauritiusClearingSystemID): Clearing System ID used in Mauritius\n* `MW` (MalawiClearingSystemID): Clearing System ID used in Malawi\n* `MX` (MexicoClearingSystemID): Clearing System ID used in Mexico\n* `MY` (MalaysiaClearingSystemID): Clearing System ID used in Malaysia\n* `NG` (NigeriaClearingSystemID): Clearing System ID used in Nigeria\n* `NI` (NicaraguaClearingSystemID): Clearing System ID used in Nicaragua\n* `NP` (NepalClearingSystemID): Clearing System ID used in Nepal\n* `OM` (OmanClearingSystemID): Clearing System ID used in Oman\n* `PA` (PanamaClearingSystemID): Clearing System ID used in Panama\n* `PE` (PeruClearingSystemID): Clearing System ID used in Peru\n* `PG` (PapuaNewGuineaClearingSystemID): Clearing System ID used in Papua New Guinea\n* `PH` (PhilippinesClearingSystemID): Clearing System ID used in Philippines\n* `PK` (PakistanClearingSystemID): Clearing System ID used in Pakistan\n* `PS` (PalestineClearingSystemID): Clearing System ID used in Palestine\n* `PY` (ParaguayClearingSystemID): Clearing System ID used in Paraguay\n* `QA` (QatarClearingSystemID): Clearing System ID used in Qatar\n* `RO` (RomaniaClearingSystemID): Clearing System ID used in Romania\n* `RS` (SerbiaClearingSystemID): Clearing System ID used in Serbia\n* `RW` (RwandaClearingSystemID): Clearing System ID used in Rwanda\n* `SA` (SaudiArabiaClearingSystemID): Clearing System ID used in Saudi Arabia\n* `SC` (SeychellesClearingSystemID): Clearing System ID used in Seychelles\n* `SD` (SudanClearingSystemID): Clearing System ID used in Sudan\n* `SI` (SloveniaClearingSystemID): Clearing System ID used in Slovenia\n* `SK` (SlovakiaClearingSystemID): Clearing System ID used in Slovakia\n* `SL` (SierraLeoneClearingSystemID): Clearing System ID used in Sierra Leone\n* `ST` (SaoTomeandPrincipeClearingSystemID): Clearing System ID used in Sao Tome and Principe\n* `SV` (ElSalvadorClearingSystemID): Clearing System ID used in El Salvador\n* `SZ` (EswatiniClearingSystemID): Clearing System ID used in Eswatini\n* `TJ` (TajikistanClearingSystemID): Clearing System ID used in Tajikistan\n* `TL` (Timor): LesteClearingSystemID\tClearing System ID used in Timor-Leste\n* `TM` (TurkmenistanClearingSystemID): Clearing System ID used in Turkmenistan\n* `TN` (TunisiaClearingSystemID): Clearing System ID used in Tunisia\n* `TR` (TurkeyClearingSystemID): Clearing System ID used in Turkey\n* `TT` (TrinidadandTobagoClearingSystemID): Clearing System ID used in Trinidad and Tobago\n* `TZ` (TanzaniaClearingSystemID): Clearing System ID used in Tanzania\n* `UA` (UkraineClearingSystemID): Clearing System ID used in Ukraine\n* `UG` (UgandaClearingSystemID): Clearing System ID used in Uganda\n* `UY` (UruguayClearingSystemID): Clearing System ID used in Uruguay\n* `UZ` (UzbekistanClearingSystemID): Clearing System ID used in Uzbekistan\n* `VA` (VaticanCityClearingSystemID): Clearing System ID used in Vatican City\n* `VE` (VenezuelaClearingSystemID): Clearing System ID used in Venezuela\n* `VN` (VietnamClearingSystemID): Clearing System ID used in Vietnam\n* `XK` (KosovoClearingSystemID): Clearing System ID used in Kosovo\n* `ZM` (ZambiaClearingSystemID): Clearing System ID used in Zambia\n* `MARPA` (MoroccoRTGSParticipantIdentificationCode): RTGS participant identification code used in the Kingdom of Morocco.\n* `MARAC` (MoroccoRTGSNationalClearingCode): RTGS clearing system identification used in the Kingdom of Morocco.\n",
        "enum": [
          "MA",
          "ATBLZ",
          "AUBSB",
          "CACPA",
          "CHBCC",
          "CHSIC",
          "CNAPS",
          "DEBLZ",
          "ESNCC",
          "GBDSC",
          "GRBIC",
          "HKNCC",
          "IENCC",
          "INFSC",
          "ITNCC",
          "JPZGN",
          "NZNCC",
          "PLKNR",
          "PTNCC",
          "RUCBC",
          "SESBA",
          "SGIBG",
          "THCBC",
          "TWNCC",
          "USABA",
          "USPID",
          "ZANCC",
          "NZRSA",
          "MZBMO",
          "CNCIP",
          "KRBOK",
          "BRISP",
          "NACSC",
          "ZWTSS",
          "AD",
          "EGNCC",
          "AE",
          "AF",
          "AI",
          "AL",
          "AM",
          "AO",
          "AR",
          "AS",
          "AW",
          "AZ",
          "BA",
          "BD",
          "BG",
          "BH",
          "BI",
          "BL",
          "BM",
          "BN",
          "BO",
          "BS",
          "BT",
          "BW",
          "BY",
          "BZ",
          "CD",
          "CL",
          "CO",
          "CR",
          "CV",
          "CW",
          "CY",
          "CZ",
          "DO",
          "DZ",
          "EC",
          "EE",
          "GE",
          "GH",
          "GN",
          "GT",
          "GY",
          "HN",
          "HR",
          "HT",
          "HU",
          "ID",
          "IL",
          "IQ",
          "IS",
          "JM",
          "JO",
          "KE",
          "KG",
          "KH",
          "KM",
          "KW",
          "KZ",
          "LB",
          "LK",
          "LR",
          "LS",
          "LT",
          "LV",
          "LY",
          "MD",
          "ME",
          "MG",
          "MK",
          "MN",
          "MO",
          "MR",
          "MT",
          "MU",
          "MW",
          "MX",
          "MY",
          "NG",
          "NI",
          "NP",
          "OM",
          "PA",
          "PE",
          "PG",
          "PH",
          "PK",
          "PS",
          "PY",
          "QA",
          "RO",
          "RS",
          "RW",
          "SA",
          "SC",
          "SD",
          "SI",
          "SK",
          "SL",
          "ST",
          "SV",
          "SZ",
          "TJ",
          "TL",
          "TM",
          "TN",
          "TR",
          "TT",
          "TZ",
          "UA",
          "UG",
          "UY",
          "UZ",
          "VA",
          "VE",
          "VN",
          "XK",
          "ZM",
          "MARPA",
          "MARAC"
        ],
        "type": "string"
      },
      "ClearingSystemCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalClearingSystemIdentification1Code"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "ClearingSystemIdentification": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ClearingSystemCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ClearingSystemCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "ClearingSystemMemberIdentification": {
        "properties": {
          "clearingSystem": {
            "$ref": "#/components/schemas/ClearingSystemIdentification"
          },
          "memberId": {
            "description": "Identification of a member of a clearing system.",
            "maxLength": 35,
            "type": "string"
          }
        },
        "required": [
          "memberId"
        ],
        "type": "object"
      },
      "InstitutionIdentification": {
        "properties": {
          "additionalIdentifications": {
            "items": {
              "$ref": "#/components/schemas/AccountIdentification"
            },
            "type": "array"
          },
          "address": {
            "$ref": "#/components/schemas/PostalAddress"
          },
          "bicfi": {
            "description": "A code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority as\ndescribed in ISO 9362 Banking - Banking telecommunication messages - Business identifier code (BIC)\n",
            "pattern": "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type": "string"
          },
          "branch": {
            "$ref": "#/components/schemas/BranchIdentification"
          },
          "clearingSystemMemberId": {
            "$ref": "#/components/schemas/ClearingSystemMemberIdentification"
          },
          "companyRegistration": {
            "deprecated": true,
            "description": "A unique identifier assigned to a company or organisation by a duly appointed authority within a country.",
            "maxLength": 35,
            "type": "string"
          },
          "lei": {
            "description": "An organisation identified by a code allocated to a party as described in ISO 17442 Financial Services - Legal Entity Identifier (LEI).",
            "pattern": "[A-Z0-9]{18,18}[0-9]{2,2}",
            "type": "string"
          },
          "memberId": {
            "deprecated": true,
            "description": "Deprecated. Please use the preferred `clearingSystemMemberId.memberId` instead.\nIdentification of a member of a clearing system.\n",
            "maxLength": 35,
            "type": "string"
          },
          "name": {
            "description": "Name by which an institution is known and which is usually used to identify that institution",
            "maxLength": 140,
            "type": "string"
          }
        },
        "type": "object"
      },
      "StatusReasonTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `ACCC` : AcceptedSettlementCompletedCreditorAccount\n* `ACCP` : AcceptedCustomerProfile\n* `ACSC` : AcceptedSettlementCompletedDebtorAccount\n* `ACTC` : AcceptedTechnicalValidation\n* `ACWP` : AcceptedWithoutPosting\n* `ACSP` : AcceptedSettlementInProcess\n* `ACWC` : AcceptedWithChange\n* `AB01` : AbortedClearingTimeout\n* `AB02` : AbortedClearingFatalError\n* `AB03` : AbortedSettlementTimeout\n* `AB04` : AbortedSettlementFatalError\n* `AB05` : TimeoutCreditorAgent\n* `AB06` : TimeoutInstructedAgent\n* `AB07` : OfflineAgent\n* `AB08` : OfflineCreditorAgent\n* `AB09` : ErrorCreditorAgent\n* `AB10` : ErrorInstructedAgent\n* `AB11` : TimeoutDebtorAgent\n* `AC01` : IncorrectAccountNumber\n* `AC02` : InvalidDebtorAccountNumber\n* `AC03` : InvalidCreditorAccountNumber\n* `AC04` : ClosedAccountNumber\n* `AC05` : ClosedDebtorAccountNumber\n* `AC06` : BlockedAccount\n* `AC07` : ClosedCreditorAccountNumber\n* `AC08` : InvalidBranchCode\n* `AC09` : InvalidAccountCurrency\n* `AC10` : InvalidDebtorAccountCurrency\n* `AC11` : InvalidCreditorAccountCurrency\n* `AC12` : InvalidAccountType\n* `AC13` : InvalidDebtorAccountType\n* `AC14` : InvalidCreditorAccountType\n* `AC15` : AccountDetailsChanged\n* `AC16` : CardNumberInvalid\n* `AC17` : AccountInLiquidation\n* `AEXR` : AlreadyExpiredRTP\n* `AG01` : TransactionForbidden\n* `AG02` : InvalidBankOperationCode\n* `AG03` : TransactionNotSupported\n* `AG04` : InvalidAgentCountry\n* `AG05` : InvalidDebtorAgentCountry\n* `AG06` : InvalidCreditorAgentCountry\n* `AG07` : UnsuccessfulDirectDebit\n* `AG08` : InvalidAccessRights\n* `AG09` : PaymentNotReceived\n* `AG10` : AgentSuspended\n* `AG11` : CreditorAgentSuspended\n* `AG12` : NotAllowedBookTransfer\n* `AG13` : ForbiddenReturnPayment\n* `AGNT` : IncorrectAgent\n* `ALAC` : AlreadyAcceptedRTP\n* `AM01` : ZeroAmount\n* `AM02` : NotAllowedAmount\n* `AM03` : NotAllowedCurrency\n* `AM04` : InsufficientFunds\n* `AM05` : Duplication\n* `AM06` : TooLowAmount\n* `AM07` : BlockedAmount\n* `AM09` : WrongAmount\n* `AM10` : InvalidControlSum\n* `AM11` : InvalidTransactionCurrency\n* `AM12` : InvalidAmount\n* `AM13` : AmountExceedsClearingSystemLimit\n* `AM14` : AmountExceedsAgreedLimit\n* `AM15` : AmountBelowClearingSystemMinimum\n* `AM16` : InvalidGroupControlSum\n* `AM17` : InvalidPaymentInfoControlSum\n* `AM18` : InvalidNumberOfTransactions\n* `AM19` : InvalidGroupNumberOfTransactions\n* `AM20` : InvalidPaymentInfoNumberOfTransactions\n* `AM21` : LimitExceeded\n* `AM22` : ZeroAmountNotApplied\n* `AM23` : AmountExceedsSettlementLimit\n* `APAR` : AlreadyPaidRTP\n* `ARDT` : AlreadyReturnedTransaction\n* `ARFR` : AlreadyRefusedRTP\n* `ARJR` : AlreadyRejectedRTP\n* `ATNS` : AttachmentsNotSupported\n* `BE01` : InconsistentWithEndCustomer\n* `BE04` : MissingCreditorAddress\n* `BE05` : UnrecognisedInitiatingParty\n* `BE06` : UnknownEndCustomer\n* `BE07` : MissingDebtorAddress\n* `BE08` : MissingDebtorName\n* `BE09` : InvalidCountry\n* `BE10` : InvalidDebtorCountry\n* `BE11` : InvalidCreditorCountry\n* `BE12` : InvalidCountryOfResidence\n* `BE13` : InvalidDebtorCountryOfResidence\n* `BE14` : InvalidCreditorCountryOfResidence\n* `BE15` : InvalidIdentificationCode\n* `BE16` : InvalidDebtorIdentificationCode\n* `BE17` : InvalidCreditorIdentificationCode\n* `BE18` : InvalidContactDetails\n* `BE19` : InvalidChargeBearerCode\n* `BE20` : InvalidNameLength\n* `BE21` : MissingName\n* `BE22` : MissingCreditorName\n* `BE23` : AccountProxyInvalid\n* `CERI` : CheckERI\n* `CH03` : RequestedExecutionDateOrRequestedCollectionDateTooFarInFuture\n* `CH04` : RequestedExecutionDateOrRequestedCollectionDateTooFarInPast\n* `CH07` : ElementIsNotToBeUsedAtB-andC-Level\n* `CH09` : MandateChangesNotAllowed\n* `CH10` : InformationOnMandateChangesMissing\n* `CH11` : CreditorIdentifierIncorrect\n* `CH12` : CreditorIdentifierNotUnambiguouslyAtTransaction-Level\n* `CH13` : OriginalDebtorAccountIsNotToBeUsed\n* `CH14` : OriginalDebtorAgentIsNotToBeUsed\n* `CH15` : ElementContentIncludesMoreThan140Characters\n* `CH16` : ElementContentFormallyIncorrect\n* `CH17` : ElementNotAdmitted\n* `CH19` : ValuesWillBeSetToNextTARGETday\n* `CH20` : DecimalPointsNotCompatibleWithCurrency\n* `CH21` : RequiredCompulsoryElementMissing\n* `CH22` : COREandB2BwithinOnemessage\n* `CHQC` : ChequeSettledOnCreditorAccount\n* `CN01` : AuthorisationCancelled\n* `CNOR` : CreditorBankIsNotRegistered\n* `CURR` : IncorrectCurrency\n* `CUST` : RequestedByCustomer\n* `DNOR` : DebtorBankIsNotRegistered\n* `DS01` : ElectronicSignaturesCorrect\n* `DS02` : OrderCancelled\n* `DS03` : OrderNotCancelled\n* `DS04` : OrderRejected\n* `DS05` : OrderForwardedForPostprocessing\n* `DS06` : TransferOrder\n* `DS07` : ProcessingOK\n* `DS08` : DecompressionError\n* `DS09` : DecryptionError\n* `DS0A` : DataSignRequested\n* `DS0B` : UnknownDataSignFormat\n* `DS0C` : SignerCertificateRevoked\n* `DS0D` : SignerCertificateNotValid\n* `DS0E` : IncorrectSignerCertificate\n* `DS0F` : SignerCertificationAuthoritySignerNotValid\n* `DS0G` : NotAllowedPayment\n* `DS0H` : NotAllowedAccount\n* `DS0K` : NotAllowedNumberOfTransaction\n* `DS10` : Signer1CertificateRevoked\n* `DS11` : Signer1CertificateNotValid\n* `DS12` : IncorrectSigner1Certificate\n* `DS13` : SignerCertificationAuthoritySigner1NotValid\n* `DS14` : UserDoesNotExist\n* `DS15` : IdenticalSignatureFound\n* `DS16` : PublicKeyVersionIncorrect\n* `DS17` : DifferentOrderDataInSignatures\n* `DS18` : RepeatOrder\n* `DS19` : ElectronicSignatureRightsInsufficient\n* `DS20` : Signer2CertificateRevoked\n* `DS21` : Signer2CertificateNotValid\n* `DS22` : IncorrectSigner2Certificate\n* `DS23` : SignerCertificationAuthoritySigner2NotValid\n* `DS24` : WaitingTimeExpired\n* `DS25` : OrderFileDeleted\n* `DS26` : UserSignedMultipleTimes\n* `DS27` : UserNotYetActivated\n* `DT01` : InvalidDate\n* `DT02` : InvalidCreationDate\n* `DT03` : InvalidNonProcessingDate\n* `DT04` : FutureDateNotSupported\n* `DT05` : InvalidCutOffDate\n* `DT06` : ExecutionDateChanged\n* `DU01` : DuplicateMessageID\n* `DU02` : DuplicatePaymentInformationID\n* `DU03` : DuplicateTransaction\n* `DU04` : DuplicateEndToEndID\n* `DU05` : DuplicateInstructionID\n* `DUPL` : DuplicatePayment\n* `ED01` : CorrespondentBankNotPossible\n* `ED03` : BalanceInfoRequest\n* `ED05` : SettlementFailed\n* `ED06` : SettlementSystemNotAvailable\n* `EDTL` : ExpiryDateTooLong\n* `EDTR` : ExpiryDateTimeReached\n* `ERIN` : ERIOptionNotSupported\n* `FF01` : InvalidFileFormat\n* `FF02` : SyntaxError\n* `FF03` : InvalidPaymentTypeInformation\n* `FF04` : InvalidServiceLevelCode\n* `FF05` : InvalidLocalInstrumentCode\n* `FF06` : InvalidCategoryPurposeCode\n* `FF07` : InvalidPurpose\n* `FF08` : InvalidEndToEndId\n* `FF09` : InvalidChequeNumber\n* `FF10` : BankSystemProcessingError\n* `FF11` : ClearingRequestAborted\n* `FF12` : OriginalTransactionNotEligibleForRequestedReturn\n* `FF13` : RequestForCancellationNotFound\n* `FOCR` : FollowingCancellationRequest\n* `FR01` : Fraud\n* `FRAD` : FraudulentOrigin\n* `G000` : PaymentTransferredAndTracked\n* `G001` : PaymentTransferredAndNotTracked\n* `G002` : CreditDebitNotConfirmed\n* `G003` : CreditPendingDocuments\n* `G004` : CreditPendingFunds\n* `G005` : DeliveredWithServiceLevel\n* `G006` : DeliveredWithoutServiceLevel\n* `ID01` : CorrespondingOriginalFileStillNotSent\n* `IEDT` : IncorrectExpiryDateTime\n* `IRNR` : InitialRTPNeverReceived\n* `MD01` : NoMandate\n* `MD02` : MissingMandatoryInformationInMandate\n* `MD05` : CollectionNotDue\n* `MD06` : RefundRequestByEndCustomer\n* `MD07` : EndCustomerDeceased\n* `MS02` : NotSpecifiedReasonCustomerGenerated\n* `MS03` : NotSpecifiedReasonAgentGenerated\n* `NARR` : Narrative\n* `NERI` : NoERI\n* `NOAR` : NonAgreedRTP\n* `NOAS` : NoAnswerFromCustomer\n* `NOCM` : NotCompliantGeneric\n* `NOOR` : NoOriginalTransactionReceived\n* `NOPG` : NoPaymentGuarantee\n* `NRCH` : PayerOrPayerRTPSPNotReachable\n* `PART` : PartiallyAccepted\n* `PINS` : TypeOfPaymentInstrumentNotSupported\n* `RC01` : BankIdentifierIncorrect\n* `RC02` : InvalidBankIdentifier\n* `RC03` : InvalidDebtorBankIdentifier\n* `RC04` : InvalidCreditorBankIdentifier\n* `RC05` : InvalidBICIdentifier\n* `RC06` : InvalidDebtorBICIdentifier\n* `RC07` : InvalidCreditorBICIdentifier\n* `RC08` : InvalidClearingSystemMemberIdentifier\n* `RC09` : InvalidDebtorClearingSystemMemberIdentifier\n* `RC10` : InvalidCreditorClearingSystemMemberIdentifier\n* `RC11` : InvalidIntermediaryAgent\n* `RC12` : MissingCreditorSchemeId\n* `RCON` : RMessageConflict\n* `RECI` : ReceiverCustomerInformation\n* `REPR` : RTPReceivedCanBeProcessed\n* `RF01` : NotUniqueTransactionReference\n* `RR01` : MissingDebtorAccountOrIdentification\n* `RR02` : MissingDebtorNameOrAddress\n* `RR03` : MissingCreditorNameOrAddress\n* `RR04` : RegulatoryReason\n* `RR05` : RegulatoryInformationInvalid\n* `RR06` : TaxInformationInvalid\n* `RR07` : RemittanceInformationInvalid\n* `RR08` : RemittanceInformationTruncated\n* `RR09` : InvalidStructuredCreditorReference\n* `RR10` : InvalidCharacterSet\n* `RR11` : InvalidDebtorAgentServiceID\n* `RR12` : InvalidPartyID\n* `RTNS` : RTPNotSupportedForDebtor\n* `RUTA` : ReturnUponUnableToApply\n* `S000` : ValidRequestForCancellationAcknowledged\n* `S001` : UETRFlaggedForCancellation\n* `S002` : NetworkStopOfUETR\n* `S003` : RequestForCancellationForwarded\n* `S004` : RequestForCancellationDeliveryAcknowledgement\n* `SL01` : SpecificServiceOfferedByDebtorAgent\n* `SL02` : SpecificServiceOfferedByCreditorAgent\n* `SL03` : ServiceofClearingSystem\n* `SL11` : CreditorNotOnWhitelistOfDebtor\n* `SL12` : CreditorOnBlacklistOfDebtor\n* `SL13` : MaximumNumberOfDirectDebitTransactionsExceeded\n* `SL14` : MaximumDirectDebitTransactionAmountExceeded\n* `SP01` : PaymentStopped\n* `SP02` : PreviouslyStopped\n* `SPII` : RTPServiceProviderIdentifierIncorrect\n* `TA01` : TransmissionAborted\n* `TD01` : NoDataAvailable\n* `TD02` : FileNonReadable\n* `TD03` : IncorrectFileStructure\n* `TK01` : TokenInvalid\n* `TK02` : SenderTokenNotFound\n* `TK03` : ReceiverTokenNotFound\n* `TK09` : TokenMissing\n* `TKCM` : TokenCounterpartyMismatch\n* `TKSG` : TokenSingleUse\n* `TKSP` : TokenSuspended\n* `TKVE` : TokenValueLimitExceeded\n* `TKXP` : TokenExpired\n* `TM01` : InvalidCutOffTime\n* `TS01` : TransmissionSuccessful\n* `TS04` : TransferToSignByHand\n* `UCRD` : UnknownCreditor\n* `UPAY` : UnduePayment\n",
            "enum": [
              "ACCC",
              "ACCP",
              "ACSC",
              "ACTC",
              "ACWP",
              "ACSP",
              "ACWC",
              "AB01",
              "AB02",
              "AB03",
              "AB04",
              "AB05",
              "AB06",
              "AB07",
              "AB08",
              "AB09",
              "AB10",
              "AB11",
              "AC01",
              "AC02",
              "AC03",
              "AC04",
              "AC05",
              "AC06",
              "AC07",
              "AC08",
              "AC09",
              "AC10",
              "AC11",
              "AC12",
              "AC13",
              "AC14",
              "AC15",
              "AC16",
              "AC17",
              "AEXR",
              "AG01",
              "AG02",
              "AG03",
              "AG04",
              "AG05",
              "AG06",
              "AG07",
              "AG08",
              "AG09",
              "AG10",
              "AG11",
              "AG12",
              "AG13",
              "AGNT",
              "ALAC",
              "AM01",
              "AM02",
              "AM03",
              "AM04",
              "AM05",
              "AM06",
              "AM07",
              "AM09",
              "AM10",
              "AM11",
              "AM12",
              "AM13",
              "AM14",
              "AM15",
              "AM16",
              "AM17",
              "AM18",
              "AM19",
              "AM20",
              "AM21",
              "AM22",
              "AM23",
              "APAR",
              "ARDT",
              "ARFR",
              "ARJR",
              "ATNS",
              "BE01",
              "BE04",
              "BE05",
              "BE06",
              "BE07",
              "BE08",
              "BE09",
              "BE10",
              "BE11",
              "BE12",
              "BE13",
              "BE14",
              "BE15",
              "BE16",
              "BE17",
              "BE18",
              "BE19",
              "BE20",
              "BE21",
              "BE22",
              "BE23",
              "CERI",
              "CH03",
              "CH04",
              "CH07",
              "CH09",
              "CH10",
              "CH11",
              "CH12",
              "CH13",
              "CH14",
              "CH15",
              "CH16",
              "CH17",
              "CH19",
              "CH20",
              "CH21",
              "CH22",
              "CHQC",
              "CN01",
              "CNOR",
              "CURR",
              "CUST",
              "DNOR",
              "DS01",
              "DS02",
              "DS03",
              "DS04",
              "DS05",
              "DS06",
              "DS07",
              "DS08",
              "DS09",
              "DS0A",
              "DS0B",
              "DS0C",
              "DS0D",
              "DS0E",
              "DS0F",
              "DS0G",
              "DS0H",
              "DS0K",
              "DS10",
              "DS11",
              "DS12",
              "DS13",
              "DS14",
              "DS15",
              "DS16",
              "DS17",
              "DS18",
              "DS19",
              "DS20",
              "DS21",
              "DS22",
              "DS23",
              "DS24",
              "DS25",
              "DS26",
              "DS27",
              "DT01",
              "DT02",
              "DT03",
              "DT04",
              "DT05",
              "DT06",
              "DU01",
              "DU02",
              "DU03",
              "DU04",
              "DU05",
              "DUPL",
              "ED01",
              "ED03",
              "ED05",
              "ED06",
              "EDTL",
              "EDTR",
              "ERIN",
              "FF01",
              "FF02",
              "FF03",
              "FF04",
              "FF05",
              "FF06",
              "FF07",
              "FF08",
              "FF09",
              "FF10",
              "FF11",
              "FF12",
              "FF13",
              "FOCR",
              "FR01",
              "FRAD",
              "G000",
              "G001",
              "G002",
              "G003",
              "G004",
              "G005",
              "G006",
              "ID01",
              "IEDT",
              "IRNR",
              "MD01",
              "MD02",
              "MD05",
              "MD06",
              "MD07",
              "MS02",
              "MS03",
              "NARR",
              "NERI",
              "NOAR",
              "NOAS",
              "NOCM",
              "NOOR",
              "NOPG",
              "NRCH",
              "PART",
              "PINS",
              "RC01",
              "RC02",
              "RC03",
              "RC04",
              "RC05",
              "RC06",
              "RC07",
              "RC08",
              "RC09",
              "RC10",
              "RC11",
              "RC12",
              "RCON",
              "RECI",
              "REPR",
              "RF01",
              "RR01",
              "RR02",
              "RR03",
              "RR04",
              "RR05",
              "RR06",
              "RR07",
              "RR08",
              "RR09",
              "RR10",
              "RR11",
              "RR12",
              "RTNS",
              "RUTA",
              "S000",
              "S001",
              "S002",
              "S003",
              "S004",
              "SL01",
              "SL02",
              "SL03",
              "SL11",
              "SL12",
              "SL13",
              "SL14",
              "SP01",
              "SP02",
              "SPII",
              "TA01",
              "TD01",
              "TD02",
              "TD03",
              "TK01",
              "TK02",
              "TK03",
              "TK09",
              "TKCM",
              "TKSG",
              "TKSP",
              "TKVE",
              "TKXP",
              "TM01",
              "TS01",
              "TS04",
              "UCRD",
              "UPAY"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "StatusReasonType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/StatusReasonTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/StatusReasonTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "StatusReasonInfo": {
        "description": "Provides detailed information on a status reason.\n",
        "properties": {
          "additionalInformation": {
            "description": "A human friendly description of the status reason including any further details if applicable.\n",
            "type": "string"
          },
          "reason": {
            "$ref": "#/components/schemas/StatusReasonType"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "Status": {
        "properties": {
          "outcome": {
            "description": "- `APPROVED`: The instruction has been approved.\n- `CANCELLED`: The instruction has been cancelled.\n- `PENDING`: The instruction is pending.\n- `REJECTED`: The instruction has been rejected.\n",
            "enum": [
              "APPROVED",
              "CANCELLED",
              "PENDING",
              "REJECTED"
            ],
            "type": "string"
          },
          "reasonInfo": {
            "description": "A list of `StatusReasonInfo` values providing detailed reason information for the outcome.\n",
            "items": {
              "$ref": "#/components/schemas/StatusReasonInfo"
            },
            "minItems": 1,
            "type": "array"
          }
        },
        "required": [
          "outcome"
        ],
        "type": "object"
      },
      "BasePaymentStatusReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionResponseMessage"
          },
          {
            "properties": {
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "The instructed agent is the party receiving the status message and not the party that received the\noriginal instruction that is being reported on.\n"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "The instructing agent is the party sending the status message and not the party that sent the original\ninstruction that is being reported on.\n"
              },
              "status": {
                "$ref": "#/components/schemas/Status"
              }
            },
            "required": [
              "status"
            ],
            "type": "object"
          }
        ]
      },
      "MandateInformation": {
        "description": "Provides a reference to the direct debit mandate signed between the creditor and the debtor.\n\nNote: This model is not relevant to the `ZA_EFT` scheme. Electrum will not process these\nfields for EFT payments (e.g. tracking days are not honoured for EFT).\n",
        "properties": {
          "mandateIdentification": {
            "description": "Unique identification to unambiguously identify the mandate.\nThis links the direct debit collection to the original mandate.\n\nFor DebiCheck, this field contains the scheme-assigned Mandate Reference Number\nwhich is the authoritative identifier for linking collections to mandates.\n",
            "maxLength": 35,
            "type": "string"
          },
          "trackingDays": {
            "description": "Specifies the number of days the direct debit instruction must be tracked.\nThe debtor has this period to dispute the collection.\n",
            "maximum": 99,
            "minimum": 0,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "Amount": {
        "properties": {
          "currency": {
            "description": "A valid, active currency code as defined in ISO 4217 indicating the currency of the amount.\n",
            "pattern": "^[A-Z]{3}$",
            "type": "string"
          },
          "value": {
            "description": "The payment amount in the denomination of the indicated currency, in the\nformat '<major units>.<minor units> with the number of minor units (fractional digits)\ncompliant with the number of decimal places published in ISO 4217.\nCurrency Code | Example | Valid | Notes\n--- | --- | --- | ---\nUSD | 10.0 | ✓ | Represents 10 USD and no cents.\nUSD | 10.00 | ✓ |\nUSD | 10.001 | ✗ | US dollar does not support three decimal places.\nJPY | 10.0 | ✓ | Represents 10 Japanese Yen.\nJPY | 10.1 | ✗ | Japanese Yen does not support decimal places.\n",
            "format": "double",
            "minimum": 0,
            "type": "number"
          }
        },
        "required": [
          "value",
          "currency"
        ],
        "type": "object"
      },
      "TransactionAmounts": {
        "properties": {
          "bankSettlementAmount": {
            "$ref": "#/components/schemas/Amount",
            "description": "The inter-bank amount of money to be moved between the instructing and instructed agent, which may include charges\nor deductions, expressed in the currency as ordered by the initiating party\n"
          },
          "instructedAmount": {
            "$ref": "#/components/schemas/Amount",
            "description": "The amount of money to be moved between the debtor and creditor, before deduction of\ncharges, expressed in the currency as ordered by the initiating party.\n"
          }
        },
        "required": [
          "bankSettlementAmount"
        ],
        "type": "object"
      },
      "BankingIdentifier": {
        "discriminator": {
          "mapping": {
            "GENERIC": "#/components/schemas/GenericAccountIdentifier",
            "IBAN": "#/components/schemas/IBANIdentifier"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/IBANIdentifier"
          },
          {
            "$ref": "#/components/schemas/GenericAccountIdentifier"
          }
        ],
        "type": "object"
      },
      "ExternalCashAccountType1Code": {
        "description": "* `CACC` : Current - Account used to post debits and credits when no specific account has been nominated.\n* `CARD` : Card Account - Account used for credit card payments.\n* `CASH` : Cash Payment - Account used for the payment of cash.\n* `CHAR` : Charges - Account used for charges if different from the account for payment.\n* `CISH` : Cash Income - Account used for payment of income if different from the current cash account.\n* `COMM` : Commission - Account used for commission if different from the account  for payment.\n* `CPAC` : Clearing Participant Settlement Account - Account used to post settlement debit and credit entries on behalf of a designated Clearing Participant.\n* `LLSV` : Limited Liquidity Savings Account - Account used for savings with special interest and withdrawal terms.\n* `LOAN` : Loan - Account used for loans.\n* `MGLD` : Marginal Lending - Account used for a marginal lending facility.\n* `MOMA` : Money Market - Account used for money markets if different from the cash account.\n* `NREX` : Non-Resident External - Account used for non-resident external.\n* `ODFT` : Overdraft - Account is used for overdrafts.\n* `ONDP` : Overnight Deposit - Account used for overnight deposits.\n* `OTHR` : Other Account - Account not otherwise specified.\n* `SACC` : Settlement - Account used to post debit and credit entries, as a result of transactions cleared and settled through a specific clearing and settlement system.\n* `SLRY` : Salary - Accounts used for salary payments.\n* `SVGS` : Savings - Account used for savings.\n* `TAXE` : Tax - Account used for taxes if different from the account for payment.\n* `TRAN` : Transacting Account - A transacting account is the most basic type of bank account that you can get. The main difference between transaction and cheque accounts is that you usually do not get a cheque book with your transacting account and neither are you offered an overdraft facility.\n* `TRAS` : Cash Trading - Account used for trading if different from the current cash account.\n",
        "enum": [
          "CACC",
          "CARD",
          "CASH",
          "CHAR",
          "CISH",
          "COMM",
          "CPAC",
          "LLSV",
          "LOAN",
          "MGLD",
          "MOMA",
          "NREX",
          "ODFT",
          "ONDP",
          "OTHR",
          "SACC",
          "SLRY",
          "SVGS",
          "TAXE",
          "TRAN",
          "TRAS"
        ],
        "type": "string"
      },
      "AccountTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalCashAccountType1Code"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "AccountType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/AccountTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "PaymentAccount": {
        "description": "Representation of an account for payment purposes.\nNote that at least one of `identification` or `proxy` is expected to be present.\n",
        "properties": {
          "currency": {
            "description": "Identification of the currency in which the account is held.",
            "pattern": "^[A-Z]{3}$",
            "type": "string"
          },
          "identification": {
            "$ref": "#/components/schemas/BankingIdentifier"
          },
          "name": {
            "description": "Name of the account, as assigned by the account servicing institution, in agreement with the account owner\nin order to provide an additional means of identification of the account.\n",
            "maxLength": 70,
            "type": "string"
          },
          "proxy": {
            "$ref": "#/components/schemas/NonBankingIdentifier"
          },
          "type": {
            "$ref": "#/components/schemas/AccountType"
          }
        },
        "type": "object"
      },
      "PaymentMethod": {
        "description": "* `CreditTransfer` - Transfer of an amount of money in the books of the account servicer.\n* `DirectDebit` - Collection of an amount of money from the debtor's account by the creditor, the amount and date of collection may vary.\n",
        "enum": [
          "CreditTransfer",
          "DirectDebit"
        ],
        "type": "string"
      },
      "ExternalCategoryPurpose1Code": {
        "description": "* `BONU` (BonusPayment): Transaction is the payment of a bonus.\n* `CASH` (CashManagementTransfer): Transaction is a general cash management instruction.\n* `CBLK` (CardBulkClearing): A service that is settling money for a bulk of card transactions, while referring to a specific transaction file or other information like terminal ID, card acceptor ID or other transaction details.\n* `CCRD` (CreditCardPayment): Transaction is related to a payment of credit card.\n* `CORT` (TradeSettlementPayment): Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n* `DCRD` (DebitCardPayment): Transaction is related to a payment of debit card.\n* `DIVI` (Dividend): Transaction is the payment of dividends.\n* `DVPM` (DeliverAgainstPayment): Code used to pre-advise the account servicer of a forthcoming deliver against payment instruction.\n* `EPAY` (Epayment): Transaction is related to ePayment.\n* `FCIN` (FeeCollectionAndInterest): Transaction is related to the payment of a fee and interest.\n* `FCOL` (FeeCollection): A service that is settling card transaction related fees between two parties.\n* `GP2P` (PersontoPersonPayment): General Person-to-Person Payment. Debtor and Creditor are natural persons.\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* `ICCP` (IrrevocableCreditCardPayment): Transaction is reimbursement of credit card payment.\n* `IDCP` (IrrevocableDebitCardPayment): Transaction is reimbursement of debit card payment.\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* `LBOX` (LockboxTransactions): Transaction is related to identify cash handling via Night Safe or Lockbox by bank or vendor on behalf of a physical store.\n* `LOAN` (Loan): Transaction is related to the transfer of a loan to a borrower.\n* `MP2B` (Commercial): Mobile P2B Payment\n* `MP2P` (Consumer): Mobile P2P Payment\n* `OTHR` (OtherPayment): Other payment purpose.\n* `PENS` (PensionPayment): Transaction is the payment of pension.\n* `RPRE` (Represented): Collection used to re-present previously reversed or returned direct debit transactions.\n* `RRCT` (ReimbursementReceivedCreditTransfer): Transaction is related to a reimbursement for commercial reasons of a correctly received credit transfer.\n* `RVPM` (ReceiveAgainstPayment): Code used to pre-advise the account servicer of a forthcoming receive against payment instruction.\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` (WithHolding): Transaction is the payment of withholding tax.\n* `SWEP` (CashManagementSweepAccount): Classification - Cash Management. Transaction relates to a cash management instruction, requesting a sweep of the account of the Debtor above an agreed floor amount, up to a target or zero balance. The purpose is to move the funds from multiple accounts to a single bank account. Funds can move domestically or across border and more than one bank can be used.\n* `TOPG` (CashManagementTopAccount): Classification - Cash Management. Transaction relates to a cash management instruction, requesting to top the account of the Creditor above a certain floor amount, up to a target or zero balance. The floor amount, if not pre-agreed by the parties involved, may be specified.\n* `ZABA` (CashManagementZeroBalanceAccount): Transaction relates to a cash management instruction, requesting to zero balance the account of the Debtor. Zero Balance Accounts empty or fill the balances in accounts at the same bank, in the same country into or out of a main account each day.\n* `VOST` (CrossborderMIPayments): Transaction to be processed as a domestic payment instruction originated from a foreign bank.\n* `FCDT` (ForeignCurrencyDomesticTransfer): Foreign Currency Transaction that is processed between two domestic financial institutions.\n* `CIPC` (CashInPreCredit): Transaction is a direct debit for a cash order of notes and/or coins.\n* `CONC` (CashOutNotesCoins): Transaction is a direct debit for a cash order of notes and/or coins.\n* `CGWV` (CarrierGuardedWholesaleValuables): Transaction is a payment towards a Party for the collection of cash by the Cash in Transit company.\n* `SAVG` (Savings): Transfer to / from savings or to retirement account.\n* `CTDF` (DoddFrank1073Payment): Cross border transaction initiated by US natural person that is subject to compliance with Dodd Frank 1073.\n",
        "enum": [
          "BONU",
          "CASH",
          "CBLK",
          "CCRD",
          "CORT",
          "DCRD",
          "DIVI",
          "DVPM",
          "EPAY",
          "FCIN",
          "FCOL",
          "GP2P",
          "GOVT",
          "HEDG",
          "ICCP",
          "IDCP",
          "INTC",
          "INTE",
          "LBOX",
          "LOAN",
          "MP2B",
          "MP2P",
          "OTHR",
          "PENS",
          "RPRE",
          "RRCT",
          "RVPM",
          "SALA",
          "SECU",
          "SSBE",
          "SUPP",
          "TAXS",
          "TRAD",
          "TREA",
          "VATX",
          "WHLD",
          "SWEP",
          "TOPG",
          "ZABA",
          "VOST",
          "FCDT",
          "CIPC",
          "CONC",
          "CGWV",
          "SAVG",
          "CTDF"
        ],
        "type": "string"
      },
      "CategoryPurposeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalCategoryPurpose1Code"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "CategoryPurpose": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/CategoryPurposeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/CategoryPurposeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "LocalInstrumentTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `0000` - BusinessPayment\n* `0001` - ConvertedBankPayment\n* `0002` - StandingOrder\n* `0090` - MassPaymentBeneficiary\n* `0091` - MassPaymentOurs\n* `0092` - MassPaymentShared\n* `0220` - StandingAuthorisationGeneral\n* `0221` - OneOffAuthorisation\n* `0222` - StandingAuthorisationCompanies\n* `0223` - StandingAuthorisationLotteries\n* `0224` - OneOffAuthorisationCharities\n* `0225` - OneOffAuthorisationTuitionFees\n* `0226` - OneOffAuthorisationConstructionIndustry\n* `0227` - StandingAuthorisationCompaniesWithoutDebtorRevocationRight\n* `04` - PreauthorisedDirectDebitDE\n* `05` - NonPreauthorisedDirectDebitDE\n* `08` - PreauthorisedDirectDebitOrdinaireNormalClearing4Day\n* `19` - BusinessToCustomerDirectDebit\n* `58` - BusinessToBusinessDirectDebit\n* `60` - RecoveredBillofExchangeorPromissoryNote\n* `82` - NonPreauthorisedDirectDebitAT\n* `83` - PreauthorisedDirectDebitAT\n* `85` - PreauthorisedDirectDebitAccéléréAcceleratedClearing2DayOrdinaireNormalClearing4Day\n* `89` - PreauthorisedDirectDebitVérifiéVerifiedClearing\n* `AC01` - IncorrectAccountNumber\n* `ACCEPT` - PaymentViaAcceptgiroOwnedByCurrence\n* `ADD` - AuthenticatedDirectDebit\n* `ARC` - AccountsReceivableCheck\n* `ASTI` - AncillarySystemTransferInitiation\n* `B2B` - SEPABusinessToBusinessDirectDebit\n* `B2BAMIPM` - SEPAB2BDirectDebitAMI\n* `BACP` - BackupPayment\n* `BPA` - BatchPaymentsAruba\n* `BSE` - PaperlessChequeCollection\n* `BTR` - BankTransfer\n* `CARD` - CardClearing\n* `CCD` - CashConcentrationOrDisbursementCorporateCounterparty\n* `CCI` - CashConcentrationIntragroup\n* `CHN` - TruncatedChecks\n* `CIE` - CustomerInitiatedEntry\n* `CKS` - CheckSameDaySettlementWire\n* `CLSCCPERX` - CLSClearedFXForEurex\n* `CLSCCPLCH` - CLSClearedFXForLCH\n* `COR1` - SEPADirectDebit1DaySettlement\n* `CORAMIPM` - SEPACoreDirectDebitAMI\n* `CORE` - SEPADirectDebitCore\n* `CPP` - CashPerPost\n* `CR1AMIPM` - SEPACoreD1DirectDebitAMI\n* `CRP` - CreditTransferPreferred\n* `CTP` - CustomerTransferPlus\n* `CTR` - CustomerTransfer\n* `CTX` - CorporateTradeExchange\n* `DDFA` - DirectDebitFixedAmount\n* `DDMC` - DirectDebitConfirmedElectronicMandate\n* `DDMP` - DirectDebitPaperMandateWithPaperAuthorisation\n* `DDMU` - DirectDebitUnconfirmedElectronicMandate\n* `DDNR` - CoreNoRefund\n* `DDT` - DirectDebits\n* `DEP` - DepositToSendersAccount\n* `DRB` - BankToBankDrawdownRequestOrResponseNonvalue\n* `DRC` - CustomerOrCorporateDrawdownRequestOrResponseNonvalue\n* `DRW` - DrawdownResponseValueToHonorADrawdownRequest\n* `FADAMIPM` - SEPAFADirectDebitAMI\n* `FFR` - FedFundsReturned\n* `FFS` - FedFundsSold\n* `GST` - TruncatedCreditTransfers\n* `IAT` - InternationalACH\n* `ICMC` - IncidentManagementCorrection\n* `IDEAL` - PaymentsViaInternetOwnedByCurrence\n* `IN` - CrossBorderCustomerCreditTransfer\n* `INST` - InstantCreditTransfer\n* `INSTIDEAL` - PaymentsViaInternetOwnedByCurrenceUsingInstantCreditTransfer\n* `INSTNT01` - InstantCreditTransferNotTimeCritical\n* `INSTNT01IDEAL` - PaymentsViaInternetOwnedByCurrenceUsingInstantCreditTransferNotTimeCritical\n* `INSTTC01` - InstantCreditTransferTimeCritical\n* `INSTTC01IDEAL` - PaymentsViaInternetOwnedByCurrenceUsingInstantCreditTransferTimeCritical\n* `IPA` - InstantPaymentsAruba\n* `ISE` - ImageBasedChequeCollection\n* `ITP` - InstantCreditTransferPreferred\n* `MANP` - MandatedPayment\n* `NLDO` - DutchDomesticBulkPayment\n* `NLGOV` - DirectDebitInitiatedByTheGovernmentWithSpecialConditions\n* `NLUP` - DutchUrgentPayment\n* `ONCL` - Overnight\n* `PERI` - PaymentWithERI\n* `POP` - PointOfPurchase\n* `POS` - PointOfSale\n* `PPD` - PrearrangedPaymentOrDepositConsumerCounterparty\n* `RCK` - RepresentedCheckEntry\n* `RDD` - ReturnedDirectDebits\n* `RIBA` - NonPreauthorisedDirectDebitRIBA\n* `RIDO` - PreauthorisedRevocableDirectDebit\n* `RIDV` - PreauthorisedRevocableUrgentDirectDebit\n* `RTR` - ReturnedCreditTransfers\n* `SBTI` - SettlementBankTransferInitiation\n* `SCN` - RevokedTruncatedChecks\n* `SDCL` - SameDayClearedPayments\n* `SDD` - RevokedDirectDebits\n* `SDN` - PaymentsViaStandaardDigitaleNota\n* `SGT` - RevokedTruncatedCreditTransfers\n* `SRD` - RevokedReturnedDirectDebits\n* `SRT` - RevokedReturnedCreditTransfers\n* `STR` - RevokedCreditTransfers\n* `SVC` - NonValueServiceMessage\n* `TEL` - TelephoneInitiatedEntry\n* `TRF` - CreditTransfers\n* `UDD` - UnauthenticatedDirectDebit\n* `WEB` - InternetInitiatedEntry\n",
            "enum": [
              "0000",
              "0001",
              "0002",
              90,
              91,
              92,
              "0220",
              "0221",
              "0222",
              "0223",
              "0224",
              "0225",
              "0226",
              "0227",
              "04",
              "05",
              8,
              "19",
              "58",
              "60",
              "82",
              "83",
              "85",
              "89",
              "AC01",
              "ACCEPT",
              "ADD",
              "ARC",
              "ASTI",
              "B2B",
              "B2BAMIPM",
              "BACP",
              "BPA",
              "BSE",
              "BTR",
              "CARD",
              "CCD",
              "CCI",
              "CHN",
              "CIE",
              "CKS",
              "CLSCCPERX",
              "CLSCCPLCH",
              "COR1",
              "CORAMIPM",
              "CORE",
              "CPP",
              "CR1AMIPM",
              "CRP",
              "CTP",
              "CTR",
              "CTX",
              "DDFA",
              "DDMC",
              "DDMP",
              "DDMU",
              "DDNR",
              "DDT",
              "DEP",
              "DRB",
              "DRC",
              "DRW",
              "FADAMIPM",
              "FFR",
              "FFS",
              "GST",
              "IAT",
              "ICMC",
              "IDEAL",
              "IN",
              "INST",
              "INSTIDEAL",
              "INSTNT01",
              "INSTNT01IDEAL",
              "INSTTC01",
              "INSTTC01IDEAL",
              "IPA",
              "ISE",
              "ITP",
              "MANP",
              "NLDO",
              "NLGOV",
              "NLUP",
              "ONCL",
              "PERI",
              "POP",
              "POS",
              "PPD",
              "RCK",
              "RDD",
              "RIBA",
              "RIDO",
              "RIDV",
              "RTR",
              "SBTI",
              "SCN",
              "SDCL",
              "SDD",
              "SDN",
              "SGT",
              "SRD",
              "SRT",
              "STR",
              "SVC",
              "TEL",
              "TRF",
              "UDD",
              "WEB"
            ],
            "type": "string"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "LocalInstrumentType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/LocalInstrumentTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/LocalInstrumentTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "ExternalServiceLevel1Code": {
        "description": "* `BKTR` (BookTransaction): Payment through internal book transfer.\n* `G001` (TrackedCustomerCreditTransfer): Tracked Customer Credit Transfer.\n* `G002` (TrackedStopAndRecall): Tracked Stop and Recall\n* `G003` (TrackedOutboundCorporateTransfer): Tracked Outbound Corporate Transfer.\n* `G004` (TrackedFinancialInstitutionTransfer): Tracked Financial Institution Transfer.\n* `NPCA` (NordicPaymentsCouncilAreaTransfer): Payments must be executed following the NPC Area Payment scheme.\n* `NUGP` (NonurgentPriorityPayment): Payment must be executed as a non-urgent transaction with priority settlement.\n* `NURG` (NonurgentPayment): Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction.\n* `PRPT` (EBAPriorityService): Transaction must be processed according to the EBA Priority Service.\n* `SDVA` (SameDayValue): Payment must be executed with same day value to the creditor.\n* `SEPA` (SingleEuroPaymentsArea): Payment must be executed following the Single Euro Payments Area scheme.\n* `SVDE` (DomesticChequeClearingAndSettlement): Payment execution following the cheque agreement and traveller cheque agreement of the German Banking Industry Committee (Die Deutsche Kreditwirtschaft - DK) and Deutsche Bundesbank – Scheck Verrechnung Deutschland.\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.\n* `URNS` (UrgentPaymentNetSettlement): Payment must be executed as an urgent transaction cleared through a real-time net settlement system, which is typically identified as a wire or high value transaction.\n* `INST` (InstantCreditTransferOrInstantDirectDebit): Used for payment initiation to identify that a Payment or Direct Debit initiation must be executed as an instant or real-time payment instrument.\n* `SRTP` (ServiceRequestToPay): Request to Pay (RTP) transaction refers to an RTP scheme (such as for example the SEPA Request to Pay (SRTP) scheme).\n* `SVAT` (ScheckVerarbeitungAustria): Scheck Verarbeitung Austria (Cheque Processing).\n* `G006` (TrackedCaseManagement): Specifies the service conditions applicable to a tracked exceptions and investigations case.\n* `G007` (TrackedInboundCustomerCreditTransfer): Specifies the service level for a tracked inbound customer credit transfer.\n* `G005` (TrackedInstantCustomerCreditTransfer): Tracked Instant Customer Credit Transfer.\n* `G009` (TrackedLowValueCrossBorderCustomerCreditTransfer): Specifies the service level for a tracked low-value cross-border customer credit transfer.\n* `WFSM` (WaitForSettlement): Transaction is to be treated as an advice and only applied to the account of the creditor or next agent after settlement of the cover has been confirmed.\n* `EOLO` (EuroOneLegOut): Payment is executed following a Euro One-Leg Out Scheme.\n* `SPLI` (SplitPayment): A 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.\n",
        "enum": [
          "BKTR",
          "G001",
          "G002",
          "G003",
          "G004",
          "NPCA",
          "NUGP",
          "NURG",
          "PRPT",
          "SDVA",
          "SEPA",
          "SVDE",
          "URGP",
          "URNS",
          "INST",
          "SRTP",
          "SVAT",
          "G006",
          "G007",
          "G005",
          "G009",
          "WFSM",
          "EOLO",
          "SPLI"
        ],
        "type": "string"
      },
      "ServiceLevelCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalServiceLevel1Code"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "ServiceLevel": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ServiceLevelCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ServiceLevelCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "PaymentTypeInformation": {
        "properties": {
          "categoryPurpose": {
            "$ref": "#/components/schemas/CategoryPurpose"
          },
          "localInstrument": {
            "$ref": "#/components/schemas/LocalInstrumentType"
          },
          "serviceLevel": {
            "items": {
              "$ref": "#/components/schemas/ServiceLevel"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "PurposeTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `ACCT` : AccountManagement\n* `ADCS` : AdvisoryDonationCopyrightServices\n* `ADMG` : AdministrativeManagement\n* `ADVA` : AdvancePayment\n* `AEMP` : ActiveEmploymentPolicy\n* `AGRT` : AgriculturalTransfer\n* `AIRB` : Air\n* `ALLW` : Allowance\n* `ALMY` : AlimonyPayment\n* `AMEX` : Amex\n* `ANNI` : Annuity\n* `ANTS` : AnesthesiaServices\n* `AREN` : AccountsReceivablesEntry\n* `AUCO` : AuthenticatedCollections\n* `B112` : TrailerFeePayment\n* `BBSC` : BabyBonusScheme\n* `BCDM` : BearerChequeDomestic\n* `BCFG` : BearerChequeForeign\n* `BECH` : ChildBenefit\n* `BENE` : UnemploymentDisabilityBenefit\n* `BEXP` : BusinessExpenses\n* `BFWD` : BondForward\n* `BKDF` : BankLoanDelayedDrawFunding\n* `BKFE` : BankLoanFees\n* `BKFM` : BankLoanFundingMemo\n* `BKIP` : BankLoanAccruedInterestPayment\n* `BKPP` : BankLoanPrincipalPaydown\n* `BLDM` : BuildingMaintenance\n* `BNET` : BondForwardNetting\n* `BOCE` : BackOfficeConversionEntry\n* `BOND` : Bonds\n* `BONU` : BonusPayment.\n* `BR12` : TrailerFeeRebate\n* `BUSB` : Bus\n* `CABD` : CorporateActions-Bonds\n* `CAEQ` : CorporateActions-Equities\n* `CAFI` : CustodianManagementFeeInhouse\n* `CASH` : CashManagementTransfer\n* `CBCR` : CreditCard\n* `CBFF` : CapitalBuilding\n* `CBFR` : CapitalBuildingRetirement\n* `CBLK` : CardBulkClearing\n* `CBTV` : CableTVBill\n* `CCHD` : CashCompensationHelplessnessDisability\n* `CCIR` : CrossCurrencyIRS\n* `CCPC` : CCPClearedInitialMargin\n* `CCPM` : CCPClearedVariationMargin\n* `CCRD` : CreditCardPayment\n* `CCSM` : CCPClearedInitialMarginSegregatedCash\n* `CDBL` : CreditCardBill\n* `CDCB` : CardPaymentWithCashBack\n* `CDCD` : CashDisbursementCashSettlement\n* `CDCS` : CashDisbursementWithSurcharging\n* `CDDP` : CardDeferredPayment\n* `CDEP` : CreditDefaultEventPayment\n* `CDOC` : OriginalCredit\n* `CDQC` : QuasiCash\n* `CFDI` : CapitalFallingDueInhouse\n* `CFEE` : CancellationFee\n* `CGDD` : CardGeneratedDirectDebit\n* `CHAR` : CharityPayment\n* `CLPR` : CarLoanPrincipalRepayment\n* `CMDT` : CommodityTransfer\n* `COLL` : CollectionPayment\n* `COMC` : CommercialPayment\n* `COMM` : Commission\n* `COMP` : CompensationPayment\n* `COMT` : ConsumerThirdPartyConsolidatedPayment\n* `CORT` : TradeSettlementPayment\n* `COST` : Costs\n* `CPKC` : CarparkCharges\n* `CPYR` : Copyright\n* `CRDS` : CreditDefaultSwap\n* `CRPR` : CrossProduct\n* `CRSP` : CreditSupport\n* `CRTL` : CreditLine\n* `CSDB` : CashDisbursementCashManagement\n* `CSLP` : CompanySocialLoanPaymentToBank\n* `CVCF` : ConvalescentCareFacility\n* `DBCR` : DebitCard\n* `DBTC` : DebitCollectionPayment\n* `DCRD` : DebitCardPayment\n* `DEPT` : Deposit\n* `DERI` : Derivatives\n* `DICL` : Diners\n* `DIVD` : Dividend\n* `DMEQ` : DurableMedicaleEquipment\n* `DNTS` : DentalServices\n* `DSMT` : PrintedOrderDisbursement\n* `DVPM` : DeliverAgainstPayment\n* `ECPG` : GuaranteedEPayment\n* `ECPR` : EPaymentReturn\n* `ECPU` : NonGuaranteedEPayment\n* `EDUC` : Education\n* `EFTC` : LowValueCredit\n* `EFTD` : LowValueDebit\n* `ELEC` : ElectricityBill\n* `ENRG` : Energies\n* `EPAY` : Epayment\n* `EQPT` : EquityOption\n* `EQTS` : Equities\n* `EQUS` : EquitySwap\n* `ESTX` : EstateTax\n* `ETUP` : EPurseTopUp\n* `EXPT` : ExoticOption\n* `EXTD` : ExchangeTradedDerivatives\n* `FACT` : FactorUpdateRelatedPayment\n* `FAND` : FinancialAidInCaseOfNaturalDisaster\n* `FCOL` : FeeCollection\n* `FCPM` : LatePaymentOfFeesAndCharges\n* `FEES` : PaymentOfFees\n* `FERB` : Ferry\n* `FIXI` : FixedIncome\n* `FLCR` : FleetCard\n* `FNET` : FuturesNettingPayment\n* `FORW` : ForwardForeignExchange\n* `FREX` : ForeignExchange\n* `FUTR` : Futures\n* `FWBC` : ForwardBrokerOwnedCashCollateral\n* `FWCC` : ForwardClientOwnedCashCollateral\n* `FWLV` : ForeignWorkerLevy\n* `FWSB` : ForwardBrokerOwnedCashCollateralSegregated\n* `FWSC` : ForwardClientOwnedSegregatedCashCollateral\n* `FXNT` : ForeignExchangeRelatedNetting\n* `GAFA` : GovernmentFamilyAllowance\n* `GAHO` : GovernmentHousingAllowance\n* `GAMB` : GamblingOrWageringPayment\n* `GASB` : GasBill\n* `GDDS` : PurchaseSaleOfGoods\n* `GDSV` : PurchaseSaleOfGoodsAndServices\n* `GFRP` : GuaranteeFundRightsPayment\n* `GIFT` : Gift\n* `GOVI` : GovernmentInsurance\n* `GOVT` : GovernmentPayment\n* `GSCB` : PurchaseSaleOfGoodsAndServicesWithCashBack\n* `GSTX` : GoodsServicesTax\n* `GVEA` : AustrianGovernmentEmployeesCategoryA\n* `GVEB` : AustrianGovernmentEmployeesCategoryB\n* `GVEC` : AustrianGovernmentEmployeesCategoryC\n* `GVED` : AustrianGovernmentEmployeesCategoryD\n* `GWLT` : GovermentWarLegislationTransfer\n* `HEDG` : Hedging\n* `HLRP` : PropertyLoanRepayment\n* `HLST` : PropertyLoanSettlement\n* `HLTC` : HomeHealthCare\n* `HLTI` : HealthInsurance\n* `HREC` : HousingRelatedContribution\n* `HSPC` : HospitalCare\n* `HSTX` : HousingTax\n* `ICCP` : IrrevocableCreditCardPayment\n* `ICRF` : IntermediateCareFacility\n* `IDCP` : IrrevocableDebitCardPayment\n* `IHRP` : InstalmentHirePurchaseAgreement\n* `INPC` : InsurancePremiumCar\n* `INPR` : InsurancePremiumRefund\n* `INSC` : PaymentOfInsuranceClaim\n* `INSM` : Installment\n* `INSU` : InsurancePremium\n* `INTC` : IntraCompanyPayment\n* `INTE` : Interest\n* `INTP` : IntraPartyPayment\n* `INTX` : IncomeTax\n* `INVS` : InvestmentAndSecurities\n* `IPAY` : InstantPayments\n* `IPCA` : InstantPaymentsCancellation\n* `IPDO` : InstantPaymentsForDonations\n* `IPEA` : InstantPaymentsInECommerceWithoutAddressData\n* `IPEC` : InstantPaymentsInECommerceWithAddressData\n* `IPEW` : InstantPaymentsInECommerce\n* `IPPS` : InstantPaymentsAtPOS\n* `IPRT` : InstantPaymentsReturn\n* `IPU2` : InstantPaymentsUnattendedVendingMachineWith2FA\n* `IPUW` : InstantPaymentsUnattendedVendingMachineWithout2FA\n* `IVPT` : InvoicePayment\n* `LBIN` : LendingBuyInNetting\n* `LBRI` : LaborInsurance\n* `LCOL` : LendingCashCollateralFreeMovement\n* `LFEE` : LendingFees\n* `LICF` : LicenseFee\n* `LIFI` : LifeInsurance\n* `LIMA` : LiquidityManagement\n* `LMEQ` : LendingEquityMarkedToMarketCashCollateral\n* `LMFI` : LendingFixedIncomeMarkedToMarketCashCollateral\n* `LMRK` : LendingUnspecifiedTypeOfMarkedToMarketCashCollateral\n* `LOAN` : Loan\n* `LOAR` : LoanRepayment\n* `LOTT` : LotteryPayment\n* `LREB` : LendingRebatePayments\n* `LREV` : LendingRevenuePayments\n* `LSFL` : LendingClaimPayment\n* `LTCF` : LongTermCareFacility\n* `MAFC` : MedicalAidFundContribution\n* `MARF` : MedicalAidRefund\n* `MARG` : DailyMarginOnListedDerivatives\n* `MBSB` : MBSBrokerOwnedCashCollateral\n* `MBSC` : MBSClientOwnedCashCollateral\n* `MCDM` : MultiCurrenyChequeDomestic\n* `MCFG` : MultiCurrenyChequeForeign\n* `MDCS` : MedicalServices\n* `MGCC` : FuturesInitialMargin\n* `MGSC` : FuturesInitialMarginClientOwnedSegregatedCashCollateral\n* `MOMA` : MoneyMarket\n* `MP2B` : MobileP2BPayment\n* `MP2P` : MobileP2PPayment\n* `MSVC` : MultipleServiceTypes\n* `MTUP` : MobileTopUp\n* `NETT` : Netting\n* `NITX` : NetIncomeTax\n* `NOWS` : NotOtherwiseSpecified\n* `NWCH` : NetworkCharge\n* `NWCM` : NetworkCommunication\n* `OCCC` : ClientOwnedOCCPledgedCollateral\n* `OCDM` : OrderChequeDomestic\n* `OCFG` : OrderChequeForeign\n* `OFEE` : OpeningFee\n* `OPBC` : OTCOptionBrokerOwnedCashCollateral\n* `OPCC` : OTCOptionClientOwnedCashCollateral\n* `OPSB` : OTCOptionBrokerOwnedSegregatedCashCollateral\n* `OPSC` : OTCOptionClientOwnedCashSegregatedCashCollateral\n* `OPTN` : FXOption\n* `OTCD` : OTCDerivatives\n* `OTHR` : Other\n* `OTLC` : OtherTelecomRelatedBill\n* `PADD` : PreauthorizedDebit\n* `PAYR` : Payroll\n* `PCOM` : PropertyCompletionPayment\n* `PDEP` : PropertyDeposit\n* `PEFC` : PensionFundContribution\n* `PENO` : PaymentBasedOnEnforcementOrder\n* `PENS` : PensionPayment\n* `PHON` : TelephoneBill\n* `PLDS` : PropertyLoanDisbursement\n* `PLRF` : PropertyLoanRefinancing\n* `POPE` : PointOfPurchaseEntry\n* `PPTI` : PropertyInsurance\n* `PRCP` : PricePayment\n* `PRME` : PreciousMetal\n* `PTSP` : PaymentTerms\n* `PTXP` : PropertyTax\n* `RAPI` : RapidPaymentInstruction\n* `RCKE` : RepresentedCheckEntry\n* `RCPT` : ReceiptPayment\n* `RDTX` : RoadTax\n* `REBT` : Rebate\n* `REFU` : Refund\n* `RELG` : RentalLeaseGeneral\n* `RENT` : Rent\n* `REOD` : AccountOverdraftRepayment\n* `REPO` : RepurchaseAgreement\n* `RHBS` : RehabilitationSupport\n* `RIMB` : ReimbursementOfAPreviousErroneousTransaction\n* `RINP` : RecurringInstallmentPayment\n* `RLWY` : Railway\n* `ROYA` : Royalties\n* `RPBC` : BilateralRepoBrokerOwnedCollateral\n* `RPCC` : RepoClientOwnedCollateral\n* `RPNT` : BilateralRepoInternetNetting\n* `RPSB` : BilateralRepoBrokerOwnedSegregatedCashCollateral\n* `RPSC` : BilateralRepoClientOwnedSegregatedCashCollateral\n* `RRBN` : RoundRobin\n* `RRCT` : ReimbursementReceivedCreditTransfer\n* `RRTP` : RelatedRequestToPay\n* `RVPM` : ReceiveAgainstPayment\n* `RVPO` : ReverseRepurchaseAgreement\n* `SALA` : SalaryPayment\n* `SASW` : ATM\n* `SAVG` : Savings\n* `SBSC` : SecuritiesBuySellSellBuyBack\n* `SCIE` : SingleCurrencyIRSExotic\n* `SCIR` : SingleCurrencyIRS\n* `SCRP` : SecuritiesCrossProducts\n* `SCVE` : PurchaseSaleOfServices\n* `SECU` : Securities\n* `SEPI` : SecuritiesPurchaseInhouse\n* `SERV` : ServiceCharges\n* `SHBC` : BrokerOwnedCollateralShortSale\n* `SHCC` : ClientOwnedCollateralShortSale\n* `SHSL` : ShortSell\n* `SLEB` : SecuritiesLendingAndBorrowing\n* `SLOA` : SecuredLoan\n* `SLPI` : PaymentSlipInstruction\n* `SPLT` : SplitPayments\n* `SPSP` : SalaryPensionSumPayment\n* `SSBE` : SocialSecurityBenefit\n* `STDY` : Study\n* `SUBS` : Subscription\n* `SUPP` : SupplierPayment\n* `SWBC` : SwapBrokerOwnedCashCollateral\n* `SWCC` : SwapClientOwnedCashCollateral\n* `SWFP` : SwapContractFinalPayment\n* `SWPP` : SwapContractPartialPayment\n* `SWPT` : Swaption\n* `SWRS` : SwapContractResetPayment\n* `SWSB` : SwapsBrokerOwnedSegregatedCashCollateral\n* `SWSC` : SwapsClientOwnedSegregatedCashCollateral\n* `SWUF` : SwapContractUpfrontPayment\n* `TAXR` : TaxRefund\n* `TAXS` : TaxPayment\n* `TBAN` : TBAPairOffNetting\n* `TBAS` : ToBeAnnounced\n* `TBBC` : TBABrokerOwnedCashCollateral\n* `TBCC` : TBAClientOwnedCashCollateral\n* `TBIL` : TelecommunicationsBill\n* `TCSC` : TownCouncilServiceCharges\n* `TELI` : TelephoneInitiatedTransaction\n* `TLRF` : NonUSMutualFundTrailerFeePayment\n* `TLRR` : NonUSMutualFundTrailerFeeRebatePayment\n* `TMPG` : TMPGClaimPayment\n* `TPRI` : TriPartyRepoInterest\n* `TPRP` : TriPartyRepoNetting\n* `TRAD` : Commercial\n* `TRCP` : TreasuryCrossProduct\n* `TREA` : TreasuryPayment\n* `TRFD` : TrustFund\n* `TRNC` : TruncatedPaymentSlip\n* `TRPT` : RoadPricing\n* `TRVC` : TravellerCheque\n* `UBIL` : Utilities\n* `UNIT` : UnitTrustPurchase\n* `VATX` : ValueAddedTaxPayment\n* `VIEW` : VisionCare\n* `WEBI` : InternetInitiatedTransaction\n* `WHLD` : WithHolding\n* `WTER` : WaterBill\n",
            "enum": [
              "BKDF",
              "BKFE",
              "BKFM",
              "BKIP",
              "BKPP",
              "CBLK",
              "CDCB",
              "CDCD",
              "CDCS",
              "CDDP",
              "CDOC",
              "CDQC",
              "ETUP",
              "FCOL",
              "MTUP",
              "ACCT",
              "CASH",
              "COLL",
              "CSDB",
              "DEPT",
              "INTC",
              "INTP",
              "LIMA",
              "NETT",
              "BFWD",
              "CCIR",
              "CCPC",
              "CCPM",
              "CCSM",
              "CRDS",
              "CRPR",
              "CRSP",
              "CRTL",
              "EQPT",
              "EQUS",
              "EXPT",
              "EXTD",
              "FIXI",
              "FWBC",
              "FWCC",
              "FWSB",
              "FWSC",
              "MARG",
              "MBSB",
              "MBSC",
              "MGCC",
              "MGSC",
              "OCCC",
              "OPBC",
              "OPCC",
              "OPSB",
              "OPSC",
              "OPTN",
              "OTCD",
              "REPO",
              "RPBC",
              "RPCC",
              "RPSB",
              "RPSC",
              "RVPO",
              "SBSC",
              "SCIE",
              "SCIR",
              "SCRP",
              "SHBC",
              "SHCC",
              "SHSL",
              "SLEB",
              "SLOA",
              "SWBC",
              "SWCC",
              "SWPT",
              "SWSB",
              "SWSC",
              "TBAS",
              "TBBC",
              "TBCC",
              "TRCP",
              "AGRT",
              "AREN",
              "BEXP",
              "BOCE",
              "COMC",
              "CPYR",
              "GDDS",
              "GDSV",
              "GSCB",
              "LICF",
              "MP2B",
              "POPE",
              "ROYA",
              "SCVE",
              "SERV",
              "SUBS",
              "SUPP",
              "TRAD",
              "CHAR",
              "COMT",
              "MP2P",
              "ECPG",
              "ECPR",
              "ECPU",
              "EPAY",
              "CLPR",
              "COMP",
              "DBTC",
              "GOVI",
              "HLRP",
              "HLST",
              "INPC",
              "INPR",
              "INSC",
              "INSU",
              "INTE",
              "LBRI",
              "LIFI",
              "LOAN",
              "LOAR",
              "PENO",
              "PPTI",
              "RELG",
              "RINP",
              "TRFD",
              "FORW",
              "FXNT",
              "ADMG",
              "ADVA",
              "BCDM",
              "BCFG",
              "BLDM",
              "BNET",
              "CBFF",
              "CBFR",
              "CCRD",
              "CDBL",
              "CFEE",
              "CGDD",
              "CORT",
              "COST",
              "CPKC",
              "DCRD",
              "DSMT",
              "DVPM",
              "EDUC",
              "FACT",
              "FAND",
              "FCPM",
              "FEES",
              "GIFT",
              "GOVT",
              "ICCP",
              "IDCP",
              "IHRP",
              "INSM",
              "IVPT",
              "MCDM",
              "MCFG",
              "MSVC",
              "NOWS",
              "OCDM",
              "OCFG",
              "OFEE",
              "OTHR",
              "PADD",
              "PTSP",
              "RCKE",
              "RCPT",
              "REBT",
              "REFU",
              "RENT",
              "REOD",
              "RIMB",
              "RPNT",
              "RRBN",
              "RRCT",
              "RRTP",
              "RVPM",
              "SLPI",
              "SPLT",
              "STDY",
              "TBAN",
              "TBIL",
              "TCSC",
              "TELI",
              "TMPG",
              "TPRI",
              "TPRP",
              "TRNC",
              "TRVC",
              "WEBI",
              "IPAY",
              "IPCA",
              "IPDO",
              "IPEA",
              "IPEC",
              "IPEW",
              "IPPS",
              "IPRT",
              "IPU2",
              "IPUW",
              "ANNI",
              "CAFI",
              "CFDI",
              "CMDT",
              "DERI",
              "DIVD",
              "FREX",
              "HEDG",
              "INVS",
              "PRME",
              "SAVG",
              "SECU",
              "SEPI",
              "TREA",
              "UNIT",
              "FNET",
              "FUTR",
              "ANTS",
              "CVCF",
              "DMEQ",
              "DNTS",
              "HLTC",
              "HLTI",
              "HSPC",
              "ICRF",
              "LTCF",
              "MAFC",
              "MARF",
              "MDCS",
              "VIEW",
              "CDEP",
              "SWFP",
              "SWPP",
              "SWRS",
              "SWUF",
              "ADCS",
              "AEMP",
              "ALLW",
              "ALMY",
              "BBSC",
              "BECH",
              "BENE",
              "BONU",
              "CCHD",
              "COMM",
              "CSLP",
              "GFRP",
              "GVEA",
              "GVEB",
              "GVEC",
              "GVED",
              "GWLT",
              "HREC",
              "PAYR",
              "PEFC",
              "PENS",
              "PRCP",
              "RHBS",
              "SALA",
              "SPSP",
              "SSBE",
              "LBIN",
              "LCOL",
              "LFEE",
              "LMEQ",
              "LMFI",
              "LMRK",
              "LREB",
              "LREV",
              "LSFL",
              "ESTX",
              "FWLV",
              "GSTX",
              "HSTX",
              "INTX",
              "NITX",
              "PTXP",
              "RDTX",
              "TAXS",
              "VATX",
              "WHLD",
              "TAXR",
              "B112",
              "BR12",
              "TLRF",
              "TLRR",
              "AIRB",
              "BUSB",
              "FERB",
              "RLWY",
              "TRPT",
              "CBTV",
              "ELEC",
              "ENRG",
              "GASB",
              "NWCH",
              "NWCM",
              "OTLC",
              "PHON",
              "UBIL",
              "WTER",
              "BOND",
              "CABD",
              "CAEQ",
              "CBCR",
              "DBCR",
              "DICL",
              "EQTS",
              "FLCR",
              "EFTC",
              "EFTD",
              "MOMA",
              "RAPI",
              "GAMB",
              "LOTT",
              "GAFA",
              "GAHO",
              "AMEX",
              "SASW",
              "AUCO",
              "PCOM",
              "PDEP",
              "PLDS",
              "PLRF"
            ],
            "type": "string"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "PurposeType": {
        "description": "Specifies the underlying reason for the payment transaction",
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/PurposeTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/PurposeTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "CreditorReferenceType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/CreditorReferenceTypeCode",
            "PROPRIETARY": "#/components/schemas/CreditorReferenceTypeProprietary"
          },
          "propertyName": "schema"
        },
        "properties": {
          "issuer": {
            "description": "Entity that assigns the credit reference type",
            "maxLength": 35,
            "type": "string"
          },
          "schema": {
            "description": "Identifies the value as being either proprietary (`PROPRIETARY`) or as being a pre-defined code (`CODE`).\n",
            "enum": [
              "CODE",
              "PROPRIETARY"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "CreditorReferenceTypeCode": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CreditorReferenceType"
          },
          {
            "description": "Specifies the type of creditor reference.",
            "properties": {
              "value": {
                "description": "* `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* `FXDR` (ForeignExchangeDealReference): Document is a pre-agreed or pre- arranged foreign exchange transaction to which the payment transaction refers.\n* `DISP` (DispatchAdvice): Document is a dispatch advice.\n* `PUOR` (PurchaseOrder): Document is a purchase order.\n* `SCOR` (StructuredCommunicationReference): Document is a structured communication reference provided by the creditor to identify the referred transaction.\n",
                "enum": [
                  "RADM",
                  "RPIN",
                  "FXDR",
                  "DISP",
                  "PUOR",
                  "SCOR"
                ],
                "type": "string"
              }
            },
            "required": [
              "value"
            ],
            "type": "object"
          }
        ],
        "type": "object"
      },
      "CreditorReferenceTypeProprietary": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CreditorReferenceType"
          },
          {
            "properties": {
              "value": {
                "$ref": "#/components/schemas/ProprietaryValueLiteral"
              }
            },
            "required": [
              "value"
            ],
            "type": "object"
          }
        ],
        "type": "object"
      },
      "CreditorReference": {
        "properties": {
          "reference": {
            "description": "Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction.",
            "maxLength": 35,
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/CreditorReferenceType"
          }
        },
        "type": "object"
      },
      "ContactDetails": {
        "properties": {
          "emailAddress": {
            "format": "email",
            "type": "string"
          },
          "mobileNumber": {
            "$ref": "#/components/schemas/PhoneNumber"
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/PhoneNumber"
          }
        },
        "type": "object"
      },
      "OrganisationIdentifierBic": {
        "description": "An organisation identified by a code allocated to a financial or non-financial institution by the ISO 9362\nRegistration Authority, as described in ISO 9362: 2014 - Banking - Banking telecommunication messages -\nBusiness identifier code (BIC).\n",
        "properties": {
          "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"
          },
          "schema": {
            "description": "Indicates the identifier as a BIC organisation identifier, always `BIC`",
            "type": "string"
          }
        },
        "required": [
          "BIC",
          "schema"
        ],
        "type": "object"
      },
      "OrganisationIdentifierLei": {
        "description": "An organisation identified by a code allocated to a party as described in ISO 17442 Financial Services -\nLegal Entity Identifier (LEI).\n",
        "properties": {
          "LEI": {
            "pattern": "[A-Z0-9]{18,18}[0-9]{2,2}",
            "type": "string"
          },
          "schema": {
            "description": "Indicates the identifier as a LEI organisation identifier, always `LEI`",
            "type": "string"
          }
        },
        "required": [
          "LEI",
          "schema"
        ],
        "type": "object"
      },
      "OrganisationIdentificationCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `BANK` : BankPartyIdentification. Unique and unambiguous assignment made by a specific bank or similar financial institution to identify a relationship as defined between the bank and its client.\n* `CBID` : CentralBankIdentificationNumber. A unique identification number assigned by a central bank to identify an organisation.\n* `CHID` : ClearingIdentificationNumber. A unique identification number assigned by a clearing house to identify an organisation\n* `CINC` : CertificateOfIncorporationNumber. A unique identification number assigned by a designated authority to a certificate of incorporation and used to identify an organisation.\n* `COID` : CountryIdentificationCode. Country authority given organisation identification (e.g., corporate registration number)\n* `CUST` : CustomerNumber. Number assigned by an issuer to identify a customer or number assigned by a party to identify a creditor or debtor relationship.\n* `DUNS` : DataUniversalNumberingSystem. A unique identification number provided by Dun & Bradstreet to identify an organisation.\n* `EMPL` : EmployerIdentificationNumber. Number assigned by a registration authority to an employer.\n* `GS1G` : GS1GLNIdentifier. Global Location Number. A non-significant reference number used to identify legal entities, functional entities, or physical entities according to GS1 numbering scheme rules.The number is used to retrieve detailed information that is linked to it.\n* `SREN` : SIREN. The SIREN number is a 9 digit code assigned by INSEE, the French National Institute for Statistics and Economic Studies, to identify an organisation in France.\n* `SRET` : SIRET. The SIRET number is a 14 digit code assigned by INSEE, the French National Institute for Statistics and Economic Studies, to identify an organisation unit in France. It consists of the SIREN number, followed by a five digit classification number, to identify the local geographical unit of that entity\n* `TXID` : TaxIdentificationNumber. Number assigned by a tax authority to identify an organisation.\n* `BDID` : BusinessDomainIdentifier. Identifier of the business domain in which the organisation is active.\n* `BOID` : BusinessOtherIdentification. Other identification of the organisation.\n",
            "enum": [
              "BANK",
              "CBID",
              "CHID",
              "CINC",
              "COID",
              "CUST",
              "DUNS",
              "EMPL",
              "GS1G",
              "SREN",
              "SRET",
              "TXID",
              "BDID",
              "BOID"
            ],
            "type": "string"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "OrganisationIdentifierScheme": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/OrganisationIdentificationCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/OrganisationIdentificationCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "OrganisationIdentifierOther": {
        "description": "A unique identification of an organisation, as assigned by an institution, using an identification scheme.\n",
        "properties": {
          "identification": {
            "maxLength": 35,
            "type": "string"
          },
          "issuer": {
            "description": "The name of the entity that assigns the identification",
            "maxLength": 35,
            "type": "string"
          },
          "schema": {
            "description": "Indicates the identifier as a unique identification of an organisation, as assigned by an institution. Always `OTHER`",
            "type": "string"
          },
          "scheme": {
            "$ref": "#/components/schemas/OrganisationIdentifierScheme"
          }
        },
        "required": [
          "identification",
          "schema"
        ],
        "type": "object"
      },
      "OrganisationIdentifier": {
        "description": "Holds identification details for an organisation.",
        "discriminator": {
          "mapping": {
            "BIC": "#/components/schemas/OrganisationIdentifierBic",
            "LEI": "#/components/schemas/OrganisationIdentifierLei",
            "OTHER": "#/components/schemas/OrganisationIdentifierOther"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/OrganisationIdentifierBic"
          },
          {
            "$ref": "#/components/schemas/OrganisationIdentifierLei"
          },
          {
            "$ref": "#/components/schemas/OrganisationIdentifierOther"
          }
        ],
        "type": "object"
      },
      "OrganisationIdentification": {
        "properties": {
          "identifiers": {
            "items": {
              "$ref": "#/components/schemas/OrganisationIdentifier"
            },
            "type": "array"
          },
          "schema": {
            "description": "Identifies the party as an organisation, always `ORGANISATION`",
            "type": "string"
          }
        },
        "required": [
          "identifiers",
          "schema"
        ],
        "type": "object"
      },
      "PersonIdentificationCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `ARNU`: AlienRegistrationNumber. A number assigned by a social security agency to identify a non-resident person.\n* `BANK`: BankPartyIdentification. Unique and unambiguous identification of a person using bank account number.\n* `CCPT`: PassportNumber. A number assigned by an authority to identify the passport number of a person.\n* `CUST`: CustomerIdentificationNumber. A number assigned by an issuer to identify a customer.\n* `DRLC`: DriversLicenseNumber. A number assigned by an authority to identify a driver's license.\n* `EMPL`: EmployeeIdentificationNumber. A number assigned by a registration authority to an employee.\n* `NIDN`: NationalIdentityNumber. A number assigned by an authority to identify the national identity number of a person.\n* `SOSE`: SocialSecurityNumber. A number assigned by an authority to identify the social security number of a person.\n* `TELE`: TelephoneNumber. A number assigned by a telephone or mobile phone operator to identify a person. A person may have multiple phone numbers.\n* `TXID`: TaxIdentificationNumber. A number assigned by a tax authority to identify a person.\n* `POID`: PersonOtherIdentification. Other identification of the person.\n",
            "enum": [
              "ARNU",
              "BANK",
              "CCPT",
              "CUST",
              "DRLC",
              "EMPL",
              "NIDN",
              "SOSE",
              "TELE",
              "TXID",
              "POID"
            ],
            "type": "string"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "PersonIdentifierScheme": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/PersonIdentificationCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/PersonIdentificationCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "PersonIdentifier": {
        "properties": {
          "identification": {
            "description": "Unique and unambiguous identification of a person, for example a passport.\n",
            "maxLength": 35,
            "type": "string"
          },
          "issuer": {
            "description": "The entity that assigns the identification",
            "maxLength": 35,
            "type": "string"
          },
          "scheme": {
            "$ref": "#/components/schemas/PersonIdentifierScheme"
          }
        },
        "required": [
          "identification"
        ],
        "type": "object"
      },
      "PersonIdentification": {
        "properties": {
          "identifiers": {
            "items": {
              "$ref": "#/components/schemas/PersonIdentifier"
            },
            "type": "array"
          },
          "schema": {
            "description": "Identifies the party as a person, always `PERSON`\n",
            "type": "string"
          }
        },
        "required": [
          "identifiers",
          "schema"
        ],
        "type": "object"
      },
      "PartyIdentification": {
        "description": "The identification of a party, either a person or an organisation.\n",
        "discriminator": {
          "mapping": {
            "ORGANISATION": "#/components/schemas/OrganisationIdentification",
            "PERSON": "#/components/schemas/PersonIdentification"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/PersonIdentification"
          },
          {
            "$ref": "#/components/schemas/OrganisationIdentification"
          }
        ],
        "type": "object"
      },
      "Party": {
        "description": "This model is the basic representation of a Party. It is expanded on depending on whether the party is a person\nor an organisation.\n",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/PostalAddress"
          },
          "contactDetails": {
            "$ref": "#/components/schemas/ContactDetails"
          },
          "countryOfResidence": {
            "$ref": "#/components/schemas/CountryCode"
          },
          "identification": {
            "$ref": "#/components/schemas/PartyIdentification"
          },
          "knownAsName": {
            "description": "The name by which this party is commonly known in day to day use. For example, a shortening of their legal\nname or a nickname that they commonly use. This is \"non-official\". However, it is acceptable for this field\nto be set to the same as `legalName`.\n",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          },
          "legalName": {
            "description": "The legal name by which this party is known (the \"FICA\" name). This is the full name of the party\nas found on country-issued documentation (national identity, company registration documentation etc).\n",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "ReferredDocumentAmount": {
        "properties": {
          "duePayableAmount": {
            "$ref": "#/components/schemas/Amount",
            "description": "Amount specified is the exact amount due and payable to the creditor."
          },
          "remittedAmount": {
            "$ref": "#/components/schemas/Amount",
            "description": "Amount of money remitted for the referred document."
          }
        },
        "type": "object"
      },
      "ReferredDocumentType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ReferredDocumentTypeCode",
            "PROPRIETARY": "#/components/schemas/ReferredDocumentTypeProprietary"
          },
          "propertyName": "schema"
        },
        "properties": {
          "issuer": {
            "description": "Identification of the issuer of the reference document _type_.",
            "maxLength": 35,
            "type": "string"
          },
          "schema": {
            "description": "Identifies the value as being either proprietary (`PROPRIETARY`) or as being a pre-defined code (`CODE`).\n",
            "enum": [
              "CODE",
              "PROPRIETARY"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ReferredDocumentTypeCode": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ReferredDocumentType"
          },
          {
            "description": "Specifies the type of referred document",
            "properties": {
              "value": {
                "description": "* `AROI` : AccountReceivableOpenItem\n* `BOLD` : BillOfLading\n* `CINV` : CommercialInvoice\n* `CMCN` : CommercialContract\n* `CNFA` : CreditNoteRelatedToFinancialAdjustment\n* `CREN` : CreditNote\n* `DEBN` : DebitNote\n* `DISP` : DispatchAdvice\n* `DNFA` : DebitNoteRelatedToFinancialAdjustment\n* `HIRI` : HireInvoice\n* `MSIN` : MeteredServiceInvoice\n* `PUOR` : PurchaseOrder\n* `SBIN` : SelfBilledInvoice\n* `SOAC` : StatementOfAccount\n* `TSUT` : TradeServicesUtilityTransaction\n* `VCHR` : Voucher\n",
                "enum": [
                  "AROI",
                  "BOLD",
                  "CINV",
                  "CMCN",
                  "CNFA",
                  "CREN",
                  "DEBN",
                  "DISP",
                  "DNFA",
                  "HIRI",
                  "MSIN",
                  "PUOR",
                  "SBIN",
                  "SOAC",
                  "TSUT",
                  "VCHR"
                ],
                "type": "string"
              }
            },
            "required": [
              "value"
            ],
            "type": "object"
          }
        ],
        "type": "object"
      },
      "ReferredDocumentTypeProprietary": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ReferredDocumentType"
          },
          {
            "properties": {
              "value": {
                "$ref": "#/components/schemas/ProprietaryValueLiteral"
              }
            },
            "required": [
              "value"
            ],
            "type": "object"
          }
        ],
        "type": "object"
      },
      "ReferredDocument": {
        "properties": {
          "documentIdentifier": {
            "description": "Unique and unambiguous identification of the referred document.",
            "maxLength": 35,
            "type": "string"
          },
          "relatedDate": {
            "description": "The date associated with the referred document.",
            "format": "date",
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/ReferredDocumentType"
          }
        },
        "type": "object"
      },
      "TaxParty": {
        "properties": {
          "registrationIdentification": {
            "description": "Unique identification, as assigned by an organisation, to unambiguously identify a party",
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "taxIdentification": {
            "description": "Tax identification number",
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "taxType": {
            "description": "Type of tax payer.",
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "TaxAuthorisation": {
        "properties": {
          "name": {
            "description": "Name of the tax payer or tax payer's authorised representative",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          },
          "title": {
            "description": "Title or position of the tax payer or tax payer's authorised representative",
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "AuthorisedTaxParty": {
        "allOf": [
          {
            "$ref": "#/components/schemas/TaxParty"
          },
          {
            "properties": {
              "authorisation": {
                "$ref": "#/components/schemas/TaxAuthorisation"
              }
            },
            "type": "object"
          }
        ]
      },
      "TaxRemittance": {
        "properties": {
          "creditor": {
            "$ref": "#/components/schemas/TaxParty"
          },
          "date": {
            "description": "Date by which tax is due",
            "format": "date",
            "type": "string"
          },
          "debtor": {
            "$ref": "#/components/schemas/AuthorisedTaxParty"
          },
          "referenceNumber": {
            "description": "Tax reference information that is specific to a taxing agency.",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          },
          "sequenceNumber": {
            "description": "Sequential number of the tax report.",
            "format": "int64",
            "type": "integer"
          },
          "totalTaxAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "totalTaxableBaseAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "ultimateDebtor": {
            "$ref": "#/components/schemas/AuthorisedTaxParty"
          }
        },
        "type": "object"
      },
      "StructuredRemittanceInformation": {
        "properties": {
          "additionalRemittanceInformation": {
            "items": {
              "maxLength": 140,
              "type": "string"
            },
            "maxItems": 3,
            "type": "array"
          },
          "creditorReference": {
            "$ref": "#/components/schemas/CreditorReference"
          },
          "invoicer": {
            "$ref": "#/components/schemas/Party"
          },
          "originatorReference": {
            "description": "An explanation of the transaction, this field may be used to capture the information which may then be displayed on the payment originator's bank statement (ie. the debtor for a credit transfer or the creditor for a direct debit). This field is not supported by all Electrum partner implementations, and will be ignored if provided in an unsupported use-case.",
            "maxLength": 35,
            "type": "string"
          },
          "referredDocumentAmount": {
            "$ref": "#/components/schemas/ReferredDocumentAmount"
          },
          "referredDocuments": {
            "items": {
              "$ref": "#/components/schemas/ReferredDocument"
            },
            "type": "array"
          },
          "taxRemittance": {
            "$ref": "#/components/schemas/TaxRemittance"
          }
        },
        "type": "object"
      },
      "RemittanceInformation": {
        "properties": {
          "structured": {
            "items": {
              "$ref": "#/components/schemas/StructuredRemittanceInformation"
            },
            "type": "array"
          },
          "unstructured": {
            "items": {
              "maxLength": 140,
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "BaseOriginalTransactionData": {
        "properties": {
          "amounts": {
            "$ref": "#/components/schemas/TransactionAmounts"
          },
          "creditorAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "creditorAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "creditorAgentAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "debtorAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "debtorAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "debtorAgentAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/PaymentMethod",
            "description": "Specifies the means of payment for the original transaction.\n"
          },
          "paymentTypeInformation": {
            "$ref": "#/components/schemas/PaymentTypeInformation"
          },
          "purpose": {
            "$ref": "#/components/schemas/PurposeType"
          },
          "remittanceInformation": {
            "$ref": "#/components/schemas/RemittanceInformation"
          },
          "settlementDate": {
            "description": "Date on which the amount of money ceases to be available to the agent that owes it and when the amount of\nmoney becomes available to the agent to which it is due.\n",
            "format": "date",
            "type": "string"
          },
          "supplementaryData": {
            "$ref": "#/components/schemas/SupplementaryData"
          }
        },
        "type": "object"
      },
      "OriginalTransactionData": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOriginalTransactionData"
          },
          {
            "properties": {
              "creditor": {
                "$ref": "#/components/schemas/Party"
              },
              "debtor": {
                "$ref": "#/components/schemas/Party"
              },
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              }
            },
            "type": "object"
          }
        ],
        "description": "Contains key elements related to the original transaction that is being referred to.\n"
      },
      "CbprPlusPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "TcibPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaAcPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaEftPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaRppPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaRtcCreditTransferPaymentSchemeData": {
        "properties": {
          "businessReference": {
            "description": "Business reference number. The first two numeric digits identify the bank and the last 8\ncharacters contain a unique alphanumeric value generated by the originating bank (unique for the\ntransaction).\n",
            "maxLength": 10,
            "pattern": "^\\d{2}[\\dA-z]{8}$",
            "type": "string"
          },
          "originatorEchoData": {
            "description": "Echo data reserved for originator use. Must remain unaltered by the beneficiary.",
            "maxLength": 20,
            "pattern": "^[\\dA-z ]*$",
            "type": "string"
          },
          "userReference": {
            "description": "An explanation of the transaction, e.g. to be printed on the account holder's statement.\n",
            "maxLength": 20,
            "pattern": "^[\\dA-z ]*$",
            "type": "string"
          }
        },
        "required": [
          "businessReference"
        ],
        "type": "object"
      },
      "ZaRtcPaymentStatusReportPaymentSchemeData": {
        "properties": {
          "authorisationId": {
            "description": "A unique number assigned by the beneficiary bank to identify the transaction if it is approved.\nMust remain unaltered by the originator.\n",
            "maxLength": 6,
            "pattern": "^[\\dA-z ]*$",
            "type": "string"
          },
          "beneficiaryEchoData": {
            "description": "Echo data reserved for beneficiary use. Must remain unaltered by the originator.",
            "maxLength": 20,
            "pattern": "^[\\dA-z ]*$",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ZaRtcPaymentStatusReportPaymentScheme": {
        "properties": {
          "originalSchemeData": {
            "$ref": "#/components/schemas/ZaRtcCreditTransferPaymentSchemeData"
          },
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaRtcPaymentStatusReportPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "originalSchemeData",
          "schemeData"
        ],
        "type": "object"
      },
      "PaymentStatusReportPaymentScheme": {
        "description": "Designates which scheme a payment status report is associated with and describes scheme-specific information\nfor the payment status report.\n",
        "discriminator": {
          "mapping": {
            "CBPR_PLUS": "#/components/schemas/CbprPlusPaymentStatusReportPaymentScheme",
            "TCIB": "#/components/schemas/TcibPaymentStatusReportPaymentScheme",
            "ZA_AC": "#/components/schemas/ZaAcPaymentStatusReportPaymentScheme",
            "ZA_EFT": "#/components/schemas/ZaEftPaymentStatusReportPaymentScheme",
            "ZA_RPP": "#/components/schemas/ZaRppPaymentStatusReportPaymentScheme",
            "ZA_RTC": "#/components/schemas/ZaRtcPaymentStatusReportPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaRtcPaymentStatusReportPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaRppPaymentStatusReportPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaEftPaymentStatusReportPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/CbprPlusPaymentStatusReportPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaAcPaymentStatusReportPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/TcibPaymentStatusReportPaymentScheme"
          }
        ],
        "type": "object"
      },
      "PaymentStatusReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BasePaymentStatusReport"
          },
          {
            "properties": {
              "mandateInformation": {
                "$ref": "#/components/schemas/MandateInformation"
              },
              "originalTransactionData": {
                "$ref": "#/components/schemas/OriginalTransactionData"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/PaymentStatusReportPaymentScheme"
              },
              "schema": {
                "enum": [
                  "PaymentStatusReport"
                ],
                "type": "string"
              }
            },
            "required": [
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ],
        "description": "This message is used to report information about the positive or negative status of a FI to FI customer payment\ninstruction, or to report on a pending FI to FI customer instruction.\n\nThe fields `instructingAgent`, `instructedAgent` and `originalTransactionData` are not mandatory, but will\nalways be populated in payment status reports sent by Electrum.\n"
      },
      "ErrorDetail": {
        "description": "A model carrying information detailing the reason for an error that occurred.\n",
        "properties": {
          "detail": {
            "description": "An optional string containing details relevant to the error, for example\nan explanation of which field(s) in a message body failed validation and why.\n",
            "type": "string"
          },
          "message": {
            "description": "A human friendly description of the error that occurred.",
            "type": "string"
          },
          "schema": {
            "enum": [
              "ErrorDetail"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "message"
        ],
        "type": "object"
      },
      "FiToFiOriginalTransactionData": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOriginalTransactionData"
          },
          {
            "properties": {
              "creditor": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "debtor": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              }
            },
            "type": "object"
          }
        ],
        "description": "Contains key elements related to the original transaction that is being referred to.\n"
      },
      "CbprPlusFiToFiPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "FiToFiPaymentStatusReportPaymentScheme": {
        "description": "Designates which scheme an FI-to-FI payment status report is associated with and describes scheme-specific\ninformation for the payment status report.\n",
        "discriminator": {
          "mapping": {
            "CBPR_PLUS": "#/components/schemas/CbprPlusFiToFiPaymentStatusReportPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/CbprPlusFiToFiPaymentStatusReportPaymentScheme"
          }
        ],
        "type": "object"
      },
      "FiToFiPaymentStatusReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BasePaymentStatusReport"
          },
          {
            "properties": {
              "originalTransactionData": {
                "$ref": "#/components/schemas/FiToFiOriginalTransactionData"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/FiToFiPaymentStatusReportPaymentScheme"
              },
              "schema": {
                "enum": [
                  "FiToFiPaymentStatusReport"
                ],
                "type": "string"
              }
            },
            "required": [
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ],
        "description": "This message is used to report information about the positive or negative status of a payment instruction, or to\nreport on a pending instruction.\n\nThe fields `instructingAgent`, `instructedAgent` and `originalTransactionData` are not mandatory, but will\nalways be populated in payment status reports sent by Electrum.\n"
      },
      "InitiationStatus": {
        "properties": {
          "outcome": {
            "description": "- `RECEIVED`: The bulk initiation has been received.\n- `PENDING`: The bulk initiation is undergoing pre-checks.\n- `ACCEPTED`: The bulk initiation has been accepted and individual transactions are being processed.\n- `COMPLETED`: The bulk initiation processing is complete, with all individual payment status reports received.\n- `REJECTED`: The bulk initiation has been rejected.\n",
            "enum": [
              "RECEIVED",
              "PENDING",
              "ACCEPTED",
              "COMPLETED",
              "REJECTED"
            ],
            "type": "string"
          },
          "reasonInfo": {
            "description": "A list of `StatusReasonInfo` values providing detailed reason information for the outcome.\n",
            "items": {
              "$ref": "#/components/schemas/StatusReasonInfo"
            },
            "minItems": 1,
            "type": "array"
          }
        },
        "required": [
          "outcome"
        ],
        "type": "object"
      },
      "PaymentInstructionStatusReport": {
        "description": "This message is used to report information about the positive or negative status of an individual credit transfer/direct debit\ninstruction submitted within a bulk initiation, or to report on a pending instruction.\n\nThe field `originalTransactionData` is not mandatory, but will always be populated in payment status reports sent by Electrum.\n",
        "properties": {
          "originalTransactionData": {
            "$ref": "#/components/schemas/OriginalTransactionData"
          },
          "paymentScheme": {
            "$ref": "#/components/schemas/PaymentStatusReportPaymentScheme"
          },
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "transactionIdentifiers": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          }
        },
        "required": [
          "paymentScheme",
          "status",
          "transactionIdentifiers"
        ],
        "type": "object"
      },
      "TransactionStatistics": {
        "description": "A detailed breakdown of the number of transactions by their status.\nEach property corresponds to a status outcome and contains the transaction count for that status.\n",
        "properties": {
          "numberOfApprovedTransactions": {
            "description": "Count of transactions with the `APPROVED` status.",
            "type": "integer"
          },
          "numberOfCancelledTransactions": {
            "description": "Count of transactions with the `CANCELLED` status.",
            "type": "integer"
          },
          "numberOfPendingTransactions": {
            "description": "Count of transactions with the `PENDING` status.",
            "type": "integer"
          },
          "numberOfRejectedTransactions": {
            "description": "Count of transactions with the `REJECTED` status.",
            "type": "integer"
          }
        },
        "required": [
          "numberOfApprovedTransactions",
          "numberOfPendingTransactions",
          "numberOfCancelledTransactions",
          "numberOfRejectedTransactions"
        ],
        "type": "object"
      },
      "PaymentInitiationStatusReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "description": "This message is used to report information about the positive or negative status of a bulk payment\ninitiation (Multiple Credit Transfers/Direct Debits)\n",
            "properties": {
              "controlSum": {
                "$ref": "#/components/schemas/Amount",
                "description": "Sum of the credit amounts of every individual credit transfer.\n"
              },
              "creditorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the creditor.\n"
              },
              "debtorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the debtor.\n"
              },
              "numberOfTransactions": {
                "description": "Number of individual credit transfer instructions within the bulk that should be initiated.\n",
                "type": "integer"
              },
              "paymentInformationId": {
                "description": "Universally unique identifier to provide an end-to-end reference to the bulk initiation.\nThis identifier remains the same for all messages related to the bulk transaction.\nNote: this is distinct from the UETR's of the individual credit transfers.\n",
                "format": "UUID",
                "type": "string"
              },
              "paymentInitiationStatus": {
                "$ref": "#/components/schemas/InitiationStatus",
                "description": "The overall processing state of a bulk credit transfer/direct debit initiation\n"
              },
              "paymentInstructionStatusReports": {
                "description": "List of payment status reports relating to each credit initiation instruction received and actioned\n",
                "items": {
                  "$ref": "#/components/schemas/PaymentInstructionStatusReport"
                },
                "type": "array"
              },
              "paymentSchemeName": {
                "$ref": "#/components/schemas/PaymentSchemeName",
                "description": "Indicates which payment scheme a payment initiation status report is associated with.\n"
              },
              "schema": {
                "enum": [
                  "PaymentInitiationStatusReport"
                ],
                "type": "string"
              },
              "transactionStatistics": {
                "$ref": "#/components/schemas/TransactionStatistics",
                "description": "Provides detailed information about transaction metrics and outcomes\n"
              }
            },
            "required": [
              "paymentInformationId",
              "paymentInitiationStatus",
              "transactionStatistics",
              "paymentSchemeName",
              "debtorAgent",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "BaseTransactionMessage": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "A model containing the foundational elements shared across messages relating to transactions.\n",
            "properties": {
              "transactionIdentifiers": {
                "$ref": "#/components/schemas/TransactionIdentifiers"
              }
            },
            "required": [
              "transactionIdentifiers"
            ],
            "type": "object"
          }
        ]
      },
      "CreditorAgentInstruction": {
        "description": "Further information related to the processing of the payment instruction that may need to be\nacted upon by the creditor's agent. The instruction may relate to a level of service, or may be an\ninstruction that has to be executed by the creditor's agent, or may be information required by the\ncreditor's agent\n",
        "properties": {
          "code": {
            "description": "* `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* `PRTK`: (PayerTokenRequested) Indicates that a payer token is requested/used.\n* `RECI`: (ReceiverCustomerInformation) Further information regarding the intended recipient.\n* `TELB`: (Telecom) Please advise/contact (ultimate) creditor/claimant by the most efficient means of telecommunication.\n* `TKCM`: (TokenCounterpartyMismatch) Token found with counterparty mismatch.\n* `TKSG`: (TokenSingleUse) Single Use Token already used.\n* `TKSP`: (TokenSuspended) Token found with suspended status.\n* `TKVE`: (TokenValueLimitExceeded) Token found with value limit rule violation.\n* `TKXP`: (TokenExpired) Token expired.\n* `TOKN`: (Token) Token information.\n* `VLTK`: (TokenValidation) Additional validation information to be used in conjunction with the token.\n* `SEID`: (SecondaryIdentification): Use of Secondary Identification of Creditor Account (which may relate to Head Office Collection Account, Building Society Roll Number or Credit Card Primary Account Number).\n* `RT14`: A `ZA-RPP` scheme-specific instruction regarding fraud scores.\n",
            "enum": [
              "CHQB",
              "HOLD",
              "PHOB",
              "PRTK",
              "RECI",
              "TELB",
              "TKCM",
              "TKSG",
              "TKSP",
              "TKVE",
              "TKXP",
              "TOKN",
              "VLTK",
              "SEID",
              "RT14"
            ],
            "type": "string"
          },
          "information": {
            "description": "Further information complementing the coded instruction or instruction to the next agent that\nis bilaterally agreed or specific to a user community.\n",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "ChargeBearer": {
        "description": "* `DEBT` (BorneByDebtor): All transaction charges are to be borne by the debtor\n* `CRED` (BorneByCreditor): All transaction charges are to be borne by the creditor\n* `SHAR` (Shared): In a credit transfer context, means that transaction charges on the sender side are to be borne by\n          the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct\n          debit context, means that transaction charges on the sender side are to be borne by the creditor,\n          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",
        "enum": [
          "DEBT",
          "CRED",
          "SHAR",
          "SLEV"
        ],
        "type": "string"
      },
      "ChargeTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `BRKF` (BrokerageFee): Fee paid to a broker for services provided.\n* `BTCH` (Batch): Fee paid for processing a batch of transactions.\n* `COMM` (Commission): Fee paid for services provided.\n* `SUMM` (Summation): Summation of individual fees.\n* `AMND` (Amendment): Payment order was changed based on request to do so from the (original) sending bank or as a result of receiving amended information from the (original) sending bank.\n* `CFEE` (CancellationFee): Used when fees are assessed for cancellation of a payment.\n* `CLEF` (ClearingFee): Used when fees are assessed for standard processing of financial institution type transfers.\n* `INVS` (Investigation): Charges related to the processing of an investigation case/inquiry.\n* `INTE` (Interest): Interest related charges.\n* `NSTP` (NonSTPCharges): Charge for a payment that required an intervention during processing.\n* `DEBT` (BorneByDebtor): Claim is being submitted in response to receiving a customer credit transfer with DEBT in Charge Bearer code.\n* `TELE` (TelecommunicationCharges): Charges relating to the most appropriate and efficient means of telecommunications available, for example, SWIFT, telex, telephone, facsimile, as determined by the party executing the payment instruction.\n* `ACCM` (AccMaintenanceFee): Account maintenance fee.\n* `RECH` (ReportingCharges): Charge for a reporting message (camt.05X).\n",
            "enum": [
              "BRKF",
              "BTCH",
              "COMM",
              "SUMM",
              "AMND",
              "CFEE",
              "CLEF",
              "INVS",
              "INTE",
              "NSTP",
              "DEBT",
              "TELE",
              "ACCM",
              "RECH"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "ChargeType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ChargeTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ChargeTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "Charge": {
        "properties": {
          "agent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "amount": {
            "$ref": "#/components/schemas/Amount"
          },
          "type": {
            "$ref": "#/components/schemas/ChargeType"
          }
        },
        "required": [
          "amount",
          "agent"
        ],
        "type": "object"
      },
      "CbprPlusCustomerCreditSchemeData": {
        "description": "Information necessary for FI to FI customer credit transfers, specifically for CBPR+",
        "properties": {
          "chargeBearer": {
            "$ref": "#/components/schemas/ChargeBearer"
          },
          "charges": {
            "items": {
              "$ref": "#/components/schemas/Charge"
            },
            "type": "array"
          },
          "exchangeRate": {
            "description": "Factor used to convert an amount from one currency into another. This reflects the price at\nwhich one currency was bought with another currency.\n",
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "chargeBearer"
        ],
        "type": "object"
      },
      "CbprPlusCreditTransferPaymentScheme": {
        "properties": {
          "schema": {
            "type": "string"
          },
          "schemeData": {
            "$ref": "#/components/schemas/CbprPlusCustomerCreditSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "TcibCreditTransferPaymentScheme": {
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ShortenedAccountNumber": {
        "description": "An account number, shortened to 11 characters according to the account number reduction rules\nin the EFT technical standards. This field is intended for internal use by Electrum and generally should not\nbe populated by partner implementations.\n",
        "maxLength": 11,
        "minLength": 11,
        "type": "string"
      },
      "ZaEftSchemeData": {
        "properties": {
          "shortenedCreditorAccountNumber": {
            "$ref": "#/components/schemas/ShortenedAccountNumber"
          },
          "shortenedDebtorAccountNumber": {
            "$ref": "#/components/schemas/ShortenedAccountNumber"
          },
          "userCode": {
            "description": "A code allocated by PayInc. Sometimes also referred to as `BankCode`. May equal Installation code for in-house operation.\n",
            "maxLength": 4,
            "type": "string"
          },
          "userReference": {
            "description": "An explanation of an EFT transaction, which will be printed on the debtor's statement for direct debits or\nthe creditor's statement for credit transfers. Note that when populating a value for a _direct debit_, the\nfirst 10 characters must contain the Banks user code as configured at Bankserv. If configured, Electrum\nwill populate this value automatically, in which case at most 20 characters should be used as a reference\nto avoid truncation. Allowed characters are limited to printable ASCII U+0020 to U+007A (space through 'z').\n",
            "maxLength": 30,
            "pattern": "^[\\u0020-\\u007A]*$",
            "type": "string"
          }
        },
        "required": [
          "userReference"
        ],
        "type": "object"
      },
      "ZaEftCreditTransferPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaEftSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "ZaRppSchemeData": {
        "properties": {
          "hasRtp": {
            "description": "Indicates whether the RPP transaction was initiated via a Request To Pay.\n",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ZaRppCreditTransferPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaRppSchemeData"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaRtcCreditTransferPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaRtcCreditTransferPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "CreditTransferPaymentScheme": {
        "description": "Designates which scheme a customer credit transfer is associated with and describes scheme-specific information for the\ncredit transfer.\n",
        "discriminator": {
          "mapping": {
            "CBPR_PLUS": "#/components/schemas/CbprPlusCreditTransferPaymentScheme",
            "TCIB": "#/components/schemas/TcibCreditTransferPaymentScheme",
            "ZA_EFT": "#/components/schemas/ZaEftCreditTransferPaymentScheme",
            "ZA_RPP": "#/components/schemas/ZaRppCreditTransferPaymentScheme",
            "ZA_RTC": "#/components/schemas/ZaRtcCreditTransferPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaRtcCreditTransferPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaRppCreditTransferPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaEftCreditTransferPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/CbprPlusCreditTransferPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/TcibCreditTransferPaymentScheme"
          }
        ],
        "type": "object"
      },
      "RegulatoryAuthority": {
        "properties": {
          "country": {
            "$ref": "#/components/schemas/CountryCode"
          },
          "name": {
            "description": "The name of the entity requiring the regulatory reporting information",
            "maxLength": 140,
            "type": "string"
          }
        },
        "type": "object"
      },
      "RegulatoryReportingDetail": {
        "properties": {
          "additionalInformation": {
            "description": "Additional details that cater for specific domestic regulatory requirements",
            "items": {
              "maxLength": 35,
              "type": "string"
            },
            "type": "array"
          },
          "amount": {
            "$ref": "#/components/schemas/Amount"
          },
          "code": {
            "description": "Specifies the nature, purpose, and reason for the transaction to be reported for regulatory\nand statutory requirements in a coded form.\n",
            "maxLength": 10,
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/CountryCode"
          },
          "date": {
            "format": "date",
            "type": "string"
          },
          "type": {
            "description": "Specifies the type of the information supplied in the regulatory reporting detail",
            "maxLength": 35,
            "type": "string"
          }
        },
        "type": "object"
      },
      "RegulatoryReporting": {
        "properties": {
          "applicability": {
            "description": "Identifies whether the regulatory reporting information applies to the debit side, to the credit\nside or to both debit and credit sides of the transaction.\n",
            "enum": [
              "CREDIT",
              "DEBIT",
              "BOTH"
            ],
            "type": "string"
          },
          "authority": {
            "$ref": "#/components/schemas/RegulatoryAuthority"
          },
          "details": {
            "items": {
              "$ref": "#/components/schemas/RegulatoryReportingDetail"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "TaxInformation": {
        "properties": {
          "totalAmount": {
            "$ref": "#/components/schemas/Amount"
          }
        },
        "required": [
          "totalAmount"
        ],
        "type": "object"
      },
      "CreditTransfer": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to request a transfer funds between a payer and a payee\n",
            "properties": {
              "amounts": {
                "$ref": "#/components/schemas/TransactionAmounts"
              },
              "creditor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party to which an amount of money is due.\n"
              },
              "creditorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor to which a credit entry will be posted as a\nresult of the payment transaction.\n"
              },
              "creditorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the creditor.\n"
              },
              "creditorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit\nentry will be made as a result of the payment transaction.\n"
              },
              "debtor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that owes an amount of money to the (ultimate) creditor.\n"
              },
              "debtorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.\n"
              },
              "debtorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the debtor.\n"
              },
              "debtorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain.\n"
              },
              "initiatingParty": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that initiates the payment.\n"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Agent that is instructed by the previous party in the chain to carry out the (set of) instruction(s).\n"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Agent that instructs the next party in the chain to carry out the (set of) instruction(s)\n"
              },
              "instructionForCreditorAgent": {
                "description": "Further information related to the processing of the payment instruction, provided by the\ninitiating party, and intended for the creditor agent.\n",
                "items": {
                  "$ref": "#/components/schemas/CreditorAgentInstruction"
                },
                "minItems": 0,
                "type": "array"
              },
              "intermediaryAgents": {
                "description": "Agents between the debtor's agent and the creditor's agent.\nUsage: If more than one intermediary agent is present, then IntermediaryAgent1 identifies the agent\nbetween the DebtorAgent and the IntermediaryAgent2\n",
                "items": {
                  "$ref": "#/components/schemas/InstitutionIdentification"
                },
                "maxItems": 3,
                "type": "array"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/CreditTransferPaymentScheme"
              },
              "paymentTypeInformation": {
                "$ref": "#/components/schemas/PaymentTypeInformation",
                "description": "Set of elements used to further specify the type of transaction.\n"
              },
              "previousInstructingAgents": {
                "description": "Agent(s) between the debtor's agent and the instructing agent.\n",
                "items": {
                  "$ref": "#/components/schemas/InstitutionIdentification"
                },
                "maxItems": 3,
                "type": "array"
              },
              "purpose": {
                "$ref": "#/components/schemas/PurposeType"
              },
              "regulatoryReporting": {
                "items": {
                  "$ref": "#/components/schemas/RegulatoryReporting"
                },
                "maxItems": 10,
                "type": "array"
              },
              "remittanceInformation": {
                "$ref": "#/components/schemas/RemittanceInformation"
              },
              "schema": {
                "enum": [
                  "CreditTransfer"
                ],
                "type": "string"
              },
              "settlementDate": {
                "description": "Date on which the amount of money ceases to be available to the agent that owes it and\nwhen the amount of money becomes available to the agent to which it is due.\n",
                "format": "date",
                "type": "string"
              },
              "tax": {
                "$ref": "#/components/schemas/TaxInformation"
              }
            },
            "required": [
              "paymentScheme",
              "amounts",
              "creditor",
              "creditorAccount",
              "creditorAgent",
              "debtor",
              "debtorAgent",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "ReturnReasonTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `AC01`: IncorrectAccountNumber\n* `AC03`: InvalidCreditorAccountNumber\n* `AC04`: ClosedAccountNumber\n* `AC06`: BlockedAccount\n* `AC13`: InvalidDebtorAccountType\n* `AC14`: InvalidAgent\n* `AC15`: AccountDetailsChanged\n* `AC16`: AccountInSequestration\n* `AC17`: AccountInLiquidation\n* `AG01`: TransactionForbidden\n* `AG02`: InvalidBankOperationCode\n* `AM01`: ZeroAmount\n* `AM02`: NotAllowedAmount\n* `AM03`: NotAllowedCurrency\n* `AM04`: InsufficientFunds\n* `AM05`: Duplication\n* `AM06`: TooLowAmount\n* `AM07`: BlockedAmount\n* `AM09`: WrongAmount\n* `AM10`: InvalidControlSum\n* `ARDT`: AlreadyReturnedTransaction\n* `BE01`: InconsistenWithEndCustomer\n* `BE04`: MissingCreditorAddress\n* `BE05`: UnrecognisedInitiatingParty\n* `BE06`: UnknownEndCustomer\n* `BE07`: MissingDebtorAddress\n* `BE08`: BankError\n* `CN01`: AuthorisationCancelled\n* `CNOR`: CreditorBankIsNotRegistered\n* `CNPC`: CashNotPickedUp\n* `CURR`: IncorrectCurrency\n* `CUST`: RequestedByCustomer\n* `DNOR`: DebtorBankIsNotRegistered\n* `DS28`: ReturnForTechnicalReason\n* `DT01`: InvalidDate\n* `DT02`: ChequeExpired\n* `ED01`: CorrespondentBankNotPossible\n* `ED03`: BalanceInfoRequest\n* `ED05`: SettlementFailed\n* `EMVL`: EMVLiabilityShift\n* `ERIN`: ERIOptionNotSupported\n* `FF05`: InvalidLocalInstrumentCode\n* `FOCR`: FollowingCancellationRequest\n* `FR01`: Fraud\n* `FRTR`: FinalResponseMandateCancelled\n* `MD01`: NoMandate\n* `MD02`: MissingMandatoryInformationInMandate\n* `MD06`: RefundRequestByEndCustomer\n* `MD07`: EndCustomerDeceased\n* `MS02`: NotSpecifiedReasonCustomerGenerated\n* `MS03`: NotSpecifiedReasonAgentGenerated\n* `NARR`: Narrative\n* `NOAS`: NoAnswerFromCustomer\n* `NOCM`: NotCompliant\n* `NOOR`: NoOriginalTransactionReceived\n* `PINL`: PINLiabilityShift\n* `RC01`: BankIdentifierIncorrect\n* `RC07`: InvalidCreditorBICIdentifier\n* `RF01`: NotUniqueTransactionReference\n* `RR01`: MissingDebtorAccountOrIdentification\n* `RR02`: MissingDebtorNameOrAddress\n* `RR03`: MissingCreditorNameOrAddress\n* `RR04`: RegulatoryReason\n* `RUTA`: ReturnUponUnableToApply\n* `SL01`: SpecificServiceOfferedByDebtorAgent\n* `SL02`: SpecificServiceOfferedByCreditorAgent\n* `SL11`: CreditorNotOnWhitelistOfDebtor\n* `SL12`: CreditorOnBlacklistOfDebtor\n* `SL13`: MaximumNumberOfDirectDebitTransactionsExceeded\n* `SL14`: MaximumDirectDebitTransactionAmountExceeded\n* `SP01`: PaymentStopped\n* `SP02`: PreviouslyStopped\n* `SVNR`: ServiceNotRendered\n* `TM01`: CutOffTime\n* `TRAC`: RemovedFromTracking\n* `UPAY`: UnduePayment\n* `AGNT`: IncorrectAgent\n* `FF06`: InvalidCategoryPurposeCode\n* `RC08`: InvalidClearingSystemMemberIdentifier\n* `BE11`: InvalidCreditorCountry\n* `BE17`: InvalidCreditorIdentificationCode\n* `AC02`: InvalidDebtorAccountNumber\n* `RR11`: InvalidDebtorAgentServiceIdentification\n* `BE10`: InvalidDebtorCountry\n* `BE16`: InvalidDebtorIdentificationCode\n* `RC11`: InvalidIntermediaryAgent\n* `RR12`: InvalidPartyIdentification\n* `FF03`: InvalidPaymentTypeInformation\n* `FF07`: InvalidPurpose\n* `FF04`: InvalidServiceLevelCode\n* `RR09`: InvalidStructuredCreditorReference\n* `RR05`: RegulatoryInformationInvalid\n* `RR07`: RemittanceInformationInvalid\n* `RR08`: RemittanceInformationTruncated\n* `RR06`: TaxInformationInvalid\n* `AG07`: UnsuccesfulDirectDebit\n* `G004`: CreditPendingFunds\n* `MD05`: CollectionNotDue\n* `AC07`: ClosedCreditorAccountNumber\n",
            "enum": [
              "AC01",
              "AC03",
              "AC04",
              "AC06",
              "AC13",
              "AC14",
              "AC15",
              "AC16",
              "AC17",
              "AG01",
              "AG02",
              "AM01",
              "AM02",
              "AM03",
              "AM04",
              "AM05",
              "AM06",
              "AM07",
              "AM09",
              "AM10",
              "ARDT",
              "BE01",
              "BE04",
              "BE05",
              "BE06",
              "BE07",
              "BE08",
              "CN01",
              "CNOR",
              "CNPC",
              "CURR",
              "CUST",
              "DNOR",
              "DS28",
              "DT01",
              "DT02",
              "ED01",
              "ED03",
              "ED05",
              "EMVL",
              "ERIN",
              "FF05",
              "FOCR",
              "FR01",
              "FRTR",
              "MD01",
              "MD02",
              "MD06",
              "MD07",
              "MS02",
              "MS03",
              "NARR",
              "NOAS",
              "NOCM",
              "NOOR",
              "PINL",
              "RC01",
              "RC07",
              "RF01",
              "RR01",
              "RR02",
              "RR03",
              "RR04",
              "RUTA",
              "SL01",
              "SL02",
              "SL11",
              "SL12",
              "SL13",
              "SL14",
              "SP01",
              "SP02",
              "SVNR",
              "TM01",
              "TRAC",
              "UPAY",
              "AGNT",
              "FF06",
              "RC08",
              "BE11",
              "BE17",
              "AC02",
              "RR11",
              "BE10",
              "BE16",
              "RC11",
              "RR12",
              "FF03",
              "FF07",
              "FF04",
              "RR09",
              "RR05",
              "RR07",
              "RR08",
              "RR06",
              "AG07",
              "G004",
              "MD05",
              "AC07"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "ReturnReasonType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ReturnReasonTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ReturnReasonTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "DisputeDetails": {
        "description": "Provides details about whether and how a debit may be disputed by the debtor. This model encapsulates\ndispute eligibility metadata which can be passed through pacs.003 payloads to downstream systems.\n",
        "properties": {
          "disputable": {
            "description": "Indicates whether the debit may be disputed by the debtor.\n",
            "type": "boolean"
          },
          "disputableReasons": {
            "description": "Reason codes indicating why the debit may or may not be disputed by the debtor.\n",
            "items": {
              "$ref": "#/components/schemas/ReturnReasonType"
            },
            "type": "array"
          },
          "disputePeriodDays": {
            "description": "The number of days from the action date of the collection during which the debtor is allowed to\ndispute the transaction. A value of 0 indicates that the transaction cannot be disputed.\n",
            "minimum": 0,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "ZaAcSchemeData": {
        "description": "Scheme-specific data for Authenticated Collections (DebiCheck) direct debits. Unlike EFT, DebiCheck only\nsupports debit transactions (collections), so shortened account numbers used for EFT file generation are\nnot applicable here.\n",
        "properties": {
          "creditorAbbreviatedShortName": {
            "description": "The Creditor Abbreviated Short Name (ABSN). This is a 3 to 10 character description of the Ultimate Creditor's name, business, or product that will appear on the debtor's bank statement.\nThis value MUST perfectly match the ABSN stored on the active Mandate Register at the Debtor Bank (i.e. must match the short name provided for the ultimateCreditor during mandate initiation). \nMismatches will result in scheme rejections.\n",
            "maxLength": 10,
            "minLength": 1,
            "type": "string"
          },
          "creditorContractReference": {
            "description": "The unique contract reference number issued by the Ultimate Creditor to the Payer/Debtor when the contract was concluded.\nThis value MUST perfectly match the Contract Reference stored on the active Mandate Register at the Debtor Bank. (i.e must match the identifier provided for `mandate.mandateRequestIdentification` during mandate initiation).\nMismatches will result in scheme rejections.\n",
            "maxLength": 14,
            "minLength": 1,
            "type": "string"
          },
          "userReference": {
            "description": "Under the DebiCheck scheme, the user reference expected to appear on debtor statements comprises the following:\n1. `creditorAbbreviatedShortName` - right-padded with spaces to exactly 10 characters (Characters 1–10)\n2. `creditorContractReference` - right-padded with spaces to exactly 14 characters (Characters 11–24)\n3. `requestedCollectionDate` (also known as cycle date) - formatted as `YYMMDD` (Characters 25–30)\n4. The remaining 110 characters are available for bill presentment. This text will also be captured as unstructured `remittanceInformation` in the `DirectDebit`.\nOnly the first 30 characters are required to appear on debtor statements. Allowed characters are limited to printable characters.\n\nThis field will be provided for all inbound requests to the partner. \nDo NOT populate this field for outbound requests. Instead, provide any bill presentment text (up to 110 characters) in the `DirectDebit` model under `remittanceInformation.unstructured`. \nThe engine will automatically concatenate the Creditor Short Name, Contract Reference, the `DirectDebit` `requestedCollectionDate`, and your unstructured remittance text to construct the final 140-character string required by the scheme.\n",
            "maxLength": 140,
            "pattern": "^[\\u0020-\\u007A]*$",
            "type": "string"
          }
        },
        "required": [
          "creditorAbbreviatedShortName",
          "creditorContractReference"
        ],
        "type": "object"
      },
      "ZaAcDirectDebitPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaAcSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "ZaEftDirectDebitPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaEftSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "DirectDebitPaymentScheme": {
        "description": "Designates which scheme a direct debit is associated with and describes scheme-specific information for the\ndirect debit.\n",
        "discriminator": {
          "mapping": {
            "ZA_AC": "#/components/schemas/ZaAcDirectDebitPaymentScheme",
            "ZA_EFT": "#/components/schemas/ZaEftDirectDebitPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaEftDirectDebitPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaAcDirectDebitPaymentScheme"
          }
        ],
        "type": "object"
      },
      "SequenceTypeCode": {
        "description": "Identifies the direct debit sequence:\n* `FRST` : First collection of a series of direct debit instructions.\n* `RCUR` : Direct debit instruction where the debtor's authorisation is used for regular direct debit transactions initiated by the creditor.\n* `FNAL` : Final collection of a series of direct debit instructions.\n* `OOFF` : Direct debit instruction where the debtor's authorisation is used to initiate one single direct debit transaction.\n* `RPRE` : Collection used to represent previously reversed or returned direct debit transactions.\n",
        "enum": [
          "FRST",
          "RCUR",
          "FNAL",
          "OOFF",
          "RPRE"
        ],
        "type": "string"
      },
      "DirectDebit": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to request a direct debit from a debtor account for a creditor.\n",
            "properties": {
              "amounts": {
                "$ref": "#/components/schemas/TransactionAmounts"
              },
              "creditor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party to which an amount of money is due.\n"
              },
              "creditorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor to which a credit entry will be posted as a\nresult of the payment transaction.\n"
              },
              "creditorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the creditor.\n"
              },
              "creditorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit\nentry will be made as a result of the payment transaction.\n"
              },
              "debtor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that owes an amount of money to the (ultimate) creditor.\n"
              },
              "debtorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor to which a debit entry will be made as a result\nof the transaction.\n"
              },
              "debtorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the debtor.\n"
              },
              "debtorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain.\n"
              },
              "disputeDetails": {
                "$ref": "#/components/schemas/DisputeDetails",
                "description": "Provides details about whether and how the debit may be disputed by the debtor.\n"
              },
              "emergencyCollection": {
                "description": "Indicates that this direct debit was submitted via an emergency collection service.\nThe action date must equal the current processing date.\n",
                "type": "boolean"
              },
              "initiatingParty": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that initiates the payment.\n"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Agent that is instructed by the previous party in the chain to carry out the (set of) instruction(s).\n"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Agent that instructs the next party in the chain to carry out the (set of) instruction(s).\n"
              },
              "intermediaryAgents": {
                "description": "Agents between the debtor's agent and the creditor's agent. If more than one intermediary agent is\npresent, then IntermediaryAgent1 identifies the agent between the DebtorAgent and the\nIntermediaryAgent2.\n",
                "items": {
                  "$ref": "#/components/schemas/InstitutionIdentification"
                },
                "maxItems": 3,
                "type": "array"
              },
              "mandateInformation": {
                "$ref": "#/components/schemas/MandateInformation",
                "description": "Provides details of the direct debit mandate signed between the creditor and the debtor.\n"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/DirectDebitPaymentScheme"
              },
              "paymentTypeInformation": {
                "$ref": "#/components/schemas/PaymentTypeInformation",
                "description": "Set of elements used to further specify the type of transaction.\n"
              },
              "purpose": {
                "$ref": "#/components/schemas/PurposeType"
              },
              "remittanceInformation": {
                "$ref": "#/components/schemas/RemittanceInformation"
              },
              "requestedCollectionDate": {
                "description": "Date and time at which the creditor requests that the amount of money is to be collected from the\ndebtor.\n",
                "format": "date",
                "type": "string"
              },
              "schema": {
                "enum": [
                  "DirectDebit"
                ],
                "type": "string"
              },
              "sequenceType": {
                "$ref": "#/components/schemas/SequenceTypeCode",
                "description": "Identifies the direct debit sequence, e.g. first, recurrent, final or one-off.\n"
              },
              "settlementDate": {
                "description": "Date on which the amount of money ceases to be available to the agent that owes it and\nwhen the amount of money becomes available to the agent to which it is due.\n",
                "format": "date",
                "type": "string"
              }
            },
            "required": [
              "paymentScheme",
              "amounts",
              "creditor",
              "creditorAgent",
              "debtor",
              "debtorAccount",
              "debtorAgent",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "TcibPaymentReturnPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaAcPaymentReturnPaymentSchemeData": {
        "description": "Scheme-specific data for Authenticated Collections (DebiCheck) payment returns.\n",
        "properties": {
          "returnType": {
            "description": "Identifies the type of Authenticated Collections payment return (pacs.004).\n\n* `DISPUTE`: Occurs when a Payer (debtor) successfully disputes a processed Authenticated Collections\n  debit instruction at their bank. Under AC clearing rules, a dispute action is strictly limited to a small set\n  of valid reasons. Two such cases are: the collection amount was incorrect (`ReturnReasonTypeCode` `AM02` -\n  'not allowed amount') or the collection date was incorrect (`ReturnReasonTypeCode` `DT01` - 'invalid date').\n  The Debtor Bank initiates this payment return to reverse the funds from the Creditor.\n\n* `SYSTEM_ERROR_CORRECTION_REQUEST`: Represents a payment return that is generated as the successful\n  financial resolution of a System Error Correction (Bank Error) process. In this scenario, the\n  Creditor Bank (after obtaining mandatory industry/PASA authorisation) previously submitted a cancellation\n  request due to a technical issue, such as an erroneously duplicated debit batch.\n  This payment return is the subsequent financial reversal initiated by the Debtor Bank to recover the\n  erroneously collected funds from the Creditor in order to refund the debtor.\n",
            "enum": [
              "DISPUTE",
              "SYSTEM_ERROR_CORRECTION_REQUEST"
            ],
            "type": "string"
          },
          "userReference": {
            "description": "A reference for the payment return that will appear on statements. This is mapped to the `RmtInf/Ustrd`\nfield. Allowed characters are limited to printable ASCII (space through 'z').\n",
            "maxLength": 30,
            "pattern": "^[\\u0020-\\u007A]*$",
            "type": "string"
          }
        },
        "required": [
          "returnType"
        ],
        "type": "object"
      },
      "ZaAcPaymentReturnPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaAcPaymentReturnPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "ZaEftPaymentReturnPaymentSchemeData": {
        "properties": {
          "originalUserReference": {
            "description": "The original user reference associated with the returned payment. This value mirrors the\n`userReference` that was supplied on the initial EFT transaction.\n",
            "type": "string"
          },
          "returnType": {
            "description": "Identifies the type of EFT payment return.\n* `UNPAID`: Occurs when a payment cannot be completed successfully by the homing bank such as due to\n  insufficient funds or account closure. Note that it is impossible for Electrum to reject unpaids received\n  from industry, so a negative payment return response from the partner will always result in a\n  reconciliation exception for inbound unpaids.\n* `DISPUTE`: Occurs when there is a disagreement between the creditor and debtor regarding a payment and,\n  after investigation with the assistance of their respective banks, the creditor's bank (in the case of a\n  credit) or the debtor's bank (in the case of a debit) decides that the payment should be returned. As for\n  unpaids, it is impossible for Electrum to reject disputes received from industry, so a negative payment\n  return response results in a reconciliation exception for inbound disputes.\n* `SYSTEM_ERROR_CORRECTION_REQUEST`: Only expected for inbound use and represents the case where a bank from\n  industry has experienced a technical issue that resulted in payments to or from the partner bank being\n  reflected incorrectly (e.g. credits or debits were duplicated) and the industry bank is requesting that\n  the partner bank **attempt** to correct the error. This case is notably different from unpaids and\n  disputes in that (1) the system error correction request is expected to be best effort and may be rejected\n  by the partner bank if the request cannot be honoured (e.g. due to insufficient funds) and (2) the bank\n  from industry may retry system error correction requests for the same transaction on different days if an\n  earlier request was rejected. **Important:** use of this value is **deprecated**, as inbound SEC requests\n  should now be received as FiToFiPaymentCancellation messages instead.\n* `HOME_BACK`: Occurs when a payment cannot be completed successfully at the operator such as a lack of\n  information required to route to the correct homing bank. Note that it is impossible for Electrum to reject\n  homebacks received from industry, so a negative payment return response from the partner will always result\n  in a reconciliation exception for inbound homebacks.\n* `SYSTEM_ERROR_CORRECTION_RESPONSE`: Indicates that this return is in response to a (successful) inbound \n  system error correction request received earlier (as a FiToFiPaymentCancellationRequest). Electrum will\n  mark the SEC request as successful and process the return to industry.\n",
            "enum": [
              "UNPAID",
              "DISPUTE",
              "SYSTEM_ERROR_CORRECTION_REQUEST",
              "HOME_BACK",
              "SYSTEM_ERROR_CORRECTION_RESPONSE"
            ],
            "type": "string"
          },
          "shortenedCreditorAccountNumber": {
            "$ref": "#/components/schemas/ShortenedAccountNumber"
          },
          "shortenedDebtorAccountNumber": {
            "$ref": "#/components/schemas/ShortenedAccountNumber"
          },
          "userCode": {
            "description": "A code allocated by PayInc. Sometimes also referred to as `BankCode`. May equal Installation code for in-house operation.\n",
            "maxLength": 4,
            "type": "string"
          }
        },
        "required": [
          "returnType"
        ],
        "type": "object"
      },
      "ZaEftPaymentReturnPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaEftPaymentReturnPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "PaymentReturnPaymentScheme": {
        "description": "Designates which scheme a payment return is associated with and describes scheme-specific information for the\nreturn.\n",
        "discriminator": {
          "mapping": {
            "TCIB": "#/components/schemas/TcibPaymentReturnPaymentScheme",
            "ZA_AC": "#/components/schemas/ZaAcPaymentReturnPaymentScheme",
            "ZA_EFT": "#/components/schemas/ZaEftPaymentReturnPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaEftPaymentReturnPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaAcPaymentReturnPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/TcibPaymentReturnPaymentScheme"
          }
        ],
        "type": "object"
      },
      "ReturnReasonInfo": {
        "description": "Provides detailed information on the return reason.\n",
        "properties": {
          "additionalInformation": {
            "description": "A human friendly description of the return reason including any further details if applicable.\n",
            "type": "string"
          },
          "reason": {
            "$ref": "#/components/schemas/ReturnReasonType"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "PaymentReturn": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to request a return of funds after settlement of credit\ntransfer instructions or direct debit instructions.\n\nNOTE: Neither `creditorAccount` nor `debtorAccount` are required fields, but `creditorAccount` is expected\nto be present for returns of direct debits, and similarly `debtorAccount` is expected to be present for\nreturns of credit transfers.\n",
            "properties": {
              "creditor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party to which an amount of money is due.\n"
              },
              "creditorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor to which a credit entry will be posted as a\nresult of the payment transaction.\n"
              },
              "creditorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the creditor.\n"
              },
              "creditorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit\nentry will be made as a result of the payment transaction.\n"
              },
              "debtor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that owes an amount of money to the (ultimate) creditor.\n"
              },
              "debtorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor to which a debit entry will be made as a result\nof the transaction.\n"
              },
              "debtorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the debtor.\n"
              },
              "debtorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain.\n"
              },
              "initiatingParty": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that initiates the instruction.\n"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "The instructed agent is the party receiving the return message and not the party that received the\noriginal instruction that is being returned.\n"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "The instructing agent is the party sending the return message and not the party that sent the original\ninstruction that is being returned.\n"
              },
              "mandateInformation": {
                "$ref": "#/components/schemas/MandateInformation",
                "description": "Provides details of the direct debit mandate signed between the creditor and the debtor.\n"
              },
              "originalMessageIdentifiers": {
                "$ref": "#/components/schemas/MessageIdentifiers",
                "description": "Identifiers for the original payment instruction (such as a `CreditTransfer` or `DirectDebit` message)\nassociated with this return.\n"
              },
              "originalTransactionData": {
                "$ref": "#/components/schemas/OriginalTransactionData"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/PaymentReturnPaymentScheme"
              },
              "paymentTypeInformation": {
                "$ref": "#/components/schemas/PaymentTypeInformation",
                "description": "Set of elements used to further specify the type of transaction.\n"
              },
              "reasonInfo": {
                "description": "A list of `ReturnReasonInfo` values providing detailed reason information for the return.\n",
                "items": {
                  "$ref": "#/components/schemas/ReturnReasonInfo"
                },
                "minItems": 1,
                "type": "array"
              },
              "returnedAmounts": {
                "$ref": "#/components/schemas/TransactionAmounts",
                "description": "Represents the amount of money to be moved between the instructing agent and the instructed agent in the\nreturned instruction.\n"
              },
              "schema": {
                "enum": [
                  "PaymentReturn"
                ],
                "type": "string"
              },
              "settlementDate": {
                "description": "Date on which the amount of money ceases to be available to the agent that owes it and\nwhen the amount of money becomes available to the agent to which it is due.\n",
                "format": "date",
                "type": "string"
              }
            },
            "required": [
              "paymentScheme",
              "returnedAmounts",
              "creditor",
              "creditorAgent",
              "debtor",
              "debtorAgent",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "RequestToPayConditions": {
        "description": "Describes the various aspects of a request to pay which must be\naccepted or to what extent they may be altered.\n",
        "properties": {
          "maxAmount": {
            "$ref": "#/components/schemas/Amount",
            "description": "The maximum payment amount that is acceptable to the payee. This does not supersede the scheme limit.\n"
          },
          "minAmount": {
            "$ref": "#/components/schemas/Amount",
            "description": "The minimum payment amount that is acceptable to the payee. This does not supersede the scheme limit.\n"
          }
        },
        "required": [
          "minAmount",
          "maxAmount"
        ],
        "type": "object"
      },
      "RequestToPay": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to request a payer to initiate a transfer of funds to a payee\n",
            "properties": {
              "amounts": {
                "$ref": "#/components/schemas/TransactionAmounts"
              },
              "creditor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party to which an amount of money is due.\n"
              },
              "creditorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor to which a credit entry will be posted as a\nresult of the payment transaction.\n"
              },
              "creditorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the creditor.\n"
              },
              "debtor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that owes an amount of money to the creditor.\n"
              },
              "debtorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.\n"
              },
              "debtorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the debtor.\n"
              },
              "expiryDateTime": {
                "description": "Date and time at which the request to pay expires. Some schemes\nmay still permit a payment after the request to pay expires. Upon\nexpiry, the following schemes will reject an associated payment: ZA_RPP.\nThe date *must* be formatted as defined by `date-time` in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\n",
                "format": "date-time",
                "type": "string"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Agent that is instructed by the previous party in the chain to carry out the (set of) instruction(s).\n"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Agent that instructs the next party in the chain to carry out the (set of) instruction(s)\n"
              },
              "instructionForDebtorAgent": {
                "description": "Further information related to the processing of the payment instruction, provided by the\ninitiating party, and intended for the debtor agent.\n",
                "items": {
                  "$ref": "#/components/schemas/CreditorAgentInstruction"
                },
                "minItems": 0,
                "type": "array"
              },
              "intermediaryAgents": {
                "description": "Agents between the debtor's agent and the creditor's agent.\nUsage: If more than one intermediary agent is present, then IntermediaryAgent1 identifies the agent\nbetween the DebtorAgent and the IntermediaryAgent2\n",
                "items": {
                  "$ref": "#/components/schemas/InstitutionIdentification"
                },
                "maxItems": 3,
                "type": "array"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/CreditTransferPaymentScheme"
              },
              "paymentTypeInformation": {
                "$ref": "#/components/schemas/PaymentTypeInformation",
                "description": "Set of elements used to further specify the type of transaction.\n"
              },
              "previousInstructingAgents": {
                "description": "Agent(s) between the debtor's agent and the instructing agent.\n",
                "items": {
                  "$ref": "#/components/schemas/InstitutionIdentification"
                },
                "maxItems": 3,
                "type": "array"
              },
              "purpose": {
                "$ref": "#/components/schemas/PurposeType"
              },
              "remittanceInformation": {
                "$ref": "#/components/schemas/RemittanceInformation"
              },
              "requestToPayConditions": {
                "$ref": "#/components/schemas/RequestToPayConditions"
              },
              "schema": {
                "enum": [
                  "RequestToPay"
                ],
                "type": "string"
              },
              "tax": {
                "$ref": "#/components/schemas/TaxInformation"
              },
              "ultimateCreditor": {
                "$ref": "#/components/schemas/Party",
                "description": "Ultimate party to which an amount of money is due.\n"
              },
              "ultimateDebtor": {
                "$ref": "#/components/schemas/Party",
                "description": "Ultimate party that owes an amount of money to the (ultimate) creditor.\n"
              }
            },
            "required": [
              "paymentScheme",
              "expiryDateTime",
              "requestToPayConditions",
              "creditor",
              "creditorAccount",
              "creditorAgent",
              "debtorAccount",
              "paymentTypeInformation",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "OriginalRequestToPayData": {
        "description": "Contains key elements related to the original request to pay that is being referred to.\n",
        "properties": {
          "amounts": {
            "$ref": "#/components/schemas/TransactionAmounts"
          },
          "creditor": {
            "$ref": "#/components/schemas/Party"
          },
          "creditorAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "creditorAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "debtor": {
            "$ref": "#/components/schemas/Party"
          },
          "debtorAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "debtorAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "expiryDateTime": {
            "description": "Date and time at which the request to pay expires. Some schemes\nmay still permit a payment after the request to pay expires. Upon\nexpiry, the following schemes will reject an associated payment: ZA_RPP.\nThe date *must* be formatted as defined by `date-time` in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\n",
            "format": "date-time",
            "type": "string"
          },
          "paymentTypeInformation": {
            "$ref": "#/components/schemas/PaymentTypeInformation"
          },
          "remittanceInformation": {
            "$ref": "#/components/schemas/RemittanceInformation"
          },
          "requestToPayConditions": {
            "$ref": "#/components/schemas/RequestToPayConditions"
          }
        },
        "type": "object"
      },
      "RequestToPayStatusReasonTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `AB01`: AbortedClearingTimeout - Clearing process aborted due to timeout.\n* `AB02`: AbortedClearingFatalError - Clearing process aborted due to a fatal error.   \n* `AB05`: TimeoutCreditorAgent - Transaction stopped due to timeout at the Creditor Agent.\n* `AB06`: TimeoutInstructedAgent - Transaction stopped due to timeout at the Instructed Agent.\n* `AB07`: OfflineAgent - Agent of message is not online. Generic usage if it cannot be determined who exactly is not online.\n* `AB08`: OfflineCreditorAgent - Creditor Agent is not online.\n* `AB09`: ErrorCreditorAgent - Transaction stopped due to error at the Creditor Agent.\n* `AB10`: ErrorInstructedAgent - Transaction stopped due to error at the Instructed Agent.\n* `AB11`: TimeoutDebtorAgent - Transaction stopped due to timeout at the Debtor Agent.\n* `AC04`: ClosedAccountNumber - Account number specified has been closed on the bank of account's books.\n* `AC05`: ClosedDebtorAccountNumber - Debtor account number closed\n* `AC06`: BlockedAccount - Account specified is blocked, prohibiting posting of transactions against it.\n* `AC07`: ClosedCreditorAccountNumber - Creditor account number closed\n* `AC08`: InvalidBranchCode - Branch code is invalid or missing\n* `AG10`: AgentSuspended - Agent of message is suspended from the Real Time Payment system. Generic usage if it cannot be determined who exactly is suspended.\n* `AG11`: CreditorAgentSuspended - Creditor Agent of message is suspended from the Real Time Payment system.\n* `AGNT`: IncorrectAgent - Agent in the payment workflow is incorrect\n* `AM01`: ZeroAmount - Specified message amount is equal to zero\n* `AM02`: NotAllowedAmount - Specific transaction/message amount is greater than allowed maximum\n* `AM03`: NotAllowedCurrency - Specified message amount is an non processable currency outside of existing agreement\n* `AM05`: Duplication - Duplication\n* `AM06`: TooLowAmount - Specified transaction amount is less than agreed minimum.\n* `AM11`: InvalidTransactionCurrency - Transaction currency is invalid or missing\n* `AM12`: InvalidAmount - Amount is invalid or missing\n* `AM13`: AmountExceedsClearingSystemLimit - Transaction amount exceeds limits set by clearing system\n* `AM15`: AmountBelowClearingSystemMinimum - Transaction amount below minimum set by clearing system\n* `AM18`: InvalidNumberOfTransactions - Number of transactions is invalid or missing. Generic usage if cannot specify between group and payment information levels.\n* `BE01`: InconsistenWithEndCustomer - Identification of end customer is not consistent with associated account number. (formerly CreditorConsistency).\n* `BE05`: UnrecognisedInitiatingParty - Party who initiated the message is not recognised by the end customer\n* `BE06`: UnknownEndCustomer - End customer specified is not known at associated Sort/National Bank Code or does no longer exist in the books\n* `BE07`: MissingDebtorAddress - Specification of debtor's address, which is required for payment, is missing/not correct.\n* `BE08`: MissingDebtorName - Debtor name is missing\n* `BE10`: InvalidDebtorCountry - Debtor country code is missing or invalid\n* `BE11`: InvalidCreditorCountry - Creditor country code is missing or invalid\n* `BE12`: InvalidCountryOfResidence - Country code of residence is missing or Invalid. Generic usage if cannot specifically identify debtor or creditor\n* `BE13`: InvalidDebtorCountryOfResidence - Country code of debtor's residence is missing or Invalid\n* `BE14`: InvalidCreditorCountryOfResidence - Country code of creditor's residence is missing or Invalid\n* `BE16`: InvalidDebtorIdentificationCode - Debtor or Ultimate Debtor identification code missing or invalid\n* `BE17`: InvalidCreditorIdentificationCode - Creditor or Ultimate Creditor identification code missing or invalid\n* `BE18`: InvalidContactDetails - Contact details missing or invalid\n* `BE19`: InvalidChargeBearerCode - Charge bearer code for transaction type is invalid\n* `BE20`: InvalidNameLength - Name length exceeds local rules for payment type.\n* `BE22`: MissingCreditorName - Creditor name is missing\n* `BE23`: AccountProxyInvalid - Phone number or email address, or any other proxy, used as the account proxy is unknown or invalid.\n* `CH03`: RequestedExecutionDateOrRequestedCollectionDateTooFarInFuture - Value in Requested Execution Date or Requested Collection Date is too far in the future\n* `CH04`: RequestedExecutionDateOrRequestedCollectionDateTooFarInPast - Value in Requested Execution Date or Requested Collection Date is too far in the past\n* `CH21`: RequiredCompulsoryElementMissing - Mandatory element is missing\n* `CNOR`: CreditorBankIsNotRegistered - Creditor bank is not registered under this BIC in the CSM\n* `CURR`: IncorrectCurrency - Currency of the payment is incorrect\n* `CUST`: RequestedByCustomer - Cancellation requested by the Creditor\n* `DS01`: ElectronicSignaturesCorrect - The electronic signature(s) is/are correct\n* `DS02`: OrderCancelled - An authorized user has cancelled the order\n* `DS04`: OrderRejected - The order was rejected by the bank side (for reasons concerning content)\n* `DS0G`: NotAllowedPayment - Signer is not allowed to sign this operation type.\n* `DS0H`: NotAllowedAccount - Signer is not allowed to sign for this account.\n* `DS24`: WaitingTimeExpired - Waiting time expired due to incomplete order\n* `DS27`: UserNotYetActivated - The user is not yet activated (technically)\n* `DT01`: InvalidDate - Invalid date (eg, wrong or missing settlement date)\n* `DT02`: InvalidCreationDate - Invalid creation date and time in Group Header (eg, historic date)\n* `DT03`: InvalidNonProcessingDate - Invalid non bank processing date (eg, weekend or local public holiday)\n* `DU01`: DuplicateMessageID - Message Identification is not unique.\n* `DU02`: DuplicatePaymentInformationID - Payment Information Block is not unique.\n* `DU03`: DuplicateTransaction - Transaction is not unique.\n* `DU04`: DuplicateEndToEndID - End To End ID is not unique.\n* `DU05`: DuplicateInstructionID - Instruction ID is not unique.\n* `DUPL`: DuplicatePayment - Payment is a duplicate of another payment\n* `FF02`: SyntaxError - Syntax error reason is provided as narrative information in the additional reason information.\n* `FF03`: InvalidPaymentTypeInformation - Payment Type Information is missing or invalid. Generic usage if cannot specify Service Level or Local Instrument code\n* `FF05`: InvalidLocalInstrumentCode - Local Instrument code is missing or invalid\n* `FF08`: InvalidEndToEndId - End to End Id missing or invalid\n* `FF10`: BankSystemProcessingError - File or transaction cannot be processed due to technical issues at the bank side\n* `FF11`: ClearingRequestAborted - Clearing request rejected due it being subject to an abort operation.\n* `MD07`: EndCustomerDeceased - End customer is deceased.\n* `MS02`: NotSpecifiedReasonCustomerGenerated - Reason has not been specified by end customer\n* `MS03`: NotSpecifiedReasonAgentGenerated - Reason has not been specified by agent.\n* `NARR`: Narrative - Reason is provided as narrative information in the additional reason information.\n* `NERI`: NoERI - Credit transfer is tagged as an Extended Remittance Information (ERI) transaction but does not contain ERI.\n* `RC03`: InvalidDebtorBankIdentifier - Debtor bank identifier is invalid or missing\n* `RC04`: InvalidCreditorBankIdentifier - Creditor bank identifier is invalid or missing\n* `RC06`: InvalidDebtorBICIdentifier - Debtor BIC identifier is invalid or missing\n* `RC07`: InvalidCreditorBICIdentifier - Creditor BIC identifier is invalid or missing\n* `RC09`: InvalidDebtorClearingSystemMemberIdentifier - Debtor ClearingSystemMember identifier is invalid or missing\n* `RC10`: InvalidCreditorClearingSystemMemberIdentifier - Creditor ClearingSystemMember identifier is invalid or missing\n* `RC11`: InvalidIntermediaryAgent - Intermediary Agent is invalid or missing\n* `RR09`: InvalidStructuredCreditorReference - Structured creditor reference invalid or missing.\n* `RR10`: InvalidCharacterSet - Character set supplied not valid for the country and payment type.\n* `S001`: UETRFlaggedForCancellation - Unique End-to-end Transaction Reference (UETR) relating to a payment has been identified as being associated with a Request for Cancellation.\n* `TA01`: TransmissonAborted - The transmission of the file was not successful – it had to be aborted (for technical reasons)\n* `NOAR`: NonAgreedRTP - No existing agreement for receiving request-to-pay messages.\n* `NOCM`: NotCompliantGeneric - 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* `ALAC`: AlreadyAcceptedRTP - Request-to-pay has already been accepted by the Debtor.\n* `AEXR`: AlreadyExpiredRTP - Request-to-pay Expiry Date and Time has already passed.\n* `ARFR`: AlreadyRefusedRTP - Request-to-pay has already been refused by the Debtor.\n* `ARJR`: AlreadyRejectedRTP - Request-to-pay has already been rejected.\n* `EDTR`: ExpiryDateTimeReached - Expiry date time of the request-to-pay is already reached.\n* `EDTL`: ExpiryDateTooLong - Expiry date time of the request-to-pay is too far in the future.\n* `IEDT`: IncorrectExpiryDateTime - Expiry date time of the request-to-pay is incorrect.\n* `IRNR`: InitialRTPNeverReceived - No initial request-to-pay has been received.\n* `NRCH`: PayerOrPayerRTPSPNotReachable - Recipient side of the request-to-pay (payer or its request-to-pay service provider) is not reachable.\n* `RTNS`: RTPNotSupportedForDebtor - Debtor does not support request-to-pay transactions.\n* `PINS`: TypeOfPaymentInstrumentNotSupported - Type of payment requested in the request-to-pay is not supported by the payer.\n* `SVNR`: ServiceNotRendered - The payment is cancelled since a cash amount rendered was not correct or goods or a service was not rendered to the customer, e.g. in an e-commerce situation.\n* `UCRD`: UnknownCreditor - Unknown Creditor.\n",
            "enum": [
              "AB01",
              "AB02",
              "AB05",
              "AB06",
              "AB07",
              "AB08",
              "AB09",
              "AB10",
              "AB11",
              "AC04",
              "AC05",
              "AC06",
              "AC07",
              "AC08",
              "AG10",
              "AG11",
              "AGNT",
              "AM01",
              "AM02",
              "AM03",
              "AM05",
              "AM06",
              "AM11",
              "AM12",
              "AM13",
              "AM15",
              "AM18",
              "BE01",
              "BE05",
              "BE06",
              "BE07",
              "BE08",
              "BE10",
              "BE11",
              "BE12",
              "BE13",
              "BE14",
              "BE16",
              "BE17",
              "BE18",
              "BE19",
              "BE20",
              "BE22",
              "BE23",
              "CH03",
              "CH04",
              "CH21",
              "CNOR",
              "CURR",
              "CUST",
              "DS01",
              "DS02",
              "DS04",
              "DS0G",
              "DS0H",
              "DS24",
              "DS27",
              "DT01",
              "DT02",
              "DT03",
              "DU01",
              "DU02",
              "DU03",
              "DU04",
              "DU05",
              "DUPL",
              "FF02",
              "FF03",
              "FF05",
              "FF08",
              "FF10",
              "FF11",
              "MD07",
              "MS02",
              "MS03",
              "NARR",
              "NERI",
              "RC03",
              "RC04",
              "RC06",
              "RC07",
              "RC09",
              "RC10",
              "RC11",
              "RR09",
              "RR10",
              "S001",
              "TA01",
              "NOAR",
              "NOCM",
              "ALAC",
              "AEXR",
              "ARFR",
              "ARJR",
              "EDTR",
              "EDTL",
              "IEDT",
              "IRNR",
              "NRCH",
              "RTNS",
              "PINS",
              "SVNR",
              "UCRD"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "RequestToPayStatusReasonType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/RequestToPayStatusReasonTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/RequestToPayStatusReasonTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "RequestToPayStatusReasonInfo": {
        "description": "Provides detailed information on a status reason.\n",
        "properties": {
          "additionalInformation": {
            "description": "A human friendly description of the status reason including any further details if applicable.\n",
            "type": "string"
          },
          "reason": {
            "$ref": "#/components/schemas/RequestToPayStatusReasonType"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "RequestToPayStatus": {
        "properties": {
          "reasonInfo": {
            "description": "A list of `RequestToPayStatusReasonInfo` values providing detailed reason information for the status.\n",
            "items": {
              "$ref": "#/components/schemas/RequestToPayStatusReasonInfo"
            },
            "minItems": 1,
            "type": "array"
          },
          "status": {
            "description": "* `PAID`: Paid - The request to pay was approved by the debtor and the payment has been processed. Note that the outcome of the payment itself is not communicated.\n* `ACCEPTED`: Accepted - The request to pay was approved by the debtor but the payment has not yet been processed.\n* `CANCELLED`: Cancelled - Request to pay has been successfully cancelled after having received a request for cancellation.\n* `EXPIRED`: Expired - The request to pay has expired.\n* `PENDING`: Pending - The request to pay has been forwarded and an intial status report is still expected.\n* `PRESENTED`: Presented - The request to pay has been accepted by the payer participant and will be presented to the debtor.\n* `REJECTED`: Rejected - The request to pay has been rejected.\n* `REFUND_IN_PROGRESS`: Refund in progress - The refund of the original request to pay is currently in progress and does not yet have an outcome\n* `REFUNDED`: Refunded - The refund of the original request to pay has been completed successfully\n",
            "enum": [
              "PAID",
              "ACCEPTED",
              "CANCELLED",
              "EXPIRED",
              "PENDING",
              "PRESENTED",
              "REJECTED",
              "REFUND_IN_PROGRESS",
              "REFUNDED"
            ],
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "RequestToPayResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionResponseMessage"
          },
          {
            "properties": {
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "The instructed agent is the party receiving the status message and not the party that received the\noriginal instruction that is being reported on.\n"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "The instructing agent is the party sending the status message and not the party that sent the original\ninstruction that is being reported on.\n"
              },
              "originalRequestToPayData": {
                "$ref": "#/components/schemas/OriginalRequestToPayData"
              },
              "requestToPayConditions": {
                "$ref": "#/components/schemas/RequestToPayConditions"
              },
              "schema": {
                "enum": [
                  "RequestToPayResponse"
                ],
                "type": "string"
              },
              "status": {
                "$ref": "#/components/schemas/RequestToPayStatus"
              }
            },
            "required": [
              "status",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "RequestToPayCancellation": {
        "description": "Requests that a prior request to pay is cancelled if possible (e.g. it's not yet been actioned, rejected or expired).\n",
        "properties": {
          "instructedAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification",
            "description": "The instructed agent is the party receiving the cancellation message.\n"
          },
          "instructingAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification",
            "description": "The instructing agent is the party sending the cancellation message.\n"
          },
          "messageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "originalMessageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "originalRequestToPayData": {
            "$ref": "#/components/schemas/OriginalRequestToPayData"
          },
          "originalTransactionIdentifiers": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          },
          "reasonCode": {
            "description": "The reason the request to pay is being cancelled.\n- `AC03`: InvalidCreditorAccountNumber - Wrong account number in Credit Transfer.\n- `AGNT`: IncorrectAgent- Agent in the payment workflow is incorrect.\n- `AM09`: WrongAmount- Amount is not the amount agreed or expected.\n- `BE16`: InvalidDebtorIdentificationCode- Debtor or Ultimate Debtor identification code missing or invalid.\n- `COVR`: CoverCancelledOrReturned- Cover payments has either been returned or cancelled.\n- `CURR`: IncorrectCurrency- Currency of the payment is incorrect.\n- `CUST`: RequestedByCustomer- Cancellation requested by the Creditor.\n- `CUTA`: CancelUponUnableToApply- Cancellation requested because an investigation request has been received and no remediation is possible.\n- `DS24`: TimeOut- Cancellation requested because the original payment order expired due to time-out.\n- `DT01`: InvalidDate- Invalid date (for example, wrong or missing settlement date).\n- `DUPL`: DuplicatePayment- Payment is a duplicate of another payment.\n- `FRAD`: FraudulentOrigin- Cancellation requested following a transaction that was originated fraudulently. The use of the FraudulentOrigin code should be governed by jurisdictions.\n- `FRNA`: ForwardToNextAgent- To complement a rejection response, suggesting the request for cancelation should be forwarded to the next agent in the payment transaction chain.\n- `FRTR`: FinalResponse- Direct Debit Tracking recalled as Mandate Cancelled\n- `INDM`: IndemnityRequired- To express the wish to establish a bilateral indemnity agreement.\n- `MODT`: ModifiedTransaction- The underlying transaction in relation to an RTP was modified.\n- `PAID`: TransactionAlreadyPaid- The underlying transaction in relation to an RTP was already paid (via other means).\n- `SVNR`: ServiceNotRendered- The payment is cancelled since a cash amount rendered was not correct or goods or a service was not rendered to the customer, e.g. in an e-commerce situation.\n- `SYAD`: RequestToSettlementSystemAdministrator- Cancellation requested by System Member to Settlement System Administrator to indicate that the cancellation request must not be forwarded further in the chain.\n- `TECH`: TechnicalProblem- Cancellation requested following technical problems resulting in an erroneous transaction.\n- `UPAY`: UnduePayment- Payment is not justified.\n- `ENUE`: EndUserError- Cancellation or request for return requested by the Debtor specifically due to one or more errors by debtor in the original Credit Transfer. Usage: This code can be used for any error in the original Credit Transfer made by the Debtor. Can also be used if multiple errors were made in the original Credit Transfer.\n- `UAPA`: UnauthorizedPayment- \"The Debtor is requesting a return of the payment because the payment was not properly authorized. Usage: This code can be used in the case where a Credit Transfer was made without proper authorization from the Debtor. This could be due to compromised end user credentials.\"\n- `NARR`: Narrative- Reason is provided as narrative information in the additional reason information.\n- `AC02`: InvalidDebtorAccountNumber- Debtor account number invalid or missing.\n- `BIAS`: BatchInstructionAlreadySettled- Process a cancellation request but batch already settled.\n- `INCR`: InvalidCancellationRequest- Process a cancellation request with incorrect reference to original batch.\n- `DRTP`: DuplicationRequestToPay- Duplication of a request-to-pay message.\n",
            "enum": [
              "AC03",
              "AGNT",
              "AM09",
              "BE16",
              "COVR",
              "CURR",
              "CUST",
              "CUTA",
              "DS24",
              "DT01",
              "DUPL",
              "FRAD",
              "FRNA",
              "FRTR",
              "INDM",
              "MODT",
              "PAID",
              "SVNR",
              "SYAD",
              "TECH",
              "UPAY",
              "ENUE",
              "UAPA",
              "NARR",
              "AC02",
              "BIAS",
              "INCR",
              "DRTP"
            ],
            "type": "string"
          },
          "reasonDescription": {
            "description": "A description of the reason the request to pay is being cancelled.",
            "type": "string"
          },
          "schema": {
            "enum": [
              "RequestToPayCancellation"
            ],
            "type": "string"
          }
        },
        "required": [
          "reasonCode",
          "schema",
          "messageIdentifiers",
          "originalMessageIdentifiers",
          "originalTransactionIdentifiers"
        ],
        "type": "object"
      },
      "RequestToPayCancellationStatusReasonTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `AC04`: ClosedAccountNumber - Account number specified has been closed on the receiver’s books.\n* `ADAC`: AwaitingDebitAuthorityFromCustomer - Reported when the cancellation request cannot be processed because customer has not yet provided the debit authority on its account.\n* `AGNT`: AgentDecision - Reported when the cancellation cannot be accepted because of an agent refuses to cancel.\n* `AM04`: InsufficientFunds - Amount of funds available to cover specified message amount is insufficient.\n* `ARDT`: AlreadyReturned - Cancellation not accepted as the transaction has already been returned.\n* `ARPL`: AwaitinReply - Reported when the cancellation request cannot be processed because no reply has been  received yet from the receiver of the request message.\n* `CUST`: CustomerDecision - Reported when the cancellation cannot be accepted because of a customer decision (Creditor).\n* `LEGL`: LegalDecision - Reported when the cancellation cannot be accepted because of regulatory rules.\n* `NARR`: Narrative - Reason is provided as narrative information in the additional reason information.\n* `NOAS`: NoAnswerFromCustomer - No response from beneficiary (to the cancellation request).\n* `NOOR`: NoOriginalTransactionReceived - Original transaction (subject to cancellation) never received.\n* `PTNA`: PassedToTheNextAgent - Reported when the cancellation request cannot be accepted because the payment instruction has been passed to the next agent.\n* `RQDA`: RequestingDebitAuthority - Reported when authority is required by the Creditor to return the payment.\n* `WSEQ`: WrongSequence - Reported when the cancellation request cannot be processed because the sequence referred to in the request is not valid.\n* `IDMN`: CancellationIndemnityRequired - Complementing a Pending or Reject Status. Payment cancellation request cannot be accepted until an indemnity agreement is established.\n* `ACLR`: AlreadyCancelledRTP - Request-to-pay has already been cancelled.\n* `AEXR`: AlreadyExpiredRTP - Request-to-pay Expiry Date and Time has already passed.\n* `ARFR`: AlreadyRefusedRTP - Request-to-pay has already been refused by the Debtor.\n* `ARJR`: AlreadyRejectedRTP - Request-to-pay has already been rejected.\n* `PATE`: PaymentAlreadyTransmittedExecution - Payment related to the request-to-pay has already been transmitted for execution.\n* `RR04`: RegulatoryReason - Regulatory Reason.\n* `RCAR`: RfCAlreadyRejected - Request for cancellation of the request-to-pay has already been rejected.\n* `RCNR`: RfCNeverReceived - Request for cancellation of the request-to-pay has never been received.\n* `RCPR`: RfCReceivedAndProcessed - Request for cancellation of the request-to-pay has already been received and processed.\n* `URTP`: UnknownRTP - Request-to-pay is unknown.\n",
            "enum": [
              "AC04",
              "ADAC",
              "AGNT",
              "AM04",
              "ARDT",
              "ARPL",
              "CUST",
              "LEGL",
              "NARR",
              "NOAS",
              "NOOR",
              "PTNA",
              "RQDA",
              "WSEQ",
              "IDMN",
              "ACLR",
              "AEXR",
              "ARFR",
              "ARJR",
              "PATE",
              "RR04",
              "RCAR",
              "RCNR",
              "RCPR",
              "URTP"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "RequestToPayCancellationStatusReasonType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/RequestToPayCancellationStatusReasonTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/RequestToPayCancellationStatusReasonTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "RequestToPayCancellationStatusReasonInfo": {
        "description": "Provides detailed information on a cancellation status reason.\n",
        "properties": {
          "additionalInformation": {
            "description": "A human friendly description of the status reason including any further details if applicable.\n",
            "type": "string"
          },
          "reason": {
            "$ref": "#/components/schemas/RequestToPayCancellationStatusReasonType"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "RequestToPayCancellationStatus": {
        "properties": {
          "reasonInfo": {
            "description": "A list of `RequestToPayCancellationStatusReasonInfo` values providing detailed reason information for the status.\n",
            "items": {
              "$ref": "#/components/schemas/RequestToPayCancellationStatusReasonInfo"
            },
            "minItems": 1,
            "type": "array"
          },
          "status": {
            "description": "* `CANCELLED`: Cancelled - The cancellation was successfully processed and the request for payment has been cancelled.\n* `REJECTED`: Rejected - The cancellation was rejected. Refer to the `reasonInfo` for further information.\n",
            "enum": [
              "CANCELLED",
              "REJECTED"
            ],
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "RequestToPayCancellationResponse": {
        "description": "Provides the outcome of a prior request to pay cancellation.\n",
        "properties": {
          "instructedAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification",
            "description": "The instructed agent is the party receiving the cancellation response message and not the party that received the\noriginal cancellation instruction that is being reported on.\n"
          },
          "instructingAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification",
            "description": "The instructing agent is the party sending the cancellation response message and not the party that sent the original\ncancellation instruction that is being reported on.\n"
          },
          "messageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "originalMessageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "originalRequestToPayData": {
            "$ref": "#/components/schemas/OriginalRequestToPayData"
          },
          "originalTransactionIdentifiers": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          },
          "schema": {
            "enum": [
              "RequestToPayCancellationResponse"
            ],
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/RequestToPayCancellationStatus"
          }
        },
        "required": [
          "status",
          "schema",
          "messageIdentifiers",
          "originalMessageIdentifiers",
          "originalTransactionIdentifiers"
        ],
        "type": "object"
      },
      "RequestToPayStatusRequest": {
        "description": "Provides details to identify a previously submitted request to pay.\n",
        "properties": {
          "instructedAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification",
            "description": "Agent that is instructed by the previous party in the chain to carry out the (set of) instruction(s).\n"
          },
          "instructingAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification",
            "description": "Agent that instructs the next party in the chain to carry out the (set of) instruction(s)\n"
          },
          "messageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "originalMessageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "originalTransactionIdentifiers": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          },
          "schema": {
            "enum": [
              "RequestToPayStatusRequest"
            ],
            "type": "string"
          }
        },
        "required": [
          "messageIdentifiers",
          "originalTransactionIdentifiers"
        ],
        "type": "object"
      },
      "RequestToPayInstructionStatusReport": {
        "description": "Reports the status of an individual request to pay transaction in a bulk message.",
        "properties": {
          "originalRequestToPayData": {
            "$ref": "#/components/schemas/OriginalRequestToPayData"
          },
          "status": {
            "$ref": "#/components/schemas/RequestToPayStatus"
          },
          "transactionIdentifiers": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          }
        },
        "required": [
          "transactionIdentifiers",
          "status"
        ],
        "type": "object"
      },
      "RequestToPayTransactionStatistics": {
        "description": "A detailed breakdown of the number of request to pay transactions by their status.\nEach property corresponds to a status outcome and contains the transaction count for that status.\n",
        "properties": {
          "numberOfAcceptedTransactions": {
            "description": "Count of transactions with the `ACCEPTED` status.",
            "type": "integer"
          },
          "numberOfCancelledTransactions": {
            "description": "Count of transactions with the `CANCELLED` status.",
            "type": "integer"
          },
          "numberOfExpiredTransactions": {
            "description": "Count of transactions with the `EXPIRED` status.",
            "type": "integer"
          },
          "numberOfPaidTransactions": {
            "description": "Count of transactions with the `PAID` status.",
            "type": "integer"
          },
          "numberOfPendingTransactions": {
            "description": "Count of transactions with the `PENDING` status.",
            "type": "integer"
          },
          "numberOfPresentedTransactions": {
            "description": "Count of transactions with the `PRESENT` status.",
            "type": "integer"
          },
          "numberOfRejectedTransactions": {
            "description": "Count of transactions with the `REJECTED` status.",
            "type": "integer"
          },
          "numberOfUnsubmittedTransactions": {
            "description": "number of transactions not yet sent to industry, and thus do not yet have an official RTP state.",
            "type": "integer"
          }
        },
        "required": [
          "numberOfPaidTransactions",
          "numberOfAcceptedTransactions",
          "numberOfCancelledTransactions",
          "numberOfExpiredTransactions",
          "numberOfPendingTransactions",
          "numberOfPresentedTransactions",
          "numberOfRejectedTransactions",
          "numberOfUnsubmittedTransactions"
        ],
        "type": "object"
      },
      "RequestToPayInitiationResponse": {
        "allOf": [
          {
            "description": "Reports the status of a bulk collection. It is also used as the response to an async bulk collection request.\n"
          },
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "properties": {
              "bulkPaymentSchemeName": {
                "$ref": "#/components/schemas/PaymentSchemeName"
              },
              "numberOfTransactions": {
                "description": "The total amount of transactions in the bulk.",
                "minimum": 1,
                "type": "integer"
              },
              "requestToPayInformationId": {
                "description": "Universally unique identifier to identify the bulk collection itself.\n",
                "format": "UUID",
                "type": "string"
              },
              "requestToPayInitiationStatus": {
                "$ref": "#/components/schemas/InitiationStatus"
              },
              "requestToPayInstructionStatusReports": {
                "description": "List of RequestToPayInstructionStatusReports relating to each request to pay\ninitiation instruction received and actioned. Unsubmitted transactions will not be in this list.\n",
                "items": {
                  "$ref": "#/components/schemas/RequestToPayInstructionStatusReport"
                },
                "minItems": 0,
                "type": "array"
              },
              "schema": {
                "enum": [
                  "RequestToPayInitiationStatusRequest"
                ],
                "type": "string"
              },
              "transactionStatistics": {
                "$ref": "#/components/schemas/RequestToPayTransactionStatistics"
              }
            },
            "required": [
              "schema",
              "requestToPayInformationId",
              "requestToPayInitiationStatus",
              "transactionStatistics",
              "bulkPaymentSchemeName"
            ],
            "type": "object"
          }
        ]
      },
      "DeterminationRequest": {
        "description": "A request providing information for the lookup of a proxy or account in the context of the ZA RPP Payment Scheme:\n1. If the identifier schema is either MOBILE or CUSTOM, proxy resolution will be performed. In this case, the\n   `identifier.namespace` field is required.\n2. If the identifier schema is GENERIC, account resolution will be performed. In this case, the\n  `accountAgent.bicfi` field is required.\n",
        "discriminator": {
          "mapping": {
            "ZA_RPP": "#/components/schemas/ZaRppDeterminationRequest"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaRppIdentifier": {
        "discriminator": {
          "mapping": {
            "CUSTOM": "#/components/schemas/CustomIdentifier",
            "GENERIC": "#/components/schemas/GenericAccountIdentifier",
            "MOBILE": "#/components/schemas/MobileNumberIdentifier"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/MobileNumberIdentifier"
          },
          {
            "$ref": "#/components/schemas/CustomIdentifier"
          },
          {
            "$ref": "#/components/schemas/GenericAccountIdentifier"
          }
        ]
      },
      "ZaRppRequestor": {
        "discriminator": {
          "mapping": {
            "INSTITUTION_IDENTIFICATION": "#/components/schemas/InstitutionIdentificationWithSchemaAndDomain",
            "PARTY": "#/components/schemas/PartyWithSchema"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "InstitutionIdentificationWithSchemaAndDomain": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ZaRppRequestor"
          },
          {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          {
            "properties": {
              "domain": {
                "description": "A BankservAfrica-specific field requirement that associates this institution with a specific \"domain\"\n- which is essentially a type of namespace. This is the equivalent of the Electrum 'namespace' found on\nNon-Banking Identifiers, such as a MobileIdentifier\n",
                "maxLength": 35,
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "PartyWithSchema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ZaRppRequestor"
          },
          {
            "$ref": "#/components/schemas/Party"
          }
        ]
      },
      "ZaRppDeterminationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DeterminationRequest"
          },
          {
            "properties": {
              "accountAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "identifier": {
                "$ref": "#/components/schemas/ZaRppIdentifier"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "requestor": {
                "$ref": "#/components/schemas/ZaRppRequestor"
              },
              "uetr": {
                "description": "Universally unique identifier to provide an end-to-end reference.\nThis identifier remains the same for all messages related to the same transaction.\n",
                "format": "UUID",
                "type": "string"
              },
              "verificationIdentification": {
                "description": "Unique identifier for this specific verification request.\n",
                "maxLength": 35,
                "minLength": 1,
                "type": "string"
              }
            },
            "required": [
              "identifier",
              "uetr",
              "verificationIdentification"
            ],
            "type": "object"
          }
        ]
      },
      "IdentifierDeterminationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "properties": {
              "request": {
                "$ref": "#/components/schemas/DeterminationRequest"
              },
              "schema": {
                "enum": [
                  "IdentifierDeterminationRequest"
                ],
                "type": "string"
              }
            },
            "required": [
              "request",
              "schema"
            ],
            "type": "object"
          }
        ],
        "type": "object"
      },
      "IdentifierDeterminationReport": {
        "discriminator": {
          "mapping": {
            "ZA_RPP": "#/components/schemas/ZaRppIdentifierDeterminationReport"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaRppAccountInformation": {
        "properties": {
          "creationDate": {
            "description": "The date when the account referenced by this proxy identifier was created.\n",
            "format": "date-time",
            "type": "string"
          },
          "proxy": {
            "$ref": "#/components/schemas/NonBankingIdentifier"
          },
          "traditionalAccountType": {
            "$ref": "#/components/schemas/AccountType"
          },
          "traditionalIdentifier": {
            "$ref": "#/components/schemas/BankingIdentifier"
          }
        },
        "required": [
          "creationDate"
        ],
        "type": "object"
      },
      "ZaRppIdentificationReport": {
        "description": "A report providing information from the lookup of a proxy in the context of the ZA RPP Payment Scheme.\n\nThis report returns information required to proceed with the clearing of funds through the use of the `proxy`\n(identifier) provided in the identifier determination request. Specifically, this report will provide the outcome\nof the lookup of said identifier, indication whether it is valid or not, as well as provide the name (\"known as\nname\") of the creditor, and the legal name of the creditor (both of these are mandatory in the ZA RPP Payment\nScheme, despite not being mandatory in this API), namely:\n  - `accountOwner.knownAsName`\n  - `accountOwner.legalName`\n",
        "properties": {
          "accountAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "accountInformation": {
            "$ref": "#/components/schemas/ZaRppAccountInformation"
          },
          "accountOwner": {
            "$ref": "#/components/schemas/Party"
          },
          "outcome": {
            "enum": [
              "SUCCESSFUL",
              "FAILED"
            ],
            "type": "string"
          },
          "reasonCode": {
            "description": "* `AB06` :\tTransaction stopped due to timeout at the Instructed Agent.\n* `AB07` :\tAgent of message is not online. Generic usage if it cannot be determined who exactly is not online.\n* `AB10` :\tAn error occured at the instructed agent\n* `AC06` :\tAccount specified is blocked, prohibiting posting of transactions against it\n* `AG01` :\tTransaction forbidden on this type of account\n* `AG03` :\tTransaction type not supported/authorized on this account.\n* `AG10` :\tAgent of message is suspended from the Real Time Payment system. Generic usage if it cannot be determined who exactly is suspended.\n* `AGNT` :\tAgent in the payment workflow is incorrect\n* `AM02` :\tSpecific transaction/message amount is greater than allowed maximum (e.g. payee proxy participant service limit exceeded\n* `CH21` :\tMandatory element is missing .\n* `DT02` :\tInvalid creation date and time in Group Header (eg, historic date) .\n* `DU03` :\tTransaction is not unique.\n* `DUPL` :\tRequest is a duplicate of another request\n* `FF02` :\tSyntax error reason is provided as narrative information in the additional reason information.\n* `FF08` :\tEnd to End Id missing or invalid .\n* `NAUT` :\tPermission to be processed is not granted\n* `NOOR` :\tOriginal SCT never received\n* `PD01` :\tDomain not found or invalid\n* `PD02` :\tSuspended\tDomain provided is suspended pending investigation\n* `BE23` :\tPhone number or email address, or any other proxy, used as the account proxy is unknown or invalid.\n* `PX03` :\tProxy not found in central repository\n* `PX04` :\tFormat of proxy invalid\n* `RC05` :\tBIC identifier is invalid or missing.\n* `RC08` :\tClearingSystemMemberidentifier is invalid or missing. Generic usage if cannot specify between debit or credit account .\n* `RR10` :\tCharacter set supplied not valid for the country and payment type.\n* `RR12` :\tInvalid or missing identification required within a particular country or payment type.\n* `RF01` :\tTransaction reference is not unique within the message.\n* `AC16` :\tAccount in Sequestration\n* `AC17` :\tAccount in Liquidation\n* `AC04` :\tAccount Closed\n* `AC01` :\tFormat of the account number specified is not correct\n* `MD07` :\tAccount Holder Deceased\n* `NOCM` :\tCustomer 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* `BE01` :\tIdentification of end customer is not consistent with associated account number. (formerly CreditorConsistency).\n",
            "maxLength": 4,
            "minLength": 1,
            "type": "string"
          },
          "reasonDescription": {
            "description": "A description of the reason that the identification request failed.\nNOTE: Values longer than 35 characters may be truncated due to ZA RPP scheme restrictions.\n",
            "type": "string"
          },
          "transactionLimit": {
            "$ref": "#/components/schemas/Amount"
          }
        },
        "required": [
          "outcome"
        ],
        "type": "object"
      },
      "ZaRppIdentifierDeterminationReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/IdentifierDeterminationReport"
          },
          {
            "properties": {
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructionForCreatorAgent": {
                "description": "Further information related to the proxy resolution response, provided by the\nOperator, and intended for the creator agent.\n",
                "items": {
                  "$ref": "#/components/schemas/CreditorAgentInstruction"
                },
                "minItems": 0,
                "type": "array"
              },
              "originalRequestor": {
                "$ref": "#/components/schemas/ZaRppRequestor"
              },
              "originalUetr": {
                "description": "The universally unique identifier provided in the original request as an end-to-end reference.\nThis identifier remains the same for all messages related to the same transaction.\n",
                "format": "UUID",
                "type": "string"
              },
              "originalVerificationIdentification": {
                "description": "The `request.verificationIdentification` as provided in the original request.\n",
                "maxLength": 35,
                "minLength": 1,
                "type": "string"
              },
              "reportInformation": {
                "$ref": "#/components/schemas/ZaRppIdentificationReport"
              }
            },
            "required": [
              "schema",
              "originalUetr",
              "originalVerificationIdentification",
              "reportInformation"
            ],
            "type": "object"
          }
        ]
      },
      "IdentifierDeterminationResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "properties": {
              "report": {
                "$ref": "#/components/schemas/IdentifierDeterminationReport"
              },
              "schema": {
                "enum": [
                  "IdentifierDeterminationResponse"
                ],
                "type": "string"
              }
            },
            "required": [
              "report",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "SchemeVerificationData": {
        "description": "This object contains fields specific to the scheme being interacted with and determined by the chosen schema.\nTypically these are fields that are not standard within ISO20022 ACMT.023\n",
        "discriminator": {
          "mapping": {
            "ZA_AVS": "#/components/schemas/ZaAccountVerificationData"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaAccountVerificationData": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SchemeVerificationData"
          },
          {
            "description": "Fields specific to account verification services in South Africa. The fields checksDebitsAllowed,\nchecksCreditsAllowed and checksOlderThanThreeMonths indicate to the receiving FI whether or not to return\nthe associated information (i.e. true or false in respect to those items)\n",
            "properties": {
              "checkCreditsAllowed": {
                "description": "Sets whether or not the response should indicate if credits are allowed on the account.\n",
                "type": "boolean"
              },
              "checkDebitsAllowed": {
                "description": "Sets whether or not the response should indicate if debits are allowed on the account.\n",
                "type": "boolean"
              },
              "checkOlderThanThreeMonths": {
                "description": "Sets whether or not the response should indicate whether the account is older than 3 months.\n",
                "type": "boolean"
              },
              "initials": {
                "description": "Initials of the individual account owner that is to be verified.\n",
                "maxLength": 70,
                "type": "string"
              },
              "lastName": {
                "description": "Family name of the individual account owner that is to be verified.\n",
                "maxLength": 70,
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "Verification": {
        "properties": {
          "account": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "agent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "identification": {
            "description": "Uniquely identifies this verification. Used in cases where a list of verifications are necessary, in such\ncases a verification may need to be uniquely identified independently from other verifications.\n",
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "party": {
            "$ref": "#/components/schemas/Party"
          },
          "schemeVerificationData": {
            "$ref": "#/components/schemas/SchemeVerificationData"
          }
        },
        "required": [
          "party",
          "account"
        ],
        "type": "object"
      },
      "AccountVerificationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "properties": {
              "assignee": {
                "$ref": "#/components/schemas/Party"
              },
              "assigner": {
                "$ref": "#/components/schemas/Party"
              },
              "creator": {
                "$ref": "#/components/schemas/Party"
              },
              "firstAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "schema": {
                "enum": [
                  "AccountVerificationRequest"
                ],
                "type": "string"
              },
              "verification": {
                "$ref": "#/components/schemas/Verification"
              }
            },
            "required": [
              "verification",
              "assigner",
              "assignee",
              "schema"
            ],
            "type": "object"
          }
        ],
        "description": "Modeled after an ISO20022 ACMT.023 message, this AccountVerificationRequest allows the caller to verify account\nand account owner information with a given scheme.\n",
        "type": "object"
      },
      "Assignment": {
        "properties": {
          "assignee": {
            "$ref": "#/components/schemas/Party"
          },
          "assigner": {
            "$ref": "#/components/schemas/Party"
          },
          "creator": {
            "$ref": "#/components/schemas/Party"
          },
          "firstAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          }
        },
        "type": "object"
      },
      "VerificationOutcome": {
        "description": "Indicates whether the information provided in the verification request was correct (PASSED) or was incorrect\n(FAILED). If it was incorrect, a reason is provided.\n",
        "discriminator": {
          "mapping": {
            "FAILED": "#/components/schemas/VerificationFailedOutcome",
            "PASSED": "#/components/schemas/VerificationPassedOutcome"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "ExternalVerificationReason1Code": {
        "description": "* `AC01` : Account number provided in the request is invalid or missing.\n* `AGNT` : Agent identification provided in the request is incorrect.\n* `DUPL` : Request is a duplicate of another request.\n* `AG01` : Transaction forbidden on this type of account (Payment cannot be made to this account for example not open for deposits, blocked, closed).\n* `BNOR` : PSP is not registered under this Scheme.\n* `DS28` : Return following technical problems resulting in erroneous transaction.\n* `FF01` : File format incomplete or invalid.\n* `MS03` : Reason has not been specified by agent.\n* `NORR` : No response on request within timeframe.\n* `NR01` : PSP not able to confirm details and no reason is stated.\n* `RC03` : Debtor bank identifier is invalid or missing.\n* `RC04` : Creditor bank identifier is invalid or missing.\n* `TM01` : Associated message was received after agreed processing cut-off time.\n* `PN01` : Account Owner name and Payment Account number do not match.\n* `PN02` : Account Owner name and Payment Account number is a close match.\n* `PI01` : Account Owner Identification and Payment Account number do not match.\n",
        "enum": [
          "AC01",
          "AGNT",
          "DUPL",
          "AG01",
          "BNOR",
          "DS28",
          "FF01",
          "MS03",
          "NORR",
          "NR01",
          "RC03",
          "RC04",
          "TM01",
          "PN01",
          "PN02",
          "PI01"
        ],
        "maxLength": 4,
        "minLength": 1,
        "type": "string"
      },
      "VerificationReasonCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalVerificationReason1Code"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "VerificationReasonType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/VerificationReasonCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerificationReasonCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "VerificationReasonInfo": {
        "description": "Provides detailed information on a verification reason.\n",
        "properties": {
          "additionalInformation": {
            "description": "A human friendly description of the verification reason including any further details if applicable.\n",
            "type": "string"
          },
          "reason": {
            "$ref": "#/components/schemas/VerificationReasonType"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "VerificationFailedOutcome": {
        "allOf": [
          {
            "$ref": "#/components/schemas/VerificationOutcome"
          },
          {
            "properties": {
              "reasonInfo": {
                "$ref": "#/components/schemas/VerificationReasonInfo"
              }
            },
            "type": "object"
          }
        ]
      },
      "VerificationPassedOutcome": {
        "allOf": [
          {
            "$ref": "#/components/schemas/VerificationOutcome"
          }
        ]
      },
      "SchemeVerificationReportData": {
        "discriminator": {
          "mapping": {
            "ZA_AVS": "#/components/schemas/ZaAccountVerificationReportData"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "TernaryVerificationOutcome": {
        "description": "Indicates whether or not the associated verification item was true (passed/positive), false (failed/negative)\nor was not checked.\n",
        "enum": [
          "TRUE",
          "FALSE",
          "NOT_CHECKED"
        ],
        "type": "string"
      },
      "ZaAccountVerificationReportData": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SchemeVerificationReportData"
          },
          {
            "description": "Report fields specific to account verification services in South Africa. All fields are always present, and\nwhere a verification was not requested, it will default to a value of 'NOT_CHECKED'\n",
            "properties": {
              "accountFound": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "accountOpen": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "accountTypeMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "creditsAllowed": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "debitsAllowed": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "emailMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "initialsMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "mobileMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "nameMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "olderThanThreeMonths": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "organisationIdentificationMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "privateIdentificationMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              },
              "trustIdentificationMatch": {
                "$ref": "#/components/schemas/TernaryVerificationOutcome"
              }
            },
            "required": [
              "accountFound",
              "accountOpen",
              "accountTypeMatch",
              "privateIdentificationMatch",
              "organisationIdentificationMatch",
              "trustIdentificationMatch",
              "initialsMatch",
              "nameMatch",
              "debitsAllowed",
              "creditsAllowed",
              "olderThanThreeMonths",
              "emailMatch",
              "mobileMatch"
            ],
            "type": "object"
          }
        ]
      },
      "VerificationReport": {
        "properties": {
          "originalIdentification": {
            "description": "Matches the identification of the Verification to which this report refers\n",
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "outcome": {
            "$ref": "#/components/schemas/VerificationOutcome"
          },
          "schemeVerificationReportData": {
            "$ref": "#/components/schemas/SchemeVerificationReportData"
          },
          "updatedPartyAndAccount": {
            "properties": {
              "account": {
                "$ref": "#/components/schemas/PaymentAccount"
              },
              "party": {
                "$ref": "#/components/schemas/Party"
              }
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "AccountVerificationResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "properties": {
              "assignee": {
                "$ref": "#/components/schemas/Party"
              },
              "assigner": {
                "$ref": "#/components/schemas/Party"
              },
              "creator": {
                "$ref": "#/components/schemas/Party"
              },
              "firstAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "originalAssignment": {
                "$ref": "#/components/schemas/Assignment"
              },
              "originalMessageIdentifiers": {
                "$ref": "#/components/schemas/MessageIdentifiers"
              },
              "originalVerification": {
                "$ref": "#/components/schemas/Verification"
              },
              "report": {
                "$ref": "#/components/schemas/VerificationReport"
              },
              "schema": {
                "enum": [
                  "AccountVerificationResponse"
                ],
                "type": "string"
              },
              "status": {
                "$ref": "#/components/schemas/Status"
              }
            },
            "required": [
              "verification",
              "assigner",
              "assignee",
              "schema"
            ],
            "type": "object"
          }
        ],
        "type": "object"
      },
      "ReservationTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `BLKD` - Blocked - Amount blocked or frozen due to external circumstances such as a court order, death of beneficiary or account owner, or bankruptcy.\n* `CARE` - CashReservation - Amount set aside by a participant to reserve liquidity from its own account, exclusively or executing cash withdrawals.\n* `HPAR` - HighlyUrgentPaymentReservation - Amount set aside by a participant to reserve liquidity from its own account, exclusively for executing highly urgent payments.\n* `NSSR` - NetSSSReservation - Amount set aside by a participant to reserve liquidity from its own account, exclusively for the settlement of the multilateral cash balance stemming from the Net Security Settlement System.\n* `THRE` - ThresholdForInvestment - Amount above which funds will be destined for investment.\n* `UPAR` - UrgentPaymentReservation - Amount set aside by a participant to reserve liquidity from its own account, exclusively for executing critical payments called urgent payments.\n",
            "enum": [
              "BLKD",
              "CARE",
              "HPAR",
              "NSSR",
              "THRE",
              "UPAR"
            ],
            "type": "string"
          }
        },
        "required": [
          "value",
          "schema"
        ],
        "type": "object"
      },
      "ReservationType": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ReservationTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ReservationTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "ReservationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to perform a reservation of funds on an account.\n",
            "properties": {
              "accountIdentification": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account to which a reservation of funds will be made."
              },
              "amount": {
                "$ref": "#/components/schemas/Amount"
              },
              "initiationSource": {
                "description": "Free text field used to inform the core banking system of which system is initiating the reservation.",
                "type": "string"
              },
              "reference": {
                "description": "An explanation of the transaction, e.g. to be printed on the account holder's statement.\n",
                "maxLength": 35,
                "type": "string"
              },
              "reservationType": {
                "$ref": "#/components/schemas/ReservationType"
              },
              "schema": {
                "enum": [
                  "ReservationRequest"
                ],
                "type": "string"
              },
              "supplementaryData": {
                "$ref": "#/components/schemas/SupplementaryData"
              }
            },
            "required": [
              "amount",
              "accountIdentification",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "VoidReservationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to void a prior reservation of funds.",
            "properties": {
              "accountIdentification": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account to which a void will be performed."
              },
              "amount": {
                "$ref": "#/components/schemas/Amount"
              },
              "initiationSource": {
                "description": "Free text field used to inform the core banking system of which system is initiating the void.",
                "type": "string"
              },
              "paymentUetr": {
                "description": "UUID which links the void to a payment instruction, and its initial reservation.",
                "format": "UUID",
                "type": "string"
              },
              "schema": {
                "enum": [
                  "VoidReservationRequest"
                ],
                "type": "string"
              },
              "supplementaryData": {
                "$ref": "#/components/schemas/SupplementaryData",
                "description": "Additional supplementary data."
              }
            },
            "required": [
              "paymentUetr",
              "amount",
              "accountIdentification",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "TransactionDirection": {
        "description": "Indicates the direction of the original payment, from the perspective of Electrum and the Partner.\n",
        "enum": [
          "INBOUND",
          "OUTBOUND",
          "ON_US"
        ],
        "type": "string"
      },
      "PostingRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A model containing the necessary information to perform a posting to the banking ledger after a payment has completed successfully.",
            "properties": {
              "aggregatedTransactionCount": {
                "description": "A count of how many payments are aggregated into this posting",
                "type": "integer"
              },
              "amount": {
                "$ref": "#/components/schemas/Amount"
              },
              "creditor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party to which an amount of money is due.\n"
              },
              "creditorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor to which a credit entry will be made."
              },
              "creditorAccountReference": {
                "description": "An explanation of the transaction, e.g. to be printed on the creditor account holder's statement.",
                "type": "string"
              },
              "creditorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the creditor."
              },
              "creditorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit entry will be made as a result of the payment transaction."
              },
              "debtor": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that owes an amount of money to the (ultimate) creditor.\n"
              },
              "debtorAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor to which a debit entry will be made."
              },
              "debtorAccountReference": {
                "description": "An explanation of the transaction, e.g. to be printed on the debtor account holder's statement.",
                "type": "string"
              },
              "debtorAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification",
                "description": "Financial institution servicing an account for the debtor."
              },
              "debtorAgentAccount": {
                "$ref": "#/components/schemas/PaymentAccount",
                "description": "Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain."
              },
              "direction": {
                "$ref": "#/components/schemas/TransactionDirection"
              },
              "effectiveDateTime": {
                "description": "The effective action date-time of the posting.",
                "format": "date-time",
                "type": "string"
              },
              "initiatingParty": {
                "$ref": "#/components/schemas/Party",
                "description": "Party that initiates the payment.\n"
              },
              "initiationSource": {
                "description": "Free text field used to inform the core banking system of which system is initiating the posting.",
                "type": "string"
              },
              "localInstrument": {
                "$ref": "#/components/schemas/LocalInstrumentType"
              },
              "paymentMethod": {
                "$ref": "#/components/schemas/PaymentMethod",
                "description": "Specifies the means of payment for the original transaction.\n"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/PaymentSchemeName",
                "description": "The payment scheme of the payment being posted."
              },
              "paymentUetr": {
                "description": "UUID which links the posting to a payment instruction.",
                "format": "UUID",
                "type": "string"
              },
              "purpose": {
                "$ref": "#/components/schemas/PurposeType",
                "description": "Underlying reason for the payment transaction."
              },
              "schema": {
                "enum": [
                  "PostingRequest"
                ],
                "type": "string"
              },
              "supplementaryData": {
                "$ref": "#/components/schemas/SupplementaryData",
                "description": "Additional supplementary data."
              }
            },
            "required": [
              "paymentUetr",
              "effectiveDateTime",
              "amount",
              "aggregatedTransactionCount",
              "paymentScheme",
              "paymentMethod",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "PaymentMessage": {
        "description": "The complete, unmodified payment instruction object that is being submitted for fraud evaluation.\n",
        "discriminator": {
          "mapping": {
            "CreditTransfer": "#/components/schemas/CreditTransfer",
            "DirectDebit": "#/components/schemas/DirectDebit"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreditTransfer"
          },
          {
            "$ref": "#/components/schemas/DirectDebit"
          }
        ]
      },
      "FraudAssessmentRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A FraudAssessmentRequest is sent with an enclosed payment instruction that is assessed for relevant risk.\n",
            "properties": {
              "paymentMessage": {
                "$ref": "#/components/schemas/PaymentMessage"
              },
              "schema": {
                "enum": [
                  "FraudAssessmentRequest"
                ],
                "type": "string"
              }
            },
            "required": [
              "paymentMessage",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "Base64EncodedData": {
        "properties": {
          "contentMessageType": {
            "description": "The classification of the enclosed message.\n",
            "type": "string"
          },
          "contentType": {
            "enum": [
              "XML"
            ],
            "type": "string"
          },
          "payload": {
            "description": "Base64 encoded payload",
            "type": "string"
          },
          "schema": {
            "enum": [
              "Base64EncodedData"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "contentType",
          "contentMessageType",
          "payload"
        ],
        "type": "object"
      },
      "SanctionsPaymentMessage": {
        "description": "The payment message that must undergo sanctions screening.\n",
        "discriminator": {
          "mapping": {
            "Base64EncodedData": "#/components/schemas/Base64EncodedData"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/Base64EncodedData"
          }
        ]
      },
      "SanctionsAssessmentRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseTransactionMessage"
          },
          {
            "description": "A SanctionsAssessmentRequest is sent with an enclosed payment instruction that is assessed for relevant risk.\n",
            "properties": {
              "paymentMessage": {
                "$ref": "#/components/schemas/SanctionsPaymentMessage"
              },
              "requestExpiry": {
                "description": "The point after which the result of the SanctionsAssessmentRequest is no longer valid.\nThe date *must* be formatted as defined by `date-time` in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\n",
                "format": "date-time",
                "type": "string"
              },
              "schema": {
                "enum": [
                  "SanctionsAssessmentRequest"
                ],
                "type": "string"
              }
            },
            "required": [
              "paymentMessage",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "InstitutionChoice": {
        "properties": {
          "institution": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "schema": {
            "enum": [
              "INSTITUTION"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "institution"
        ],
        "type": "object"
      },
      "PartyChoice": {
        "properties": {
          "party": {
            "$ref": "#/components/schemas/Party"
          },
          "schema": {
            "enum": [
              "PARTY"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "party"
        ],
        "type": "object"
      },
      "PartyInstitutionChoice": {
        "discriminator": {
          "mapping": {
            "INSTITUTION": "#/components/schemas/InstitutionChoice",
            "PARTY": "#/components/schemas/PartyChoice"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/PartyChoice"
          },
          {
            "$ref": "#/components/schemas/InstitutionChoice"
          }
        ]
      },
      "CaseAssignment": {
        "properties": {
          "assignee": {
            "$ref": "#/components/schemas/PartyInstitutionChoice"
          },
          "assigner": {
            "$ref": "#/components/schemas/PartyInstitutionChoice"
          },
          "creationDateTime": {
            "description": "The date and time at which the message was created, in senders local timezone or UTC.\nThe date *must* be formatted as defined by `date-time` in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)\n",
            "format": "date-time",
            "type": "string"
          },
          "identification": {
            "description": "Uniquely identifies a case assignment\n",
            "maxLength": 35,
            "type": "string"
          }
        },
        "required": [
          "assigner",
          "assignee",
          "identification",
          "creationDateTime"
        ],
        "type": "object"
      },
      "Case6": {
        "properties": {
          "creator": {
            "$ref": "#/components/schemas/PartyInstitutionChoice"
          },
          "identification": {
            "maxLength": 35,
            "type": "string"
          },
          "reopenCaseIndication": {
            "description": "Indicates whether or not the case was previously closed and is now re-opened",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ZaAcFiToFiPaymentCancellationPaymentSchemeData": {
        "properties": {
          "cancellationType": {
            "description": "Identifies the specific business process applicable to the cancellation request.\n* `RECALL`: A request to revoke a payment instruction that has **not yet settled** or is currently in\n   **tracking**. If successful, the instruction is cancelled without financial movement (no settlement occurs).\n  If the partner makes use of Electrum's collections capabilities, this type is only expected for outbound use.\n* `SYSTEM_ERROR_CORRECTION_REQUEST`: Represents the case where a bank has experienced a technical issue that\n  resulted in settled debit collections being processed incorrectly (e.g., a batch of debits was duplicated),\n  and the industry bank is requesting that the partner bank correct the error.\n\n  A successful correction means the partner bank initiates a financial Payment Return to recover the funds\n  *from* the industry bank in order to refund the debtor.\n\n  This case is notably different from standard recalls and disputes in that:\n  (1) This strictly requires prior industry/PASA authorisation to invoke,\n  (2) it may be rejected by the partner bank if the correction cannot be applied (e.g., original transaction not found, or the transaction was already reversed via a customer dispute),\n  (3) partial reversals are not permitted, and\n  (4) the bank from industry is limited to exactly 2 (two) retry attempts for the same transaction if an earlier request was rejected.\n",
            "enum": [
              "RECALL",
              "SYSTEM_ERROR_CORRECTION_REQUEST"
            ],
            "type": "string"
          }
        },
        "required": [
          "cancellationType"
        ],
        "type": "object"
      },
      "ZaAcFiToFiPaymentCancellationPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaAcFiToFiPaymentCancellationPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "ZaEftFiToFiPaymentCancellationPaymentSchemeData": {
        "properties": {
          "cancellationType": {
            "description": "Identifies the type of EFT payment cancellation.\n* `SYSTEM_ERROR_CORRECTION_REQUEST`: Only expected for inbound use and represents the case where a bank from\n  industry has experienced a technical issue that resulted in payments to or from the partner bank being\n  reflected incorrectly (e.g. credits or debits were duplicated) and the industry bank is requesting that\n  the partner bank **attempt** to correct the error. A successful correction means that the partner bank will\n  initiate a financial Payment Return.\n\n  This case is notably different from unpaids, standard recalls and disputes in that:\n  (1) it strictly requires prior industry/PASA authorisation to invoke\n  (2) the system error correction request is expected to be best effort and may be rejected\n  by the partner bank if the request cannot be honoured (e.g. due to insufficient funds or a closed account)\n  (3) the bank from industry may retry system error correction requests for the same transaction on\n  different days if an earlier request was rejected.\n",
            "enum": [
              "SYSTEM_ERROR_CORRECTION_REQUEST"
            ],
            "type": "string"
          }
        },
        "required": [
          "cancellationType"
        ],
        "type": "object"
      },
      "ZaEftFiToFiPaymentCancellationPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaEftFiToFiPaymentCancellationPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "FiToFiPaymentCancellationPaymentScheme": {
        "description": "Designates which scheme a payment cancellation is associated with and describes scheme-specific information for the\ncancellation.\n",
        "discriminator": {
          "mapping": {
            "ZA_AC": "#/components/schemas/ZaAcFiToFiPaymentCancellationPaymentScheme",
            "ZA_EFT": "#/components/schemas/ZaEftFiToFiPaymentCancellationPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaEftFiToFiPaymentCancellationPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaAcFiToFiPaymentCancellationPaymentScheme"
          }
        ],
        "type": "object"
      },
      "OriginalTransactionReference": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOriginalTransactionData"
          },
          {
            "properties": {
              "creditor": {
                "$ref": "#/components/schemas/PartyInstitutionChoice"
              },
              "debtor": {
                "$ref": "#/components/schemas/PartyInstitutionChoice"
              },
              "mandateInformation": {
                "$ref": "#/components/schemas/MandateInformation"
              }
            },
            "type": "object"
          }
        ],
        "description": "Contains key elements related to the original transaction that is being referred to.\n"
      },
      "CancellationReasonCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `AC02` InvalidDebtorAccountNumber - Debtor account number invalid or missing.\n* `AC03` InvalidCreditorAccountNumber - Wrong account number in Credit Transfer.\n* `AGNT` IncorrectAgent - Agent in the payment workflow is incorrect.\n* `AM09` WrongAmount - Amount is not the amount agreed or expected.\n* `BE16` InvalidDebtorIdentificationCode - Debtor or Ultimate Debtor identification code missing or invalid.\n* `COVR` CoverCancelledOrReturned - Cover payments has either been returned or cancelled.\n* `CURR` IncorrectCurrency - Currency of the payment is incorrect.\n* `CUST` RequestedByCustomer - Cancellation requested by the Debtor.\n* `CUTA` CancelUponUnableToApply - Cancellation requested because an investigation request has been received and no remediation is possible.\n* `DS24` TimeOut - Cancellation requested because the original payment order expired due to time-out.\n* `DT01` InvalidDate - Invalid date (for example, wrong or missing settlement date).\n* `DUPL` DuplicatePayment - Payment is a duplicate of another payment.\n* `FRAD` FraudulentOrigin - Cancellation requested following a transaction that was originated fraudulently. The use of the FraudulentOrigin code should be governed by jurisdictions.\n* `FRNA` ForwardToNextAgent - To complement a rejection response, suggesting the request for cancelation should be forwarded to the next agent in the payment transaction chain.\n* `FRTR` FinalResponse - Direct Debit Tracking recalled as Mandate Cancelled\n* `INDM` IndemnityRequired - To express the wish to establish a bilateral indemnity agreement.\n* `MODT` ModifiedTransaction - The underlying transaction in relation to an RTP was modified.\n* `PAID` TransactionAlreadyPaid - The underlying transaction in relation to an RTP was already paid (via other means).\n* `SVNR` ServiceNotRendered - The payment is cancelled since a cash amount rendered was not correct or goods or a service was not rendered to the customer, e.g. in an e-commerce situation.\n* `SYAD` RequestToSettlementSystemAdministrator - Cancellation requested by System Member to Settlement System Administrator to indicate that the cancellation request must not be forwarded further in the chain.\n* `TECH` TechnicalProblem - Cancellation requested following technical problems resulting in an erroneous transaction.\n* `UPAY` UnduePayment - Payment is not justified.\n* `ENUE` EndUserError - Cancellation or request for return requested by the Debtor specifically due to one or more errors by debtor in the original Credit Transfer. Usage: This code can be used for any error in the original Credit Transfer made by the Debtor. Can also be used if multiple errors were made in the original Credit Transfer.\n* `UAPA` UnauthorizedPayment - \"The Debtor is requesting a return of the payment because the payment was not properly authorized. Usage: This code can be used in the case where a Credit Transfer was made without proper authorization from the Debtor. This could be due to compromised end user credentials.\"\n* `NARR` Narrative - Reason is provided as narrative information in the additional reason information.\n* `INCR` InvalidCancellationRequest - Process a cancellation request with incorrect reference to original batch.\n* `BIAS` BatchInstructionAlreadySettled - Process a cancellation request but batch already settled.\n* `DRTP` DuplicationRequestToPay - Duplication of a request-to-pay message.\n* `WNTB` WarrantyBreach - Breach of warranty provided in connection with a request for payment.\n* `MD06` RefundRequestByEndCustomer - Return of funds requested by end customer.\n* `PPRC` PayeeParticipantRTPCancellation - Request to Pay cancellation initiated because the Payee is not in good standing.\n* `ECAG` ErrorCreditorAgent - Payee (Creditor) cancels the Request To Pay (RTP) request due to error or adjustment agreement with Payer/Debtor.\n* `NFNA` NeverForwardToNextAgent - To complement a cancellation request, instructing the market infrastructure that the request for cancelation should not be forwarded to the next agent in the payment transaction chain.\n",
            "enum": [
              "AC02",
              "AC03",
              "AGNT",
              "AM09",
              "BE16",
              "COVR",
              "CURR",
              "CUST",
              "CUTA",
              "DS24",
              "DT01",
              "DUPL",
              "FRAD",
              "FRNA",
              "FRTR",
              "INDM",
              "MODT",
              "PAID",
              "SVNR",
              "SYAD",
              "TECH",
              "UPAY",
              "ENUE",
              "UAPA",
              "NARR",
              "INCR",
              "BIAS",
              "DRTP",
              "WNTB",
              "MD06",
              "PPRC",
              "ECAG",
              "NFNA"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "CancellationReason": {
        "description": "Specifies the reason for a payment cancellation",
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/CancellationReasonCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancellationReasonCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "CancellationReasonInfo": {
        "properties": {
          "additionalInformation": {
            "description": "Additional information about the reason.\n",
            "items": {
              "maxLength": 105,
              "type": "string"
            },
            "type": "array"
          },
          "originator": {
            "$ref": "#/components/schemas/Party"
          },
          "reason": {
            "$ref": "#/components/schemas/CancellationReason"
          }
        },
        "type": "object"
      },
      "UnderlyingTransaction": {
        "allOf": [
          {
            "$ref": "#/components/schemas/OriginalTransactionReference"
          },
          {
            "properties": {
              "cancellationId": {
                "maxLength": 35,
                "type": "string"
              },
              "cancellationReasonInfo": {
                "description": "Reason information for the cancellation",
                "items": {
                  "$ref": "#/components/schemas/CancellationReasonInfo"
                },
                "type": "array"
              }
            },
            "type": "object"
          }
        ]
      },
      "FiToFiPaymentCancellationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "Sent by a financial institution to request the cancellation of an instruction previously sent.\n",
            "properties": {
              "assignment": {
                "$ref": "#/components/schemas/CaseAssignment"
              },
              "case": {
                "$ref": "#/components/schemas/Case6"
              },
              "originalTransactionIdentifiers": {
                "$ref": "#/components/schemas/TransactionIdentifiers",
                "description": "Identifies the original transaction to cancel"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/FiToFiPaymentCancellationPaymentScheme"
              },
              "schema": {
                "enum": [
                  "FiToFiPaymentCancellationRequest"
                ],
                "type": "string"
              },
              "underlyingTransaction": {
                "$ref": "#/components/schemas/UnderlyingTransaction"
              }
            },
            "required": [
              "originalTransactionIdentifiers",
              "paymentScheme",
              "underlyingTransaction",
              "assignment",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "ExternalPaymentCancellationRejectionCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `AC04` ClosedAccountNumber - Account number specified has been closed on the receiver’s books.\n* `ADAC` AwaitingDebitAuthorityFromCustomer - Reported when the cancellation request cannot be processed because customer has not yet provided the debit authority on its account.\n* `AGNT` AgentDecision - Reported when the cancellation cannot be accepted because of an agent refuses to cancel.\n* `AM04` InsufficientFunds - Amount of funds available to cover specified message amount is insufficient.\n* `ARDT` AlreadyReturned - Cancellation not accepted as the transaction has already been returned.\n* `ARPL` AwaitinReply - Reported when the cancellation request cannot be processed because no reply has been  received yet from the receiver of the request message.\n* `CUST` CustomerDecision - Reported when the cancellation cannot be accepted because of a customer decision (Creditor).\n* `LEGL` LegalDecision - Reported when the cancellation cannot be accepted because of regulatory rules.\n* `NARR` Narrative - Reason is provided as narrative information in the additional reason information.\n* `NOAS` NoAnswerFromCustomer - No response from beneficiary (to the cancellation request).\n* `NOOR` NoOriginalTransactionReceived - Original transaction (subject to cancellation) never received.\n* `PTNA` PassedToTheNextAgent - Reported when the cancellation request cannot be accepted because the payment instruction has been passed to the next agent.\n* `RQDA` RequestingDebitAuthority - Reported when authority is required by the Creditor to return the payment.\n* `WSEQ` WrongSequence - Reported when the cancellation request cannot be processed because the sequence referred to in the request is not valid.\n* `INDM` CancellationIndemnityRequired - Complementing a Pending or Reject Status. Payment cancellation request cannot be accepted until an indemnity agreement is established.\n* `ACLR` AlreadyCancelledRTP - Request-to-pay has already been cancelled.\n* `AEXR` AlreadyExpiredRTP - Request-to-pay Expiry Date and Time has already passed.\n* `ARFR` AlreadyRefusedRTP - Request-to-pay has already been refused by the Debtor.\n* `ARJR` AlreadyRejectedRTP - Request-to-pay has already been rejected.\n* `PATE` PaymentAlreadyTransmittedExecution - Payment related to the request-to-pay has already been transmitted for execution.\n* `RR04` RegulatoryReason - Regulatory Reason.\n* `RCAR` RfCAlreadyRejected - Request for cancellation of the request-to-pay has already been rejected.\n* `RCNR` RfCNeverReceived - Request for cancellation of the request-to-pay has never been received.\n* `RCPR` RfCReceivedAndProcessed - Request for cancellation of the request-to-pay has already been received and processed.\n* `URTP` UnknownRTP - Request-to-pay is unknown.\n* `AACR` AlreadyAcceptedRTP - Request-to-pay (RTP) has already been accepted.\n",
            "enum": [
              "AC04",
              "ADAC",
              "AGNT",
              "AM04",
              "ARDT",
              "ARPL",
              "CUST",
              "LEGL",
              "NARR",
              "NOAS",
              "NOOR",
              "PTNA",
              "RQDA",
              "WSEQ",
              "INDM",
              "ACLR",
              "AEXR",
              "ARFR",
              "ARJR",
              "PATE",
              "RR04",
              "RCAR",
              "RCNR",
              "RCPR",
              "URTP",
              "AACR"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "CancellationStatusReason": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ExternalPaymentCancellationRejectionCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ExternalPaymentCancellationRejectionCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "CancellationStatusReasonInformation": {
        "properties": {
          "originator": {
            "$ref": "#/components/schemas/Party"
          },
          "reason": {
            "$ref": "#/components/schemas/CancellationStatusReason"
          }
        },
        "type": "object"
      },
      "CancellationStatusCode": {
        "description": "* `RJCR` RejectedCancellationRequest - Cancellation request is rejected\n* `ACCR` AcceptedCancellationRequest - Cancellation is accepted.\n* `PDCR` PendingCancellationRequest - Cancellation request is pending.\n",
        "enum": [
          "RJCR",
          "ACCR",
          "PDCR"
        ],
        "type": "string"
      },
      "CancellationDetails": {
        "description": "Specifies the details of the underlying transaction being cancelled\n",
        "properties": {
          "cancellationStatusReasonInfo": {
            "$ref": "#/components/schemas/CancellationStatusReasonInformation",
            "description": "Provides detailed information on the transaction cancellation status\n"
          },
          "originalTransaction": {
            "$ref": "#/components/schemas/OriginalTransactionReference",
            "description": "Provides information on the original transaction to which the cancellation request message refers\n"
          },
          "originalTransactionIdentifiers": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          },
          "transactionCancellationStatus": {
            "$ref": "#/components/schemas/CancellationStatusCode",
            "description": "Specifies the status of the transaction cancellation request\n"
          }
        },
        "required": [
          "originalTransactionIdentifiers",
          "transactionCancellationStatus"
        ],
        "type": "object"
      },
      "CorrectiveInterbankTransaction": {
        "description": "Provides the details of a corrective interbank payment transaction\n",
        "properties": {
          "messageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "schema": {
            "enum": [
              "CORRECTIVE_INTERBANK_TRANSACTION"
            ],
            "type": "string"
          },
          "settlementAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "settlementDate": {
            "format": "date",
            "type": "string"
          },
          "transactionIdentification": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          }
        },
        "required": [
          "settlementDate",
          "settlementAmount"
        ],
        "type": "object"
      },
      "CorrectivePaymentInitiation": {
        "description": "Provides the details of a corrective payment initiation\n",
        "properties": {
          "instructedAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "messageIdentifiers": {
            "$ref": "#/components/schemas/MessageIdentifiers"
          },
          "schema": {
            "enum": [
              "CORRECTIVE_PAYMENT_INITIATION"
            ],
            "type": "string"
          },
          "transactionIdentification": {
            "$ref": "#/components/schemas/TransactionIdentifiers"
          }
        },
        "required": [
          "instructedAmount"
        ],
        "type": "object"
      },
      "CorrectiveTransactionChoice": {
        "discriminator": {
          "mapping": {
            "CORRECTIVE_INTERBANK_TRANSACTION": "#/components/schemas/CorrectiveInterbankTransaction",
            "CORRECTIVE_PAYMENT_INITIATION": "#/components/schemas/CorrectivePaymentInitiation"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/CorrectiveInterbankTransaction"
          },
          {
            "$ref": "#/components/schemas/CorrectivePaymentInitiation"
          }
        ]
      },
      "ZaAcResolutionOfInvestigationPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ZaEftResolutionOfInvestigationPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "ResolutionOfInvestigationPaymentScheme": {
        "description": "Designates which scheme a resolution of investigation is associated with and describes scheme-specific information.\n",
        "discriminator": {
          "mapping": {
            "ZA_AC": "#/components/schemas/ZaAcResolutionOfInvestigationPaymentScheme",
            "ZA_EFT": "#/components/schemas/ZaEftResolutionOfInvestigationPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaEftResolutionOfInvestigationPaymentScheme"
          },
          {
            "$ref": "#/components/schemas/ZaAcResolutionOfInvestigationPaymentScheme"
          }
        ],
        "type": "object"
      },
      "InvestigationStatusCancellationConfirmation": {
        "description": "Indicates whether the cancellation of the assignment is confirmed or rejected. Used when responding to a prior\nrequest to cancel a case assignment\n",
        "properties": {
          "cancellationConfirmed": {
            "type": "boolean"
          },
          "statusType": {
            "enum": [
              "CANCELLATION_CONFIRMATION"
            ],
            "type": "string"
          }
        },
        "required": [
          "statusType",
          "cancellationConfirmed"
        ],
        "type": "object"
      },
      "InvestigationExecutionCode": {
        "description": "* `ACDA` AcceptedDebitAuthorisation - Used when a creditor accepts the debit authorisation.\n* `ACNR` AcceptedClaimNonReceipt - The claim for non-receipt of a payment instruction is accepted.\n* `ACVA` AcceptedValueDateAdjustment - The claim for value date correction is accepted.\n* `BIAS` BatchInstructionAlreadySettled - Process a cancellation request but batch already settled.\n* `CHRG` ChargesDetailsProvided - Further charges details are provided to resolve the case.\n* `CNCL` CancelledAsPerRequest - Used when a requested cancellation is successful.\n* `CONF` ConfirmationOfPayment - Used when a payment has been checked and was correctly executed without any intervention.\n* `CVAA` CorrectValueDateAlreadyApplied - The original value date was correct.\n* `CWFW` CancellationWillFollow - Used when a payment will be cancelled to solve an investigation case.\n* `FTNA` CancellationRequestForwardedToTheNextAgent - \"The cancellation request has been forwarded to the next agent for execution. This code should only be utilised where a Case Id is not present.\"\n* `ICOV` CoverInitiated - Used when a transfer of funds has been initiated (a cover payment) to resolve a case.\n* `IDNE` InstructionDoesNotExist - Process a  Batch Cancellation \"using an incorrect batch sequence number”.\n* `IDUP` InstructionIsDuplicate - Used when the requested check for a possible duplicate instruction is confirmed.\n* `INFO` AdditionalInformationSent - Used when additional information has been sent to the beneficiary of a payment.\n* `IPAY` PaymentInitiated - Used when the result of an investigation is, or will be, the initiation of a payment instruction.\n* `IPYI` PaymentInstructionInitiated - Used when a payment instruction (eg. MT103) has been initiated to resolve a case.\n* `IVCR` InvalidCancellationRequest - Process a cancellation request with incorrect reference to original batch.\n* `MCOV` CoverModified - Used when a transfer of funds has been modified (a cover payment) to resolve a case.\n* `MODI` ModifiedAsPerRequest - Used when a requested modification is successful.\n* `MWFW` ModificationWillFollow - Used when the payment will be modified to solve an investigation case.\n* `NINF` NoInformationAvailable - Used when no additional information is available.\n* `PDCR` PendingCancellationRequest - Used when a requested cancellation is pending.\n* `PDNG` Pending - Used to inform that a response to an investigation is pending.\n* `PECR` PartiallyExecutedCancellationRequest - Used when a requested cancellation has been partially executed.\n* `PURP` PurposeDetailsProvided - Further purpose details are provided to resolve the case.\n* `RJCR` RejectedCancellationRequest - Used when a requested cancellation has been rejected.\n* `RJNR` RejectedClaimNonReceipt - The claim for non-receipt of a payment instruction is rejected.\n* `RJVA` RejectedValueDateAdjustment - The claim for value date correction is rejected.\n* `SMTC` StatementEntryCorrect - Used when the entry in the statement is correct.\n* `SMTI` StatementEntryIncorrect - Used when the entry in the statement is incorrect and further information is provided with the resolution.\n* `UWFW` UnableToApplyWillFollow - Used when sender wants to respond to an assignment with an Unable To Apply workflow.\n",
        "enum": [
          "ACDA",
          "ACNR",
          "ACVA",
          "BIAS",
          "CHRG",
          "CNCL",
          "CONF",
          "CVAA",
          "CWFW",
          "FTNA",
          "ICOV",
          "IDNE",
          "IDUP",
          "INFO",
          "IPAY",
          "IPYI",
          "IVCR",
          "MCOV",
          "MODI",
          "MWFW",
          "NINF",
          "PDCR",
          "PDNG",
          "PECR",
          "PURP",
          "RJCR",
          "RJNR",
          "RJVA",
          "SMTC",
          "SMTI"
        ],
        "type": "string"
      },
      "InvestigationStatusConfirmation": {
        "description": "Specifies the status of the investigation, in a coded form\n",
        "properties": {
          "confirmationCode": {
            "$ref": "#/components/schemas/InvestigationExecutionCode"
          },
          "statusType": {
            "enum": [
              "CONFIRMATION"
            ],
            "type": "string"
          }
        },
        "required": [
          "statusType",
          "confirmationCode"
        ],
        "type": "object"
      },
      "InvestigationStatusDuplicateOf": {
        "description": "Indicates a duplicated case\n",
        "properties": {
          "duplicateOf": {
            "$ref": "#/components/schemas/Case6"
          },
          "statusType": {
            "enum": [
              "DUPLICATE_OF"
            ],
            "type": "string"
          }
        },
        "required": [
          "statusType",
          "duplicateOf"
        ],
        "type": "object"
      },
      "ExternalPaymentModificationRejectionCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `UM01` UnableToModifyRelatedReference - Related transaction reference cannot be modified.\n* `UM02` UnableToModifyPaymentServiceLevel - Service level element of payment type cannot be modified(former UnableToModifyBankOperationCode).\n* `UM03` UnableToModifyCategoryPurpose - Category purpose element of payment type cannot be modified (former UnableToModifyInstructionCode).\n* `UM04` UnableToModifyRequestedExecutionDate - RequestedExecutionDate cannot be modified.\n* `UM05` UnableToModifyInterbankSettlementDate - InterbankSettlementDate cannot be modified (former UnableToModifyValueDate).\n* `UM06` UnableToModifyInterbankSettlementAccount - SettlementAccount cannot be modified (former UnableToModifyInterbankSettlementAccount).\n* `UM07` UnableToModifyDebtor - Debtor cannot be modified.\n* `UM08` UnableToModifyDebtorAccount - DebtorAccount cannot be modified.\n* `UM09` UnableToModifyInstructedReimbursementAgent - InstructedReimbursementAgent cannot be modified (former UnableToModifyReceiverCorrespondent).\n* `UM10` UnableToModifyThirdReimbursementAgent - ThirdReimbursementAgent cannot be modified (former UnableToModifyThirdReimbursementInstitution).\n* `UM11` UnableToModifyPaymentClearingChannel - Clearing Channel element of payment type cannot be modified (former UnableToModifyPaymentScheme)\n* `UM12` UnableToModifyCreditorAgentAccount - Creditor agent account cannot be modified (former UnableToModifyAccountOfBeneficiaryInstitution)\n* `UM13` UnableToModifyCreditor - Creditor cannot be modified.\n* `UM14` UnableToModifyCreditorAccount - Creditor account cannot be modified.\n* `UM15` UnableToModifyRemittanceInformation - Remittance information cannot be modified.\n* `UM16` UnableToModifyPaymentPurpose - PaymentPurpose cannot be modified.\n* `UM17` UnableToModifyChargeBearer - Charge bearer cannot be modified (former UnableToModifyDetailsOfCharges).\n* `UM18` UnableToModifyInstructionForNextAgent - Instruction for next agent cannot be modified (former UnableToModifySenderToReceiver).\n* `UM19` UnableToModifyInstructionForCreditorAgent - Instruction for creditor agent cannot be modified. (former UnableToModifyInstructionForFinalAgent).\n* `UM20` InstructionCancelledSubmitNewInstruction - Used to inform of cancellation and request a new payment instruction. This should only be used if an agent does not want to modify a pending payment.\n* `UM21` UnableToModifySubmitCancellation - Modification is not possible and the cancellation is requested.\n* `UM22` UnableToModifyDebtorAgentAccount - Debtor agent account cannot be modified (applicable for direct debits).\n* `UM23` UnableToModifyInterbankSettlementAmount - Interbank settlement amount cannot be modified.\n* `UM24` UnableToModifyInstructionForDebtorAgent - Instruction for debtor agent cannot be modified (applicable for direct debits)\n* `UM25` UnableToModifyRequestedCollectionDate - Requested collection date cannot be modified (applicable for direct debits)\n* `UM26` UnableToModifyPaymentType - Payment type cannot be modified.\n* `UM27` UnableToModifyInstructedAmount - Instructed or equivalent amount cannot be modified.\n* `UM28` UnableToModifyPriority - Priority of payment message cannot be modified.\n",
            "enum": [
              "UM01",
              "UM02",
              "UM03",
              "UM04",
              "UM05",
              "UM06",
              "UM07",
              "UM08",
              "UM09",
              "UM10",
              "UM11",
              "UM12",
              "UM13",
              "UM14",
              "UM15",
              "UM16",
              "UM17",
              "UM18",
              "UM19",
              "UM20",
              "UM21",
              "UM22",
              "UM23",
              "UM24",
              "UM25",
              "UM26",
              "UM27",
              "UM28"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "ModificationStatusReason": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ExternalPaymentModificationRejectionCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ExternalPaymentModificationRejectionCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "InvestigationStatusRejectedModification": {
        "description": "Specifies the reason for the rejection of a modification request, in a coded form. Used when responding to a prior\nrequest to modify a payment\n",
        "properties": {
          "rejectedModificationStatus": {
            "$ref": "#/components/schemas/ModificationStatusReason",
            "description": "Reason for the rejection of a modification request, in a coded form"
          },
          "statusType": {
            "enum": [
              "REJECTED_MODIFICATION"
            ],
            "type": "string"
          }
        },
        "required": [
          "statusType",
          "rejectedModificationStatus"
        ],
        "type": "object"
      },
      "InvestigationStatus": {
        "description": "Indicates the status of an investigation\n",
        "discriminator": {
          "mapping": {
            "CANCELLATION_CONFIRMATION": "#/components/schemas/InvestigationStatusCancellationConfirmation",
            "CONFIRMATION": "#/components/schemas/InvestigationStatusConfirmation",
            "DUPLICATE_OF": "#/components/schemas/InvestigationStatusDuplicateOf",
            "REJECTED_MODIFICATION": "#/components/schemas/InvestigationStatusRejectedModification"
          },
          "propertyName": "statusType"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/InvestigationStatusConfirmation"
          },
          {
            "$ref": "#/components/schemas/InvestigationStatusRejectedModification"
          },
          {
            "$ref": "#/components/schemas/InvestigationStatusDuplicateOf"
          },
          {
            "$ref": "#/components/schemas/InvestigationStatusCancellationConfirmation"
          }
        ]
      },
      "ResolutionOfInvestigation": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "properties": {
              "assignment": {
                "$ref": "#/components/schemas/CaseAssignment",
                "description": "The assignment that has been investigated\n"
              },
              "cancellationDetails": {
                "$ref": "#/components/schemas/CancellationDetails"
              },
              "correctionTransaction": {
                "$ref": "#/components/schemas/CorrectiveTransactionChoice",
                "description": "References a transaction that serves to fix the case under investigation\n"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/ResolutionOfInvestigationPaymentScheme"
              },
              "resolvedCase": {
                "$ref": "#/components/schemas/Case6",
                "description": "The case that has been resolved\n"
              },
              "schema": {
                "enum": [
                  "ResolutionOfInvestigation"
                ],
                "type": "string"
              },
              "status": {
                "$ref": "#/components/schemas/InvestigationStatus",
                "description": "Indicates the status of the investigation\n"
              }
            },
            "required": [
              "paymentScheme",
              "assignment",
              "status",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "AccountPaymentEligibilityValidationRequest": {
        "description": "A request containing information that will be used to check if the specified account is eligible to proceed with a payment.\n",
        "properties": {
          "accountIdentifier": {
            "$ref": "#/components/schemas/AccountIdentifier",
            "description": "A unique identification of the account.\n"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/PaymentMethod",
            "description": "Specifies the means of payment for the transaction being validated (CreditTransfer or DirectDebit).\n"
          },
          "paymentPurpose": {
            "$ref": "#/components/schemas/PurposeType",
            "description": "The purpose of the related payment that this account is being validated for.\n"
          },
          "paymentSchemeName": {
            "$ref": "#/components/schemas/PaymentSchemeName",
            "description": "The payment scheme of the related payment that this account is being validated for.\n"
          },
          "supplementaryData": {
            "$ref": "#/components/schemas/SupplementaryData"
          }
        },
        "required": [
          "accountIdentifier",
          "paymentSchemeName",
          "paymentMethod"
        ],
        "type": "object"
      },
      "AccountPaymentEligibilityValidationOutcome": {
        "description": "Indicates whether the specified account passed payment eligibility validation and will be able to proceed with a related payment (PASSED), or failed validation and will not be able to proceed with a related payment (FAILED). If FAILED, a reason is provided.\n",
        "discriminator": {
          "mapping": {
            "FAILED": "#/components/schemas/AccountPaymentEligibilityValidationFailedOutcome",
            "PASSED": "#/components/schemas/AccountPaymentEligibilityValidationPassedOutcome"
          },
          "propertyName": "schema"
        },
        "properties": {
          "schema": {
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "AccountPaymentEligibilityValidationFailedOutcome": {
        "allOf": [
          {
            "$ref": "#/components/schemas/AccountPaymentEligibilityValidationOutcome"
          },
          {
            "properties": {
              "reasonInfo": {
                "description": "A list of `StatusReasonInfo` values providing detailed reason information for the validation outcome.\n",
                "items": {
                  "$ref": "#/components/schemas/StatusReasonInfo"
                },
                "minItems": 1,
                "type": "array"
              }
            },
            "type": "object"
          }
        ],
        "required": [
          "reasonInfo"
        ]
      },
      "AccountPaymentEligibilityValidationPassedOutcome": {
        "allOf": [
          {
            "$ref": "#/components/schemas/AccountPaymentEligibilityValidationOutcome"
          }
        ]
      },
      "AccountPaymentEligibilityValidationResponse": {
        "description": "A response indicating whether the specified account passed payment eligibility validation and should be able to proceed with a payment.\n",
        "properties": {
          "supplementaryData": {
            "$ref": "#/components/schemas/SupplementaryData"
          },
          "validationOutcome": {
            "$ref": "#/components/schemas/AccountPaymentEligibilityValidationOutcome"
          }
        },
        "required": [
          "validationOutcome"
        ],
        "type": "object"
      },
      "AdjustmentCategoryCode": {
        "description": "Frequency/category of adjustments allowed on a mandate.\n* `MIAN` - Semi-annually or 2 times a year\n* `NEVR` - No adjustment allowed\n* `QURT` - 3 months or 4 times a year\n* `RATE` - Repo Rate-based adjustment\n* `YEAR` - Annual adjustment\n",
        "enum": [
          "MIAN",
          "NEVR",
          "QURT",
          "RATE",
          "YEAR"
        ],
        "type": "string"
      },
      "AdjustmentCategoryTypeCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/AdjustmentCategoryCode"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "AdjustmentCategory": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/AdjustmentCategoryTypeCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/AdjustmentCategoryTypeCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "MandateAdjustmentRules": {
        "description": "Defines adjustment rules for mandate amounts.\n",
        "properties": {
          "adjustmentAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "adjustmentRate": {
            "description": "The adjustment rate as a percentage (e.g., 10.00 for 10%).\n",
            "format": "double",
            "type": "number"
          },
          "category": {
            "$ref": "#/components/schemas/AdjustmentCategory"
          },
          "dateAdjustmentRuleIndicator": {
            "description": "Indicates whether a date adjustment rule is applied (e.g., move collection to next business day).\n",
            "type": "boolean"
          }
        },
        "required": [
          "dateAdjustmentRuleIndicator"
        ],
        "type": "object"
      },
      "ExternalAuthenticationChannelCode": {
        "description": "`ATM` - ATM\n`CARD` - Card\n`INBA` - InternetBanking\n`MOBI` - Mobile\n",
        "enum": [
          "ATMA",
          "CARD",
          "INBA",
          "MOBI"
        ],
        "type": "string"
      },
      "AuthenticationChannelCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalAuthenticationChannelCode"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "AuthenticationChannel": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/AuthenticationChannelCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/AuthenticationChannelCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "MandateAuthentication": {
        "description": "Identifies the specific mechanism or channel that the Paying Bank (Debtor Bank) uses to communicate with the\nPayer (Debtor) to obtain their authorisation for a mandate. This field may be missing on mandate initiation/amendment\nand should be populated by the debtor bank upon acceptance of the mandate\n",
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/AuthenticationChannel"
          },
          "date": {
            "description": "Represents the exact date on which the mandate authentication process was completed by the Paying Bank (Debtor Bank)\n",
            "format": "date",
            "type": "string"
          },
          "messageAuthenticationCode": {
            "description": "Message authentication code for the mandate.\n- **TT3 PREAUTH MAC Rule: Mandate Initiation & Amendment Requests & Acceptance Reports** -\nAcross `mandate-management` message types, if the mandate is `PREAUTH` using a card (Local Instrument `0228`),\nthis property must strictly be populated with the actual 8-character MAC string generated during the upfront card-and-PIN authentication.\n",
            "maxLength": 35,
            "type": "string"
          }
        },
        "type": "object"
      },
      "MandateStatusCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `ACTV` - Active: Mandate is active.\n* `CANC` - Cancelled: Mandate has been cancelled.\n* `EXPI` - Expired: Mandate has expired.\n* `SUSP` - Suspended: Mandate is suspended.\n* `RCVD` - Received: Mandate has been received.\n* `RJCT` - Rejected: Mandate has been rejected.\n* `PATC` - PartiallyAcceptedTechnicalCorrect: Partially accepted with technical corrections.\n",
            "enum": [
              "ACTV",
              "CANC",
              "EXPI",
              "SUSP",
              "RCVD",
              "RJCT",
              "PATC"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "MandateStatus": {
        "description": "Current status of a mandate.\n",
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/MandateStatusCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/MandateStatusCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "AdHocFrequency": {
        "description": "Specifies an ad hoc (irregular/on-demand) payment transaction frequency.\nMaps to ISO20022 frequency code `ADHO`.\n",
        "properties": {
          "schema": {
            "enum": [
              "AdHocFrequency"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "BiannualFrequency": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DayOfMonthBasedFrequency"
          }
        ],
        "description": "Specifies the frequency of a biannual payment transaction by day of the month.\n"
      },
      "DayOfMonthBasedFrequency": {
        "description": "Base model for payment transaction frequencies expressed in terms of days of the month. Not expected to be\nused directly; see `MonthlyFrequency`, `QuarterlyFrequency`, `BiannualFrequency` and `YearlyFrequency`.\n",
        "discriminator": {
          "mapping": {
            "BiannualFrequency": "#/components/schemas/BiannualFrequency",
            "MonthlyFrequency": "#/components/schemas/MonthlyFrequency",
            "QuarterlyFrequency": "#/components/schemas/QuarterlyFrequency",
            "YearlyFrequency": "#/components/schemas/YearlyFrequency"
          },
          "propertyName": "schema"
        },
        "properties": {
          "dayOfMonth": {
            "description": "Specifies the day of the month on which the payment transaction is to be processed.\nNOTE: A value of `31` will be interpreted as the last day of the month.\n",
            "maximum": 31,
            "minimum": 1,
            "type": "integer"
          },
          "schema": {
            "enum": [
              "MonthlyFrequency",
              "QuarterlyFrequency",
              "BiannualFrequency",
              "YearlyFrequency"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "dayOfMonth"
        ],
        "type": "object"
      },
      "MonthlyFrequency": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DayOfMonthBasedFrequency"
          }
        ],
        "description": "Specifies the frequency of a monthly payment transaction by day of the month.\n"
      },
      "QuarterlyFrequency": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DayOfMonthBasedFrequency"
          }
        ],
        "description": "Specifies the frequency of a quarterly payment transaction by day of the month.\n"
      },
      "YearlyFrequency": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DayOfMonthBasedFrequency"
          }
        ],
        "description": "Specifies the frequency of a yearly payment transaction by day of the month.\n"
      },
      "DailyFrequency": {
        "description": "Specifies the frequency of a daily payment transaction.\nMaps to ISO20022 frequency code `DAIL`.\n",
        "properties": {
          "schema": {
            "enum": [
              "DailyFrequency"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "DayOfWeek": {
        "description": "Specifies a day of the week.\n",
        "enum": [
          "MONDAY",
          "TUESDAY",
          "WEDNESDAY",
          "THURSDAY",
          "FRIDAY",
          "SATURDAY",
          "SUNDAY"
        ],
        "type": "string"
      },
      "FortnightlyFrequency": {
        "description": "Specifies the frequency of a fortnightly payment transaction.\n",
        "properties": {
          "dayOfWeek": {
            "$ref": "#/components/schemas/DayOfWeek"
          },
          "schema": {
            "enum": [
              "FortnightlyFrequency"
            ],
            "type": "string"
          },
          "week": {
            "description": "Identifies the week of the fortnight on which the payment transaction is to be processed.\n* FIRST_WEEK: First week of the fortnight.\n* SECOND_WEEK: Second week of the fortnight.\n",
            "enum": [
              "FIRST_WEEK",
              "SECOND_WEEK"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "week",
          "dayOfWeek"
        ],
        "type": "object"
      },
      "IntradayFrequency": {
        "description": "Specifies an intraday payment transaction frequency.\nMaps to ISO20022 frequency code `INDA`.\n",
        "properties": {
          "schema": {
            "enum": [
              "IntradayFrequency"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema"
        ],
        "type": "object"
      },
      "MonthlyRuleFrequency": {
        "description": "Specifies the frequency of a monthly payment transaction by a special rule, e.g. \"the last monday of the month\".\n",
        "properties": {
          "rule": {
            "description": "Specifies the day of the month on which the payment transaction is to be processed.\n* `LAST_MONDAY`: Last Monday of the month.\n* `LAST_TUESDAY`: Last Tuesday of the month.\n* `LAST_WEDNESDAY`: Last Wednesday of the month.\n* `LAST_THURSDAY`: Last Thursday of the month.\n* `LAST_FRIDAY`: Last Friday of the month.\n* `LAST_SATURDAY`: Last Saturday of the month.\n* `FIRST_MONDAY`: First Monday of the month.\n* `FIRST_TUESDAY`: First Tuesday of the month.\n* `FIRST_WEDNESDAY`: First Wednesday of the month.\n* `FIRST_THURSDAY`: First Thursday of the month.\n* `FIRST_FRIDAY`: First Friday of the month.\n* `FIRST_SATURDAY`: First Saturday of the month.\n* `SECOND_LAST_DAY`: Second last day of the month.\n* `LAST_DAY`: Last day of the month.\n",
            "enum": [
              "LAST_MONDAY",
              "LAST_TUESDAY",
              "LAST_WEDNESDAY",
              "LAST_THURSDAY",
              "LAST_FRIDAY",
              "LAST_SATURDAY",
              "FIRST_MONDAY",
              "FIRST_TUESDAY",
              "FIRST_WEDNESDAY",
              "FIRST_THURSDAY",
              "FIRST_FRIDAY",
              "FIRST_SATURDAY",
              "SECOND_LAST_DAY",
              "LAST_DAY"
            ],
            "type": "string"
          },
          "schema": {
            "enum": [
              "MonthlyRuleFrequency"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "rule"
        ],
        "type": "object"
      },
      "WeeklyFrequency": {
        "description": "Specifies the frequency of a weekly payment transaction.\n",
        "properties": {
          "dayOfWeek": {
            "$ref": "#/components/schemas/DayOfWeek"
          },
          "schema": {
            "enum": [
              "WeeklyFrequency"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "dayOfWeek"
        ],
        "type": "object"
      },
      "Frequency": {
        "description": "Specifies the frequency of the payment transaction.\n",
        "discriminator": {
          "mapping": {
            "AdHocFrequency": "#/components/schemas/AdHocFrequency",
            "BiannualFrequency": "#/components/schemas/BiannualFrequency",
            "DailyFrequency": "#/components/schemas/DailyFrequency",
            "FortnightlyFrequency": "#/components/schemas/FortnightlyFrequency",
            "IntradayFrequency": "#/components/schemas/IntradayFrequency",
            "MonthlyFrequency": "#/components/schemas/MonthlyFrequency",
            "MonthlyRuleFrequency": "#/components/schemas/MonthlyRuleFrequency",
            "QuarterlyFrequency": "#/components/schemas/QuarterlyFrequency",
            "WeeklyFrequency": "#/components/schemas/WeeklyFrequency",
            "YearlyFrequency": "#/components/schemas/YearlyFrequency"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/MonthlyFrequency"
          },
          {
            "$ref": "#/components/schemas/QuarterlyFrequency"
          },
          {
            "$ref": "#/components/schemas/BiannualFrequency"
          },
          {
            "$ref": "#/components/schemas/YearlyFrequency"
          },
          {
            "$ref": "#/components/schemas/MonthlyRuleFrequency"
          },
          {
            "$ref": "#/components/schemas/WeeklyFrequency"
          },
          {
            "$ref": "#/components/schemas/FortnightlyFrequency"
          },
          {
            "$ref": "#/components/schemas/DailyFrequency"
          },
          {
            "$ref": "#/components/schemas/AdHocFrequency"
          },
          {
            "$ref": "#/components/schemas/IntradayFrequency"
          }
        ],
        "type": "object"
      },
      "MandateOccurrences": {
        "description": "Defines the frequency and duration of mandate collections.\n",
        "properties": {
          "finalCollectionDate": {
            "description": "The date of the final collection.\n",
            "format": "date",
            "type": "string"
          },
          "firstCollectionDate": {
            "description": "The date of the first collection.\n",
            "format": "date",
            "type": "string"
          },
          "frequency": {
            "$ref": "#/components/schemas/Frequency"
          },
          "sequenceType": {
            "$ref": "#/components/schemas/SequenceTypeCode"
          },
          "validFrom": {
            "description": "The date from which the mandate is valid.\n",
            "format": "date",
            "type": "string"
          },
          "validTo": {
            "description": "The date until which the mandate is valid.\n",
            "format": "date",
            "type": "string"
          }
        },
        "required": [
          "sequenceType"
        ],
        "type": "object"
      },
      "ExternalMandateReasonCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `AC01` - IncorrectAccountNumber\n* `AC04` - ClosedAccountNumber\n* `AC06` - BlockedAccount\n* `AG01` - TransactionForbidden\n* `AG02` - InvalidBankOperationCode\n* `AM02` - NotAllowedAmount\n* `AM03` - NotAllowedCurrency\n* `AM05` - Duplication\n* `BE01` - InconsistenWithEndCustomer\n* `BE04` - MissingCreditorAddress\n* `BE05` - UnrecognisedInitiatingParty\n* `BE06` - UnknownEndCustomer\n* `BE07` - MissingDebtorAddress\n* `DT01` - InvalidDate\n* `FF01` - InvalidFileFormat\n* `MD01` - NoMandate\n* `MD02` - MissingMandatoryInformationInMandate\n* `MD07` - EndCustomerDeceased\n* `MD08` - NoMandateServiceByAgent\n* `MD09` - NoMandateServiceOnCustomer\n* `MD10` - NoMandateServiceForSpecified\n* `MD11` - UnrecognisedAgent\n* `MD12` - NotUniqueMandateReference\n* `MD13` - IncorrectCustomerAuthentication\n* `MD14` - IncorrectAgent\n* `MD15` - IncorrectCurrency\n* `MD16` - RequestedByCustomer\n* `MD17` - RequestedByInitiatingParty\n* `MD18` - RequestedByInitiatingPartyAndCustomer\n* `MD19` - MandateCancelledDueToEarlySettlement\n* `MD20` - MandateExpired\n* `MD21` - MandateCancelledDueToFraud\n* `MD22` - MandateInitiationCancelled\n* `MD23` - MandateAmendmentCancelled\n* `MS02` - NotSpecifiedReasonCustomerGenerated\n* `MS03` - NotSpecifiedReasonAgentGenerated\n* `NARR` - Narrative\n* `RC01` - BankIdentifierIncorrect\n* `RF01` - NotUniqueTransactionReference\n* `RR01` - MissingDebtorAccountOrIdentification\n* `RR02` - MissingDebtorNameOrAddress\n* `RR03` - MissingCreditorNameOrAddress\n* `RR04` - RegulatoryReason\n* `SL01` - SpecificServiceOfferedByDebtorAgent\n* `SL11` - CreditorNotOnWhitelistOfDebtor\n* `SL12` - CreditorOnBlacklistOfDebtor\n* `SL13` - MaximumNumberOfDirectDebitTransactionsExceeded\n* `SL14` - MaximumDirectDebitTransactionAmountExceeded\n",
            "enum": [
              "AC01",
              "AC04",
              "AC06",
              "AG01",
              "AG02",
              "AM02",
              "AM03",
              "AM05",
              "BE01",
              "BE04",
              "BE05",
              "BE06",
              "BE07",
              "DT01",
              "FF01",
              "MD01",
              "MD02",
              "MD07",
              "MD08",
              "MD09",
              "MD10",
              "MD11",
              "MD12",
              "MD13",
              "MD14",
              "MD15",
              "MD16",
              "MD17",
              "MD18",
              "MD19",
              "MD20",
              "MD21",
              "MD22",
              "MD23",
              "MS02",
              "MS03",
              "NARR",
              "RC01",
              "RF01",
              "RR01",
              "RR02",
              "RR03",
              "RR04",
              "SL01",
              "SL11",
              "SL12",
              "SL13",
              "SL14"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "MandateReason": {
        "description": "Specifies the reason for a mandate action (amendment, cancellation, rejection).\n",
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ExternalMandateReasonCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ExternalMandateReasonCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "ExternalMandateClassificationCode": {
        "description": "Classification of mandate based on debit value type.\n* `FIXE` - Fixed amount each collection\n* `USGB` - Usage-based amount\n* `VARI` - Variable amount\n",
        "enum": [
          "FIXE",
          "USGB",
          "VARI"
        ],
        "type": "string"
      },
      "MandateClassificationCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/ExternalMandateClassificationCode"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "MandateClassification": {
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/MandateClassificationCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/MandateClassificationCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "MandateTypeInformation": {
        "description": "Provides details on the type of mandate.\n",
        "properties": {
          "categoryPurpose": {
            "$ref": "#/components/schemas/CategoryPurpose"
          },
          "classification": {
            "$ref": "#/components/schemas/MandateClassification"
          },
          "localInstrument": {
            "$ref": "#/components/schemas/LocalInstrumentType"
          },
          "serviceLevel": {
            "$ref": "#/components/schemas/ServiceLevel"
          }
        },
        "type": "object"
      },
      "Mandate": {
        "description": "Core mandate data structure containing all the details of a direct debit mandate.\n",
        "properties": {
          "adjustment": {
            "$ref": "#/components/schemas/MandateAdjustmentRules"
          },
          "authentication": {
            "$ref": "#/components/schemas/MandateAuthentication"
          },
          "collectionAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "creditor": {
            "$ref": "#/components/schemas/Party"
          },
          "creditorAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "creditorAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "creditorSchemeIdentification": {
            "$ref": "#/components/schemas/Party"
          },
          "debtor": {
            "$ref": "#/components/schemas/Party"
          },
          "debtorAccount": {
            "$ref": "#/components/schemas/PaymentAccount"
          },
          "debtorAgent": {
            "$ref": "#/components/schemas/InstitutionIdentification"
          },
          "firstCollectionAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "mandateIdentification": {
            "description": "Unique identification of the mandate, as assigned by the creditor. This field is used strictly by the Creditor\nfor their own internal referencing and may be used to link collections to their related mandate.\nThis is required for mandate initiations and cancellations.\n",
            "maxLength": 35,
            "type": "string"
          },
          "mandateReference": {
            "description": "Reference assigned to the mandate by the mandate management application.\nThis is distinct from `mandateIdentification` (creditor's ID)\nand `ZaMandatePaymentSchemeSupplementaryData.debtorBankMandateReference` (debtor bank's reference).\n",
            "maxLength": 35,
            "type": "string"
          },
          "mandateRequestIdentification": {
            "description": "Unique identification of the mandate request, as assigned by the creditor to the debtor when the underlying contract is concluded between the two parties.\nThis field represents the Contract Reference Number. It appears on the debtor's bank statement to help them identify the deductions.\nThe Contract Reference must remain unchanged for the entire duration of the mandate, even in the event of cession or assignment. It can only be amended if no AC Payment Instruction has ever been presented against the Payer's account.\nThis field is required for mandate initiations and mandate cancellations.\n",
            "maxLength": 35,
            "type": "string"
          },
          "mandateStatus": {
            "$ref": "#/components/schemas/MandateStatus"
          },
          "maximumAmount": {
            "$ref": "#/components/schemas/Amount"
          },
          "occurrences": {
            "$ref": "#/components/schemas/MandateOccurrences"
          },
          "reason": {
            "$ref": "#/components/schemas/MandateReason"
          },
          "referredDocument": {
            "description": "Provides information to identify the underlying documents associated with the mandate\n",
            "items": {
              "$ref": "#/components/schemas/ReferredDocument"
            },
            "type": "array"
          },
          "trackingIndicator": {
            "description": "Indicates whether the mandate permits tracking for future collection instructions.\nIts exact meaning and relevance depend strictly on the mandate-management operation being performed:\n\n**1. Mandate Initiation & Amendment Requests**\n* **Required:** Specifies whether tracking capabilities are permitted (`true`) or revoked (`false`) for future collections against this mandate.\n\n**2. Mandate Cancellation Requests**\n* **Required:** Acts specifically as a **Tracking Cancellation Indicator** to manage collections that are already in-flight.\n  * `true`: Instructs the clearing house to immediately cancel any active tracking records currently in the tracking queue for this mandate.\n  * `false`: Instructs the clearing house NOT to cancel records in tracking, allowing them to finish their tracking cycle despite the mandate being cancelled.\n\n**3. Mandate Acceptance Reports**\n* **Required:** Echoes the definitive tracking setting (`true` or `false`) that was successfully saved to the Debtor Bank's Mandate Register.\n\n**4. Mandate Suspensions & Information Requests**\n* **Not Applicable:** This field is ignored for lookup and suspension operations.\n",
            "type": "boolean"
          },
          "type": {
            "$ref": "#/components/schemas/MandateTypeInformation"
          },
          "ultimateCreditor": {
            "$ref": "#/components/schemas/Party"
          },
          "ultimateDebtor": {
            "$ref": "#/components/schemas/Party"
          }
        },
        "required": [
          "creditor",
          "debtor",
          "debtorAgent"
        ],
        "type": "object"
      },
      "MandateRequestTransactionIdentifier": {
        "description": "**Mandate Request Transaction Identifier (MRTI)**\nA unique transaction identifier used for matching multiple messages to a single transaction. This identifier\nis created for each new mandate request to uniquely identify the transaction within the Authenticated Collections scheme.\n\n**Important:** Usage of mandateRequestTransactionIdentifier**.\n* If the client is the host of the mandate register and is the source of truth for mandate state the client is\n  required to always populate the `MRTI`. The format is validated and the provided `MRTI` is used by Electrum.\n* If Electrum is the source of truth for mandate state the `MRTI` should not be provided by the client when\n  initiating new mandate transactions; Electrum will generate a compliant `MRTI` automatically which will be\n  echoed back to the client.\n\n**Structure (23 characters):**\n* Positions 1–4 (4 numeric): Originating bank number. Must be a valid, registered bank.\n* Positions 5–14 (10 alphanumeric): Origination date in the format `YYYY-MM-DD`. Must be a valid date.\n* Positions 15–23 (9 numeric): Mandate sequence number. Unique within the bank and date.\n\n**Lifecycle behaviour:**\n  * **Mandate Initiation Request:** The originating bank creates a new, unique `MRTI` for the\n    initiation request. If not provided by the client, Electrum generates one automatically.\n  * **Mandate Amendment Request:** A new, unique `MRTI` is required for the amendment request. If not provided\n    by the client, Electrum generates one automatically.\n    The amendment is linked back to the original mandate using the Mandate Reference Number (MRN).\n  * **Mandate Cancellation Request:**\n    * *In-flight cancellation:* If cancelling a mandate request that is still in-flight (e.g. awaiting\n      debtor authentication), the `MRTI` must exactly match the `MRTI` of the in-flight request being cancelled.\n      If not provided, Electrum handles this automatically by retrieving the `MRTI` of the in-flight transaction.\n    * *Active mandate cancellation:* If the mandate is already fully registered and active, a new, unique\n      `MRTI` must be issued for the cancellation request. If not provided, Electrum determines the mandate state\n      and applies the correct rule automatically.\n  * **Mandate Acceptance Report:** The response echoes back the `MRTI` from the request being responded to.\n    For API-level correlation, clients use `originalMessageIdentifiers.messageIdentification` instead.\n  * **Mandate Status Report:** The status report echoes back the `MRTI` from the request being reported on.\n    For API-level correlation, clients use `originalMessageIdentifiers.messageIdentification` instead.\n\n**Validation rules enforced by the scheme:**\n* Must not be blank or spaces.\n* The bank number (positions 1–4) must be a valid, registered bank.\n* The date (positions 5–14) must be a valid calendar date.\n* Must conform to the 23-character structured format.\n* Must be unique at the time of request origination.\n",
        "maxLength": 35,
        "pattern": "^\\d{4}\\d{4}-\\d{2}-\\d{2}\\d{9}$",
        "type": "string"
      },
      "MandatePaymentSchemeRequestTransmissionNumber": {
        "description": "Sequence number for the message's transmission. Used exclusively for real-time (TT1/TT3) messages to track\nmessage retries. 1 = original message transmission, 2-4 = retries.\n",
        "maximum": 4,
        "minimum": 1,
        "type": "integer"
      },
      "ZaMandatePaymentSchemeSupplementaryData": {
        "description": "South Africa specific supplementary data fields.\nThese fields supplement the core mandate structure with local requirements.\n",
        "properties": {
          "authenticationType": {
            "description": "Indicates the delivery and authentication mechanism of the mandate transaction.\n\nIn the `ZA_AC` scheme, this field dictates the specific Transaction Type (TT) processing rules that will be applied:\n* `REAL_TIME`: Maps to `TT1` (non-card). The mandate request is routed over the real-time interbank switch without an upfront authentication key. Note: The actual Payer authorisation might be immediate (e.g., 120-second USSD timeout) or delayed (until the end of the day), but the routing type remains REAL_TIME.\n* `PREAUTH`: Maps to `TT3` (Card Present). Indicates the Payer has already been authenticated via a prior card-and-PIN transaction at the point of interaction. Mandates using this type must include the resulting Message Authentication Code (MAC) in the request payload.\n* `BATCH`: Maps to `TT2`. The mandate request is submitted via delayed bulk file processing.\n* `NOT_APPLICABLE`: Debtor authentication is not required for this action (e.g. `MandateInformationRequest`).\n",
            "enum": [
              "REAL_TIME",
              "PREAUTH",
              "BATCH",
              "NOT_APPLICABLE"
            ],
            "type": "string"
          },
          "collectionDay": {
            "description": "The Payer's preferred recurring day for collection from their bank account.\n\nIn the `ZA_AC` scheme, the Collection Day is a rigid, legally binding clearing rule that is strictly evaluated relative to the mandate's `Frequency`. The interpretation of this integer changes based on the frequency type:\n* `Monthly`, `Quarterly`, `Bi-annually`, `Annually`, `Once-off`: Values `1` to `30` represent the exact calendar day of the month. `99` strictly represents the \"Last Day\" of the month (e.g., automatically adjusting for February 28th/29th). Note: 31 is not a valid input.\n* `Weekly`: Values `1` to `7` represent the day of the week (`1` = Monday, `7` = Sunday).\n* `Fortnightly`: Values `1` to `14` represent the day within the two-week cycle (`1` to `7` for week one; `8` to `14` for week two).\n* `Monthly by Rule`: Values map to specific occurrences (e.g., `1` = Last Monday, `7` = First Monday, `14` = 2nd Last Day).\n\n**Interbank Validation Rules:**\nThe Debtor Bank is required to store this exact day in their Mandate Register. If the mandate's `dateAdjustmentRule` is set to 'N' (No), the Debtor Bank will strictly validate incoming collections against this day. If a collection's Action Date does not exactly match this `collectionDay` (or the immediately following Processing Day), the Debtor Bank will trigger an upfront rejection.\n\n*Note: According to clearing rules, Debtor Banks are only required to enforce this strict date validation on `Weekly` and `Monthly` frequencies.*\n",
            "maximum": 99,
            "minimum": 1,
            "type": "integer"
          },
          "debitValueType": {
            "description": "This dictates strict interbank validation rules for how collection amounts are calculated, capped, and\nadjusted over the life of the mandate.\n\nThe rules for each type are:\n* `FIXED`: Used for contracts where an upfront, calculated Instalment Amount is the\n  basis for normal collections. Regular collections are strictly validated and\n  cannot exceed this Instalment Amount. The Adjustment Category for a fixed\n  mandate must strictly be 'NEVR' (Never).\n* `VARIABLE`: Used for contracts where an upfront Instalment Amount is calculated but\n  can be amended by the Creditor based on pre-agreed variables, such as annual\n  increases or interest rate changes. Regular collections cannot exceed the\n  currently active Instalment Amount.\n* `USAGE_BASED`: Used for contracts where the collection amount fluctuates depending on\n  the Payer's usage of a product or service during the payment cycle. Unlike Fixed\n  and Variable mandates, the regular Instalment Amount is optional, and interbank validation\n  is instead performed strictly against a mandatory Maximum Collection Amount.\n",
            "enum": [
              "FIXED",
              "VARIABLE",
              "USAGE_BASED"
            ],
            "type": "string"
          },
          "debtorBankMandateReference": {
            "description": "The Mandate Reference Number (MRN) assigned by the debtor bank upon mandate acceptance. This is the official, unique\nindustry-wide identification number for the mandate that is unique for the mandate's entire lifecycle (including time in archives).\n\nIt is returned in the acceptance report and must be included in subsequent mandate amendment, and suspension requests.\n\n*Not to be confused with `mandateIdentification` (creditor's internal ID), `mandateRequestTransactionIdentifier` (MRTI), or `mandateReference` (mandate management app reference).*\n\n**Structure (22 characters):**\n* **Bank Number (4 numeric):** The 4-digit identifier of the Debtor Bank.\n* **Mandate Creation Date (8 numeric):** The date the mandate was successfully registered, formatted strictly as `YYYYMMDD`.\n* **Free Format (10 alphanumeric):** A unique identifier or sequence generated by the Debtor Bank.\n",
            "maxLength": 22,
            "pattern": "^[0-9]{4}20[0-9]{2}[0-1][0-9][0-3][0-9].{10}$",
            "type": "string"
          },
          "mandateRequestTransactionIdentifier": {
            "$ref": "#/components/schemas/MandateRequestTransactionIdentifier"
          },
          "requestTransmissionNumber": {
            "$ref": "#/components/schemas/MandatePaymentSchemeRequestTransmissionNumber"
          }
        },
        "type": "object"
      },
      "ZaAcMandatePaymentSchemeData": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ZaMandatePaymentSchemeSupplementaryData"
          },
          {
            "required": [
              "authenticationType"
            ],
            "type": "object"
          }
        ]
      },
      "ZaAcMandatePaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaAcMandatePaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "MandatePaymentScheme": {
        "description": "Designates which scheme a mandate operation is associated with and describes scheme-specific information\nfor the mandate operation where relevant.\n",
        "discriminator": {
          "mapping": {
            "ZA_AC": "#/components/schemas/ZaAcMandatePaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaAcMandatePaymentScheme"
          }
        ],
        "type": "object"
      },
      "MandateInitiationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "A request to initiate a new mandate.\nSent by the creditor to the debtor's bank to request establishment of a new mandate.\n",
            "properties": {
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "mandate": {
                "$ref": "#/components/schemas/Mandate"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/MandatePaymentScheme"
              },
              "schema": {
                "enum": [
                  "MandateInitiationRequest"
                ],
                "type": "string"
              }
            },
            "required": [
              "mandate",
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "MandateAmendmentReason": {
        "description": "Provides details about the reason for a mandate amendment.\n\n**Field Usage Guidelines:**\n**`reason`**: For South African Mandate Schemes the reason for the amendment is specified as one of the below `PROPRIETARY` values:\n  * `MD02` - Reason has not been specified by end consumer.\n  * `MD16` - Requested by Customer..\n  * `MD17` - Amendment requested by Initiating Party.\n  * `MD19` - Unsuspend a Mandate with changes.\n  * `MD20` - Unsuspend an unchanged Mandate.\n  * `MD21` - Amendment with no changes to Mandate Information.\n  * `MD22` - Amendment with changes to Mandate Information.\n",
        "properties": {
          "additionalInformation": {
            "items": {
              "maxLength": 105,
              "type": "string"
            },
            "type": "array"
          },
          "originator": {
            "$ref": "#/components/schemas/Party"
          },
          "reason": {
            "$ref": "#/components/schemas/MandateReason"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "OriginalMandateReference": {
        "description": "Reference to an original mandate. The partner may identify the mandate using any of the\nfollowing identifiers, depending on the context of the request and the information available.\nAt least one of `originalMandateIdentification` for the original mandate,\nor `originalMandate` must be provided.\n\nFor mandate amendment, cancellation and suspension requests, `originalMandate` is required\nand the originalMandateIdentification cannot be used as the sole reference.\n",
        "properties": {
          "originalMandate": {
            "$ref": "#/components/schemas/Mandate"
          },
          "originalMandateIdentification": {
            "description": "Unique identification to unambiguously identify the original mandate. Can be the mandateIdentification as assigned by the creditor\nor the mandate reference number as assigned by the debtor agent\n",
            "maxLength": 35,
            "type": "string"
          }
        },
        "type": "object"
      },
      "OriginalMandateMessageInformation": {
        "description": "Identifies the original mandate-management message being referenced or responded to.\nFor `MandateInformationRequest`, this block is optional on the partner request — Electrum\nwill populate it from the latest message recorded against the mandate before forwarding to the scheme.\n",
        "properties": {
          "creationDateTime": {
            "description": "The creation date and time of the original message.\n",
            "format": "date-time",
            "type": "string"
          },
          "messageIdentification": {
            "description": "The identification of the original message.\n",
            "maxLength": 35,
            "type": "string"
          },
          "messageNameIdentification": {
            "description": "The name/type of the original message (e.g. MandateInitiationRequest).\n",
            "maxLength": 35,
            "type": "string"
          }
        },
        "required": [
          "messageIdentification",
          "messageNameIdentification"
        ],
        "type": "object"
      },
      "UnderlyingAmendmentDetails": {
        "description": "Contains the details of the mandate amendment including the reason, amended mandate, and original mandate reference.\n",
        "properties": {
          "amendedMandate": {
            "$ref": "#/components/schemas/Mandate"
          },
          "amendmentReason": {
            "$ref": "#/components/schemas/MandateAmendmentReason"
          },
          "originalMandate": {
            "$ref": "#/components/schemas/OriginalMandateReference"
          },
          "originalMessageInformation": {
            "$ref": "#/components/schemas/OriginalMandateMessageInformation"
          }
        },
        "required": [
          "amendmentReason",
          "amendedMandate",
          "originalMandate"
        ],
        "type": "object"
      },
      "MandateAmendmentRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "A request to amend an existing mandate.\nSent to request changes to the terms of an existing mandate.\n",
            "properties": {
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/MandatePaymentScheme"
              },
              "schema": {
                "enum": [
                  "MandateAmendmentRequest"
                ],
                "type": "string"
              },
              "underlyingAmendmentDetails": {
                "$ref": "#/components/schemas/UnderlyingAmendmentDetails"
              }
            },
            "required": [
              "underlyingAmendmentDetails",
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "MandateCancellationReason": {
        "description": "Provides details about the reason for a mandate cancellation.\n\n**Field Usage Guidelines:**\n**`reason`**: For South African Mandate Schemes the reason for the cancellation is specified as one of the below `PROPRIETARY` values:\n* `CEXP` - Contract expired.\n* `MACN` - Cancellation of Mandate Amendment (Strictly used when cancelling an in-flight MandateAmendmentRequest).\n* `MICN` - Cancellation of Mandate Initiation (Strictly used when cancelling an in-flight MandateInitiationRequest).\n* `MCES` - Mandate Cancelled due to early settlement.\n* `MCFR` - Mandate Cancellation due to Fraud.\n* `MD17` - Cancellation/amendment requested by the creditor.\n",
        "properties": {
          "additionalInformation": {
            "items": {
              "maxLength": 105,
              "type": "string"
            },
            "type": "array"
          },
          "originator": {
            "$ref": "#/components/schemas/Party"
          },
          "reason": {
            "$ref": "#/components/schemas/MandateReason"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "UnderlyingCancellationDetails": {
        "description": "Contains the core details of the mandate cancellation request.\n\n**Field Usage Guidelines:**\n* **`originalMessageInformation`**: ONLY required for in-flight cancellations (when a mandate initiation or\n  amendment is still pending or has timed out). It identifies the specific pending message to cancel.\n",
        "properties": {
          "cancellationReason": {
            "$ref": "#/components/schemas/MandateCancellationReason"
          },
          "originalMandate": {
            "$ref": "#/components/schemas/OriginalMandateReference"
          },
          "originalMessageInformation": {
            "$ref": "#/components/schemas/OriginalMandateMessageInformation"
          }
        },
        "required": [
          "cancellationReason",
          "originalMandate"
        ],
        "type": "object"
      },
      "MandateCancellationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "Sent to request termination of an existing mandate.\n",
            "properties": {
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/MandatePaymentScheme"
              },
              "schema": {
                "enum": [
                  "MandateCancellationRequest"
                ],
                "type": "string"
              },
              "underlyingCancellationDetails": {
                "$ref": "#/components/schemas/UnderlyingCancellationDetails"
              }
            },
            "required": [
              "underlyingCancellationDetails",
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "ExternalMandateSuspensionReasonCode": {
        "properties": {
          "schema": {
            "description": "Identifies the value as being a pre-defined code. Always `CODE`.",
            "type": "string"
          },
          "value": {
            "description": "* `CTAM` - Contract Amended.\n* `CTCA` - Contract Cancellation Initiated by Debtor.\n* `CTEX` - Contract Expired.\n* `MCFC` - Mandate Suspended - Final Collection.\n* `MCOC` - Mandate Suspended - Once off Collection.\n* `MSUC` - Mandate Suspended after seven consecutive unsuccessful Collections.\n",
            "enum": [
              "CTAM",
              "CTCA",
              "CTEX",
              "MCFC",
              "MCOC",
              "MSUC"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "value"
        ],
        "type": "object"
      },
      "MandateSuspensionReasonChoice": {
        "description": "Specifies the reason for the suspension request of a mandate.\n",
        "discriminator": {
          "mapping": {
            "CODE": "#/components/schemas/ExternalMandateSuspensionReasonCode",
            "PROPRIETARY": "#/components/schemas/ProprietaryValue"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ExternalMandateSuspensionReasonCode"
          },
          {
            "$ref": "#/components/schemas/ProprietaryValue"
          }
        ],
        "type": "object"
      },
      "MandateSuspensionReason": {
        "description": "Provides details about the reason for a mandate suspension.\n\n**Field Usage Guidelines:**\n**`reason`**: For South African Mandate Schemes the reason for the suspension is specified as one of the below `PROPRIETARY` values:\n* `CTAM` - Contract Amended.\n* `CTCA` - Contract Cancellation Initiated by Debtor.\n* `CTEX` - Contract Expired.\n* `MCFC` - Mandate Suspended - Final Collection.\n* `MCOC` - Mandate Suspended - Once off Collection.\n* `MSUC` - Mandate Suspended after seven consecutive unsuccessful Collections.\n* `MASC` - Mandate Suspended - Account not in a state for Collections.\n* `MADO` - Mandate suspended due to no collection for a period.\n",
        "properties": {
          "additionalInformation": {
            "items": {
              "maxLength": 105,
              "type": "string"
            },
            "type": "array"
          },
          "originator": {
            "$ref": "#/components/schemas/Party"
          },
          "reason": {
            "$ref": "#/components/schemas/MandateSuspensionReasonChoice"
          }
        },
        "required": [
          "reason"
        ],
        "type": "object"
      },
      "MandateSuspensionRequestIdentification": {
        "description": "**Suspension Request Identification**\nA unique transaction identifier used to unambiguously identify the mandate suspension request to the clearing house.\n\n**Important:** Usage of suspensionRequestIdentification**.\n* If the client is the host of the mandate register and is the source of truth for mandate state the client is\n  required to always populate the `suspensionRequestIdentification` in the `MandateSuspensionRequest`.\n  The format is validated and the provided `suspensionRequestIdentification` is used by Electrum.\n* If Electrum is the source of truth for mandate state the `suspensionRequestIdentification` should not be\n  provided by the client when initiating new mandate suspension; Electrum will generate a compliant\n `suspensionRequestIdentification` automatically which will be echoed back to the client.\n\n**Lifecycle behaviour:**\n* **Mandate Suspension Request:** The originating bank creates a new, unique suspensionRequestIdentification for\n  the suspension request. If not provided by the client, Electrum generates one automatically.\n* **Customer Payment Status Report:** The suspensionRequestIdentification is echoed in\n    CustomerPaymentStatusReports that confirm the outcome of a mandate suspension.\n\n**Structure (29 characters):**\nThe identifier is composed of 4 components separated by forward slashes (`/`), matching the pattern `STP/<BankCode>/<Date>/<Sequence>`:\n* **Prefix (`STP`)**: Fixed string indicating a Suspension.\n* **Bank Code (4 numeric)**: The 4-digit identifier of the initiating bank.\n* **Date (10 alphanumeric)**: The date the suspension is generated in `YYYY-MM-DD` format.\n* **Sequence Number (9 numeric)**: Mandate Suspension sequence number. Must be unique within the bank and date.\n",
        "maxLength": 35,
        "pattern": "^STP/\\d{4}/20\\d{2}-\\d{2}-\\d{2}/\\d{9}$",
        "type": "string"
      },
      "UnderlyingSuspensionDetails": {
        "description": "Contains the details of the mandate suspension including the reason and original mandate reference.\n",
        "properties": {
          "originalMandate": {
            "$ref": "#/components/schemas/OriginalMandateReference"
          },
          "suspensionReason": {
            "$ref": "#/components/schemas/MandateSuspensionReason"
          },
          "suspensionRequestIdentification": {
            "$ref": "#/components/schemas/MandateSuspensionRequestIdentification"
          }
        },
        "required": [
          "suspensionReason",
          "originalMandate"
        ],
        "type": "object"
      },
      "MandateSuspensionRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "A request to suspend an existing mandate.\nSent to temporarily suspend mandate processing.\n",
            "properties": {
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/MandatePaymentScheme"
              },
              "schema": {
                "enum": [
                  "MandateSuspensionRequest"
                ],
                "type": "string"
              },
              "underlyingSuspensionDetails": {
                "$ref": "#/components/schemas/UnderlyingSuspensionDetails"
              }
            },
            "required": [
              "underlyingSuspensionDetails",
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "UnderlyingCopyDetails": {
        "description": "Contains the details of the mandate copy request including the original mandate reference.\n",
        "properties": {
          "mandateStatus": {
            "$ref": "#/components/schemas/MandateStatus"
          },
          "originalMandate": {
            "$ref": "#/components/schemas/OriginalMandateReference"
          },
          "originalMessageInformation": {
            "$ref": "#/components/schemas/OriginalMandateMessageInformation"
          }
        },
        "required": [
          "originalMandate"
        ],
        "type": "object"
      },
      "MandateInformationRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseMessage"
          },
          {
            "description": "A request for a copy of mandate details.\nSent to request the current state of a mandate.\n",
            "properties": {
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/MandatePaymentScheme"
              },
              "schema": {
                "enum": [
                  "MandateInformationRequest"
                ],
                "type": "string"
              },
              "underlyingCopyDetails": {
                "$ref": "#/components/schemas/UnderlyingCopyDetails"
              }
            },
            "required": [
              "underlyingCopyDetails",
              "paymentScheme",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "ZaAcCustomerPaymentStatusReportPaymentSchemeData": {
        "description": "The `mandateRequestTransactionIdentifier` and `suspensionRequestIdentification` are mutually exclusive fields\n* If the status report is responding to a standard mandate operation (Initiation, Amendment, Cancellation), it echoes the MRTI.\n* If the status report is responding to a Suspension, it echoes the Suspension Request Identification.\n",
        "properties": {
          "mandateRequestTransactionIdentifier": {
            "$ref": "#/components/schemas/MandateRequestTransactionIdentifier"
          },
          "requestTransmissionNumber": {
            "$ref": "#/components/schemas/MandatePaymentSchemeRequestTransmissionNumber"
          },
          "suspensionRequestIdentification": {
            "$ref": "#/components/schemas/MandateSuspensionRequestIdentification"
          }
        },
        "type": "object"
      },
      "ZaAcCustomerPaymentStatusReportPaymentScheme": {
        "properties": {
          "schema": {
            "$ref": "#/components/schemas/PaymentSchemeName"
          },
          "schemeData": {
            "$ref": "#/components/schemas/ZaAcCustomerPaymentStatusReportPaymentSchemeData"
          }
        },
        "required": [
          "schema",
          "schemeData"
        ],
        "type": "object"
      },
      "CustomerPaymentStatusReportPaymentScheme": {
        "description": "Designates which scheme a customer payment status report is associated with and describes scheme-specific\ninformation for the customer payment status report.\n",
        "discriminator": {
          "mapping": {
            "ZA_AC": "#/components/schemas/ZaAcCustomerPaymentStatusReportPaymentScheme"
          },
          "propertyName": "schema"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZaAcCustomerPaymentStatusReportPaymentScheme"
          }
        ],
        "type": "object"
      },
      "CustomerPaymentStatusReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "properties": {
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "mandateInformation": {
                "$ref": "#/components/schemas/MandateInformation"
              },
              "originalMessageNameIdentification": {
                "description": "Specifies the original message name identifier to which the message refers. In ELPAPI, this should be the\nELPAPI message type name (e.g. MandateInitiationRequest, MandateAmendmentRequest, CreditTransfer).\n",
                "maxLength": 35,
                "type": "string"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/CustomerPaymentStatusReportPaymentScheme"
              },
              "schema": {
                "enum": [
                  "CustomerPaymentStatusReport"
                ],
                "type": "string"
              },
              "status": {
                "$ref": "#/components/schemas/Status"
              }
            },
            "required": [
              "paymentScheme",
              "status",
              "originalMessageNameIdentification",
              "schema"
            ],
            "type": "object"
          }
        ],
        "description": "Provides status information on instructions previously sent. This message can be used to\ncommunicate the status of various customer payment initiations including mandate operations\n(initiation, amendment, cancellation, suspension), credit-transfer initiations, and direct-debit\ninitiations.\n\nUse cases include:\n- Functional acknowledgment that a request has been received and is pending (e.g. awaiting debtor authentication)\n- Rejection of a request due to validation failure\n- Acknowledgment of a MandateAcceptanceReport\n\nThe original request is referenced via `originalMessageIdentifiers`.\n"
      },
      "MandateAcceptanceResult": {
        "description": "Result of a mandate maintenance request.\n",
        "properties": {
          "accepted": {
            "description": "Indicates whether the mandate maintenance request was accepted (true) or rejected (false).\n",
            "type": "boolean"
          },
          "additionalRejectionInformation": {
            "description": "Additional information about the rejection reason.\n",
            "items": {
              "maxLength": 105,
              "type": "string"
            },
            "type": "array"
          },
          "rejectionReason": {
            "$ref": "#/components/schemas/MandateReason"
          }
        },
        "required": [
          "accepted"
        ],
        "type": "object"
      },
      "UnderlyingAcceptanceDetails": {
        "description": "Contains the core information regarding the acceptance or rejection of the mandate maintenance request.\n",
        "properties": {
          "acceptanceResult": {
            "$ref": "#/components/schemas/MandateAcceptanceResult"
          },
          "originalMandate": {
            "$ref": "#/components/schemas/OriginalMandateReference"
          },
          "originalMessageInformation": {
            "$ref": "#/components/schemas/OriginalMandateMessageInformation"
          }
        },
        "required": [
          "acceptanceResult"
        ],
        "type": "object"
      },
      "MandateAcceptanceReport": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseResponseMessage"
          },
          {
            "description": "A report on the acceptance or rejection of a mandate request.\nSent by the debtor bank in response to an initiation, amendment, suspension or cancellation request.\nAlso used when responding to a mandate information request.\n",
            "properties": {
              "initiatingParty": {
                "$ref": "#/components/schemas/Party"
              },
              "instructedAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "instructingAgent": {
                "$ref": "#/components/schemas/InstitutionIdentification"
              },
              "paymentScheme": {
                "$ref": "#/components/schemas/MandatePaymentScheme"
              },
              "schema": {
                "enum": [
                  "MandateAcceptanceReport"
                ],
                "type": "string"
              },
              "underlyingAcceptanceDetails": {
                "$ref": "#/components/schemas/UnderlyingAcceptanceDetails"
              }
            },
            "required": [
              "paymentScheme",
              "underlyingAcceptanceDetails",
              "schema"
            ],
            "type": "object"
          }
        ]
      },
      "CurrencyCode": {
        "description": "A valid, active currency code as defined in ISO 4217 indicating the currency of the amount.\n",
        "pattern": "^[A-Z]{3}$",
        "type": "string"
      },
      "Restriction": {
        "properties": {
          "restrictionType": {
            "description": "A value that represents the type of this restriction. Used for processing purposes.",
            "enum": [
              "NO_CREDITS",
              "NO_DEBITS"
            ],
            "type": "string"
          },
          "validFrom": {
            "description": "The moment in time from which (i.e. at this point and after) the restriction is applicable.\n",
            "format": "date-time",
            "type": "string"
          },
          "validUntil": {
            "description": "The moment in time from which (i.e. after this point) the restriction is no longer applicable.\n",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "restrictionType",
          "validFrom"
        ],
        "type": "object"
      },
      "AccountStatusCode": {
        "description": "A set of codes that describe the status of an account",
        "enum": [
          "ENABLED",
          "DISABLED",
          "DELETED"
        ],
        "type": "string"
      },
      "Account": {
        "description": "An account within the Electrum Account mirror. Note that the `primaryIdentification` is permanent and immutable.",
        "properties": {
          "accountName": {
            "maxLength": 70,
            "type": "string"
          },
          "additionalIdentifications": {
            "items": {
              "$ref": "#/components/schemas/AccountIdentification"
            },
            "type": "array"
          },
          "currency": {
            "$ref": "#/components/schemas/CurrencyCode"
          },
          "openingDate": {
            "description": "Date and time at which the account was established.\n",
            "format": "date-time",
            "type": "string"
          },
          "primaryIdentification": {
            "$ref": "#/components/schemas/AccountIdentification"
          },
          "restrictions": {
            "items": {
              "$ref": "#/components/schemas/Restriction"
            },
            "type": "array"
          },
          "status": {
            "$ref": "#/components/schemas/AccountStatusCode"
          },
          "type": {
            "$ref": "#/components/schemas/AccountType"
          }
        },
        "required": [
          "primaryIdentification"
        ]
      },
      "AccountOwner": {
        "description": "Contains information detailing the owner of an account, which can be either a person or organisation.\n",
        "discriminator": {
          "mapping": {
            "INDIVIDUAL": "#/components/schemas/PersonAccountOwner",
            "ORGANISATION": "#/components/schemas/OrganisationAccountOwner"
          },
          "propertyName": "schema"
        },
        "properties": {
          "recordIdentifier": {
            "description": "A unique identifier used to identify this Account Owner record. This is distinct from the identification\nof the Account Owner, which may or may not be unique within this system, but which is typically used for\nidentification outside of the system, such as passport numbers or national identification numbers. This\nidentifier is used exclusively to identify the owner within this system.\n",
            "maxLength": 50,
            "minLength": 1,
            "type": "string"
          },
          "schema": {
            "description": "Defines the type of owner.",
            "enum": [
              "ORGANISATION",
              "INDIVIDUAL"
            ],
            "type": "string"
          }
        },
        "required": [
          "schema",
          "recordIdentifier"
        ],
        "type": "object"
      },
      "PersonName": {
        "description": "Name of the person.\n",
        "properties": {
          "additionalNames": {
            "description": "Additional names of the person.\n",
            "maxLength": 140,
            "type": "string"
          },
          "firstName": {
            "description": "Given name of the person.\n",
            "maxLength": 70,
            "type": "string"
          },
          "initials": {
            "description": "Initials of the person.\n",
            "maxLength": 70,
            "type": "string"
          },
          "knownAs": {
            "description": "A name that the person is known by.\n",
            "maxLength": 70,
            "type": "string"
          },
          "lastName": {
            "description": "Family name of the person.\n",
            "maxLength": 70,
            "type": "string"
          },
          "title": {
            "description": "Title of the person.\n",
            "maxLength": 70,
            "type": "string"
          }
        },
        "required": [
          "knownAs"
        ],
        "type": "object"
      },
      "PersonAccountOwner": {
        "allOf": [
          {
            "$ref": "#/components/schemas/AccountOwner"
          },
          {
            "properties": {
              "address": {
                "$ref": "#/components/schemas/PostalAddress"
              },
              "contactDetails": {
                "$ref": "#/components/schemas/ContactDetails"
              },
              "countryOfResidence": {
                "$ref": "#/components/schemas/CountryCode"
              },
              "identifiers": {
                "items": {
                  "$ref": "#/components/schemas/PersonIdentifier"
                },
                "type": "array"
              },
              "name": {
                "$ref": "#/components/schemas/PersonName"
              }
            },
            "type": "object"
          }
        ],
        "description": "Contains information detailing an account owner who is a natural person.\n"
      },
      "OrganisationName": {
        "description": "Name of the organisation.\n",
        "properties": {
          "legalEntityName": {
            "description": "The legal name of the organisation.\n",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          },
          "tradingAs": {
            "description": "Name of the organisation.\n",
            "maxLength": 140,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "OrganisationAccountOwner": {
        "allOf": [
          {
            "$ref": "#/components/schemas/AccountOwner"
          },
          {
            "properties": {
              "address": {
                "$ref": "#/components/schemas/PostalAddress"
              },
              "contactDetails": {
                "$ref": "#/components/schemas/ContactDetails"
              },
              "countryOfResidence": {
                "$ref": "#/components/schemas/CountryCode"
              },
              "identifiers": {
                "items": {
                  "$ref": "#/components/schemas/OrganisationIdentifier"
                },
                "type": "array"
              },
              "name": {
                "$ref": "#/components/schemas/OrganisationName"
              }
            },
            "type": "object"
          }
        ],
        "description": "Contains information detailing an account owner that is an organisation.\n"
      },
      "AccountLookupResponse": {
        "properties": {
          "account": {
            "$ref": "#/components/schemas/Account"
          },
          "otherAccountOwnerDetails": {
            "items": {
              "$ref": "#/components/schemas/AccountOwner"
            },
            "type": "array"
          },
          "primaryAccountOwnerDetails": {
            "$ref": "#/components/schemas/AccountOwner"
          }
        },
        "required": [
          "account",
          "primaryAccountOwnerDetails"
        ],
        "type": "object"
      }
    },
    "examples": {
      "Healthy": {
        "summary": "A health check report indicating services are healthy",
        "value": {
          "status": "PASS"
        }
      },
      "PaymentStatusReportApprovedEFT": {
        "summary": "Approved payment status report for an EFT credit or debit",
        "value": {
          "schema": "PaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_EFT"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "APPROVED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSC"
                },
                "additionalInformation": "Settlement completed on debtor account"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "originalTransactionData": {
            "paymentMethod": "CreditTransfer",
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "creditorAgentAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode456"
                },
                "issuer": "Amazing Bank",
                "value": 541239876
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "debtorAgentAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": 609812345
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "initiatingParty": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "purpose": {
              "schema": "CODE",
              "value": "ACCT"
            },
            "supplementaryData": {
              "customData1": "My custom data 1",
              "customData2": "My custom data 2"
            },
            "paymentTypeInformation": {
              "localInstrument": {
                "schema": "CODE",
                "value": "BTR"
              }
            }
          }
        }
      },
      "PaymentStatusReportApprovedAC": {
        "summary": "Approved payment status report for a mandate suspension",
        "value": {
          "schema": "PaymentStatusReport",
          "paymentScheme": {
            "schema": "ZA_AC"
          },
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "APPROVED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACCP"
                }
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "originalTransactionData": {
            "paymentMethod": "DirectDebit",
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "supplementaryData": {
              "customData1": "My custom data 1",
              "customData2": "My custom data 2"
            },
            "paymentTypeInformation": {
              "localInstrument": {
                "schema": "PROPRIETARY",
                "value": "DDT"
              }
            }
          }
        }
      },
      "ErrorDetailServerError": {
        "summary": "An error indicating an unexpected server error",
        "value": {
          "schema": "ErrorDetail",
          "message": "An unexpected error occurred. Please try again later."
        }
      },
      "PaymentStatusReportInboundRtcApproved": {
        "summary": "Payment status report approving an inbound credit transfer authorisation request",
        "value": {
          "schema": "PaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_RTC",
            "schemeData": {
              "beneficiaryEchoData": "Ab1 xxxxxxxxxxxxxxxx",
              "authorisationId": "Ab1 xx"
            },
            "originalSchemeData": {
              "userReference": "Ab1 xxxxxxxxxxxxxxxx",
              "originatorEchoData": "Ab1 xxxxxxxxxxxxxxxx",
              "businessReference": "11Ab1xxxxx"
            }
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "APPROVED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSC"
                },
                "additionalInformation": "Settlement completed on debtor account"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "originalTransactionData": {
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          }
        }
      },
      "PaymentStatusReportPendingCBPRFiToFiCustomer": {
        "summary": "Payment status report indicating the CBPR+ FI-to-FI-customer credit transfer is pending",
        "value": {
          "schema": "PaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "CBPR_PLUS"
          },
          "transactionIdentifiers": {
            "instructionIdentification": "a1db-0181ab0897d2",
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "PENDING",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSP"
                },
                "additionalInformation": "Accepted settlement in process"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "originalTransactionData": {
            "paymentMethod": "CreditTransfer",
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "supplementaryData": {
              "customData1": "My custom data 1",
              "customData2": "My custom data 2"
            },
            "paymentTypeInformation": {
              "localInstrument": {
                "schema": "CODE",
                "value": "BTR"
              }
            }
          }
        }
      },
      "TCIBOutboundPaymentStatusReport": {
        "summary": "Payment status report indicating the TCIB credit transfer was rejected due to a sanctions screening issue",
        "value": {
          "schema": "PaymentStatusReport",
          "paymentScheme": {
            "schema": "TCIB"
          },
          "instructedAgent": {
            "bicfi": "ABCDZA00",
            "branch": {
              "address": {
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ],
                "addressType": "ADDR",
                "buildingName": "Mysterious Building",
                "buildingNumber": 42,
                "country": "ZA",
                "countrySubDivision": "Mysterious Cape",
                "department": "Department of Mysteries",
                "districtName": "Mysty District",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "streetName": "Street of Mysteries",
                "townLocationName": "Mysty Location",
                "townName": "Mysty Town"
              },
              "identification": 210514,
              "name": "ABC Plettenberg Bay"
            },
            "clearingSystemMemberId": {
              "clearingSystem": {
                "schema": "PROPRIETARY",
                "value": "TCIB"
              },
              "memberId": 123456
            },
            "name": "Amazing Bank Inc"
          },
          "instructingAgent": {
            "bicfi": "ABCDZA00",
            "branch": {
              "address": {
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ],
                "addressType": "ADDR",
                "buildingName": "Mysterious Building",
                "buildingNumber": 42,
                "country": "ZA",
                "countrySubDivision": "Mysterious Cape",
                "department": "Department of Mysteries",
                "districtName": "Mysty District",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "streetName": "Street of Mysteries",
                "townLocationName": "Mysty Location",
                "townName": "Mysty Town"
              },
              "identification": 210514,
              "name": "ABC Plettenberg Bay"
            },
            "clearingSystemMemberId": {
              "clearingSystem": {
                "schema": "PROPRIETARY",
                "value": "TCIB"
              },
              "memberId": 123456
            },
            "name": "Amazing Bank Inc"
          },
          "messageIdentifiers": {
            "creationDateTime": "2026-01-02T03:04:15Z",
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da"
          },
          "originalMessageIdentifiers": {
            "creationDateTime": "2026-01-02T03:04:05Z",
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da"
          },
          "originalTransactionData": {
            "amounts": {
              "bankSettlementAmount": {
                "currency": "ZAR",
                "value": 100
              },
              "instructedAmount": {
                "currency": "ZAR",
                "value": 1
              }
            },
            "creditor": {
              "address": {
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ],
                "addressType": "ADDR",
                "buildingName": "Mysterious Building",
                "buildingNumber": "42",
                "country": "ZA",
                "countrySubDivision": "Mysterious Cape",
                "department": "Department of Mysteries",
                "districtName": "Mysty District",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "streetName": "Street of Mysteries",
                "townLocationName": "Mysty Location",
                "townName": "Mysty Town"
              },
              "contactDetails": {
                "emailAddress": "developer.dave@electrum.com",
                "mobileNumber": "+27-08230000000",
                "phoneNumber": "+27-0214620000"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "issuer": "Dept of Home Affairs",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    }
                  }
                ],
                "schema": "PERSON"
              },
              "legalName": "PersonLegalName"
            },
            "creditorAccount": {
              "currency": "ZAR",
              "identification": {
                "issuer": "Amazing Bank",
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "ABCDZA00",
              "branch": {
                "address": {
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ],
                  "addressType": "ADDR",
                  "buildingName": "Mysterious Building",
                  "buildingNumber": "42",
                  "country": "ZA",
                  "countrySubDivision": "Mysterious Cape",
                  "department": "Department of Mysteries",
                  "districtName": "Mysty District",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "streetName": "Street of Mysteries",
                  "townLocationName": "Mysty Location",
                  "townName": "Mysty Town"
                },
                "identification": "210514",
                "name": "ABC Plettenberg Bay"
              },
              "name": "Amazing Bank Inc"
            },
            "debtor": {
              "address": {
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ],
                "addressType": "ADDR",
                "buildingName": "Mysterious Building",
                "buildingNumber": "42",
                "country": "ZA",
                "countrySubDivision": "Mysterious Cape",
                "department": "Department of Mysteries",
                "districtName": "Mysty District",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "streetName": "Street of Mysteries",
                "townLocationName": "Mysty Location",
                "townName": "Mysty Town"
              },
              "contactDetails": {
                "emailAddress": "developer.dave@electrum.com",
                "mobileNumber": "+27-08230000000",
                "phoneNumber": "+27-0214620000"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "identifiers": [
                  {
                    "identification": "AABBCCDD",
                    "schema": "OTHER"
                  }
                ],
                "schema": "ORGANISATION"
              },
              "legalName": "CompanyLegalName"
            },
            "debtorAccount": {
              "currency": "ZAR",
              "identification": {
                "issuer": "Amazing Bank",
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "ABCDZA00",
              "branch": {
                "address": {
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ],
                  "addressType": "ADDR",
                  "buildingName": "Mysterious Building",
                  "buildingNumber": "42",
                  "country": "ZA",
                  "countrySubDivision": "Mysterious Cape",
                  "department": "Department of Mysteries",
                  "districtName": "Mysty District",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "streetName": "Street of Mysteries",
                  "townLocationName": "Mysty Location",
                  "townName": "Mysty Town"
                },
                "identification": "210514",
                "name": "ABC Plettenberg Bay"
              },
              "name": "Amazing Bank Inc"
            },
            "debtorAgentAccount": {
              "identification": {
                "issuer": "Amazing Bank",
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "value": 609812345
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "paymentMethod": "CreditTransfer",
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ]
            }
          },
          "status": {
            "outcome": "REJECTED",
            "reasonInfo": [
              {
                "additionalInformation": "Sanction screening outcome: BLOCKED",
                "reason": {
                  "schema": "CODE",
                  "value": "FR01"
                }
              }
            ]
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "FiToFiPaymentStatusReportPendingCBPR": {
        "summary": "Payment status report indicating the CBPR+ FI-to-FI credit transfer is pending",
        "value": {
          "schema": "FiToFiPaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "CBPR_PLUS"
          },
          "transactionIdentifiers": {
            "instructionIdentification": "a1db-0181ab0897d2",
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "PENDING",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSP"
                },
                "additionalInformation": "Accepted settlement in process"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "originalTransactionData": {
            "paymentMethod": "CreditTransfer",
            "creditor": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "supplementaryData": {
              "customData1": "My custom data 1",
              "customData2": "My custom data 2"
            }
          }
        }
      },
      "PaymentInitiationStatusReportCompletedRPP": {
        "summary": "Inbound bulk payment status report example",
        "value": {
          "schema": "PaymentInitiationStatusReport",
          "paymentInformationId": "uniqueUUID",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2024-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2024-05-04T03:02:01Z"
          },
          "paymentSchemeName": "ZA_RPP",
          "paymentInitiationStatus": {
            "outcome": "COMPLETED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSC"
                },
                "additionalInformation": "Settlement completed on debtor account"
              }
            ]
          },
          "transactionStatistics": {
            "numberOfApprovedTransactions": 2,
            "numberOfPendingTransactions": 0,
            "numberOfCancelledTransactions": 0,
            "numberOfRejectedTransactions": 0
          },
          "numberOfTransactions": 2,
          "controlSum": {
            "amount": {
              "value": 200,
              "currency": "ZAR"
            }
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "paymentInstructionStatusReports": [
            {
              "transactionIdentifiers": {
                "endToEndIdentification": "6249118655591098",
                "transactionIdentification": "RRN000000001",
                "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
              },
              "paymentScheme": {
                "schema": "ZA_RPP"
              },
              "status": {
                "outcome": "APPROVED",
                "reasonInfo": [
                  {
                    "reason": {
                      "schema": "CODE",
                      "value": "ACSC"
                    },
                    "additionalInformation": "Settlement completed on debtor account"
                  }
                ]
              },
              "originalTransactionData": {
                "creditor": {
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-0214620000",
                    "mobileNumber": "+27-08230000000",
                    "emailAddress": "developer.dave@electrum.com"
                  },
                  "countryOfResidence": "ZA",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "90001236549870",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        },
                        "issuer": "Dept of Home Affairs"
                      }
                    ]
                  }
                },
                "creditorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "AProprietaryCode123"
                    },
                    "issuer": "Amazing Bank",
                    "value": "abcdef987654"
                  },
                  "proxy": {
                    "namespace": "NeoBank",
                    "schema": "MOBILE",
                    "value": "+27-0214620000"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  }
                },
                "creditorAgent": {
                  "bicfi": "RY8PEG0L",
                  "memberId": "AmazingBankId",
                  "name": "Amazing Bank Inc",
                  "branch": {
                    "identification": "210514",
                    "name": "ABC Plettenberg Bay",
                    "address": {
                      "addressType": "ADDR",
                      "department": "Department of Mysteries",
                      "streetName": "Street of Mysteries",
                      "buildingNumber": "42",
                      "buildingName": "Mysterious Building",
                      "floor": "42",
                      "postBox": "1024",
                      "postCode": "4242",
                      "townName": "Mysty Town",
                      "townLocationName": "Mysty Location",
                      "districtName": "Mysty District",
                      "countrySubDivision": "Mysterious Cape",
                      "country": "ZA",
                      "addressLine": [
                        "16A",
                        "New market street",
                        "Foreshore",
                        "Cape Town",
                        "ZA",
                        "8001"
                      ]
                    }
                  }
                },
                "amounts": {
                  "bankSettlementAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  },
                  "instructedAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  }
                },
                "remittanceInformation": {
                  "unstructured": [
                    "some",
                    "unstructured",
                    "information"
                  ],
                  "structured": [
                    {
                      "referredDocuments": [
                        {
                          "type": {
                            "issuer": "AmazeBank123456",
                            "schema": "CODE",
                            "value": "CINV"
                          },
                          "documentIdentifier": "A0123456789"
                        }
                      ],
                      "referredDocumentAmount": {
                        "duePayableAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        },
                        "remittedAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        }
                      },
                      "creditorReference": {
                        "type": {
                          "issuer": "AnotherAmazeBank1234",
                          "schema": "CODE",
                          "value": "RADM"
                        },
                        "reference": "ABC123XYZ999"
                      },
                      "additionalRemittanceInformation": [
                        "Some",
                        "Additional",
                        "Information"
                      ]
                    }
                  ]
                }
              }
            },
            {
              "transactionIdentifiers": {
                "endToEndIdentification": "1234118655591098",
                "transactionIdentification": "RRN000000002",
                "uetr": "a65a34ad-c5ab-4b70-a3f9-946d743eaeaa"
              },
              "paymentScheme": {
                "schema": "ZA_RPP"
              },
              "status": {
                "outcome": "APPROVED",
                "reasonInfo": [
                  {
                    "reason": {
                      "schema": "CODE",
                      "value": "ACSC"
                    },
                    "additionalInformation": "Settlement completed on debtor account"
                  }
                ]
              },
              "originalTransactionData": {
                "creditor": {
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-0214620000",
                    "mobileNumber": "+27-08230000000",
                    "emailAddress": "developer.dave@electrum.com"
                  },
                  "countryOfResidence": "ZA",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "90001236549870",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        },
                        "issuer": "Dept of Home Affairs"
                      }
                    ]
                  }
                },
                "creditorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "AProprietaryCode123"
                    },
                    "issuer": "Amazing Bank",
                    "value": "abcdef987654"
                  },
                  "proxy": {
                    "namespace": "NeoBank",
                    "schema": "MOBILE",
                    "value": "+27-0214620000"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  }
                },
                "creditorAgent": {
                  "bicfi": "RY8PEG0L",
                  "memberId": "AmazingBankId",
                  "name": "Amazing Bank Inc",
                  "branch": {
                    "identification": "210514",
                    "name": "ABC Plettenberg Bay",
                    "address": {
                      "addressType": "ADDR",
                      "department": "Department of Mysteries",
                      "streetName": "Street of Mysteries",
                      "buildingNumber": "42",
                      "buildingName": "Mysterious Building",
                      "floor": "42",
                      "postBox": "1024",
                      "postCode": "4242",
                      "townName": "Mysty Town",
                      "townLocationName": "Mysty Location",
                      "districtName": "Mysty District",
                      "countrySubDivision": "Mysterious Cape",
                      "country": "ZA",
                      "addressLine": [
                        "16A",
                        "New market street",
                        "Foreshore",
                        "Cape Town",
                        "ZA",
                        "8001"
                      ]
                    }
                  }
                },
                "amounts": {
                  "bankSettlementAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  },
                  "instructedAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  }
                },
                "remittanceInformation": {
                  "unstructured": [
                    "some",
                    "unstructured",
                    "information"
                  ],
                  "structured": [
                    {
                      "referredDocuments": [
                        {
                          "type": {
                            "issuer": "AmazeBank123456",
                            "schema": "CODE",
                            "value": "CINV"
                          },
                          "documentIdentifier": "A0123456789"
                        }
                      ],
                      "referredDocumentAmount": {
                        "duePayableAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        },
                        "remittedAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        }
                      },
                      "creditorReference": {
                        "type": {
                          "issuer": "AnotherAmazeBank1234",
                          "schema": "CODE",
                          "value": "RADM"
                        },
                        "reference": "ABC123XYZ999"
                      },
                      "additionalRemittanceInformation": [
                        "Some",
                        "Additional",
                        "Information"
                      ]
                    }
                  ]
                }
              }
            }
          ]
        }
      },
      "PaymentInitiationStatusReportPartiallyApprovedRPP": {
        "summary": "Inbound bulk payment status report with partial acceptance example",
        "value": {
          "schema": "PaymentInitiationStatusReport",
          "paymentInformationId": "uniqueUUID",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2024-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2024-05-04T03:02:01Z"
          },
          "paymentSchemeName": "ZA_RPP",
          "status": {
            "outcome": "COMPLETED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "PART"
                },
                "additionalInformation": "A number of transactions have been approved, but some transactions were rejected"
              }
            ]
          },
          "transactionStatistics": {
            "numberOfApprovedTransactions": 1,
            "numberOfPendingTransactions": 1,
            "numberOfCancelledTransactions": 0,
            "numberOfRejectedTransactiond": 0
          },
          "numberOfTransactions": 2,
          "controlSum": {
            "amount": {
              "value": 200,
              "currency": "ZAR"
            }
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "paymentInstructionStatusReports": [
            {
              "transactionIdentifiers": {
                "endToEndIdentification": "6249118655591098",
                "transactionIdentification": "RRN000000001",
                "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
              },
              "paymentScheme": {
                "schema": "ZA_RPP"
              },
              "status": {
                "outcome": "APPROVED",
                "reasonInfo": [
                  {
                    "reason": {
                      "schema": "CODE",
                      "value": "ACSC"
                    },
                    "additionalInformation": "Settlement completed on debtor account"
                  }
                ]
              },
              "originalTransactionData": {
                "creditor": {
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-0214620000",
                    "mobileNumber": "+27-08230000000",
                    "emailAddress": "developer.dave@electrum.com"
                  },
                  "countryOfResidence": "ZA",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "90001236549870",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        },
                        "issuer": "Dept of Home Affairs"
                      }
                    ]
                  }
                },
                "creditorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "AProprietaryCode123"
                    },
                    "issuer": "Amazing Bank",
                    "value": "abcdef987654"
                  },
                  "proxy": {
                    "namespace": "NeoBank",
                    "schema": "MOBILE",
                    "value": "+27-0214620000"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  }
                },
                "creditorAgent": {
                  "bicfi": "RY8PEG0L",
                  "memberId": "AmazingBankId",
                  "name": "Amazing Bank Inc",
                  "branch": {
                    "identification": "210514",
                    "name": "ABC Plettenberg Bay",
                    "address": {
                      "addressType": "ADDR",
                      "department": "Department of Mysteries",
                      "streetName": "Street of Mysteries",
                      "buildingNumber": "42",
                      "buildingName": "Mysterious Building",
                      "floor": "42",
                      "postBox": "1024",
                      "postCode": "4242",
                      "townName": "Mysty Town",
                      "townLocationName": "Mysty Location",
                      "districtName": "Mysty District",
                      "countrySubDivision": "Mysterious Cape",
                      "country": "ZA",
                      "addressLine": [
                        "16A",
                        "New market street",
                        "Foreshore",
                        "Cape Town",
                        "ZA",
                        "8001"
                      ]
                    }
                  }
                },
                "amounts": {
                  "bankSettlementAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  },
                  "instructedAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  }
                },
                "remittanceInformation": {
                  "unstructured": [
                    "some",
                    "unstructured",
                    "information"
                  ],
                  "structured": [
                    {
                      "referredDocuments": [
                        {
                          "type": {
                            "issuer": "AmazeBank123456",
                            "schema": "CODE",
                            "value": "CINV"
                          },
                          "documentIdentifier": "A0123456789"
                        }
                      ],
                      "referredDocumentAmount": {
                        "duePayableAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        },
                        "remittedAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        }
                      },
                      "creditorReference": {
                        "type": {
                          "issuer": "AnotherAmazeBank1234",
                          "schema": "CODE",
                          "value": "RADM"
                        },
                        "reference": "ABC123XYZ999"
                      },
                      "additionalRemittanceInformation": [
                        "Some",
                        "Additional",
                        "Information"
                      ]
                    }
                  ]
                }
              }
            },
            {
              "transactionIdentifiers": {
                "endToEndIdentification": "1234118655591098",
                "transactionIdentification": "RRN000000002",
                "uetr": "a65a34ad-c5ab-4b70-a3f9-946d743eaeaa"
              },
              "paymentScheme": {
                "schema": "ZA_RPP"
              },
              "status": {
                "outcome": "REJECTED",
                "reasonInfo": [
                  {
                    "reason": {
                      "schema": "CODE",
                      "value": "AC03"
                    },
                    "additionalInformation": "Creditor account number invalid or missing."
                  }
                ]
              },
              "originalTransactionData": {
                "creditor": {
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-0214620000",
                    "mobileNumber": "+27-08230000000",
                    "emailAddress": "developer.dave@electrum.com"
                  },
                  "countryOfResidence": "ZA",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "90001236549870",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        },
                        "issuer": "Dept of Home Affairs"
                      }
                    ]
                  }
                },
                "creditorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "AProprietaryCode123"
                    },
                    "issuer": "Amazing Bank",
                    "value": "abcdef987654"
                  },
                  "proxy": {
                    "namespace": "NeoBank",
                    "schema": "MOBILE",
                    "value": "+27-0214620000"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  }
                },
                "creditorAgent": {
                  "bicfi": "RY8PEG0L",
                  "memberId": "AmazingBankId",
                  "name": "Amazing Bank Inc",
                  "branch": {
                    "identification": "210514",
                    "name": "ABC Plettenberg Bay",
                    "address": {
                      "addressType": "ADDR",
                      "department": "Department of Mysteries",
                      "streetName": "Street of Mysteries",
                      "buildingNumber": "42",
                      "buildingName": "Mysterious Building",
                      "floor": "42",
                      "postBox": "1024",
                      "postCode": "4242",
                      "townName": "Mysty Town",
                      "townLocationName": "Mysty Location",
                      "districtName": "Mysty District",
                      "countrySubDivision": "Mysterious Cape",
                      "country": "ZA",
                      "addressLine": [
                        "16A",
                        "New market street",
                        "Foreshore",
                        "Cape Town",
                        "ZA",
                        "8001"
                      ]
                    }
                  }
                },
                "amounts": {
                  "bankSettlementAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  },
                  "instructedAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  }
                },
                "remittanceInformation": {
                  "unstructured": [
                    "some",
                    "unstructured",
                    "information"
                  ],
                  "structured": [
                    {
                      "referredDocuments": [
                        {
                          "type": {
                            "issuer": "AmazeBank123456",
                            "schema": "CODE",
                            "value": "CINV"
                          },
                          "documentIdentifier": "A0123456789"
                        }
                      ],
                      "referredDocumentAmount": {
                        "duePayableAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        },
                        "remittedAmount": {
                          "value": 100,
                          "currency": "ZAR"
                        }
                      },
                      "creditorReference": {
                        "type": {
                          "issuer": "AnotherAmazeBank1234",
                          "schema": "CODE",
                          "value": "RADM"
                        },
                        "reference": "ABC123XYZ999"
                      },
                      "additionalRemittanceInformation": [
                        "Some",
                        "Additional",
                        "Information"
                      ]
                    }
                  ]
                }
              }
            }
          ]
        }
      },
      "InboundCreditTransferEFT": {
        "summary": "Inbound credit transfer for the EFT payment scheme.",
        "value": {
          "paymentScheme": {
            "schema": "ZA_EFT",
            "schemeData": {
              "userReference": "REF 1234",
              "userCode": 1234
            }
          },
          "amounts": {
            "bankSettlementAmount": {
              "value": 1,
              "currency": "ZAR"
            },
            "instructedAmount": {
              "value": 1,
              "currency": "ZAR"
            }
          },
          "paymentTypeInformation": {
            "localInstrument": {
              "schema": "CODE",
              "value": "BTR"
            }
          },
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "creditorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "creditorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode456"
              },
              "issuer": "Amazing Bank",
              "value": 541239876
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "debtorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 609812345
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructionForCreditorAgent": [
            {
              "code": "TELB",
              "information": "Please email example@example.com"
            }
          ],
          "intermediaryAgents": [
            {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          ],
          "previousInstructingAgents": [
            {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          ],
          "initiatingParty": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "purpose": {
            "schema": "CODE",
            "value": "BKDF"
          },
          "remittanceInformation": {
            "unstructured": [
              "some",
              "unstructured",
              "information"
            ],
            "structured": [
              {
                "referredDocuments": [
                  {
                    "type": {
                      "value": "CINV",
                      "schema": "CODE",
                      "issuer": "AmazeBank123456"
                    },
                    "documentIdentifier": "A0123456789"
                  }
                ],
                "referredDocumentAmount": {
                  "duePayableAmount": {
                    "value": 1,
                    "currency": "ZAR"
                  },
                  "remittedAmount": {
                    "value": 1,
                    "currency": "ZAR"
                  }
                },
                "creditorReference": {
                  "type": {
                    "value": "RADM",
                    "schema": "CODE",
                    "issuer": "AnotherAmazeBank1234"
                  },
                  "reference": "ABC123XYZ999"
                },
                "additionalRemittanceInformation": [
                  "Some",
                  "Additional",
                  "Information"
                ]
              }
            ]
          },
          "tax": {
            "totalAmount": {
              "value": 1,
              "currency": "ZAR"
            }
          },
          "schema": "CreditTransfer",
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "TCIBInboundCreditTransfer": {
        "summary": "An inbound credit transfer from the TCIB payment scheme.",
        "value": {
          "schema": "CreditTransfer",
          "paymentScheme": {
            "schema": "TCIB"
          },
          "amounts": {
            "bankSettlementAmount": {
              "currency": "ZAR",
              "value": 100
            }
          },
          "creditor": {
            "address": {
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ],
              "buildingNumber": "42",
              "country": "ZA",
              "countrySubDivision": "Mysterious Cape",
              "postCode": "4242",
              "streetName": "Street of Mysteries",
              "townName": "Mysty Town"
            },
            "contactDetails": {
              "mobileNumber": "+27-08230000000"
            },
            "identification": {
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  }
                }
              ],
              "schema": "PERSON"
            },
            "legalName": "PersonLegalName"
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "creditorAgent": {
            "bicfi": "ABCDZA00",
            "clearingSystemMemberId": {
              "clearingSystem": {
                "schema": "PROPRIETARY",
                "value": "TCIB"
              },
              "memberId": 123456
            },
            "name": "Amazing Bank Inc"
          },
          "debtor": {
            "address": {
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ],
              "addressType": "ADDR",
              "buildingNumber": "42",
              "country": "ZA",
              "countrySubDivision": "Mysterious Cape",
              "postCode": "4242",
              "streetName": "Street of Mysteries",
              "townName": "Mysty Town"
            },
            "contactDetails": {
              "mobileNumber": "+27-08230000000"
            },
            "identification": {
              "identifiers": [
                {
                  "identification": "AABBCCDD",
                  "schema": "OTHER"
                }
              ],
              "schema": "ORGANISATION"
            },
            "legalName": "CompanyLegalName"
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtorAgent": {
            "bicfi": "ABCDZA00",
            "clearingSystemMemberId": {
              "clearingSystem": {
                "schema": "PROPRIETARY",
                "value": "TCIB"
              },
              "memberId": 123456
            },
            "name": "Amazing Bank Inc"
          },
          "messageIdentifiers": {
            "creationDateTime": "2026-01-02T03:04:05Z",
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da"
          },
          "paymentTypeInformation": {
            "serviceLevel": [
              {
                "schema": "CODE",
                "value": "URGP"
              }
            ]
          },
          "regulatoryReporting": [
            {
              "applicability": "DEBIT",
              "authority": {
                "country": "ZA"
              },
              "details": [
                {
                  "additionalInformation": [
                    "more",
                    "reporting",
                    "detail"
                  ],
                  "code": "BOP_CODE_1",
                  "country": "ZA",
                  "date": "2025-05-14",
                  "type": "PURP"
                }
              ]
            }
          ],
          "remittanceInformation": {
            "unstructured": [
              "an unstructured value"
            ]
          },
          "settlementDate": "2026-01-02",
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "CreditTransferInboundAuthRtc": {
        "summary": "Inbound credit transfer authorisation for the RTC payment scheme.",
        "value": {
          "schema": "CreditTransfer",
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_RTC",
            "schemeData": {
              "userReference": "Ab1 xxxxxxxxxxxxxxxx",
              "originatorEchoData": "Ab1 xxxxxxxxxxxxxxxx",
              "businessReference": "11Ab1xxxxx"
            }
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "amounts": {
            "bankSettlementAmount": {
              "value": 1,
              "currency": "ZAR"
            },
            "instructedAmount": {
              "value": 1,
              "currency": "ZAR"
            }
          },
          "paymentTypeInformation": {
            "localInstrument": {
              "schema": "CODE",
              "value": "BTR"
            }
          },
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "issuer": "Dept of Home Affairs",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  }
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "creditorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "creditorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode456"
              },
              "issuer": "Amazing Bank",
              "value": 541239876
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "issuer": "Dept of Home Affairs",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  }
                }
              ]
            }
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "debtorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 609812345
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructionForCreditorAgent": [
            {
              "code": "TELB",
              "information": "Please email example@example.com"
            }
          ],
          "intermediaryAgents": [
            {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          ],
          "previousInstructingAgents": [
            {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          ],
          "initiatingParty": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "purpose": {
            "schema": "CODE",
            "value": "BKDF"
          },
          "remittanceInformation": {
            "unstructured": [
              "some",
              "unstructured",
              "information"
            ],
            "structured": [
              {
                "referredDocuments": [
                  {
                    "type": {
                      "issuer": "AmazeBank123456",
                      "schema": "CODE",
                      "value": "CINV"
                    },
                    "documentIdentifier": "A0123456789"
                  }
                ],
                "referredDocumentAmount": {
                  "duePayableAmount": {
                    "value": 1,
                    "currency": "ZAR"
                  },
                  "remittedAmount": {
                    "value": 1,
                    "currency": "ZAR"
                  }
                },
                "creditorReference": {
                  "type": {
                    "issuer": "AnotherAmazeBank1234",
                    "schema": "CODE",
                    "value": "RADM"
                  },
                  "reference": "ABC123XYZ999"
                },
                "additionalRemittanceInformation": [
                  "Some",
                  "Additional",
                  "Information"
                ]
              }
            ]
          },
          "tax": {
            "totalAmount": {
              "value": 1,
              "currency": "ZAR"
            }
          },
          "supplementaryData": {
            "customData1": "My custom data 1",
            "customData2": "My custom data 2"
          }
        }
      },
      "PaymentStatusReportSuccessExample": {
        "summary": "Inbound payment status report example",
        "value": {
          "schema": "PaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_RPP"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "APPROVED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSC"
                },
                "additionalInformation": "Settlement completed on debtor account"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "originalTransactionData": {
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "proxy": {
                "namespace": "NeoBank",
                "schema": "MOBILE",
                "value": "+27-0214620000"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "proxy": {
                "namespace": "NeoBank",
                "schema": "MOBILE",
                "value": "+27-0214620000"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          }
        }
      },
      "InboundDirectDebitEFT": {
        "summary": "Inbound direct debit for the EFT payment scheme.",
        "value": {
          "paymentScheme": {
            "schema": "ZA_EFT",
            "schemeData": {
              "userReference": "REF 1234",
              "userCode": 1234
            }
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "paymentTypeInformation": {
            "localInstrument": {
              "schema": "CODE",
              "value": "BTR"
            }
          },
          "sequenceType": "FRST",
          "amounts": {
            "bankSettlementAmount": {
              "value": 1,
              "currency": "ZAR"
            },
            "instructedAmount": {
              "value": 1,
              "currency": "ZAR"
            }
          },
          "purpose": {
            "schema": "CODE",
            "value": "BKDF"
          },
          "remittanceInformation": {
            "unstructured": [
              "some",
              "unstructured",
              "information"
            ],
            "structured": [
              {
                "referredDocuments": [
                  {
                    "type": {
                      "value": "CINV",
                      "schema": "CODE",
                      "issuer": "AmazeBank123456"
                    },
                    "documentIdentifier": "A0123456789"
                  }
                ],
                "referredDocumentAmount": {
                  "duePayableAmount": {
                    "value": 1,
                    "currency": "ZAR"
                  },
                  "remittedAmount": {
                    "value": 1,
                    "currency": "ZAR"
                  }
                },
                "creditorReference": {
                  "type": {
                    "value": "RADM",
                    "schema": "CODE",
                    "issuer": "AnotherAmazeBank1234"
                  },
                  "reference": "ABC123XYZ999"
                },
                "additionalRemittanceInformation": [
                  "Some",
                  "Additional",
                  "Information"
                ]
              }
            ]
          },
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "creditorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "creditorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode456"
              },
              "issuer": "Amazing Bank",
              "value": 541239876
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "debtorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 609812345
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "intermediaryAgents": [
            {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            }
          ],
          "initiatingParty": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "requestedCollectionDate": "2022-05-04",
          "mandateInformation": {
            "mandateIdentification": "A mandate ID",
            "trackingDays": 4
          },
          "schema": "DirectDebit",
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "PaymentReturnEFT": {
        "summary": "Payment return for an EFT payment",
        "value": {
          "schema": "PaymentReturn",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_EFT",
            "schemeData": {
              "originalUserReference": "REF 1234",
              "returnType": "UNPAID",
              "userCode": 1234
            }
          },
          "paymentTypeInformation": {
            "localInstrument": {
              "schema": "CODE",
              "value": "BTR"
            }
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "reasonInfo": [
            {
              "reason": {
                "schema": "CODE",
                "value": "AC01"
              },
              "additionalInformation": "string"
            }
          ],
          "returnedAmounts": {
            "bankSettlementAmount": {
              "value": 1,
              "currency": "ZAR"
            },
            "instructedAmount": {
              "value": 1,
              "currency": "ZAR"
            }
          },
          "settlementDate": "2022-05-04",
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "initiatingParty": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "creditorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "creditorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode456"
              },
              "issuer": "Amazing Bank",
              "value": 541239876
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "debtorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 609812345
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "originalTransactionData": {
            "settlementDate": "2022-05-04",
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "creditorAgentAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode456"
                },
                "issuer": "Amazing Bank",
                "value": 541239876
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "issuer": "AmazeBank123456",
                        "schema": "CODE",
                        "value": "CINV"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "issuer": "AnotherAmazeBank1234",
                      "schema": "CODE",
                      "value": "RADM"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "debtorAgentAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": 609812345
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "initiatingParty": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "purpose": {
              "schema": "CODE",
              "value": "BKDF"
            }
          }
        }
      },
      "TCIBInboundPaymentReturn": {
        "summary": "An inbound payment return from the TCIB payment scheme.",
        "value": {
          "schema": "PaymentReturn",
          "paymentScheme": {
            "schema": "TCIB"
          },
          "creditor": {
            "address": {
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ],
              "buildingNumber": "42",
              "country": "ZA",
              "countrySubDivision": "Mysterious Cape",
              "postCode": "4242",
              "streetName": "Street of Mysteries",
              "townName": "Mysty Town"
            },
            "contactDetails": {
              "mobileNumber": "+27-08230000000"
            },
            "identification": {
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  }
                }
              ],
              "schema": "PERSON"
            },
            "legalName": "PersonLegalName"
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "creditorAgent": {
            "bicfi": "ABCDZA00",
            "clearingSystemMemberId": {
              "clearingSystem": {
                "schema": "PROPRIETARY",
                "value": "TCIB"
              },
              "memberId": 123456
            },
            "name": "Amazing Bank Inc"
          },
          "debtor": {
            "address": {
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ],
              "addressType": "ADDR",
              "buildingNumber": "42",
              "country": "ZA",
              "countrySubDivision": "Mysterious Cape",
              "postCode": "4242",
              "streetName": "Street of Mysteries",
              "townName": "Mysty Town"
            },
            "contactDetails": {
              "mobileNumber": "+27-08230000000"
            },
            "identification": {
              "identifiers": [
                {
                  "identification": "AABBCCDD",
                  "schema": "OTHER"
                }
              ],
              "schema": "ORGANISATION"
            },
            "legalName": "CompanyLegalName"
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtorAgent": {
            "bicfi": "ABCDZA00",
            "clearingSystemMemberId": {
              "clearingSystem": {
                "schema": "PROPRIETARY",
                "value": "TCIB"
              },
              "memberId": 123456
            },
            "name": "Amazing Bank Inc"
          },
          "messageIdentifiers": {
            "creationDateTime": "2026-01-02T03:04:05Z",
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da"
          },
          "originalMessageIdentifiers": {
            "creationDateTime": "2026-01-01T02:03:04Z",
            "messageIdentification": "7fd51c7124ba4819b9253e296a68e1da"
          },
          "originalTransactionData": {
            "amounts": {
              "bankSettlementAmount": {
                "currency": "ZAR",
                "value": 100
              }
            },
            "paymentMethod": "CreditTransfer",
            "paymentTypeInformation": {
              "serviceLevel": [
                {
                  "schema": "CODE",
                  "value": "URGP"
                }
              ]
            },
            "remittanceInformation": {
              "structured": [
                {
                  "additionalRemittanceInformation": [
                    "BOP_CODE_1"
                  ]
                }
              ],
              "unstructured": [
                "an unstructured value"
              ]
            },
            "settlementDate": "2026-01-01"
          },
          "reasonInfo": [
            {
              "additionalInformation": "Regulatory reason",
              "reason": {
                "schema": "CODE",
                "value": "RR05"
              }
            }
          ],
          "returnedAmounts": {
            "bankSettlementAmount": {
              "currency": "ZAR",
              "value": 100
            }
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayExact": {
        "summary": "Request To Pay (exact amount)",
        "value": {
          "paymentScheme": {
            "schema": "ZA_RPP"
          },
          "amounts": {
            "bankSettlementAmount": {
              "value": 100,
              "currency": "ZAR"
            }
          },
          "paymentTypeInformation": {
            "localInstrument": {
              "schema": "PROPRIETARY",
              "value": "PBPX"
            }
          },
          "expiryDateTime": "2024-04-09T09:32:51.395+02:00",
          "requestToPayConditions": {
            "minAmount": {
              "value": 100,
              "currency": "ZAR"
            },
            "maxAmount": {
              "value": 100,
              "currency": "ZAR"
            }
          },
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "creditorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "ultimateCreditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtorAccount": {
            "proxy": {
              "schema": "MOBILE",
              "value": "+27-721234567",
              "namespace": "amazebank"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "ultimateDebtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "remittanceInformation": {
            "unstructured": [
              "some",
              "unstructured",
              "information"
            ],
            "structured": [
              {
                "creditorReference": {
                  "reference": "ABC123XYZ999"
                },
                "additionalRemittanceInformation": [
                  "Some",
                  "Additional",
                  "Information"
                ]
              }
            ]
          },
          "schema": "RequestToPay",
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayAnyAmount": {
        "summary": "Request To Pay (any amount)",
        "value": {
          "paymentScheme": {
            "schema": "ZA_RPP"
          },
          "amounts": {
            "bankSettlementAmount": {
              "value": 100,
              "currency": "ZAR"
            }
          },
          "paymentTypeInformation": {
            "localInstrument": {
              "schema": "PROPRIETARY",
              "value": "PBPX"
            }
          },
          "expiryDateTime": "2024-04-09T09:32:51.395+02:00",
          "requestToPayConditions": {
            "minAmount": {
              "value": 1,
              "currency": "ZAR"
            },
            "maxAmount": {
              "value": 3000,
              "currency": "ZAR"
            }
          },
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": "abcdef987654"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "creditorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "ultimateCreditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtorAccount": {
            "proxy": {
              "schema": "MOBILE",
              "value": "+27-721234567",
              "namespace": "amazebank"
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            },
            "currency": "ZAR"
          },
          "debtorAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "ultimateDebtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "remittanceInformation": {
            "unstructured": [
              "some",
              "unstructured",
              "information"
            ],
            "structured": [
              {
                "creditorReference": {
                  "reference": "ABC123XYZ999"
                },
                "additionalRemittanceInformation": [
                  "Some",
                  "Additional",
                  "Information"
                ]
              }
            ]
          },
          "schema": "RequestToPay",
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayResponsePresented": {
        "summary": "Request To Pay Response Presented Debtor",
        "value": {
          "status": {
            "status": "PRESENTED"
          },
          "schema": "RequestToPayResponse",
          "messageIdentifiers": {
            "messageIdentification": "89730ee05e184fb094cf27cec5078d6b",
            "creationDateTime": "2022-05-04T03:02:02Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "requestToPayConditions": {
            "minAmount": {
              "value": 100,
              "currency": "ZAR"
            },
            "maxAmount": {
              "value": 100,
              "currency": "ZAR"
            }
          }
        }
      },
      "RequestToPayResponseCancelled": {
        "summary": "Request To Pay Response Cancelled",
        "value": {
          "status": {
            "status": "CANCELLED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "CUST"
                },
                "additionalInformation": "Cancellation requested by the Creditor"
              }
            ]
          },
          "schema": "RequestToPayResponse",
          "messageIdentifiers": {
            "messageIdentification": "89730ee05e184fb094cf27cec5078d6b",
            "creationDateTime": "2022-05-04T03:02:02Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayResponseRejected": {
        "summary": "Request To Pay Response Rejected By Debtor",
        "value": {
          "status": {
            "status": "REJECTED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "MS02"
                },
                "additionalInformation": "Reason has not been specified by end customer"
              }
            ]
          },
          "schema": "RequestToPayResponse",
          "messageIdentifiers": {
            "messageIdentification": "89730ee05e184fb094cf27cec5078d6b",
            "creationDateTime": "2022-05-04T03:02:02Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayResponseExpired": {
        "summary": "Request To Pay Response Expired",
        "value": {
          "status": {
            "status": "EXPIRED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "EDTR"
                },
                "additionalInformation": "Expiry date time of the request-to-pay is already reached."
              }
            ]
          },
          "schema": "RequestToPayResponse",
          "messageIdentifiers": {
            "messageIdentification": "89730ee05e184fb094cf27cec5078d6b",
            "creationDateTime": "2022-05-04T03:02:02Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayResponsePaid": {
        "summary": "Request To Pay Response Paid",
        "value": {
          "status": {
            "status": "PAID"
          },
          "schema": "RequestToPayResponse",
          "messageIdentifiers": {
            "messageIdentification": "89730ee05e184fb094cf27cec5078d6b",
            "creationDateTime": "2022-05-04T03:02:02Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayCancellation": {
        "summary": "Request To Pay Cancellation Request",
        "value": {
          "reasonCode": "CUST",
          "schema": "RequestToPayCancellation",
          "messageIdentifiers": {
            "messageIdentification": "336b84c5592c3ebfa5553f6e191b6eaa",
            "creationDateTime": "2022-05-04T03:05:10Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "originalTransactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayCancellationResponseCancelled": {
        "summary": "Request To Pay Cancellation Request which was successful",
        "value": {
          "status": {
            "status": "CANCELLED"
          },
          "schema": "RequestToPayCancellationResponse",
          "messageIdentifiers": {
            "messageIdentification": "336b84c5592c3ebfa5553f6e191b6eaa",
            "creationDateTime": "2022-05-04T03:05:10Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "originalTransactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayCancellationResponseAlreadyPaid": {
        "summary": "Request To Pay Cancellation Request which was rejected",
        "value": {
          "status": {
            "status": "REJECTED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "PATE"
                },
                "additionalInformation": "Payment related to the request-to-pay has already been transmitted for execution."
              }
            ]
          },
          "schema": "RequestToPayCancellationResponse",
          "messageIdentifiers": {
            "messageIdentification": "336b84c5592c3ebfa5553f6e191b6eaa",
            "creationDateTime": "2022-05-04T03:05:10Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "originalTransactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "PaymentStatusReportApprovedRtpRefund": {
        "summary": "Approved payment status report for an RTP Refund",
        "value": {
          "schema": "PaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c7124ba4819b9253e296a6be1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_RPP"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "5129118655591098",
            "transactionIdentification": "RRN000000002",
            "uetr": "9f7a56ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "APPROVED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSC"
                },
                "additionalInformation": "Settlement completed on debtor account"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "originalTransactionData": {
            "paymentMethod": "CreditTransfer",
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 50,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 50,
                "currency": "ZAR"
              }
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "supplementaryData": {
              "customData1": "My custom data 1",
              "customData2": "My custom data 2"
            },
            "paymentTypeInformation": {
              "localInstrument": {
                "schema": "CODE",
                "value": "BTR"
              }
            }
          }
        }
      },
      "PaymentStatusReportRejectedRtpRefund": {
        "summary": "Rejected payment status report for an RTP Refund",
        "value": {
          "schema": "PaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "paymentScheme": {
            "schema": "ZA_RPP"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "7249118655591098",
            "transactionIdentification": "RRN000000002",
            "uetr": "9f7a56ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "status": {
            "outcome": "REJECTED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "AM04"
                },
                "additionalInformation": "Insufficient Funds to complete payment"
              }
            ]
          },
          "instructingAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "instructedAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": 210514,
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              }
            }
          },
          "originalTransactionData": {
            "paymentMethod": "CreditTransfer",
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 50,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 50,
                "currency": "ZAR"
              }
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "supplementaryData": {
              "customData1": "My custom data 1",
              "customData2": "My custom data 2"
            },
            "paymentTypeInformation": {
              "localInstrument": {
                "schema": "CODE",
                "value": "BTR"
              }
            }
          }
        }
      },
      "RequestToPayStatusRequest": {
        "summary": "Request To Pay Status Request",
        "value": {
          "schema": "RequestToPayStatusRequest",
          "messageIdentifiers": {
            "messageIdentification": "f3507f23c9be4812baddf81e4a1a1180",
            "creationDateTime": "2022-05-04T03:01:01Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "originalTransactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          }
        }
      },
      "RequestToPayInitiationResponse": {
        "summary": "Bulk Collection response",
        "value": {
          "schema": "RequestToPayInitiationResponse",
          "requestToPayInformationId": "6e831b77-3e51-4a0e-a818-dc99a08f80d4",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2024-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2024-05-04T03:02:01Z"
          },
          "bulkPaymentSchemeName": "ZA_RPP",
          "requestToPayInitiationStatus": {
            "outcome": "COMPLETED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACSC"
                },
                "additionalInformation": "Settlement completed on debtor account"
              }
            ]
          },
          "transactionStatistics": {
            "numberOfPaidTransactions": 2,
            "numberOfAcceptedTransactions": 2,
            "numberOfCancelledTransactions": 0,
            "numberOfExpiredTransactions": 0,
            "numberOfPendingTransactions": 0,
            "numberOfPresentedTransactions": 0,
            "numberOfRejectedTransactions": 0,
            "numberOfUnsubmittedTransactions": 0
          },
          "numberOfTransactions": 2,
          "requestToPayInstructionStatusReports": [
            {
              "status": {
                "status": "CANCELLED",
                "reasonInfo": [
                  {
                    "reason": {
                      "schema": "CODE",
                      "value": "CUST"
                    },
                    "additionalInformation": "Cancellation requested by the Creditor"
                  }
                ]
              },
              "originalRequestToPayData": {
                "creditor": {
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-0214620000",
                    "mobileNumber": "+27-08230000000",
                    "emailAddress": "developer.dave@electrum.com"
                  },
                  "countryOfResidence": "ZA",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "90001236549870",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        },
                        "issuer": "Dept of Home Affairs"
                      }
                    ]
                  }
                },
                "creditorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "AProprietaryCode123"
                    },
                    "issuer": "Amazing Bank",
                    "value": "abcdef987654"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  },
                  "currency": "ZAR"
                },
                "creditorAgent": {
                  "bicfi": "RY8PEG0L",
                  "memberId": "AmazingBankId",
                  "name": "Amazing Bank Inc",
                  "branch": {
                    "identification": "210514",
                    "name": "ABC Plettenberg Bay",
                    "address": {
                      "addressType": "ADDR",
                      "department": "Department of Mysteries",
                      "streetName": "Street of Mysteries",
                      "buildingNumber": "42",
                      "buildingName": "Mysterious Building",
                      "floor": "42",
                      "postBox": "1024",
                      "postCode": "4242",
                      "townName": "Mysty Town",
                      "townLocationName": "Mysty Location",
                      "districtName": "Mysty District",
                      "countrySubDivision": "Mysterious Cape",
                      "country": "ZA",
                      "addressLine": [
                        "16A",
                        "New market street",
                        "Foreshore",
                        "Cape Town",
                        "ZA",
                        "8001"
                      ]
                    }
                  }
                },
                "amounts": {
                  "bankSettlementAmount": {
                    "value": 100,
                    "currency": "ZAR"
                  }
                },
                "remittanceInformation": {
                  "unstructured": [
                    "some",
                    "unstructured",
                    "information"
                  ],
                  "structured": [
                    {
                      "creditorReference": {
                        "reference": "ABC123XYZ999"
                      },
                      "additionalRemittanceInformation": [
                        "Some",
                        "Additional",
                        "Information"
                      ]
                    }
                  ]
                },
                "debtor": {
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-0214620000",
                    "mobileNumber": "+27-08230000000",
                    "emailAddress": "developer.dave@electrum.com"
                  },
                  "countryOfResidence": "ZA",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "90001236549870",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        },
                        "issuer": "Dept of Home Affairs"
                      }
                    ]
                  }
                },
                "debtorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "AProprietaryCode123"
                    },
                    "issuer": "Amazing Bank",
                    "value": "abcdef987654"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  },
                  "currency": "ZAR"
                },
                "debtorAgent": {
                  "bicfi": "RY8PEG0L",
                  "memberId": "AmazingBankId",
                  "name": "Amazing Bank Inc",
                  "branch": {
                    "identification": "210514",
                    "name": "ABC Plettenberg Bay",
                    "address": {
                      "addressType": "ADDR",
                      "department": "Department of Mysteries",
                      "streetName": "Street of Mysteries",
                      "buildingNumber": "42",
                      "buildingName": "Mysterious Building",
                      "floor": "42",
                      "postBox": "1024",
                      "postCode": "4242",
                      "townName": "Mysty Town",
                      "townLocationName": "Mysty Location",
                      "districtName": "Mysty District",
                      "countrySubDivision": "Mysterious Cape",
                      "country": "ZA",
                      "addressLine": [
                        "16A",
                        "New market street",
                        "Foreshore",
                        "Cape Town",
                        "ZA",
                        "8001"
                      ]
                    }
                  }
                },
                "expiryDateTime": "2024-04-09T09:32:51.395+02:00",
                "paymentTypeInformation": {
                  "localInstrument": {
                    "schema": "PROPRIETARY",
                    "value": "PBPX"
                  }
                }
              },
              "transactionIdentifiers": {
                "endToEndIdentification": "6249118655591098",
                "transactionIdentification": "RRN000000001",
                "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
              }
            }
          ]
        }
      },
      "ZaRppProxyResolutionIdentifierDeterminationRequest": {
        "summary": "Identification Determination for ZA-RPP proxy resolution",
        "value": {
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "schema": "IdentifierDeterminationRequest",
          "request": {
            "schema": "ZA_RPP",
            "instructedAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "instructingAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "requestor": {
              "schema": "INSTITUTION_IDENTIFICATION",
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "domain": "ADomain",
              "name": "Amazing Bank Inc"
            },
            "identifier": {
              "namespace": "AnotherDomain",
              "schema": "MOBILE",
              "value": "+27-0214620000"
            },
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa",
            "verificationIdentification": "e3360de097fe42a195cc53251d0ec839"
          },
          "supplementaryData": {
            "customData1": "My custom data 1",
            "customData2": "My custom data 2"
          }
        }
      },
      "ZaRppAccountResolutionIdentifierDeterminationRequest": {
        "summary": "Identification Determination for ZA-RPP account resolution",
        "value": {
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "schema": "IdentifierDeterminationRequest",
          "request": {
            "schema": "ZA_RPP",
            "instructedAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "instructingAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "requestor": {
              "schema": "INSTITUTION_IDENTIFICATION",
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "domain": "ADomain",
              "name": "Amazing Bank Inc"
            },
            "identifier": {
              "schema": "GENERIC",
              "value": 1234567890
            },
            "accountAgent": {
              "bicfi": "RY8PEG0L"
            },
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa",
            "verificationIdentification": "e3360de097fe42a195cc53251d0ec839"
          },
          "supplementaryData": {
            "customData1": "My custom data 1",
            "customData2": "My custom data 2"
          }
        }
      },
      "ZaRppProxyResolutionSuccessfulResponse": {
        "summary": "Successful ZA RPP Proxy/Account resolution response",
        "value": {
          "schema": "IdentifierDeterminationResponse",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "report": {
            "originalUetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa",
            "originalVerificationIdentification": "1001",
            "schema": "ZA_RPP",
            "reportInformation": {
              "outcome": "SUCCESSFUL",
              "transactionLimit": {
                "value": 3000,
                "currency": "ZAR"
              },
              "accountInformation": {
                "proxy": {
                  "schema": "MOBILE",
                  "value": "+27-812456789"
                },
                "creationDate": "2021-01-01T09:55:45.015708Z",
                "traditionalIdentifier": {
                  "schema": "GENERIC",
                  "value": 1234567890
                }
              },
              "accountOwner": {
                "knownAsName": "Shaun",
                "legalName": "Shaun John Smith"
              }
            },
            "instructedAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "instructingAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "originalRequestor": {
              "schema": "INSTITUTION_IDENTIFICATION",
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "domain": "ADomain",
              "name": "Amazing Bank Inc"
            }
          },
          "supplementaryData": {
            "customData1": "My custom data 1",
            "customData2": "My custom data 2"
          }
        }
      },
      "ZaRppProxyResolutionUnsuccessfulResponse": {
        "summary": "Unsuccessful ZA RPP Proxy/Account resolution response",
        "value": {
          "schema": "IdentifierDeterminationResponse",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "report": {
            "schema": "ZA_RPP",
            "originalUetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa",
            "originalVerificationIdentification": "e3360de097fe42a195cc53251d0ec839",
            "reportInformation": {
              "outcome": "FAILED",
              "reasonCode": "AB06",
              "reasonDescription": "Transaction stopped due to timeout at the Instructed Agent."
            },
            "instructedAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            },
            "instructingAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": 210514,
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                }
              }
            }
          }
        }
      },
      "ZaAccountVerificationRequest": {
        "summary": "Account Verification for ZA_AVS",
        "value": {
          "schema": "AccountVerificationRequest",
          "messageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "creator": {
            "legalName": "Amazing Bank Inc",
            "identification": {
              "schema": "ORGANISATION",
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "RY8PEG0L"
                },
                {
                  "schema": "OTHER",
                  "identification": "AmazingBankClearingID",
                  "scheme": {
                    "schema": "CODE",
                    "value": "CHID"
                  }
                }
              ]
            }
          },
          "firstAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "assigner": {
            "legalName": "Amazing Bank Inc",
            "identification": {
              "schema": "ORGANISATION",
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "RY8PEG0L"
                },
                {
                  "schema": "OTHER",
                  "identification": "AmazingBankClearingID",
                  "scheme": {
                    "schema": "CODE",
                    "value": "CHID"
                  }
                }
              ]
            }
          },
          "assignee": {
            "legalName": "Zamazing Bank Inc",
            "identification": {
              "schema": "ORGANISATION",
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "ZY8PEG0L"
                },
                {
                  "schema": "OTHER",
                  "identification": "ZamazingBankClearingID",
                  "scheme": {
                    "schema": "CODE",
                    "value": "CHID"
                  }
                }
              ]
            }
          },
          "verification": {
            "identification": "e21a36adc5ab4b70a3f9952d743eaeaa",
            "party": {
              "legalName": "Joshua Paul du Plessis",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-214620000",
                "mobileNumber": "+27-823000000",
                "emailAddress": "joshua.du.plessis@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "account": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "CODE",
                  "value": "BBAN"
                },
                "issuer": "Amazing Bank",
                "value": 60091645492
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              },
              "currency": "ZAR"
            },
            "agent": {
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "schemeVerificationData": {
              "schema": "ZA_AVS",
              "checkDebitsAllowed": "true",
              "checkCreditsAllowed": "true",
              "checkOlderThanThreeMonths": "true",
              "initials": "JP",
              "lastName": "du Plessis"
            }
          }
        }
      },
      "ZaAccountVerificationResponse": {
        "value": {
          "schema": "AccountVerificationResponse",
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
            "creationDateTime": "2022-05-04T03:02:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "creator": {
            "legalName": "Zamazing Bank Inc",
            "identification": {
              "schema": "ORGANISATION",
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "ZY8PEG0L"
                },
                {
                  "schema": "OTHER",
                  "identification": "ZamazingBankClearingID",
                  "scheme": {
                    "schema": "CODE",
                    "value": "CHID"
                  }
                }
              ]
            }
          },
          "firstAgent": {
            "bicfi": "RY8PEG0L",
            "memberId": "ZamazingBankId",
            "name": "Zamazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "XYZ Knysna",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              }
            }
          },
          "assigner": {
            "legalName": "Zamazing Bank Inc",
            "identification": {
              "schema": "ORGANISATION",
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "ZY8PEG0L"
                },
                {
                  "schema": "OTHER",
                  "identification": "ZamazingBankClearingID",
                  "scheme": {
                    "schema": "CODE",
                    "value": "CHID"
                  }
                }
              ]
            }
          },
          "assignee": {
            "legalName": "Amazing Bank Inc",
            "identification": {
              "schema": "ORGANISATION",
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "RY8PEG0L"
                },
                {
                  "schema": "OTHER",
                  "identification": "AmazingBankClearingID",
                  "scheme": {
                    "schema": "CODE",
                    "value": "CHID"
                  }
                }
              ]
            }
          },
          "originalVerification": {
            "identification": "e21a36adc5ab4b70a3f9952d743eaeaa",
            "party": {
              "legalName": "Joshua Paul du Plessis",
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-214620000",
                "mobileNumber": "+27-8230000000",
                "emailAddress": "josh.du.plessis@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "account": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "CODE",
                  "value": "BBAN"
                },
                "issuer": "Amazing Bank",
                "value": 60091645492
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              },
              "currency": "ZAR"
            },
            "agent": {
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "schemeVerificationData": {
              "schema": "ZA_AVS",
              "checkDebitsAllowed": "true",
              "checkCreditsAllowed": "true",
              "checkOlderThanThreeMonths": "true",
              "initials": "JP",
              "lastName": "du Plessis"
            }
          },
          "originalAssignment": {
            "creator": {
              "legalName": "Amazing Bank Inc",
              "identification": {
                "schema": "ORGANISATION",
                "identifiers": [
                  {
                    "schema": "BIC",
                    "BIC": "RY8PEG0L"
                  },
                  {
                    "schema": "OTHER",
                    "identification": "AmazingBankClearingID",
                    "scheme": {
                      "schema": "CODE",
                      "value": "CHID"
                    }
                  }
                ]
              }
            },
            "firstAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "assigner": {
              "legalName": "Amazing Bank Inc",
              "identification": {
                "schema": "ORGANISATION",
                "identifiers": [
                  {
                    "schema": "BIC",
                    "BIC": "RY8PEG0L"
                  },
                  {
                    "schema": "OTHER",
                    "identification": "AmazingBankClearingID",
                    "scheme": {
                      "schema": "CODE",
                      "value": "CHID"
                    }
                  }
                ]
              }
            },
            "assignee": {
              "legalName": "Zamazing Bank Inc",
              "identification": {
                "schema": "ORGANISATION",
                "identifiers": [
                  {
                    "schema": "BIC",
                    "BIC": "ZY8PEG0L"
                  },
                  {
                    "schema": "OTHER",
                    "identification": "ZamazingBankClearingID",
                    "scheme": {
                      "schema": "CODE",
                      "value": "CHID"
                    }
                  }
                ]
              }
            }
          },
          "status": {
            "outcome": "APPROVED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACCC"
                }
              }
            ]
          },
          "report": {
            "originalIdentification": "e21a36adc5ab4b70a3f9952d743eaeaa",
            "outcome": {
              "schema": "FAILED",
              "reasonInfo": {
                "reason": {
                  "schema": "CODE",
                  "value": "MS03"
                }
              }
            },
            "schemeVerificationReportData": {
              "schema": "ZA_AVS",
              "accountFound": "TRUE",
              "accountOpen": "TRUE",
              "accountTypeMatch": "TRUE",
              "privateIdentificationMatch": "TRUE",
              "organisationIdentificationMatch": "NOT_CHECKED",
              "trustIdentificationMatch": "NOT_CHECKED",
              "initialsMatch": "FALSE",
              "nameMatch": "FALSE",
              "debitsAllowed": "FALSE",
              "creditsAllowed": "TRUE",
              "olderThanThreeMonths": "TRUE",
              "emailMatch": "NOT_CHECKED",
              "mobileMatch": "NOT_CHECKED"
            }
          }
        }
      },
      "ReservationRequest": {
        "summary": "Example of a reservation request.",
        "value": {
          "schema": "ReservationRequest",
          "messageIdentifiers": {
            "messageIdentification": "original-msg-12345",
            "creationDateTime": "2025-01-23T06:29:01Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "e2e-12345",
            "transactionIdentification": "txn-12345",
            "uetr": "550e8400-e29b-41d4-a716-446655440000"
          },
          "accountIdentification": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 987654123
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "reference": "Reservation Ref",
          "amount": {
            "value": 65.23,
            "currency": "ZAR"
          },
          "reservationType": {
            "schema": "CODE",
            "value": "BLKD"
          },
          "initiationSource": "EPC Singles",
          "supplementaryData": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      },
      "VoidReservationRequest": {
        "summary": "Example of a void reservation request.",
        "value": {
          "schema": "VoidReservationRequest",
          "messageIdentifiers": {
            "messageIdentification": "msg-54321",
            "creationDateTime": "2025-02-01T11:00:00Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "e2e-54321",
            "transactionIdentification": "txn-54321",
            "uetr": "123e4567-e89b-12d3-a456-426614174001"
          },
          "paymentUetr": "123e4567-e89b-12d3-a456-426614174000",
          "accountIdentification": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode789"
              },
              "issuer": "Amazing Bank",
              "value": 987654123
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "amount": {
            "value": 50,
            "currency": "ZAR"
          },
          "initiationSource": "EPC Singles",
          "supplementaryData": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      },
      "PostingRequest": {
        "summary": "Example of a posting request.",
        "value": {
          "schema": "PostingRequest",
          "messageIdentifiers": {
            "messageIdentification": "msg-67890",
            "creationDateTime": "2025-02-01T10:00:00Z"
          },
          "transactionIdentifiers": {
            "endToEndIdentification": "e2e-67890",
            "transactionIdentification": "txn-67890",
            "uetr": "123e4567-e89b-12d3-a456-426614174000"
          },
          "paymentUetr": "123e4567-e89b-12d3-a456-426614174000",
          "effectiveDateTime": "2025-02-01T10:00:00Z",
          "creditor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "creditorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode456"
              },
              "issuer": "Amazing Bank",
              "value": 987654123
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "creditorAccountReference": "Creditor Ref",
          "creditorAgent": {
            "bicfi": "RY8PEGJ0",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Plettenberg Bay"
            }
          },
          "creditorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode456"
              },
              "issuer": "Amazing Bank",
              "value": 541239876
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtor": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "debtorAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 123456098
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "debtorAccountReference": "Debtor Ref",
          "debtorAgent": {
            "bicfi": "BB8PEGJ0",
            "memberId": "AmazingBankId",
            "name": "Amazing Bank Inc",
            "branch": {
              "identification": "210514",
              "name": "ABC Cape Town"
            }
          },
          "debtorAgentAccount": {
            "identification": {
              "schema": "GENERIC",
              "scheme": {
                "schema": "PROPRIETARY",
                "value": "AProprietaryCode123"
              },
              "issuer": "Amazing Bank",
              "value": 609812345
            },
            "type": {
              "schema": "CODE",
              "value": "CACC"
            }
          },
          "amount": {
            "value": 100,
            "currency": "ZAR"
          },
          "purpose": {
            "schema": "CODE",
            "value": "ACCT"
          },
          "aggregatedTransactionCount": 1,
          "initiationSource": "EPC Singles",
          "initiatingParty": {
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": "42",
              "buildingName": "Mysterious Building",
              "floor": "42",
              "postBox": "1024",
              "postCode": "4242",
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                "8001"
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA",
            "identification": {
              "schema": "PERSON",
              "identifiers": [
                {
                  "identification": "90001236549870",
                  "scheme": {
                    "schema": "CODE",
                    "value": "NIDN"
                  },
                  "issuer": "Dept of Home Affairs"
                }
              ]
            }
          },
          "paymentScheme": "ZA_EFT",
          "localInstrument": {
            "schema": "CODE",
            "value": "CTR"
          },
          "paymentMethod": "CreditTransfer",
          "direction": "OUTBOUND",
          "supplementaryData": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      },
      "FraudAssessmentRequestWithCreditTransfer": {
        "summary": "A model containing the original payment instruction message along with supplementary data required for the fraud assessment process.",
        "value": {
          "schema": "FraudAssessmentRequest",
          "transactionIdentifiers": {
            "endToEndIdentification": "uniqueEndToEndId",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "paymentMessage": {
            "schema": "CreditTransfer",
            "messageIdentifiers": {
              "creationDateTime": "2022-05-04T03:02:01Z",
              "messageIdentification": "uniqueMessageId"
            },
            "paymentScheme": {
              "schema": "ZA_RTC",
              "schemeData": {
                "userReference": "UserRef",
                "businessReference": "09Alpha2Bz"
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "creditor": {
              "legalName": "PersonLegalName",
              "knownAsName": "PersonCommonName"
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              }
            },
            "creditorAgent": {
              "memberId": "ABSAZAJ"
            },
            "debtor": {
              "legalName": "PersonLegalName",
              "knownAsName": "PersonCommonName"
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              }
            },
            "debtorAgent": {
              "memberId": "FIRNMZM"
            },
            "transactionIdentifiers": {
              "endToEndIdentification": "uniqueEndToEndId",
              "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
            },
            "instructingAgent": {
              "memberId": "IVESZAJJ"
            },
            "instructedAgent": {
              "memberId": "ABSAZAJ"
            },
            "remittanceInformation": {
              "structured": [
                {
                  "creditorReference": {
                    "type": {
                      "value": "RADM",
                      "schema": "CODE",
                      "issuer": "AnotherAmazeBank1234"
                    },
                    "reference": "Their statement reference"
                  },
                  "originatorReference": "My statement reference"
                }
              ]
            }
          },
          "supplementaryData": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      },
      "FraudAssessmentRequestWithDirectDebit": {
        "summary": "A model containing the original payment instruction message along with supplementary data required for the fraud assessment process.",
        "value": {
          "schema": "FraudAssessmentRequest",
          "transactionIdentifiers": {
            "endToEndIdentification": "6249118655591098",
            "transactionIdentification": "RRN000000001",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "paymentMessage": {
            "paymentScheme": {
              "schema": "ZA_EFT",
              "schemeData": {
                "userReference": "UserRef"
              }
            },
            "instructingAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "instructedAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "paymentTypeInformation": {
              "localInstrument": {
                "schema": "CODE",
                "value": "BTR"
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 1,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 1,
                "currency": "ZAR"
              }
            },
            "remittanceInformation": {
              "unstructured": [
                "some",
                "unstructured",
                "information"
              ],
              "structured": [
                {
                  "referredDocuments": [
                    {
                      "type": {
                        "value": "CINV",
                        "schema": "CODE",
                        "issuer": "AmazeBank123456"
                      },
                      "documentIdentifier": "A0123456789"
                    }
                  ],
                  "referredDocumentAmount": {
                    "duePayableAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    },
                    "remittedAmount": {
                      "value": 1,
                      "currency": "ZAR"
                    }
                  },
                  "creditorReference": {
                    "type": {
                      "value": "RADM",
                      "schema": "CODE",
                      "issuer": "AnotherAmazeBank1234"
                    },
                    "reference": "ABC123XYZ999"
                  },
                  "additionalRemittanceInformation": [
                    "Some",
                    "Additional",
                    "Information"
                  ]
                }
              ]
            },
            "creditor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              },
              "currency": "ZAR"
            },
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "debtor": {
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": "42",
                "buildingName": "Mysterious Building",
                "floor": "42",
                "postBox": "1024",
                "postCode": "4242",
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  "8001"
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "90001236549870",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    },
                    "issuer": "Dept of Home Affairs"
                  }
                ]
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "AProprietaryCode123"
                },
                "issuer": "Amazing Bank",
                "value": "abcdef987654"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              },
              "currency": "ZAR"
            },
            "debtorAgent": {
              "bicfi": "RY8PEG0L",
              "memberId": "AmazingBankId",
              "name": "Amazing Bank Inc",
              "branch": {
                "identification": "210514",
                "name": "ABC Plettenberg Bay",
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": "42",
                  "buildingName": "Mysterious Building",
                  "floor": "42",
                  "postBox": "1024",
                  "postCode": "4242",
                  "townName": "Mysty Town",
                  "townLocationName": "Mysty Location",
                  "districtName": "Mysty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    "8001"
                  ]
                }
              }
            },
            "intermediaryAgents": [
              {
                "bicfi": "RY8PEG0L",
                "memberId": "AmazingBankId",
                "name": "Amazing Bank Inc",
                "branch": {
                  "identification": "210514",
                  "name": "ABC Plettenberg Bay",
                  "address": {
                    "addressType": "ADDR",
                    "department": "Department of Mysteries",
                    "streetName": "Street of Mysteries",
                    "buildingNumber": "42",
                    "buildingName": "Mysterious Building",
                    "floor": "42",
                    "postBox": "1024",
                    "postCode": "4242",
                    "townName": "Mysty Town",
                    "townLocationName": "Mysty Location",
                    "districtName": "Mysty District",
                    "countrySubDivision": "Mysterious Cape",
                    "country": "ZA",
                    "addressLine": [
                      "16A",
                      "New market street",
                      "Foreshore",
                      "Cape Town",
                      "ZA",
                      "8001"
                    ]
                  }
                }
              }
            ],
            "requestedCollectionDate": "2022-05-04",
            "mandateInformation": {
              "mandateIdentification": "A mandate ID",
              "trackingDays": 4
            },
            "schema": "DirectDebit",
            "messageIdentifiers": {
              "messageIdentification": "8fd51c7124ba4819b9253e296a68e1da",
              "creationDateTime": "2022-05-04T03:02:01Z"
            },
            "transactionIdentifiers": {
              "endToEndIdentification": "6249118655591098",
              "transactionIdentification": "RRN000000001",
              "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
            }
          },
          "supplementaryData": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      },
      "SanctionsAssessmentRequestWithPacs008": {
        "summary": "A sanctions assessment request with an ISO20022 XML pacs.008.001.08 XML message encoded in base64.",
        "value": {
          "schema": "SanctionsAssessmentRequest",
          "transactionIdentifiers": {
            "endToEndIdentification": "uniqueEndToEndId",
            "uetr": "f27a34ad-c5ab-4b70-a3f9-946d743eaeaa"
          },
          "messageIdentifiers": {
            "messageIdentification": "9fd51c1234ba4819bbheyde296a68e1da",
            "creationDateTime": "2022-05-04T03:22:11Z"
          },
          "requestExpiry": "2022-05-04T03:22:11Z",
          "paymentMessage": {
            "schema": "Base64EncodedData",
            "contentType": "XML",
            "contentMessageType": "pacs.008.001.08",
            "payload": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/Pgo8RGF0YVBEVSB4bWxucz0idXJuOnN3aWZ0OnNhYTp4c2Q6c2FhLjIuMCIKICAgICAgICAgeG1sbnM6bnMyPSJ1cm46aXNvOnN0ZDppc286MjAwMjI6dGVjaDp4c2Q6aGVhZC4wMDEuMDAxLjAyIgogICAgICAgICB4bWxuczpuczM9InVybjppc286c3RkOmlzbzoyMDAyMjp0ZWNoOnhzZDpwYWNzLjAwOC4wMDEuMDgiPgogIDxSZXZpc2lvbj4yLjAuMTM8L1JldmlzaW9uPgogIDxIZWFkZXI+CiAgICA8TWVzc2FnZT4KICAgICAgPFNlbmRlclJlZmVyZW5jZT5JVkVTMjAyNjA1MTVSRUYwMDE8L1NlbmRlclJlZmVyZW5jZT4KICAgICAgPE1lc3NhZ2VJZGVudGlmaWVyPnBhY3MuMDA4LjAwMS4wODwvTWVzc2FnZUlkZW50aWZpZXI+CiAgICAgIDxGb3JtYXQ+TVg8L0Zvcm1hdD4KICAgICAgPFNlbmRlcj4KICAgICAgICA8RE4+b3U9eHh4LG89aXZlc3phamosbz1zd2lmdDwvRE4+CiAgICAgICAgPEZ1bGxOYW1lPgogICAgICAgICAgPFgxPklWRVNaQUpKWFhYPC9YMT4KICAgICAgICA8L0Z1bGxOYW1lPgogICAgICA8L1NlbmRlcj4KICAgICAgPFJlY2VpdmVyPgogICAgICAgIDxETj5vdT14eHgsbz1jaXRpdXMzMyxvPXN3aWZ0PC9ETj4KICAgICAgICA8RnVsbE5hbWU+CiAgICAgICAgICA8WDE+Q0lUSVVTMzNYWFg8L1gxPgogICAgICAgIDwvRnVsbE5hbWU+CiAgICAgIDwvUmVjZWl2ZXI+CiAgICAgIDxJbnRlcmZhY2VJbmZvPgogICAgICAgIDxVc2VyUmVmZXJlbmNlPlVTRVItUkVGLTIwMjYtMDUtMTUtWDk5PC9Vc2VyUmVmZXJlbmNlPgogICAgICA8L0ludGVyZmFjZUluZm8+CiAgICAgIDxOZXR3b3JrSW5mbz4KICAgICAgICA8U2VydmljZT5zd2lmdC5maW5wbHVzPC9TZXJ2aWNlPgogICAgICAgIDxTV0lGVE5ldE5ldHdvcmtJbmZvPgogICAgICAgICAgPFJlcXVlc3RUeXBlPnBhY3MuMDA4LjAwMS4wODwvUmVxdWVzdFR5cGU+CiAgICAgICAgICA8UmVxdWVzdFN1YnR5cGU+c3dpZnQuY2JwcnBsdXMuMDI8L1JlcXVlc3RTdWJ0eXBlPgogICAgICAgIDwvU1dJRlROZXROZXR3b3JrSW5mbz4KICAgICAgPC9OZXR3b3JrSW5mbz4KICAgIDwvTWVzc2FnZT4KICA8L0hlYWRlcj4KICA8Qm9keT4KICAgIDxuczI6QXBwSGRyPgogICAgICA8bnMyOkZyPgogICAgICAgIDxuczI6RklJZD4KICAgICAgICAgIDxuczI6RmluSW5zdG5JZD4KICAgICAgICAgICAgPG5zMjpCSUNGST5JVkVTWkFKSlhYWDwvbnMyOkJJQ0ZJPgogICAgICAgICAgPC9uczI6RmluSW5zdG5JZD4KICAgICAgICA8L25zMjpGSUlkPgogICAgICA8L25zMjpGcj4KICAgICAgPG5zMjpUbz4KICAgICAgICA8bnMyOkZJSWQ+CiAgICAgICAgICA8bnMyOkZpbkluc3RuSWQ+CiAgICAgICAgICAgIDxuczI6QklDRkk+Q0lUSVVTMzNYWFg8L25zMjpCSUNGST4KICAgICAgICAgIDwvbnMyOkZpbkluc3RuSWQ+CiAgICAgICAgPC9uczI6RklJZD4KICAgICAgPC9uczI6VG8+CiAgICAgIDxuczI6Qml6TXNnSWRyPkIyMDI2MDUxNUlWRVMwMDAwMTIzPC9uczI6Qml6TXNnSWRyPgogICAgICA8bnMyOk1zZ0RlZklkcj5wYWNzLjAwOC4wMDEuMDg8L25zMjpNc2dEZWZJZHI+CiAgICAgIDxuczI6Qml6U3ZjPnN3aWZ0LmNicHJwbHVzLjAyPC9uczI6Qml6U3ZjPgogICAgICA8bnMyOkNyZUR0PjIwMjYtMDUtMTVUMDk6MTc6MzkrMDI6MDA8L25zMjpDcmVEdD4KICAgIDwvbnMyOkFwcEhkcj4KICAgIDxuczM6RG9jdW1lbnQ+CiAgICAgIDxuczM6RklUb0ZJQ3N0bXJDZHRUcmY+CiAgICAgICAgPG5zMzpHcnBIZHI+CiAgICAgICAgICA8bnMzOk1zZ0lkPkIyMDI2MDUxNUlWRVMwMDAwMTIzPC9uczM6TXNnSWQ+CiAgICAgICAgICA8bnMzOkNyZUR0VG0+MjAyNi0wNS0xNVQwOToxNzozOSswMjowMDwvbnMzOkNyZUR0VG0+CiAgICAgICAgICA8bnMzOk5iT2ZUeHM+MTwvbnMzOk5iT2ZUeHM+CiAgICAgICAgICA8bnMzOlN0dGxtSW5mPgogICAgICAgICAgICA8bnMzOlN0dGxtTXRkPkNMUkc8L25zMzpTdHRsbU10ZD4KICAgICAgICAgIDwvbnMzOlN0dGxtSW5mPgogICAgICAgIDwvbnMzOkdycEhkcj4KICAgICAgICA8bnMzOkNkdFRyZlR4SW5mPgogICAgICAgICAgPG5zMzpQbXRJZD4KICAgICAgICAgICAgPG5zMzpJbnN0cklkPklOU1RSLTk5ODg3NzY2NTU0NDwvbnMzOkluc3RySWQ+CiAgICAgICAgICAgIDxuczM6RW5kVG9FbmRJZD5DVVNULVJFRi1QQVktMDA5OTE8L25zMzpFbmRUb0VuZElkPgogICAgICAgICAgICA8bnMzOlVFVFI+ZWIzNGYxOWItNzM0Zi00NjBkLTgzNWMtODkwODg2NTY2MjcwPC9uczM6VUVUUj4KICAgICAgICAgIDwvbnMzOlBtdElkPgogICAgICAgICAgPG5zMzpQbXRUcEluZj4KICAgICAgICAgICAgPG5zMzpTdmNMdmw+CiAgICAgICAgICAgICAgPG5zMzpDZD5HMDAxPC9uczM6Q2Q+CiAgICAgICAgICAgIDwvbnMzOlN2Y0x2bD4KICAgICAgICAgIDwvbnMzOlBtdFRwSW5mPgogICAgICAgICAgPG5zMzpJbnRyQmtTdHRsbUFtdCBDY3k9IlVTRCI+Mjc0NDIuNjg8L25zMzpJbnRyQmtTdHRsbUFtdD4KICAgICAgICAgIDxuczM6SW50ckJrU3R0bG1EdD4yMDI2LTA1LTE1PC9uczM6SW50ckJrU3R0bG1EdD4KICAgICAgICAgIDxuczM6SW5zdGRBbXQgQ2N5PSJVU0QiPjI3NDQyLjY4PC9uczM6SW5zdGRBbXQ+CiAgICAgICAgICA8bnMzOlhjaGdSYXRlPjE4LjUwPC9uczM6WGNoZ1JhdGU+CiAgICAgICAgICA8bnMzOkNocmdCcj5DUkVEPC9uczM6Q2hyZ0JyPgogICAgICAgICAgPG5zMzpDaHJnc0luZj4KICAgICAgICAgICAgPG5zMzpBbXQgQ2N5PSJVU0QiPjAuMDA8L25zMzpBbXQ+CiAgICAgICAgICAgIDxuczM6QWd0PgogICAgICAgICAgICAgIDxuczM6RmluSW5zdG5JZD4KICAgICAgICAgICAgICAgIDxuczM6QklDRkk+SVZFU1pBSkpYWFg8L25zMzpCSUNGST4KICAgICAgICAgICAgICA8L25zMzpGaW5JbnN0bklkPgogICAgICAgICAgICA8L25zMzpBZ3Q+CiAgICAgICAgICA8L25zMzpDaHJnc0luZj4KICAgICAgICAgIDxuczM6SW5zdGdBZ3Q+CiAgICAgICAgICAgIDxuczM6RmluSW5zdG5JZD4KICAgICAgICAgICAgICA8bnMzOkJJQ0ZJPklWRVNaQUpKWFhYPC9uczM6QklDRkk+CiAgICAgICAgICAgIDwvbnMzOkZpbkluc3RuSWQ+CiAgICAgICAgICA8L25zMzpJbnN0Z0FndD4KICAgICAgICAgIDxuczM6SW5zdGRBZ3Q+CiAgICAgICAgICAgIDxuczM6RmluSW5zdG5JZD4KICAgICAgICAgICAgICA8bnMzOkJJQ0ZJPkNJVElVUzMzWFhYPC9uczM6QklDRkk+CiAgICAgICAgICAgIDwvbnMzOkZpbkluc3RuSWQ+CiAgICAgICAgICA8L25zMzpJbnN0ZEFndD4KICAgICAgICAgIDxuczM6RGJ0cj4KICAgICAgICAgICAgPG5zMzpObT5BY21lIEdsb2JhbCBUcmFkaW5nPC9uczM6Tm0+CiAgICAgICAgICAgIDxuczM6UHN0bEFkcj4KICAgICAgICAgICAgICA8bnMzOkFkckxpbmU+MTIzIEluZHVzdHJpYWwgV2F5PC9uczM6QWRyTGluZT4KICAgICAgICAgICAgICA8bnMzOkFkckxpbmU+U2FuZHRvbiwgSm9oYW5uZXNidXJnPC9uczM6QWRyTGluZT4KICAgICAgICAgICAgPC9uczM6UHN0bEFkcj4KICAgICAgICAgICAgPG5zMzpDdGN0RHRscz4KICAgICAgICAgICAgICA8bnMzOk1vYk5iPisyNy03MjEyMzQ1Njc8L25zMzpNb2JOYj4KICAgICAgICAgICAgPC9uczM6Q3RjdER0bHM+CiAgICAgICAgICA8L25zMzpEYnRyPgogICAgICAgICAgPG5zMzpEYnRyQWNjdD4KICAgICAgICAgICAgPG5zMzpJZD4KICAgICAgICAgICAgICA8bnMzOk90aHI+CiAgICAgICAgICAgICAgICA8bnMzOklkPjEyMzQ1Njc4OTEwPC9uczM6SWQ+CiAgICAgICAgICAgICAgICA8bnMzOlNjaG1lTm0+PG5zMzpDZD5CQkFOPC9uczM6Q2Q+PC9uczM6U2NobWVObT4KICAgICAgICAgICAgICA8L25zMzpPdGhyPgogICAgICAgICAgICA8L25zMzpJZD4KICAgICAgICAgICAgPG5zMzpObT5BY21lIE9wZXJhdGluZyBBY2NvdW50PC9uczM6Tm0+CiAgICAgICAgICA8L25zMzpEYnRyQWNjdD4KICAgICAgICAgIDxuczM6RGJ0ckFndD4KICAgICAgICAgICAgPG5zMzpGaW5JbnN0bklkPgogICAgICAgICAgICAgIDxuczM6QklDRkk+SVZFU1pBSkpYWFg8L25zMzpCSUNGST4KICAgICAgICAgICAgICA8bnMzOlBzdGxBZHI+CiAgICAgICAgICAgICAgICA8bnMzOkN0cnk+WkE8L25zMzpDdHJ5PgogICAgICAgICAgICAgIDwvbnMzOlBzdGxBZHI+CiAgICAgICAgICAgIDwvbnMzOkZpbkluc3RuSWQ+CiAgICAgICAgICA8L25zMzpEYnRyQWd0PgogICAgICAgICAgPG5zMzpDZHRyQWd0PgogICAgICAgICAgICA8bnMzOkZpbkluc3RuSWQ+CiAgICAgICAgICAgICAgPG5zMzpCSUNGST5OV0JLR0IyTFhYWDwvbnMzOkJJQ0ZJPgogICAgICAgICAgICA8L25zMzpGaW5JbnN0bklkPgogICAgICAgICAgICA8bnMzOkJybmNoSWQ+CiAgICAgICAgICAgICAgPG5zMzpQc3RsQWRyPgogICAgICAgICAgICAgICAgPG5zMzpDdHJ5PkdCPC9uczM6Q3RyeT4KICAgICAgICAgICAgICA8L25zMzpQc3RsQWRyPgogICAgICAgICAgICA8L25zMzpCcm5jaElkPgogICAgICAgICAgPC9uczM6Q2R0ckFndD4KICAgICAgICAgIDxuczM6Q2R0cj4KICAgICAgICAgICAgPG5zMzpObT5HbG9iYWwgTG9naXN0aWNzIEx0ZDwvbnMzOk5tPgogICAgICAgICAgICA8bnMzOlBzdGxBZHI+CiAgICAgICAgICAgICAgPG5zMzpBZHJMaW5lPjQ1IE1hcml0aW1lIFBsYXphPC9uczM6QWRyTGluZT4KICAgICAgICAgICAgICA8bnMzOkFkckxpbmU+TG9uZG9uLCBVSzwvbnMzOkFkckxpbmU+CiAgICAgICAgICAgIDwvbnMzOlBzdGxBZHI+CiAgICAgICAgICAgIDxuczM6Q3RjdER0bHM+CiAgICAgICAgICAgICAgPG5zMzpNb2JOYj4rNDQtMjA3MTIzNDU2NzwvbnMzOk1vYk5iPgogICAgICAgICAgICA8L25zMzpDdGN0RHRscz4KICAgICAgICAgIDwvbnMzOkNkdHI+CiAgICAgICAgICA8bnMzOkNkdHJBY2N0PgogICAgICAgICAgICA8bnMzOklkPgogICAgICAgICAgICAgIDxuczM6T3Rocj4KICAgICAgICAgICAgICAgIDxuczM6SWQ+MTQwMDc5MTUzMDM1MTwvbnMzOklkPgogICAgICAgICAgICAgICAgPG5zMzpTY2htZU5tPjxuczM6UHJ0cnk+QUhISDwvbnMzOlBydHJ5PjwvbnMzOlNjaG1lTm0+CiAgICAgICAgICAgICAgPC9uczM6T3Rocj4KICAgICAgICAgICAgPC9uczM6SWQ+CiAgICAgICAgICAgIDxuczM6Tm0+TWFpbiBDb2xsZWN0aW9uIEFjY291bnQ8L25zMzpObT4KICAgICAgICAgIDwvbnMzOkNkdHJBY2N0PgogICAgICAgICAgPG5zMzpSbXRJbmY+CiAgICAgICAgICAgIDxuczM6VXN0cmQ+SU5WT0lDRSBOTyBTSU4wMDAzMDQwMjU8L25zMzpVc3RyZD4KICAgICAgICAgIDwvbnMzOlJtdEluZj4KICAgICAgICA8L25zMzpDZHRUcmZUeEluZj4KICAgICAgPC9uczM6RklUb0ZJQ3N0bXJDZHRUcmY+CiAgICA8L25zMzpEb2N1bWVudD4KICA8L0JvZHk+CjwvRGF0YVBEVT4=="
          },
          "supplementaryData": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      },
      "FiToFiPaymentCancellationRequest": {
        "summary": "Cancel a prior payment instruction",
        "value": {
          "schema": "FiToFiPaymentCancellationRequest",
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "cancellationType": "RECALL"
            }
          },
          "messageIdentifiers": {
            "messageIdentification": "MSG20251206195003001",
            "creationDateTime": "2025-12-06T17:50:03.639Z"
          },
          "originalTransactionIdentifiers": {
            "endToEndIdentification": "413aa14ac36d40ba803475da3355e2ef",
            "transactionIdentification": "413aa14ac36d40ba803475da3355e2ef",
            "uetr": "413aa14a-c36d-40ba-8034-75da3355e2ef"
          },
          "assignment": {
            "creationDateTime": "2025-12-06T17:50:03.639Z",
            "identification": "021/CLOUT/999001/20240115/000001",
            "assigner": {
              "schema": "PARTY",
              "party": {
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Misty Town",
                  "townLocationName": "Misty Location",
                  "districtName": "Misty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                },
                "contactDetails": {
                  "phoneNumber": "+27-0214620000",
                  "mobileNumber": "+27-08230000000",
                  "emailAddress": "bob@grey.com"
                },
                "countryOfResidence": "ZA",
                "identification": {
                  "schema": "PERSON",
                  "identifiers": [
                    {
                      "identification": 90001236549870,
                      "issuer": "Dept of Home Affairs",
                      "scheme": {
                        "schema": "CODE",
                        "value": "NIDN"
                      }
                    }
                  ]
                }
              }
            },
            "assignee": {
              "schema": "INSTITUTION",
              "institution": {
                "bicfi": "RY8PEG50",
                "name": "Electrum Bank Inc",
                "clearingSystemMemberId": {
                  "clearingSystem": {
                    "schema": "CODE",
                    "value": "ZANCC"
                  },
                  "memberId": "999037"
                }
              }
            }
          },
          "case": {
            "identification": "string-identification",
            "creator": {
              "schema": "INSTITUTION",
              "institution": {
                "bicfi": "RY8PEG0L",
                "name": "Electrum Bank Inc",
                "clearingSystemMemberId": {
                  "clearingSystem": {
                    "schema": "CODE",
                    "value": "ZANCC"
                  },
                  "memberId": "999000"
                }
              }
            },
            "reopenCaseIndication": true
          },
          "underlyingTransaction": {
            "cancellationId": "CANCELLATION",
            "cancellationReasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "AC02"
                },
                "additionalInformation": [
                  "Invalid debtor account debited"
                ]
              }
            ],
            "creditorAgent": {
              "bicfi": "RY8PEG0L",
              "name": "Amazing Bank Inc",
              "clearingSystemMemberId": {
                "clearingSystem": {
                  "schema": "CODE",
                  "value": "ZANCC"
                },
                "memberId": "999000"
              }
            },
            "amounts": {
              "bankSettlementAmount": {
                "value": 100,
                "currency": "ZAR"
              },
              "instructedAmount": {
                "value": 100,
                "currency": "ZAR"
              }
            },
            "debtorAgent": {
              "bicfi": "RY8PEG50",
              "name": "Electrum Bank Inc",
              "clearingSystemMemberId": {
                "clearingSystem": {
                  "schema": "CODE",
                  "value": "ZANCC"
                },
                "memberId": "999037"
              }
            },
            "settlementDate": "2025-11-28",
            "mandateInformation": {
              "mandateIdentification": "42ovy14ac36d3lba80344jfa3355e2ef"
            }
          }
        }
      },
      "ResolutionOfInvestigation_PaymentCancellation": {
        "summary": "A ResolutionOfInvestigation message that informs a case creator or case assigner about the resolution of a prior \nrequest to cancel a payment\n",
        "value": {
          "schema": "ResolutionOfInvestigation",
          "paymentScheme": {
            "schema": "ZA_AC"
          },
          "messageIdentifiers": {
            "messageIdentification": "MSG20251206195003001",
            "creationDateTime": "2025-12-06T17:50:03.639Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "MSG20251206120000001",
            "creationDateTime": "2025-12-06T10:00:00.000Z"
          },
          "assignment": {
            "creationDateTime": "2025-12-06T17:50:03.639Z",
            "identification": "021/CLOUT/999001/20240115/000001",
            "assigner": {
              "schema": "PARTY",
              "party": {
                "address": {
                  "addressType": "ADDR",
                  "department": "Department of Mysteries",
                  "streetName": "Street of Mysteries",
                  "buildingNumber": 42,
                  "buildingName": "Mysterious Building",
                  "floor": 42,
                  "postBox": 1024,
                  "postCode": 4242,
                  "townName": "Misty Town",
                  "townLocationName": "Misty Location",
                  "districtName": "Misty District",
                  "countrySubDivision": "Mysterious Cape",
                  "country": "ZA",
                  "addressLine": [
                    "16A",
                    "New market street",
                    "Foreshore",
                    "Cape Town",
                    "ZA",
                    8001
                  ]
                },
                "contactDetails": {
                  "phoneNumber": "+27-0214620000",
                  "mobileNumber": "+27-08230000000",
                  "emailAddress": "bob@grey.com"
                },
                "countryOfResidence": "ZA",
                "identification": {
                  "schema": "PERSON",
                  "identifiers": [
                    {
                      "identification": 90001236549870,
                      "issuer": "Dept of Home Affairs",
                      "scheme": {
                        "schema": "CODE",
                        "value": "NIDN"
                      }
                    }
                  ]
                }
              }
            },
            "assignee": {
              "schema": "INSTITUTION",
              "institution": {
                "bicfi": "RY8PEG50",
                "name": "Electrum Bank Inc",
                "clearingSystemMemberId": {
                  "clearingSystem": {
                    "schema": "CODE",
                    "value": "ZANCC"
                  },
                  "memberId": "999037"
                }
              }
            }
          },
          "resolvedCase": {
            "identification": "CASE001",
            "creator": {
              "schema": "INSTITUTION",
              "institution": {
                "bicfi": "RY8PEG50",
                "name": "Electrum Bank Inc",
                "clearingSystemMemberId": {
                  "clearingSystem": {
                    "schema": "CODE",
                    "value": "ZANCC"
                  },
                  "memberId": "999037"
                }
              }
            },
            "reopenCaseIndication": false
          },
          "status": {
            "statusType": "CONFIRMATION",
            "confirmationCode": "RJCR"
          },
          "cancellationDetails": {
            "originalTransactionIdentifiers": {
              "endToEndIdentification": "E2E20251206001",
              "uetr": "97ed4827-7b6f-4491-a06f-b548d5a7512d",
              "transactionIdentification": "TXN001"
            },
            "transactionCancellationStatus": "RJCR",
            "cancellationStatusReasonInfo": {
              "reason": {
                "schema": "CODE",
                "value": "AACR"
              }
            },
            "originalTransaction": {
              "creditorAgent": {
                "bicfi": "RY8PEG0L",
                "name": "Amazing Bank Inc",
                "clearingSystemMemberId": {
                  "clearingSystem": {
                    "schema": "CODE",
                    "value": "ZANCC"
                  },
                  "memberId": "999000"
                }
              },
              "amounts": {
                "bankSettlementAmount": {
                  "value": 100,
                  "currency": "ZAR"
                },
                "instructedAmount": {
                  "value": 100,
                  "currency": "ZAR"
                }
              },
              "debtorAgent": {
                "bicfi": "RY8PEG50",
                "name": "Electrum Bank Inc",
                "clearingSystemMemberId": {
                  "clearingSystem": {
                    "schema": "CODE",
                    "value": "ZANCC"
                  },
                  "memberId": "999037"
                }
              },
              "settlementDate": "2025-11-28",
              "mandateInformation": {
                "mandateIdentification": "42ovy14ac36d3lba80344jfa3355e2ef"
              }
            }
          }
        }
      },
      "AccountPaymentEligibilityValidationResponse": {
        "summary": "Example of an AccountPaymentEligibilityValidationResponse object",
        "value": {
          "validationOutcome": {
            "schema": "FAILED",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "AC04"
                },
                "additionalInformation": "Account number specified has been closed on the bank of account's books."
              }
            ]
          },
          "supplementaryData": {
            "customData1": "My custom data 1",
            "customData2": "My custom data 2"
          }
        }
      },
      "MandateInitiationRequest": {
        "summary": "Example of an inbound MandateInitiationRequest",
        "value": {
          "schema": "MandateInitiationRequest",
          "messageIdentifiers": {
            "messageIdentification": "100/MANOT/00210007/20190305/000511",
            "creationDateTime": "2019-03-05T10:04:44Z"
          },
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "mandateRequestTransactionIdentifier": "00072019-03-05000000086",
              "authenticationType": "REAL_TIME",
              "requestTransmissionNumber": 1,
              "collectionDay": 29,
              "debitValueType": "VARIABLE"
            }
          },
          "initiatingParty": {
            "legalName": "EXAMPLE LOANS"
          },
          "mandate": {
            "mandateIdentification": "2710317",
            "mandateRequestIdentification": "2710317004",
            "trackingIndicator": true,
            "type": {
              "localInstrument": {
                "schema": "PROPRIETARY",
                "value": "0227"
              }
            },
            "occurrences": {
              "sequenceType": "RCUR",
              "frequency": {
                "schema": "MonthlyFrequency",
                "dayOfMonth": 15
              },
              "validFrom": "2019-03-05",
              "firstCollectionDate": "2019-03-29"
            },
            "collectionAmount": {
              "value": 3443.83,
              "currency": "ZAR"
            },
            "maximumAmount": {
              "value": 5165.75,
              "currency": "ZAR"
            },
            "creditor": {
              "legalName": "Creditor Name",
              "identification": {
                "schema": "ORGANISATION",
                "identifiers": [
                  {
                    "schema": "BIC",
                    "BIC": "RY8PEG0L"
                  }
                ]
              }
            },
            "creditorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "ACCOUNT_NUMBER"
                },
                "value": "10173412345"
              },
              "type": {
                "schema": "CODE",
                "value": "CACC"
              }
            },
            "creditorAgent": {
              "clearingSystemMemberId": {
                "memberId": "430000"
              }
            },
            "ultimateCreditor": {
              "legalName": "Ultimate Creditor"
            },
            "debtor": {
              "legalName": "Debtor Name",
              "identification": {
                "schema": "PERSON",
                "identifiers": [
                  {
                    "identification": "I/9905140859123",
                    "scheme": {
                      "schema": "CODE",
                      "value": "NIDN"
                    }
                  }
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-112569000",
                "emailAddress": "support@debtor.com"
              }
            },
            "debtorAccount": {
              "identification": {
                "schema": "GENERIC",
                "scheme": {
                  "schema": "PROPRIETARY",
                  "value": "ACCOUNT_NUMBER"
                },
                "value": "10173412345"
              },
              "type": {
                "schema": "CODE",
                "value": "SVGS"
              }
            },
            "debtorAgent": {
              "clearingSystemMemberId": {
                "memberId": "470010"
              }
            },
            "ultimateDebtor": {
              "legalName": "Ultimate Debtor"
            }
          }
        }
      },
      "MandateAmendmentRequest": {
        "summary": "Example of an inbound MandateAmendmentRequest",
        "value": {
          "schema": "MandateAmendmentRequest",
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "mandateRequestTransactionIdentifier": "00072019-03-05000000086",
              "authenticationType": "REAL_TIME",
              "requestTransmissionNumber": 1,
              "collectionDay": 99,
              "debitValueType": "USAGE_BASED",
              "debtorBankMandateReference": "0003202501015177310122"
            }
          },
          "messageIdentifiers": {
            "messageIdentification": "100/MANOM/00210007/20190502/000040",
            "creationDateTime": "2019-05-02T15:43:47Z"
          },
          "initiatingParty": {
            "legalName": "EXAMPLE LOANS"
          },
          "underlyingAmendmentDetails": {
            "amendmentReason": {
              "reason": {
                "schema": "PROPRIETARY",
                "value": "MD16"
              },
              "additionalInformation": [
                "Mandate amendment requested by creditor due to contract changes"
              ]
            },
            "amendedMandate": {
              "mandateIdentification": "6858841",
              "mandateRequestIdentification": "6858841001",
              "trackingIndicator": true,
              "type": {
                "localInstrument": {
                  "schema": "PROPRIETARY",
                  "value": "0227"
                }
              },
              "occurrences": {
                "sequenceType": "RCUR",
                "frequency": {
                  "schema": "MonthlyFrequency",
                  "dayOfMonth": 15
                },
                "validFrom": "2019-04-26",
                "firstCollectionDate": "2019-04-30"
              },
              "collectionAmount": {
                "value": 3800,
                "currency": "ZAR"
              },
              "maximumAmount": {
                "value": 5500,
                "currency": "ZAR"
              },
              "creditor": {
                "legalName": "Creditor Name",
                "identification": {
                  "schema": "ORGANISATION",
                  "identifiers": [
                    {
                      "schema": "BIC",
                      "BIC": "RY8PEG0L"
                    }
                  ]
                }
              },
              "creditorAccount": {
                "identification": {
                  "schema": "GENERIC",
                  "scheme": {
                    "schema": "PROPRIETARY",
                    "value": "ACCOUNT_NUMBER"
                  },
                  "value": "10173412345"
                },
                "type": {
                  "schema": "CODE",
                  "value": "CACC"
                }
              },
              "creditorAgent": {
                "clearingSystemMemberId": {
                  "memberId": "430000"
                }
              },
              "debtor": {
                "legalName": "Debtor Name",
                "identification": {
                  "schema": "PERSON",
                  "identifiers": [
                    {
                      "identification": "I/5906140859123",
                      "scheme": {
                        "schema": "CODE",
                        "value": "NIDN"
                      }
                    }
                  ]
                }
              },
              "debtorAccount": {
                "identification": {
                  "schema": "GENERIC",
                  "scheme": {
                    "schema": "PROPRIETARY",
                    "value": "ACCOUNT_NUMBER"
                  },
                  "value": "10173412345"
                },
                "type": {
                  "schema": "CODE",
                  "value": "SVGS"
                }
              },
              "debtorAgent": {
                "clearingSystemMemberId": {
                  "memberId": "990010"
                }
              },
              "ultimateDebtor": {
                "legalName": "Ultimate Debtor"
              }
            },
            "originalMandate": {
              "originalMandate": {
                "mandateIdentification": "2710317",
                "mandateRequestIdentification": "2710317004",
                "trackingIndicator": true,
                "creditor": {
                  "legalName": "Creditor Name",
                  "identification": {
                    "schema": "ORGANISATION",
                    "identifiers": [
                      {
                        "schema": "BIC",
                        "BIC": "RY8PEG0L"
                      }
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-112569000",
                    "emailAddress": "support@creditor.com"
                  }
                },
                "debtor": {
                  "legalName": "Debtor Name",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "I/9905140859123",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        }
                      }
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-112569000",
                    "emailAddress": "support@debtor.com"
                  }
                },
                "debtorAgent": {
                  "clearingSystemMemberId": {
                    "memberId": "470010"
                  }
                }
              }
            }
          }
        }
      },
      "MandateCancellationRequest": {
        "summary": "Example of an inbound MandateCancellationRequest",
        "value": {
          "schema": "MandateCancellationRequest",
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "mandateRequestTransactionIdentifier": "00072019-03-05000000086",
              "authenticationType": "REAL_TIME",
              "requestTransmissionNumber": 1,
              "collectionDay": 99,
              "debitValueType": "USAGE_BASED"
            }
          },
          "messageIdentifiers": {
            "messageIdentification": "100/MANCO/00999003/20240305/000001",
            "creationDateTime": "2024-03-05T10:08:01Z"
          },
          "initiatingParty": {
            "legalName": "EXAMPLE LOANS"
          },
          "instructingAgent": {
            "clearingSystemMemberId": {
              "memberId": "999003"
            }
          },
          "instructedAgent": {
            "clearingSystemMemberId": {
              "memberId": "999002"
            }
          },
          "underlyingCancellationDetails": {
            "originalMessageInformation": {
              "messageIdentification": "100/MANAM/00210007/20190305/000511",
              "creationDateTime": "2019-03-05T10:04:44Z",
              "messageNameIdentification": "MandateAmendmentRequest"
            },
            "cancellationReason": {
              "reason": {
                "schema": "PROPRIETARY",
                "value": "MICN"
              },
              "additionalInformation": [
                "Mandate cancellation requested by creditor"
              ]
            },
            "originalMandate": {
              "originalMandate": {
                "mandateIdentification": "33005",
                "mandateRequestIdentification": "CR000000029853",
                "trackingIndicator": true,
                "type": {
                  "localInstrument": {
                    "schema": "PROPRIETARY",
                    "value": "0227"
                  }
                },
                "occurrences": {
                  "sequenceType": "RCUR",
                  "frequency": {
                    "schema": "MonthlyFrequency",
                    "dayOfMonth": 15
                  },
                  "validFrom": "2019-04-26",
                  "firstCollectionDate": "2019-04-30"
                },
                "creditor": {
                  "legalName": "Creditor Name",
                  "identification": {
                    "schema": "ORGANISATION",
                    "identifiers": [
                      {
                        "schema": "BIC",
                        "BIC": "RY8PEG0L"
                      }
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-86-0001234",
                    "emailAddress": "collections@exampleloans.example.co.za"
                  }
                },
                "creditorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "ACCOUNT_NUMBER"
                    },
                    "value": "10173412345"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "CACC"
                  }
                },
                "creditorAgent": {
                  "clearingSystemMemberId": {
                    "memberId": "888004"
                  }
                },
                "ultimateCreditor": {
                  "legalName": "Ultimate Creditor Name",
                  "identification": {
                    "schema": "ORGANISATION",
                    "identifiers": [
                      {
                        "schema": "BIC",
                        "BIC": "RY8PEG0L"
                      }
                    ]
                  },
                  "contactDetails": {
                    "phoneNumber": "+27-86-0001234",
                    "emailAddress": "collections@exampleloans.example.co.za"
                  }
                },
                "debtor": {
                  "legalName": "MR JOHN EXAMPLE"
                },
                "debtorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "ACCOUNT_NUMBER"
                    },
                    "value": "10173412345"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "SVGS"
                  }
                },
                "debtorAgent": {
                  "clearingSystemMemberId": {
                    "memberId": "888002"
                  }
                }
              }
            }
          }
        }
      },
      "MandateSuspensionRequest": {
        "summary": "Example of an inbound MandateSuspensionRequest",
        "value": {
          "schema": "MandateSuspensionRequest",
          "messageIdentifiers": {
            "messageIdentification": "100/SPOUT/00222290/20260319/000001",
            "creationDateTime": "2026-01-26T07:58:30Z"
          },
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "authenticationType": "NOT_APPLICABLE",
              "requestTransmissionNumber": 1,
              "debtorBankMandateReference": "001020180314DC5860BD19"
            }
          },
          "initiatingParty": {
            "legalName": "EXAMPLE LOANS"
          },
          "underlyingSuspensionDetails": {
            "suspensionReason": {
              "reason": {
                "schema": "PROPRIETARY",
                "value": "MCOC"
              },
              "additionalInformation": [
                "Mandate Suspended - Once off Collection"
              ]
            },
            "originalMandate": {
              "originalMandate": {
                "mandateIdentification": "REGRCAP2019042615",
                "mandateRequestIdentification": "REG201926123",
                "trackingIndicator": true,
                "type": {
                  "localInstrument": {
                    "schema": "PROPRIETARY",
                    "value": "0228"
                  }
                },
                "occurrences": {
                  "sequenceType": "RCUR",
                  "frequency": {
                    "schema": "MonthlyFrequency",
                    "dayOfMonth": 15
                  },
                  "validFrom": "2019-04-26",
                  "firstCollectionDate": "2019-04-30"
                },
                "collectionAmount": {
                  "value": 100,
                  "currency": "ZAR"
                },
                "maximumAmount": {
                  "value": 120,
                  "currency": "ZAR"
                },
                "creditor": {
                  "legalName": "Creditor Name",
                  "identification": {
                    "schema": "ORGANISATION",
                    "identifiers": [
                      {
                        "schema": "BIC",
                        "BIC": "RY8PEG0L"
                      }
                    ]
                  }
                },
                "debtor": {
                  "legalName": "Debtor Name",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "I/9905140859123",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        }
                      }
                    ]
                  }
                },
                "debtorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "ACCOUNT_NUMBER"
                    },
                    "value": "10173412345"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "SVGS"
                  }
                },
                "debtorAgent": {
                  "clearingSystemMemberId": {
                    "memberId": "470010"
                  }
                }
              }
            }
          }
        }
      },
      "MandateInformationRequest": {
        "summary": "Example of an outbound MandateInformationRequest",
        "value": {
          "schema": "MandateInformationRequest",
          "messageIdentifiers": {
            "messageIdentification": "3c004e038bd3469d99d112681ca1166f",
            "creationDateTime": "2026-01-26T07:58:00Z"
          },
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "authenticationType": "NOT_APPLICABLE",
              "requestTransmissionNumber": 1
            }
          },
          "initiatingParty": {
            "legalName": "EXAMPLE LOANS"
          },
          "underlyingCopyDetails": {
            "originalMandate": {
              "originalMandateIdentification": "RGCAP1900000000000A1"
            }
          }
        }
      },
      "CustomerPaymentStatusReportPending": {
        "summary": "Example of a CustomerPaymentStatusReport with PENDING outcome",
        "value": {
          "schema": "CustomerPaymentStatusReport",
          "messageIdentifiers": {
            "messageIdentification": "100/MANSR/00210010/20190513/000001",
            "creationDateTime": "2019-05-13T15:16:00Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "100/MANIN/00210007/20190305/000511",
            "creationDateTime": "2019-03-05T10:04:44Z"
          },
          "originalMessageNameIdentification": "MandateInitiationRequest",
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "mandateRequestTransactionIdentifier": "00072019-03-05000000086",
              "requestTransmissionNumber": 1
            }
          },
          "status": {
            "outcome": "PENDING",
            "reasonInfo": [
              {
                "reason": {
                  "schema": "CODE",
                  "value": "ACTC"
                },
                "additionalInformation": "Mandate initiation request validated. Awaiting debtor authentication."
              }
            ]
          },
          "mandateInformation": {
            "mandateIdentification": "REGRCAP2019042615"
          }
        }
      },
      "MandateAcceptanceReport": {
        "summary": "Example of an outbound MandateAcceptanceReport",
        "value": {
          "schema": "MandateAcceptanceReport",
          "messageIdentifiers": {
            "messageIdentification": "3c004e038bd3469d99d112681ca1166f",
            "creationDateTime": "2019-05-13T15:15:43Z"
          },
          "originalMessageIdentifiers": {
            "messageIdentification": "100/MANIN/00210007/20190305/000511",
            "creationDateTime": "2019-03-05T10:04:44Z"
          },
          "paymentScheme": {
            "schema": "ZA_AC",
            "schemeData": {
              "mandateRequestTransactionIdentifier": "00072018-03-19000000098",
              "debtorBankMandateReference": "0003202501015177310122",
              "authenticationType": "REAL_TIME",
              "requestTransmissionNumber": 1,
              "collectionDay": 30,
              "debitValueType": "FIXED"
            }
          },
          "initiatingParty": {
            "legalName": "EXAMPLE LOANS"
          },
          "underlyingAcceptanceDetails": {
            "acceptanceResult": {
              "accepted": false,
              "rejectionReason": {
                "schema": "PROPRIETARY",
                "value": "NRSP"
              },
              "additionalRejectionInformation": [
                "Mandate initiation timed out waiting for debtor authorisation"
              ]
            },
            "originalMandate": {
              "originalMandate": {
                "mandateIdentification": "REGRCAP2019042615",
                "mandateRequestIdentification": "REG201926123",
                "trackingIndicator": true,
                "type": {
                  "localInstrument": {
                    "schema": "PROPRIETARY",
                    "value": "0228"
                  }
                },
                "occurrences": {
                  "sequenceType": "RCUR",
                  "frequency": {
                    "schema": "MonthlyFrequency",
                    "dayOfMonth": 15
                  },
                  "validFrom": "2019-04-26",
                  "firstCollectionDate": "2019-04-30"
                },
                "collectionAmount": {
                  "value": 100,
                  "currency": "ZAR"
                },
                "maximumAmount": {
                  "value": 120,
                  "currency": "ZAR"
                },
                "creditor": {
                  "legalName": "Creditor Name",
                  "identification": {
                    "schema": "ORGANISATION",
                    "identifiers": [
                      {
                        "schema": "BIC",
                        "BIC": "RY8PEG0L"
                      }
                    ]
                  }
                },
                "debtor": {
                  "legalName": "Debtor Name",
                  "identification": {
                    "schema": "PERSON",
                    "identifiers": [
                      {
                        "identification": "I/9905140859123",
                        "scheme": {
                          "schema": "CODE",
                          "value": "NIDN"
                        }
                      }
                    ]
                  }
                },
                "debtorAccount": {
                  "identification": {
                    "schema": "GENERIC",
                    "scheme": {
                      "schema": "PROPRIETARY",
                      "value": "ACCOUNT_NUMBER"
                    },
                    "value": "10173412345"
                  },
                  "type": {
                    "schema": "CODE",
                    "value": "SVGS"
                  }
                },
                "debtorAgent": {
                  "clearingSystemMemberId": {
                    "memberId": "470010"
                  }
                },
                "authentication": {
                  "date": "2019-04-03",
                  "channel": {
                    "schema": "PROPRIETARY",
                    "value": "NC03"
                  }
                }
              }
            }
          }
        }
      },
      "AccountLookupResponseExample": {
        "summary": "Example of an AccountLookupResponse object",
        "value": {
          "account": {
            "type": {
              "schema": "CODE",
              "value": "CASH"
            },
            "accountName": "MyCashAccount",
            "currency": "ZAR",
            "openingDate": "2022-05-03T15:02:01Z",
            "status": "ENABLED",
            "restrictions": [
              {
                "restrictionType": "NO_CREDITS",
                "validFrom": "2022-05-04T03:02:01Z",
                "validUntil": "2022-05-05T15:02:01Z"
              }
            ],
            "primaryIdentification": {
              "identifier": {
                "schema": "IBAN",
                "value": "GB29NWBK60161331926819"
              },
              "accountKnownAs": "BestAccount"
            },
            "additionalIdentifications": [
              {
                "identifier": {
                  "namespace": "aNamespace",
                  "schema": "MOBILE",
                  "value": "+27-0821111111"
                },
                "accountKnownAs": "BestAccount",
                "registeredSchemes": [
                  "ZA_RPP"
                ]
              }
            ]
          },
          "primaryAccountOwnerDetails": {
            "schema": "INDIVIDUAL",
            "recordIdentifier": 123456789,
            "name": {
              "title": "Mr",
              "initials": "DD",
              "firstName": "David",
              "lastName": "Developer",
              "additionalNames": "Davido",
              "knownAs": "Dave"
            },
            "identifiers": [
              {
                "identification": 90001236549870,
                "issuer": "Dept of Home Affairs",
                "scheme": {
                  "schema": "CODE",
                  "value": "NIDN"
                }
              }
            ],
            "address": {
              "addressType": "ADDR",
              "department": "Department of Mysteries",
              "streetName": "Street of Mysteries",
              "buildingNumber": 42,
              "buildingName": "Mysterious Building",
              "floor": 42,
              "postBox": 1024,
              "postCode": 4242,
              "townName": "Mysty Town",
              "townLocationName": "Mysty Location",
              "districtName": "Mysty District",
              "countrySubDivision": "Mysterious Cape",
              "country": "ZA",
              "addressLine": [
                "16A",
                "New market street",
                "Foreshore",
                "Cape Town",
                "ZA",
                8001
              ]
            },
            "contactDetails": {
              "phoneNumber": "+27-0214620000",
              "mobileNumber": "+27-08230000000",
              "emailAddress": "developer.dave@electrum.com"
            },
            "countryOfResidence": "ZA"
          },
          "otherAccountOwnerDetails": [
            {
              "schema": "ORGANISATION",
              "recordIdentifier": 123456789,
              "name": {
                "tradingAs": "Electrum"
              },
              "identifiers": [
                {
                  "schema": "BIC",
                  "BIC": "RY8PEG0L"
                },
                {
                  "schema": "LEI",
                  "LEI": "FABABA1212CDCD343400"
                },
                {
                  "schema": "OTHER",
                  "identification": 1234567890,
                  "issuer": "CIPC",
                  "scheme": {
                    "schema": "CODE",
                    "value": "BOID"
                  }
                },
                {
                  "schema": "OTHER",
                  "identification": 1234567890,
                  "issuer": "CIPC",
                  "scheme": {
                    "schema": "PROPRIETARY",
                    "value": "AProprietaryCode123"
                  }
                }
              ],
              "address": {
                "addressType": "ADDR",
                "department": "Department of Mysteries",
                "streetName": "Street of Mysteries",
                "buildingNumber": 42,
                "buildingName": "Mysterious Building",
                "floor": 42,
                "postBox": 1024,
                "postCode": 4242,
                "townName": "Mysty Town",
                "townLocationName": "Mysty Location",
                "districtName": "Mysty District",
                "countrySubDivision": "Mysterious Cape",
                "country": "ZA",
                "addressLine": [
                  "16A",
                  "New market street",
                  "Foreshore",
                  "Cape Town",
                  "ZA",
                  8001
                ]
              },
              "contactDetails": {
                "phoneNumber": "+27-0214620000",
                "mobileNumber": "+27-08230000000",
                "emailAddress": "developer.dave@electrum.com"
              },
              "countryOfResidence": "ZA"
            }
          ]
        }
      }
    }
  }
}