From a6430ad8f70d6acbcff5fd53631d01b6413c96b6 Mon Sep 17 00:00:00 2001 From: Kevin Leyow Date: Wed, 12 May 2021 20:22:52 -0500 Subject: [PATCH] chore: fix operation id --- docs/thirdparty-openapi3-snippets.yaml | 2 +- src/thirdparty/openapi.ts | 28578 ++++++++-------- .../paths/services_ServiceType_error.yaml | 2 +- 3 files changed, 14291 insertions(+), 14291 deletions(-) diff --git a/docs/thirdparty-openapi3-snippets.yaml b/docs/thirdparty-openapi3-snippets.yaml index 4de5ef85..34939f30 100644 --- a/docs/thirdparty-openapi3-snippets.yaml +++ b/docs/thirdparty-openapi3-snippets.yaml @@ -4686,7 +4686,7 @@ paths: The HTTP request `PUT /services/{ServiceType}/error` is used to return error information operationId: PutServicesByIdAndError - summary: PutServicesByIdAndError + summary: PutServicesByServiceTypeAndError tags: - services - sampled diff --git a/src/thirdparty/openapi.ts b/src/thirdparty/openapi.ts index bf9fe02a..71251673 100644 --- a/src/thirdparty/openapi.ts +++ b/src/thirdparty/openapi.ts @@ -771,972 +771,972 @@ export interface operations { test: { requestBody: { "application/json": - | ("OTP" | "QRCODE" | "U2F") - | ("ENTERED" | "REJECTED" | "RESEND") - | { - /** + | ("OTP" | "QRCODE" | "U2F") + | ("ENTERED" | "REJECTED" | "RESEND") + | { + /** * Below are the allowed values for the enumeration AuthenticationType. * - OTP - One-time password generated by the Payer FSP. * - QRCODE - QR code used as One Time Password. * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - authenticationType: "OTP" | "QRCODE" | "U2F"; - /** + authenticationType: "OTP" | "QRCODE" | "U2F"; + /** * The API data type Integer is a JSON String consisting of digits only. Negative numbers and leading zeroes are not allowed. The data type is always limited to a specific number of digits. */ - retriesLeft: string; - /** + retriesLeft: string; + /** * Data model for the complex type Money. */ - amount: { - /** + amount: { + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - amount: string; - }; - /** + amount: string; + }; + /** * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - transactionId: string; - /** + transactionId: string; + /** * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - transactionRequestId: string; - /** + transactionRequestId: string; + /** * The object sent in the PUT /quotes/{ID} callback. */ - quote: { - /** + quote: { + /** * Data model for the complex type Money. */ - transferAmount: { - /** + transferAmount: { + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - amount: string; - }; - /** + amount: string; + }; + /** * Data model for the complex type Money. */ - payeeReceiveAmount?: { - /** + payeeReceiveAmount?: { + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - amount: string; - }; - /** + amount: string; + }; + /** * Data model for the complex type Money. */ - payeeFspFee?: { - /** + payeeFspFee?: { + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - amount: string; - }; - /** + amount: string; + }; + /** * Data model for the complex type Money. */ - payeeFspCommission?: { - /** + payeeFspCommission?: { + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - amount: string; - }; - /** + amount: string; + }; + /** * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - expiration: string; - /** + expiration: string; + /** * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. */ - geoCode?: { - /** + geoCode?: { + /** * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - latitude: string; - /** + latitude: string; + /** * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - longitude: string; - }; - /** + longitude: string; + }; + /** * Information for recipient (transport layer information). */ - ilpPacket: string; - /** + ilpPacket: string; + /** * Condition that must be attached to the transfer by the Payer. */ - condition: string; - /** + condition: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - }; - } - | { - /** + value: string; + }[]; + }; + }; + } + | { + /** * The status of the Consent. * - "REVOKED" - The Consent is no longer valid and has been revoked. */ - status: "REVOKED"; - /** + status: "REVOKED"; + /** * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - revokedAt: string; - } - | "REVOKED" - | string - | string - | { - /** + revokedAt: string; + } + | "REVOKED" + | string + | string + | { + /** * Data model for the complex type PartyIdInfo. */ - partyId: { - /** + partyId: { + /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. * @@ -1778,91 +1778,91 @@ export interface operations { * - CONSENT - TBD * - THIRD_PARTY_LINK - TBD */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** * Identifier of the Party. */ - partyIdentifier: string; - /** + partyIdentifier: string; + /** * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - partySubIdOrType?: string; - /** + partySubIdOrType?: string; + /** * FSP identifier. */ - fspId?: string; - /** + fspId?: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - }; - /** + value: string; + }[]; + }; + }; + /** * Data model for the complex type ErrorInformation. */ - errorInformation?: { - /** + errorInformation?: { + /** * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - errorCode: string; - /** + errorCode: string; + /** * Error description string. */ - errorDescription: string; - /** + errorDescription: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - }; - } - | { - /** + value: string; + }[]; + }; + }; + } + | { + /** * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - requestId: string; - /** + requestId: string; + /** * List of PartyIdInfo elements that the client would like to update * or create FSP information about. */ - partyList: { - /** + partyList: { + /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. * @@ -1904,238 +1904,52 @@ export interface operations { * - CONSENT - TBD * - THIRD_PARTY_LINK - TBD */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** * Identifier of the Party. */ - partyIdentifier: string; - /** + partyIdentifier: string; + /** * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - partySubIdOrType?: string; - /** + partySubIdOrType?: string; + /** * FSP identifier. */ - fspId?: string; - /** + fspId?: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; + value: string; + }[]; + }; }[]; - }; - }[]; - /** + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency?: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - } - | { - /** - * Data model for the complex type Party. - */ - party: { - /** - * Data model for the complex type AccountList. - */ - accounts?: { - /** - * Accounts associated with the Party. - */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: + currency?: | "AED" | "AFN" | "ALL" @@ -2298,21 +2112,207 @@ export interface operations { | "ZAR" | "ZMW" | "ZWD"; + } + | { + /** + * Data model for the complex type Party. + */ + party: { /** + * Data model for the complex type AccountList. + */ + accounts?: { + /** + * Accounts associated with the Party. + */ + account: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. * * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). * * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. */ - description?: string; - }[]; - }; - /** + description?: string; + }[]; + }; + /** * Data model for the complex type PartyIdInfo. */ - partyIdInfo: { - /** + partyIdInfo: { + /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. * @@ -2354,315 +2354,315 @@ export interface operations { * - CONSENT - TBD * - THIRD_PARTY_LINK - TBD */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** * Identifier of the Party. */ - partyIdentifier: string; - /** + partyIdentifier: string; + /** * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - partySubIdOrType?: string; - /** + partySubIdOrType?: string; + /** * FSP identifier. */ - fspId?: string; - /** + fspId?: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - }; - /** + value: string; + }[]; + }; + }; + /** * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - merchantClassificationCode?: string; - /** + merchantClassificationCode?: string; + /** * Name of the Party. Could be a real name or a nickname. */ - name?: string; - /** + name?: string; + /** * Data model for the complex type PartyPersonalInfo. */ - personalInfo?: { - /** + personalInfo?: { + /** * Data model for the complex type PartyComplexName. */ - complexName?: { - /** + complexName?: { + /** * First name of the Party (Name Type). */ - firstName?: string; - /** + firstName?: string; + /** * Middle name of the Party (Name Type). */ - middleName?: string; - /** + middleName?: string; + /** * Last name of the Party (Name Type). */ - lastName?: string; - }; - /** + lastName?: string; + }; + /** * Date of Birth of the Party. */ - dateOfBirth?: string; - }; - }; - } - | "THIRD_PARTY_DFSP" - | { - /** + dateOfBirth?: string; + }; + }; + } + | "THIRD_PARTY_DFSP" + | { + /** * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - transactionId: string; - /** + transactionId: string; + /** * Below are the allowed values for the enumeration. * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. * - PENDING - Payer FSP has sent the transaction request to the Payer. * - ACCEPTED - Payer has approved the transaction. * - REJECTED - Payer has rejected the transaction. */ - transactionRequestState: - | "RECEIVED" - | "PENDING" - | "ACCEPTED" - | "REJECTED"; - /** + transactionRequestState: + | "RECEIVED" + | "PENDING" + | "ACCEPTED" + | "REJECTED"; + /** * Below are the allowed values for the enumeration. * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. * - PENDING - Payee FSP has validated the transaction. * - COMPLETED - Payee FSP has successfully performed the transaction. * - REJECTED - Payee FSP has failed to perform the transaction. */ - transactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; - } - | { - /** + transactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; + } + | { + /** * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - transactionRequestId: string; - /** + transactionRequestId: string; + /** * Data model for the complex type Party. */ - payee: { - /** + payee: { + /** * Data model for the complex type AccountList. */ - accounts?: { - /** + accounts?: { + /** * Accounts associated with the Party. */ - account: { - /** + account: { + /** * A long-lived unique account identifier provided by the DFSP. This MUST NOT * be Bank Account Number or anything that may expose a User's private bank * account information. */ - address?: string; - /** + address?: string; + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. * * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). * * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. */ - description?: string; - }[]; - }; - /** + description?: string; + }[]; + }; + /** * Data model for the complex type PartyIdInfo. */ - partyIdInfo: { - /** + partyIdInfo: { + /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. * @@ -2704,88 +2704,88 @@ export interface operations { * - CONSENT - TBD * - THIRD_PARTY_LINK - TBD */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** * Identifier of the Party. */ - partyIdentifier: string; - /** + partyIdentifier: string; + /** * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - partySubIdOrType?: string; - /** + partySubIdOrType?: string; + /** * FSP identifier. */ - fspId?: string; - /** + fspId?: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - }; - /** + value: string; + }[]; + }; + }; + /** * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - merchantClassificationCode?: string; - /** + merchantClassificationCode?: string; + /** * Name of the Party. Could be a real name or a nickname. */ - name?: string; - /** + name?: string; + /** * Data model for the complex type PartyPersonalInfo. */ - personalInfo?: { - /** + personalInfo?: { + /** * Data model for the complex type PartyComplexName. */ - complexName?: { - /** + complexName?: { + /** * First name of the Party (Name Type). */ - firstName?: string; - /** + firstName?: string; + /** * Middle name of the Party (Name Type). */ - middleName?: string; - /** + middleName?: string; + /** * Last name of the Party (Name Type). */ - lastName?: string; - }; - /** + lastName?: string; + }; + /** * Date of Birth of the Party. */ - dateOfBirth?: string; - }; - }; - /** + dateOfBirth?: string; + }; + }; + /** * Data model for the complex type PartyIdInfo. */ - payer: { - /** + payer: { + /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. * @@ -2827,228 +2827,228 @@ export interface operations { * - CONSENT - TBD * - THIRD_PARTY_LINK - TBD */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** * Identifier of the Party. */ - partyIdentifier: string; - /** + partyIdentifier: string; + /** * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - partySubIdOrType?: string; - /** + partySubIdOrType?: string; + /** * FSP identifier. */ - fspId?: string; - /** + fspId?: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - }; - /** + value: string; + }[]; + }; + }; + /** * Data model for the complex type Money. */ - amount: { - /** + amount: { + /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - amount: string; - }; - /** + amount: string; + }; + /** * Data model for the complex type TransactionType. */ - transactionType: { - /** + transactionType: { + /** * Below are the allowed values for the enumeration. * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. @@ -3056,96 +3056,96 @@ export interface operations { * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. * - REFUND - Used for performing a refund of transaction. */ - scenario: - | "DEPOSIT" - | "WITHDRAWAL" - | "TRANSFER" - | "PAYMENT" - | "REFUND"; - /** + scenario: + | "DEPOSIT" + | "WITHDRAWAL" + | "TRANSFER" + | "PAYMENT" + | "REFUND"; + /** * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). */ - subScenario?: string; - /** + subScenario?: string; + /** * Below are the allowed values for the enumeration. * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. */ - initiator: "PAYER" | "PAYEE"; - /** + initiator: "PAYER" | "PAYEE"; + /** * Below are the allowed values for the enumeration. * - CONSUMER - Consumer is the initiator of the transaction. * - AGENT - Agent is the initiator of the transaction. * - BUSINESS - Business is the initiator of the transaction. * - DEVICE - Device is the initiator of the transaction. */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; - /** + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** * Data model for the complex type Refund. */ - refundInfo?: { - /** + refundInfo?: { + /** * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - originalTransactionId: string; - /** + originalTransactionId: string; + /** * Reason for the refund. */ - refundReason?: string; - }; - /** + refundReason?: string; + }; + /** * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. */ - balanceOfPayments?: string; - }; - /** + balanceOfPayments?: string; + }; + /** * Memo assigned to transaction. */ - note?: string; - /** + note?: string; + /** * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. */ - geoCode?: { - /** + geoCode?: { + /** * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - latitude: string; - /** + latitude: string; + /** * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - longitude: string; - }; - /** + longitude: string; + }; + /** * Below are the allowed values for the enumeration AuthenticationType. * - OTP - One-time password generated by the Payer FSP. * - QRCODE - QR code used as One Time Password. * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - authenticationType?: "OTP" | "QRCODE" | "U2F"; - /** + authenticationType?: "OTP" | "QRCODE" | "U2F"; + /** * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - expiration?: string; - /** + expiration?: string; + /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - extensionList?: { - /** + extensionList?: { + /** * Number of Extension elements. */ - extension: { - /** + extension: { + /** * Extension key. */ - key: string; - /** + key: string; + /** * Extension value. */ - value: string; - }[]; - }; - } - | ("RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"); + value: string; + }[]; + }; + } + | ("RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"); }; responses: { /** @@ -3513,243 +3513,243 @@ export interface operations { * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - }[]; - }; - responses: { - /** - * OK - */ - "200": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + }[]; + }; + responses: { + /** + * OK + */ + "200": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** * Extension value. */ value: string; @@ -4363,193 +4363,6 @@ export interface operations { * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionId: string; - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionRequestId: string; - /** - * The object sent in the PUT /quotes/{ID} callback. - */ - quote: { - /** - * Data model for the complex type Money. - */ - transferAmount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: | "AED" | "AFN" | "ALL" @@ -4712,2704 +4525,769 @@ export interface operations { | "ZAR" | "ZMW" | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + transactionId: string; + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + transactionRequestId: string; + /** + * The object sent in the PUT /quotes/{ID} callback. + */ + quote: { /** * Data model for the complex type Money. */ - payeeReceiveAmount?: { + transferAmount: { /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; - /** - * Data model for the complex type Money. - */ - payeeFspFee?: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; - /** - * Data model for the complex type Money. - */ - payeeFspCommission?: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; - /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). - */ - expiration: string; - /** - * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. - */ - geoCode?: { - /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. - */ - latitude: string; - /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. - */ - longitude: string; - }; - /** - * Information for recipient (transport layer information). - */ - ilpPacket: string; - /** - * Condition that must be attached to the transfer by the Payer. - */ - condition: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - responses: { - /** - * Accepted - */ - "202": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - }; - }; - /** - * The callback PUT /authorizations/ is used to inform the client of the - * result of a previously-requested authorization. The ID in the URI should - * contain the one that was used in the POST /authorizations/ requestBody.transactionRequestId @ OUTBOUND - */ - InboundAuthorizationsIDPutResponse: { - parameters: { - path: { - ID: string; - }; - }; - responses: { - /** - * information about result of required (via POST) /authorization - */ - "200": { - "application/json": { - /** - * Data model for the complex type AuthenticationInfo. - */ - authenticationInfo?: { - /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - authentication: "OTP" | "QRCODE" | "U2F"; - /** - * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. - */ - authenticationValue: Partial & - Partial & - Partial<{ - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }>; - }; - /** - * Below are the allowed values for the enumeration. - * - ENTERED - Consumer entered the authentication value. - * - REJECTED - Consumer rejected the transaction. - * - RESEND - Consumer requested to resend the authentication value. - */ - responseType: "ENTERED" | "REJECTED" | "RESEND"; - }; - }; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - }; - }; - /** - * The HTTP request GET /health is used to return the current status of the API. - */ - HealthGet: { - responses: { - /** - * OK - */ - "200": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - }; - }; - /** - * The HTTP request GET /metrics is used to return metrics for the API. - */ - MetricsGet: { - responses: { - /** - * OK - */ - "200": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - }; - }; - /** - * A request from a PISP to a DFSP to start the process of delegating consent - */ - CreateConsentRequest: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - /** - * The `Date` header field indicates the date when the request was sent. - */ - Date: string; - /** - * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. - * - * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. - */ - "X-Forwarded-For"?: string; - /** - * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). - */ - "FSPIOP-Source": string; - /** - * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. - */ - "FSPIOP-Destination"?: string; - /** - * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. - */ - "FSPIOP-Encryption"?: string; - /** - * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. - */ - "FSPIOP-Signature"?: string; - /** - * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-URI"?: string; - /** - * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-HTTP-Method"?: string; - }; - }; - requestBody: { - "application/json": { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - id: string; - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: ("WEB" | "OTP")[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - }; - }; - responses: { - /** - * Accepted - */ - "202": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - }; - }; - /** - * DFSP updates auth channels and/or auth uri in response to consentRequest. - * - * PISP updates the consentRequest to include authorization token from their user, - * which the DFSP is to then verify. - */ - UpdateConsentRequest: { - requestBody: { - "application/json": - | { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "WEB"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - /** - * The callback uri that the pisp app redirects to for user to complete their login. - */ - authUri: string; - } - | { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "WEB"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - /** - * The callback uri that the pisp app redirects to for user to complete their login. - */ - authUri: string; - /** - * The Auth token from the OTP or redirect to pisp app. - */ - authToken: string; - } - | { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "OTP"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - } - | { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "OTP"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - /** - * The Auth token from the OTP or redirect to pisp app. - */ - authToken: string; - }; - }; - responses: { - /** - * Accepted - */ - "202": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + payeeReceiveAmount?: { /** - * Error description string. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorDescription: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + payeeFspFee?: { /** - * Error description string. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorDescription: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + payeeFspCommission?: { /** - * Error description string. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorDescription: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - errorInformation?: { + expiration: string; + /** + * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. + */ + geoCode?: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - errorCode: string; + latitude: string; /** - * Error description string. + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - errorDescription: string; + longitude: string; + }; + /** + * Information for recipient (transport layer information). + */ + ilpPacket: string; + /** + * Condition that must be attached to the transfer by the Payer. + */ + condition: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Number of Extension elements. */ - extensionList?: { + extension: { /** - * Number of Extension elements. + * Extension key. */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; }; }; }; - }; - /** - * PISP sends user's OTP token to a DFSP to verify user trusts aforementioned PISP - */ - PatchConsentRequest: { - requestBody: { - "application/json": { - /** - * The API data type OtpValue is a JSON String of 3 to 10 characters, consisting of digits only. Negative numbers are not allowed. One or more leading zeros are allowed. - */ - authToken: string; - }; - }; responses: { /** * Accepted @@ -7722,103 +5600,58 @@ export interface operations { }; }; /** - * DFSP responds to the PISP if something went wrong with validating an OTP or secret. + * The callback PUT /authorizations/ is used to inform the client of the + * result of a previously-requested authorization. The ID in the URI should + * contain the one that was used in the POST /authorizations/ requestBody.transactionRequestId @ OUTBOUND */ - NotifyErrorConsentRequests: { + InboundAuthorizationsIDPutResponse: { parameters: { path: { - /** - * The identifier value. - */ ID: string; }; - header: { - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - /** - * The `Date` header field indicates the date when the request was sent. - */ - Date: string; - /** - * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. - * - * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. - */ - "X-Forwarded-For"?: string; - /** - * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). - */ - "FSPIOP-Source": string; - /** - * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. - */ - "FSPIOP-Destination"?: string; - /** - * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. - */ - "FSPIOP-Encryption"?: string; - /** - * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. - */ - "FSPIOP-Signature"?: string; - /** - * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-URI"?: string; - /** - * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-HTTP-Method"?: string; - }; }; - requestBody: { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; + responses: { + /** + * information about result of required (via POST) /authorization + */ + "200": { + "application/json": { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type AuthenticationInfo. */ - extensionList?: { + authenticationInfo?: { /** - * Number of Extension elements. + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; + authentication: "OTP" | "QRCODE" | "U2F"; + /** + * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. + */ + authenticationValue: Partial & + Partial & + Partial<{ + /** + * U2F challenge-response. + */ + pinValue: string; + /** + * Sequential counter used for cloning detection. Present only for U2F authentication. + */ + counter: string; + }>; }; + /** + * Below are the allowed values for the enumeration. + * - ENTERED - Consumer entered the authentication value. + * - REJECTED - Consumer rejected the transaction. + * - RESEND - Consumer requested to resend the authentication value. + */ + responseType: "ENTERED" | "REJECTED" | "RESEND"; }; }; - }; - responses: { - /** - * OK - */ - "200": unknown; /** * Bad Request */ @@ -8126,90 +5959,14 @@ export interface operations { }; }; /** - * DFSP sends this request to the PISP after granting consent. + * The HTTP request GET /health is used to return the current status of the API. */ - PostConsents: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - /** - * The `Date` header field indicates the date when the request was sent. - */ - Date: string; - /** - * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. - * - * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. - */ - "X-Forwarded-For"?: string; - /** - * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). - */ - "FSPIOP-Source": string; - /** - * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. - */ - "FSPIOP-Destination"?: string; - /** - * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. - */ - "FSPIOP-Encryption"?: string; - /** - * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. - */ - "FSPIOP-Signature"?: string; - /** - * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-URI"?: string; - /** - * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-HTTP-Method"?: string; - }; - }; - requestBody: { - "application/json": { - /** - * Common ID between the PISP and FSP for the Consent object - * decided by the DFSP who creates the Consent - * This field is REQUIRED for POST /consent. - */ - consentId: string; - /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. - */ - consentRequestId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - }; - }; + HealthGet: { responses: { /** - * Accepted + * OK */ - "202": unknown; + "200": unknown; /** * Bad Request */ @@ -8517,22 +6274,14 @@ export interface operations { }; }; /** - * The HTTP request `GET /consents/{ID}` is used to get information regarding a consent object created or requested earlier. The `{ID}` in the URI should contain the `{ID}` that was used in the `POST /consents`. summary: GetConsent + * The HTTP request GET /metrics is used to return metrics for the API. */ - GetConsent: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - }; - }; + MetricsGet: { responses: { /** - * Accepted + * OK */ - "202": unknown; + "200": unknown; /** * Bad Request */ @@ -8840,42 +6589,92 @@ export interface operations { }; }; /** - * The HTTP request `PATCH /consents/{ID}` is used in account unlinking - * by a hub hosted auth service and by DFSPs in non-hub hosted scenarios - * to notify participants of a consent being revoked. - * - * - Called by a `auth-service` to notify a PISP and DFSP of consent status in hub hosted scenario. - * - Called by a `DFSP` to notify a PISP of consent status in non-hub hosted scenario. + * A request from a PISP to a DFSP to start the process of delegating consent */ - PatchConsent: { + CreateConsentRequest: { parameters: { header: { + /** + * The `Accept` header field indicates the version of the API the client would like the server to use. + */ + Accept: string; /** * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. * * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). */ "Content-Length"?: number; + /** + * The `Content-Type` header indicates the specific version of the API used to send the payload body. + */ + "Content-Type": string; + /** + * The `Date` header field indicates the date when the request was sent. + */ + Date: string; + /** + * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. + * + * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. + */ + "X-Forwarded-For"?: string; + /** + * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). + */ + "FSPIOP-Source": string; + /** + * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. + */ + "FSPIOP-Destination"?: string; + /** + * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. + */ + "FSPIOP-Encryption"?: string; + /** + * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. + */ + "FSPIOP-Signature"?: string; + /** + * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-URI"?: string; + /** + * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-HTTP-Method"?: string; }; }; requestBody: { "application/json": { /** - * The status of the Consent. - * - "REVOKED" - The Consent is no longer valid and has been revoked. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - status: "REVOKED"; + id: string; /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + * The id of the PISP who will initiate transactions on a user's behalf. */ - revokedAt: string; + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: ("WEB" | "OTP")[]; + /** + * The callback uri that the user will be redirected to after completing the WEB auth channel. + */ + callbackUri: string; }; }; responses: { /** - * OK + * Accepted */ - "200": unknown; + "202": unknown; /** * Bad Request */ @@ -9183,211 +6982,112 @@ export interface operations { }; }; /** - * The HTTP request `PUT /consents/{ID}` is used by the PISP and Auth Service. + * DFSP updates auth channels and/or auth uri in response to consentRequest. * - * - Called by a `auth-service` to request PISP to add the credential details. - * - Called by a `PISP` to after signing a challenge. Sent to an `auth-service` for verification. - * - Called by a `auth-service` to notify a DFSP and PISP that a credential has been verified and registered. + * PISP updates the consentRequest to include authorization token from their user, + * which the DFSP is to then verify. */ - UpdateConsent: { - parameters: { - header: { - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - }; - }; + UpdateConsentRequest: { requestBody: { "application/json": - | { - /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. - */ - requestId: string; - /** - * FSP identifier. - */ - participantId: string; - /** - * PISP identifier who uses this Consent. + | { + /** + * The id of the PISP who will initiate transactions on a user's behalf. */ - initiatorId: string; - scopes: { - /** + initiatorId: string; + scopes: { + /** * A long-lived unique account identifier provided by the DFSP. This MUST NOT * be Bank Account Number or anything that may expose a User's private bank * account information. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * SignedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be PENDING when updating - * a credential. - */ - credential: { - /** - * The id of a Credential. - */ - id: string; - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The challenge has signed but not yet verified. - */ - status: "PENDING"; - /** - * The challenge that has been signed by a PISP. - */ - challenge: { - /** - * Base64 encoded binary of the challenge that must be answered by the PISP. - */ - payload: string; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "WEB"[]; /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. - */ - signature: string; - }; - /** - * Base64 encoded bytes - The public key of the Public/Private keypair. - */ - payload: string; - }; - } - | { - /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. + * The callback uri that the user will be redirected to after completing the WEB auth channel. */ - requestId: string; - /** - * FSP identifier. + callbackUri: string; + /** + * The callback uri that the pisp app redirects to for user to complete their login. */ - participantId: string; - /** - * PISP identifier who uses this Consent. + authUri: string; + } + | { + /** + * The id of the PISP who will initiate transactions on a user's behalf. */ - initiatorId: string; - scopes: { - /** + initiatorId: string; + scopes: { + /** * A long-lived unique account identifier provided by the DFSP. This MUST NOT * be Bank Account Number or anything that may expose a User's private bank * account information. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * UnsignedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be PENDING when updating - * a credential. + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "WEB"[]; + /** + * The callback uri that the user will be redirected to after completing the WEB auth channel. */ - credential: { - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The challenge has initialized but not yet answered by the PISP. - */ - status: "PENDING"; - /** - * The challenge issued by a DFSP that must be answered by the PISP. - */ - challenge: { + callbackUri: string; /** - * Base64 encoded binary of the challenge that must be answered by the PISP. - */ - payload: string; - }; - }; - } - | { - /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. + * The callback uri that the pisp app redirects to for user to complete their login. */ - requestId: string; - /** - * FSP identifier. + authUri: string; + /** + * The Auth token from the OTP or redirect to pisp app. */ - participantId: string; - /** - * PISP identifier who uses this Consent. + authToken: string; + } + | { + /** + * The id of the PISP who will initiate transactions on a user's behalf. */ - initiatorId: string; - scopes: { - /** + initiatorId: string; + scopes: { + /** * A long-lived unique account identifier provided by the DFSP. This MUST NOT * be Bank Account Number or anything that may expose a User's private bank * account information. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * VerifiedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be VERIFIED when updating - * a credential. + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "OTP"[]; + /** + * The callback uri that the user will be redirected to after completing the WEB auth channel. */ - credential: { - /** - * The id of a Credential. - */ - id?: string; - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The Credential is valid, and ready to be used by the PISP. - */ - status: "VERIFIED"; - /** - * The challenge that has been signed by a PISP. + callbackUri: string; + } + | { + /** + * The id of the PISP who will initiate transactions on a user's behalf. + */ + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - challenge: { + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "OTP"[]; /** - * Base64 encoded binary of the challenge that must be answered by the PISP. - */ - payload: string; + * The callback uri that the user will be redirected to after completing the WEB auth channel. + */ + callbackUri: string; /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. - */ - signature: string; + * The Auth token from the OTP or redirect to pisp app. + */ + authToken: string; }; - /** - * Base64 encoded bytes - The public key of the Public/Private keypair. - */ - payload?: string; - }; - }; }; responses: { - /** - * OK - */ - "200": unknown; /** * Accepted */ @@ -9699,11 +7399,17 @@ export interface operations { }; }; /** - * The HTTP request `DELETE /consents/{ID}` is used to mark as deleted a previously created consent. - * - * - Called by a PISP when a user wants to remove their consent. + * PISP sends user's OTP token to a DFSP to verify user trusts aforementioned PISP */ - DeleteConsentByID: { + PatchConsentRequest: { + requestBody: { + "application/json": { + /** + * The API data type OtpValue is a JSON String of 3 to 10 characters, consisting of digits only. Negative numbers are not allowed. One or more leading zeros are allowed. + */ + authToken: string; + }; + }; responses: { /** * Accepted @@ -10016,9 +7722,9 @@ export interface operations { }; }; /** - * DFSP responds to the PISP if something went wrong with validating or storing consent. + * DFSP responds to the PISP if something went wrong with validating an OTP or secret. */ - NotifyErrorConsents: { + NotifyErrorConsentRequests: { parameters: { path: { /** @@ -10420,18 +8126,10 @@ export interface operations { }; }; /** - * PISP requests a challenge from the auth service. - * - * PISP -> Switch + * DFSP sends this request to the PISP after granting consent. */ - GenerateChallengeRequest: { + PostConsents: { parameters: { - path: { - /** - * The identifier value. - */ - ID: string; - }; header: { /** * The `Accept` header field indicates the version of the API the client would like the server to use. @@ -10486,10 +8184,25 @@ export interface operations { requestBody: { "application/json": { /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. + * Common ID between the PISP and FSP for the Consent object + * decided by the DFSP who creates the Consent + * This field is REQUIRED for POST /consent. */ - type: "FIDO"; + consentId: string; + /** + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. + */ + consentRequestId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; }; }; responses: { @@ -10804,10 +8517,9 @@ export interface operations { }; }; /** - * The HTTP request `GET /services/{ServiceType}` is used to retrieve the list of participants - * that support a specified service. + * The HTTP request `GET /consents/{ID}` is used to get information regarding a consent object created or requested earlier. The `{ID}` in the URI should contain the `{ID}` that was used in the `POST /consents`. summary: GetConsent */ - GetServicesByServiceType: { + GetConsent: { parameters: { header: { /** @@ -11128,10 +8840,14 @@ export interface operations { }; }; /** - * The HTTP request `PUT /services/{ServiceType}` is used to return list of participants - * that support a specified service. + * The HTTP request `PATCH /consents/{ID}` is used in account unlinking + * by a hub hosted auth service and by DFSPs in non-hub hosted scenarios + * to notify participants of a consent being revoked. + * + * - Called by a `auth-service` to notify a PISP and DFSP of consent status in hub hosted scenario. + * - Called by a `DFSP` to notify a PISP of consent status in non-hub hosted scenario. */ - PutServicesByServiceType: { + PatchConsent: { parameters: { header: { /** @@ -11140,14 +8856,20 @@ export interface operations { * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). */ "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; }; }; requestBody: { - "application/json": { providers: string[] }; + "application/json": { + /** + * The status of the Consent. + * - "REVOKED" - The Consent is no longer valid and has been revoked. + */ + status: "REVOKED"; + /** + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + */ + revokedAt: string; + }; }; responses: { /** @@ -11461,49 +9183,215 @@ export interface operations { }; }; /** - * The HTTP request `PUT /services/{ServiceType}/error` is used to return error information + * The HTTP request `PUT /consents/{ID}` is used by the PISP and Auth Service. + * + * - Called by a `auth-service` to request PISP to add the credential details. + * - Called by a `PISP` to after signing a challenge. Sent to an `auth-service` for verification. + * - Called by a `auth-service` to notify a DFSP and PISP that a credential has been verified and registered. */ - PutServicesByIdAndError: { - requestBody: { - "application/json": { + UpdateConsent: { + parameters: { + header: { /** - * Data model for the complex type ErrorInformation. + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). */ - errorInformation: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { + "Content-Length"?: number; + }; + }; + requestBody: { + "application/json": + | { /** - * Number of Extension elements. + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. */ - extension: { + requestId: string; + /** + * FSP identifier. + */ + participantId: string; + /** + * PISP identifier who uses this Consent. + */ + initiatorId: string; + scopes: { /** - * Extension key. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - key: string; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * SignedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be PENDING when updating + * a credential. + */ + credential: { + /** + * The id of a Credential. + */ + id: string; + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; + /** + * The challenge has signed but not yet verified. + */ + status: "PENDING"; + /** + * The challenge that has been signed by a PISP. + */ + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + /** + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + */ + signature: string; + }; + /** + * Base64 encoded bytes - The public key of the Public/Private keypair. + */ + payload: string; + }; + } + | { + /** + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. + */ + requestId: string; + /** + * FSP identifier. + */ + participantId: string; + /** + * PISP identifier who uses this Consent. + */ + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * UnsignedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be PENDING when updating + * a credential. + */ + credential: { + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; + /** + * The challenge has initialized but not yet answered by the PISP. + */ + status: "PENDING"; + /** + * The challenge issued by a DFSP that must be answered by the PISP. + */ + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + }; + }; + } + | { + /** + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. + */ + requestId: string; + /** + * FSP identifier. + */ + participantId: string; + /** + * PISP identifier who uses this Consent. + */ + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * VerifiedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be VERIFIED when updating + * a credential. + */ + credential: { + /** + * The id of a Credential. + */ + id?: string; + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; + /** + * The Credential is valid, and ready to be used by the PISP. + */ + status: "VERIFIED"; + /** + * The challenge that has been signed by a PISP. + */ + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + /** + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + */ + signature: string; + }; /** - * Extension value. + * Base64 encoded bytes - The public key of the Public/Private keypair. */ - value: string; - }[]; + payload?: string; + }; }; - }; - }; }; responses: { /** * OK */ "200": unknown; + /** + * Accepted + */ + "202": unknown; /** * Bad Request */ @@ -11811,278 +9699,147 @@ export interface operations { }; }; /** - * The HTTP request POST `/thirdpartyRequests/transactions` is used by a PISP to initiate a 3rd party Transaction request with a DFSP + * The HTTP request `DELETE /consents/{ID}` is used to mark as deleted a previously created consent. + * + * - Called by a PISP when a user wants to remove their consent. */ - CreateThirdpartyTransactionRequests: { - requestBody: { - "application/json": { - /** - * Common ID between the FSPs for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request. - */ - transactionRequestId: string; - /** - * Information about the Payee in the proposed financial transaction. - */ - payee: { + DeleteConsentByID: { + responses: { + /** + * Accepted + */ + "202": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { /** - * Data model for the complex type AccountList. + * Data model for the complex type ErrorInformation. */ - accounts?: { + errorInformation?: { /** - * Accounts associated with the Party. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Number of Extension elements. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + * Number of Extension elements. */ - description?: string; - }[]; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { /** - * Data model for the complex type PartyIdInfo. + * Data model for the complex type ErrorInformation. */ - partyIdInfo: { + errorInformation?: { /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + errorCode: string; /** - * Identifier of the Party. + * Error description string. */ - partyIdentifier: string; + errorDescription: string; /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - partySubIdOrType?: string; + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Found + */ + "404": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { /** - * FSP identifier. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - fspId?: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ @@ -12102,326 +9859,260 @@ export interface operations { }[]; }; }; + }; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. - */ - merchantClassificationCode?: string; - /** - * Name of the Party. Could be a real name or a nickname. - */ - name?: string; - /** - * Data model for the complex type PartyPersonalInfo. + * Data model for the complex type ErrorInformation. */ - personalInfo?: { + errorInformation?: { /** - * Data model for the complex type PartyComplexName. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - complexName?: { - /** - * First name of the Party (Name Type). - */ - firstName?: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Middle name of the Party (Name Type). + * Number of Extension elements. */ - middleName?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Acceptable + */ + "406": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Last name of the Party (Name Type). + * Number of Extension elements. */ - lastName?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; + }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { /** - * Date of Birth of the Party. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - dateOfBirth?: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; }; - /** - * Information about the Payer in the proposed financial transaction. - */ - payer: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * This validation interface should be use by `POST /thirdpartyRequests/transactions` - * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent - */ - partyIdType: "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; - /** - * FSP identifier. - */ - fspId?: string; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type ErrorInformation. */ - extensionList?: { + errorInformation?: { /** - * Number of Extension elements. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - extension: { - /** - * Extension key. - */ - key: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Extension value. + * Number of Extension elements. */ - value: string; - }[]; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; }; + }; + }; + }; + /** + * DFSP responds to the PISP if something went wrong with validating or storing consent. + */ + NotifyErrorConsents: { + parameters: { + path: { /** - * SEND for sendAmount, RECEIVE for receiveAmount. + * The identifier value. */ - amountType: "SEND" | "RECEIVE"; + ID: string; + }; + header: { /** - * Requested amount to be transferred from the Payer to Payee. - */ - amount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). + */ + "Content-Length"?: number; /** - * Type of transaction. + * The `Content-Type` header indicates the specific version of the API used to send the payload body. */ - transactionType: { - /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. - */ - scenario: - | "DEPOSIT" - | "WITHDRAWAL" - | "TRANSFER" - | "PAYMENT" - | "REFUND"; - /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). - */ - subScenario?: string; + "Content-Type": string; + /** + * The `Date` header field indicates the date when the request was sent. + */ + Date: string; + /** + * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. + * + * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. + */ + "X-Forwarded-For"?: string; + /** + * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). + */ + "FSPIOP-Source": string; + /** + * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. + */ + "FSPIOP-Destination"?: string; + /** + * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. + */ + "FSPIOP-Encryption"?: string; + /** + * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. + */ + "FSPIOP-Signature"?: string; + /** + * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-URI"?: string; + /** + * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-HTTP-Method"?: string; + }; + }; + requestBody: { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation: { /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - initiator: "PAYER" | "PAYEE"; + errorCode: string; /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * Error description string. */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + errorDescription: string; /** - * Data model for the complex type Refund. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - refundInfo?: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - originalTransactionId: string; + extensionList?: { /** - * Reason for the refund. + * Number of Extension elements. */ - refundReason?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; - /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. - */ - balanceOfPayments?: string; }; - /** - * Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond. - */ - expiration: string; }; }; responses: { /** - * Accepted + * OK */ - "202": unknown; + "200": unknown; /** * Bad Request */ @@ -12651,47 +10342,165 @@ export interface operations { }; }; /** - * Not Implemented + * Not Implemented + */ + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + }; + }; + /** + * PISP requests a challenge from the auth service. + * + * PISP -> Switch + */ + GenerateChallengeRequest: { + parameters: { + path: { + /** + * The identifier value. + */ + ID: string; + }; + header: { + /** + * The `Accept` header field indicates the version of the API the client would like the server to use. + */ + Accept: string; + /** + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). + */ + "Content-Length"?: number; + /** + * The `Content-Type` header indicates the specific version of the API used to send the payload body. + */ + "Content-Type": string; + /** + * The `Date` header field indicates the date when the request was sent. + */ + Date: string; + /** + * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. + * + * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. + */ + "X-Forwarded-For"?: string; + /** + * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). + */ + "FSPIOP-Source": string; + /** + * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. + */ + "FSPIOP-Destination"?: string; + /** + * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. + */ + "FSPIOP-Encryption"?: string; + /** + * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. + */ + "FSPIOP-Signature"?: string; + /** + * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-URI"?: string; + /** + * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-HTTP-Method"?: string; + }; + }; + requestBody: { + "application/json": { + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; + }; + }; + responses: { + /** + * Accepted */ - "501": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; + "202": unknown; /** - * Service Unavailable + * Bad Request */ - "503": { + "400": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -12722,285 +10531,65 @@ export interface operations { */ value: string; }[]; - }; - }; - }; - }; - }; - }; - /** - * The HTTP request POST `/thirdpartyRequests/transactions` is used by a PISP to initiate a 3rd party Transaction request with a DFSP - */ - ThirdpartyRequestsTransactionsPost: { - requestBody: { - "application/json": { - /** - * Common ID between the FSPs for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request. - */ - transactionRequestId: string; - /** - * Information about the Payee in the proposed financial transaction. - */ - payee: { - /** - * Data model for the complex type AccountList. - */ - accounts?: { - /** - * Accounts associated with the Party. - */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. - */ - description?: string; - }[]; + }; }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { /** - * Data model for the complex type PartyIdInfo. + * Data model for the complex type ErrorInformation. */ - partyIdInfo: { + errorInformation?: { /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + errorCode: string; /** - * Identifier of the Party. + * Error description string. */ - partyIdentifier: string; + errorDescription: string; /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - partySubIdOrType?: string; + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { /** - * FSP identifier. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - fspId?: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ @@ -13020,321 +10609,546 @@ export interface operations { }[]; }; }; + }; + }; + /** + * Not Found + */ + "404": { + "application/json": { /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. - */ - merchantClassificationCode?: string; - /** - * Name of the Party. Could be a real name or a nickname. + * Data model for the complex type ErrorInformation. */ - name?: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { /** - * Data model for the complex type PartyPersonalInfo. + * Data model for the complex type ErrorInformation. */ - personalInfo?: { + errorInformation?: { /** - * Data model for the complex type PartyComplexName. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - complexName?: { + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * First name of the Party (Name Type). + * Number of Extension elements. */ - firstName?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Acceptable + */ + "406": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Middle name of the Party (Name Type). + * Number of Extension elements. */ - middleName?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Last name of the Party (Name Type). + * Number of Extension elements. */ - lastName?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; - /** - * Date of Birth of the Party. - */ - dateOfBirth?: string; }; }; - /** - * Information about the Payer in the proposed financial transaction. - */ - payer: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * This validation interface should be use by `POST /thirdpartyRequests/transactions` - * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent - */ - partyIdType: "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; - /** - * FSP identifier. - */ - fspId?: string; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type ErrorInformation. */ - extensionList?: { + errorInformation?: { /** - * Number of Extension elements. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - extension: { - /** - * Extension key. - */ - key: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Extension value. + * Number of Extension elements. */ - value: string; - }[]; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; }; + }; + }; + }; + /** + * The HTTP request `GET /services/{ServiceType}` is used to retrieve the list of participants + * that support a specified service. + */ + GetServicesByServiceType: { + parameters: { + header: { /** - * SEND for sendAmount, RECEIVE for receiveAmount. - */ - amountType: "SEND" | "RECEIVE"; - /** - * Requested amount to be transferred from the Payer to Payee. + * The `Accept` header field indicates the version of the API the client would like the server to use. */ - amount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + Accept: string; + }; + }; + responses: { + /** + * Accepted + */ + "202": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Data model for the complex type ErrorInformation. */ - amount: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; - /** - * Type of transaction. - */ - transactionType: { + }; + /** + * Unauthorized + */ + "401": { + "application/json": { /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. + * Data model for the complex type ErrorInformation. */ - scenario: - | "DEPOSIT" - | "WITHDRAWAL" - | "TRANSFER" - | "PAYMENT" - | "REFUND"; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + * Data model for the complex type ErrorInformation. */ - subScenario?: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Found + */ + "404": { + "application/json": { /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * Data model for the complex type ErrorInformation. */ - initiator: "PAYER" | "PAYEE"; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * Data model for the complex type ErrorInformation. */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Acceptable + */ + "406": { + "application/json": { /** - * Data model for the complex type Refund. + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. */ - refundInfo?: { + errorInformation?: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - originalTransactionId: string; + errorCode: string; /** - * Reason for the refund. + * Error description string. */ - refundReason?: string; + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + * Data model for the complex type ErrorInformation. */ - balanceOfPayments?: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; + }; + }; + }; + /** + * The HTTP request `PUT /services/{ServiceType}` is used to return list of participants + * that support a specified service. + */ + PutServicesByServiceType: { + parameters: { + header: { /** - * Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond. + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). */ - expiration: string; + "Content-Length"?: number; + /** + * The `Content-Type` header indicates the specific version of the API used to send the payload body. + */ + "Content-Type": string; }; }; + requestBody: { + "application/json": { providers: string[] }; + }; responses: { /** * OK @@ -13647,15 +11461,49 @@ export interface operations { }; }; /** - * The HTTP request `GET /thirdpartyRequests/transactions/{ID}` is used to request the - * retrieval of a third party transaction request. + * The HTTP request `PUT /services/{ServiceType}/error` is used to return error information */ - GetThirdpartyTransactionRequests: { + PutServicesByIdAndError: { + requestBody: { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; responses: { /** - * Accepted + * OK */ - "202": unknown; + "200": unknown; /** * Bad Request */ @@ -13932,13 +11780,309 @@ export interface operations { */ errorInformation?: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + }; + }; + /** + * The HTTP request POST `/thirdpartyRequests/transactions` is used by a PISP to initiate a 3rd party Transaction request with a DFSP + */ + CreateThirdpartyTransactionRequests: { + requestBody: { + "application/json": { + /** + * Common ID between the FSPs for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request. + */ + transactionRequestId: string; + /** + * Information about the Payee in the proposed financial transaction. + */ + payee: { + /** + * Data model for the complex type AccountList. + */ + accounts?: { + /** + * Accounts associated with the Party. + */ + account: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + */ + description?: string; + }[]; + }; + /** + * Data model for the complex type PartyIdInfo. + */ + partyIdInfo: { + /** + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD + */ + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** + * Identifier of the Party. + */ + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - errorCode: string; + partySubIdOrType?: string; /** - * Error description string. + * FSP identifier. */ - errorDescription: string; + fspId?: string; /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ @@ -13958,250 +12102,330 @@ export interface operations { }[]; }; }; + /** + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. + */ + merchantClassificationCode?: string; + /** + * Name of the Party. Could be a real name or a nickname. + */ + name?: string; + /** + * Data model for the complex type PartyPersonalInfo. + */ + personalInfo?: { + /** + * Data model for the complex type PartyComplexName. + */ + complexName?: { + /** + * First name of the Party (Name Type). + */ + firstName?: string; + /** + * Middle name of the Party (Name Type). + */ + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; + }; + /** + * Date of Birth of the Party. + */ + dateOfBirth?: string; + }; + }; + /** + * Information about the Payer in the proposed financial transaction. + */ + payer: { + /** + * This is a variant based on FSPIOP `PartyIdType` specification. + * This validation interface should be use by `POST /thirdpartyRequests/transactions` + * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent + */ + partyIdType: "THIRD_PARTY_LINK"; + /** + * Identifier of the Party. + */ + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + /** + * SEND for sendAmount, RECEIVE for receiveAmount. + */ + amountType: "SEND" | "RECEIVE"; + /** + * Requested amount to be transferred from the Payer to Payee. + */ + amount: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; }; - }; - }; - }; - /** - * The HTTP request `PUT /thirdpartyRequests/transactions/{ID}` is used by the DFSP to inform the client about - * the status of a previously requested thirdparty transaction request. - * - * Switch(Thirdparty API Adapter) -> PISP - */ - UpdateThirdPartyTransactionRequests: { - parameters: { - header: { - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - }; - }; - requestBody: { - "application/json": { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionId: string; /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. - * - PENDING - Payer FSP has sent the transaction request to the Payer. - * - ACCEPTED - Payer has approved the transaction. - * - REJECTED - Payer has rejected the transaction. + * Type of transaction. */ - transactionRequestState: - | "RECEIVED" - | "PENDING" - | "ACCEPTED" - | "REJECTED"; - }; - }; - responses: { - /** - * OK - */ - "200": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { + transactionType: { /** - * Data model for the complex type ErrorInformation. + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { + scenario: + | "DEPOSIT" + | "WITHDRAWAL" + | "TRANSFER" + | "PAYMENT" + | "REFUND"; /** - * Data model for the complex type ErrorInformation. + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { + subScenario?: string; /** - * Data model for the complex type ErrorInformation. + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { + initiator: "PAYER" | "PAYEE"; /** - * Data model for the complex type ErrorInformation. + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Refund. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + refundInfo?: { /** - * Error description string. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - errorDescription: string; + originalTransactionId: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Reason for the refund. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + refundReason?: string; }; + /** + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + */ + balanceOfPayments?: string; }; + /** + * Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond. + */ + expiration: string; }; + }; + responses: { /** - * Not Acceptable + * Accepted */ - "406": { + "202": unknown; + /** + * Bad Request + */ + "400": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14237,9 +12461,9 @@ export interface operations { }; }; /** - * Not Implemented + * Unauthorized */ - "501": { + "401": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14275,9 +12499,9 @@ export interface operations { }; }; /** - * Service Unavailable + * Forbidden */ - "503": { + "403": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14312,66 +12536,10 @@ export interface operations { }; }; }; - }; - }; - /** - * The HTTP request `PATCH /thirdpartyRequests/transactions/{ID}` is used to - * notify a thirdparty of the outcome of a transaction request. - * - * Switch(Thirdparty API Adapter) -> PISP - */ - NotifyThirdpartyTransactionRequests: { - parameters: { - header: { - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - }; - }; - requestBody: { - "application/json": { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionId: string; - /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. - * - PENDING - Payer FSP has sent the transaction request to the Payer. - * - ACCEPTED - Payer has approved the transaction. - * - REJECTED - Payer has rejected the transaction. - */ - transactionRequestState: - | "RECEIVED" - | "PENDING" - | "ACCEPTED" - | "REJECTED"; - /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. - * - PENDING - Payee FSP has validated the transaction. - * - COMPLETED - Payee FSP has successfully performed the transaction. - * - REJECTED - Payee FSP has failed to perform the transaction. - */ - transactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; - }; - }; - responses: { - /** - * OK - */ - "200": unknown; /** - * Bad Request + * Not Found */ - "400": { + "404": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14407,9 +12575,9 @@ export interface operations { }; }; /** - * Unauthorized + * Method Not Allowed */ - "401": { + "405": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14445,9 +12613,9 @@ export interface operations { }; }; /** - * Forbidden + * Not Acceptable */ - "403": { + "406": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14483,9 +12651,9 @@ export interface operations { }; }; /** - * Not Found + * Not Implemented */ - "404": { + "501": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14521,9 +12689,9 @@ export interface operations { }; }; /** - * Method Not Allowed + * Service Unavailable */ - "405": { + "503": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -14558,61 +12726,281 @@ export interface operations { }; }; }; - /** - * Not Acceptable - */ - "406": { - "application/json": { + }; + }; + /** + * The HTTP request POST `/thirdpartyRequests/transactions` is used by a PISP to initiate a 3rd party Transaction request with a DFSP + */ + ThirdpartyRequestsTransactionsPost: { + requestBody: { + "application/json": { + /** + * Common ID between the FSPs for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request. + */ + transactionRequestId: string; + /** + * Information about the Payee in the proposed financial transaction. + */ + payee: { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type AccountList. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; + accounts?: { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Accounts associated with the Party. */ - extensionList?: { + account: { /** - * Number of Extension elements. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + */ + description?: string; + }[]; }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type PartyIdInfo. */ - errorInformation?: { + partyIdInfo: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD */ - errorCode: string; + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** - * Error description string. + * Identifier of the Party. */ - errorDescription: string; + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; /** * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ @@ -14632,142 +13020,319 @@ export interface operations { }[]; }; }; - }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - errorInformation?: { + merchantClassificationCode?: string; + /** + * Name of the Party. Could be a real name or a nickname. + */ + name?: string; + /** + * Data model for the complex type PartyPersonalInfo. + */ + personalInfo?: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * Data model for the complex type PartyComplexName. */ - errorCode: string; + complexName?: { + /** + * First name of the Party (Name Type). + */ + firstName?: string; + /** + * Middle name of the Party (Name Type). + */ + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; + }; /** - * Error description string. + * Date of Birth of the Party. */ - errorDescription: string; + dateOfBirth?: string; + }; + }; + /** + * Information about the Payer in the proposed financial transaction. + */ + payer: { + /** + * This is a variant based on FSPIOP `PartyIdType` specification. + * This validation interface should be use by `POST /thirdpartyRequests/transactions` + * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent + */ + partyIdType: "THIRD_PARTY_LINK"; + /** + * Identifier of the Party. + */ + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Number of Extension elements. */ - extensionList?: { + extension: { /** - * Number of Extension elements. + * Extension key. */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; }; - }; - }; - }; - /** - * If the server is unable to find the transaction request, or another processing error occurs, - * the error callback `PUT /thirdpartyRequests/transactions/{ID}/error` is used. - * The `{ID}` in the URI should contain the `transactionRequestId` that was used for the creation of - * the thirdparty transaction request. - */ - ThirdpartyTransactionRequestsError: { - parameters: { - path: { - /** - * The identifier value. - */ - ID: string; - }; - header: { - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length"?: number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - /** - * The `Date` header field indicates the date when the request was sent. - */ - Date: string; - /** - * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. - * - * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. - */ - "X-Forwarded-For"?: string; - /** - * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). - */ - "FSPIOP-Source": string; - /** - * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. - */ - "FSPIOP-Destination"?: string; - /** - * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. - */ - "FSPIOP-Encryption"?: string; - /** - * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. - */ - "FSPIOP-Signature"?: string; /** - * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + * SEND for sendAmount, RECEIVE for receiveAmount. */ - "FSPIOP-URI"?: string; + amountType: "SEND" | "RECEIVE"; /** - * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + * Requested amount to be transferred from the Payer to Payee. */ - "FSPIOP-HTTP-Method"?: string; - }; - }; - requestBody: { - "application/json": { + amount: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; /** - * Data model for the complex type ErrorInformation. + * Type of transaction. */ - errorInformation: { + transactionType: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. */ - errorCode: string; + scenario: + | "DEPOSIT" + | "WITHDRAWAL" + | "TRANSFER" + | "PAYMENT" + | "REFUND"; /** - * Error description string. + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). */ - errorDescription: string; + subScenario?: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. */ - extensionList?: { + initiator: "PAYER" | "PAYEE"; + /** + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. + */ + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** + * Data model for the complex type Refund. + */ + refundInfo?: { /** - * Number of Extension elements. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; + originalTransactionId: string; + /** + * Reason for the refund. + */ + refundReason?: string; }; + /** + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + */ + balanceOfPayments?: string; }; + /** + * Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond. + */ + expiration: string; }; }; responses: { @@ -15082,41 +13647,10 @@ export interface operations { }; }; /** - * The HTTP request `POST /thirdpartyRequests/transactions/{id}/authorizations` is used by the DFSP to verify a third party authorization. + * The HTTP request `GET /thirdpartyRequests/transactions/{ID}` is used to request the + * retrieval of a third party transaction request. */ - VerifyThirdPartyAuthorization: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - }; - }; - requestBody: { - "application/json": { - /** - * Base64 encoded binary string - the original challenge. - */ - challenge: string; - /** - * Base64 encoded binary string - the signed challenge - */ - value: string; - /** - * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which constent allows the PISP to initiate transaction. - */ - consentId: string; - /** - * DFSP specific account identifiers, e.g. `dfspa.alice.1234` - */ - sourceAccountId: string; - /** - * The status of the authorization. This MUST be PENDING for a POST request - */ - status: "PENDING"; - }; - }; + GetThirdpartyTransactionRequests: { responses: { /** * Accepted @@ -15429,119 +13963,55 @@ export interface operations { }; }; /** - * The HTTP request `PUT /thirdpartyRequests/transactions/{id}/authorizations` is used by the auth-service to update a thirdparty authorization after successful validation. - * For an unsuccessful authorization result, the `PUT /thirdpartyRequests/transactions/{id}/authorizations/error` will be called by the auth-service, instead of this endpoint. + * The HTTP request `PUT /thirdpartyRequests/transactions/{ID}` is used by the DFSP to inform the client about + * the status of a previously requested thirdparty transaction request. + * + * Switch(Thirdparty API Adapter) -> PISP */ - UpdateThirdpartyAuthorization: { - requestBody: { - "application/json": { - /** - * Base64 encoded binary string - the original challenge. - */ - challenge: string; + UpdateThirdPartyTransactionRequests: { + parameters: { + header: { /** - * Base64 encoded binary string - the signed challenge. + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). */ - value: string; + "Content-Length"?: number; /** - * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which consent allows the PISP to initiate transaction. + * The `Content-Type` header indicates the specific version of the API used to send the payload body. */ - consentId: string; + "Content-Type": string; + }; + }; + requestBody: { + "application/json": { /** - * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - sourceAccountId: string; + transactionId: string; /** - * The status of the authorization. This value must be `VERIFIED` for a PUT request. - */ - status: "VERIFIED"; - }; - }; - responses: { - /** - * OK - */ - "200": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; + * Below are the allowed values for the enumeration. + * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. + * - PENDING - Payer FSP has sent the transaction request to the Payer. + * - ACCEPTED - Payer has approved the transaction. + * - REJECTED - Payer has rejected the transaction. + */ + transactionRequestState: + | "RECEIVED" + | "PENDING" + | "ACCEPTED" + | "REJECTED"; }; + }; + responses: { /** - * Forbidden + * OK */ - "403": { + "200": unknown; + /** + * Bad Request + */ + "400": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -15577,9 +14047,9 @@ export interface operations { }; }; /** - * Not Found + * Unauthorized */ - "404": { + "401": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -15615,9 +14085,9 @@ export interface operations { }; }; /** - * Method Not Allowed + * Forbidden */ - "405": { + "403": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -15653,9 +14123,9 @@ export interface operations { }; }; /** - * Not Acceptable + * Not Found */ - "406": { + "404": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -15691,9 +14161,9 @@ export interface operations { }; }; /** - * Not Implemented + * Method Not Allowed */ - "501": { + "405": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -15729,9 +14199,9 @@ export interface operations { }; }; /** - * Service Unavailable + * Not Acceptable */ - "503": { + "406": { "application/json": { /** * Data model for the complex type ErrorInformation. @@ -15742,859 +14212,569 @@ export interface operations { */ errorCode: string; /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - }; - }; - /** - * The HTTP request `POST /thirdpartyRequests/authorizations` is used to request the Payer to enter the applicable credentials in the PISP system. - */ - PostThirdpartyRequestsAutorizations: { - requestBody: { - "application/json": { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - authorizationRequestId: string; - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionRequestId: string; - /** - * Base64 encoded bytes - The challenge generated by the DFSP. - */ - challenge: string; - /** - * The object sent in the PUT /quotes/{ID} callback. - */ - quote: { - /** - * Data model for the complex type Money. - */ - transferAmount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Error description string. */ - amount: string; + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { /** - * Data model for the complex type Money. + * Data model for the complex type ErrorInformation. */ - payeeReceiveAmount?: { + errorInformation?: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + errorCode: string; /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Error description string. */ - amount: string; + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + }; + }; + /** + * The HTTP request `PATCH /thirdpartyRequests/transactions/{ID}` is used to + * notify a thirdparty of the outcome of a transaction request. + * + * Switch(Thirdparty API Adapter) -> PISP + */ + NotifyThirdpartyTransactionRequests: { + parameters: { + header: { + /** + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). + */ + "Content-Length"?: number; + /** + * The `Content-Type` header indicates the specific version of the API used to send the payload body. + */ + "Content-Type": string; + }; + }; + requestBody: { + "application/json": { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + transactionId: string; + /** + * Below are the allowed values for the enumeration. + * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. + * - PENDING - Payer FSP has sent the transaction request to the Payer. + * - ACCEPTED - Payer has approved the transaction. + * - REJECTED - Payer has rejected the transaction. + */ + transactionRequestState: + | "RECEIVED" + | "PENDING" + | "ACCEPTED" + | "REJECTED"; + /** + * Below are the allowed values for the enumeration. + * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. + * - PENDING - Payee FSP has validated the transaction. + * - COMPLETED - Payee FSP has successfully performed the transaction. + * - REJECTED - Payee FSP has failed to perform the transaction. + */ + transactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; + }; + }; + responses: { + /** + * OK + */ + "200": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { /** - * Data model for the complex type Money. + * Data model for the complex type ErrorInformation. */ - payeeFspFee?: { + errorInformation?: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - amount: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { /** - * Data model for the complex type Money. + * Data model for the complex type ErrorInformation. */ - payeeFspCommission?: { + errorInformation?: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + errorCode: string; /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Found + */ + "404": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - amount: string; + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). - */ - expiration: string; - /** - * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. + * Data model for the complex type ErrorInformation. */ - geoCode?: { + errorInformation?: { /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - latitude: string; + errorCode: string; /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Error description string. */ - longitude: string; + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; + }; + }; + /** + * Not Acceptable + */ + "406": { + "application/json": { /** - * Information for recipient (transport layer information). - */ - ilpPacket: string; - /** - * Condition that must be attached to the transfer by the Payer. + * Data model for the complex type ErrorInformation. */ - condition: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type ErrorInformation. */ - extensionList?: { + errorInformation?: { /** - * Number of Extension elements. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - extension: { + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Extension key. + * Number of Extension elements. */ - key: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Extension value. + * Number of Extension elements. */ - value: string; - }[]; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; }; + }; + }; + }; + /** + * If the server is unable to find the transaction request, or another processing error occurs, + * the error callback `PUT /thirdpartyRequests/transactions/{ID}/error` is used. + * The `{ID}` in the URI should contain the `transactionRequestId` that was used for the creation of + * the thirdparty transaction request. + */ + ThirdpartyTransactionRequestsError: { + parameters: { + path: { /** - * Data model for the complex type TransactionType. + * The identifier value. */ - transactionType: { - /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. - */ - scenario: - | "DEPOSIT" - | "WITHDRAWAL" - | "TRANSFER" - | "PAYMENT" - | "REFUND"; - /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). - */ - subScenario?: string; + ID: string; + }; + header: { + /** + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). + */ + "Content-Length"?: number; + /** + * The `Content-Type` header indicates the specific version of the API used to send the payload body. + */ + "Content-Type": string; + /** + * The `Date` header field indicates the date when the request was sent. + */ + Date: string; + /** + * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. + * + * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. + */ + "X-Forwarded-For"?: string; + /** + * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). + */ + "FSPIOP-Source": string; + /** + * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. + */ + "FSPIOP-Destination"?: string; + /** + * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. + */ + "FSPIOP-Encryption"?: string; + /** + * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. + */ + "FSPIOP-Signature"?: string; + /** + * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-URI"?: string; + /** + * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-HTTP-Method"?: string; + }; + }; + requestBody: { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation: { /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - initiator: "PAYER" | "PAYEE"; + errorCode: string; /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * Error description string. */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + errorDescription: string; /** - * Data model for the complex type Refund. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - refundInfo?: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - originalTransactionId: string; + extensionList?: { /** - * Reason for the refund. + * Number of Extension elements. */ - refundReason?: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; - /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. - */ - balanceOfPayments?: string; }; }; }; responses: { /** - * Accepted + * OK */ - "202": unknown; + "200": unknown; /** * Bad Request */ @@ -16902,58 +15082,46 @@ export interface operations { }; }; /** - * The callback PUT /thirdpartyRequests/authorizations/{ID} is used to inform the client of the - * result of a previously-requested authorization. The ID in the URI should - * contain the one that was used in the POST /authorizations/ requestBody.transactionRequestId @ OUTBOUND + * The HTTP request `POST /thirdpartyRequests/transactions/{id}/authorizations` is used by the DFSP to verify a third party authorization. */ - PutThirdpartyRequestsAuthorizationsById: { + VerifyThirdPartyAuthorization: { parameters: { - path: { - ID: string; + header: { + /** + * The `Accept` header field indicates the version of the API the client would like the server to use. + */ + Accept: string; + }; + }; + requestBody: { + "application/json": { + /** + * Base64 encoded binary string - the original challenge. + */ + challenge: string; + /** + * Base64 encoded binary string - the signed challenge + */ + value: string; + /** + * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which constent allows the PISP to initiate transaction. + */ + consentId: string; + /** + * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + */ + sourceAccountId: string; + /** + * The status of the authorization. This MUST be PENDING for a POST request + */ + status: "PENDING"; }; }; responses: { /** - * information about result of required (via POST) /authorization + * Accepted */ - "200": { - "application/json": { - /** - * Data model for the complex type AuthenticationInfo. - */ - authenticationInfo: { - /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - authentication: "OTP" | "QRCODE" | "U2F"; - /** - * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. - */ - authenticationValue: Partial & - Partial & - Partial<{ - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }>; - }; - /** - * Below are the allowed values for the enumeration. - * - ENTERED - Consumer entered the authentication value. - * - REJECTED - Consumer rejected the transaction. - * - RESEND - Consumer requested to resend the authentication value. - */ - responseType: "ENTERED" | "REJECTED" | "RESEND"; - }; - }; + "202": unknown; /** * Bad Request */ @@ -17261,57 +15429,32 @@ export interface operations { }; }; /** - * The HTTP request `PUT /thirdpartyRequests/authorizations/{ID}/error` is used by the DFSP or PISP to inform - * the other party that something went wrong with a Thirdparty Tranasction Authorization Request. - * - * The PISP may use this to tell the DFSP that the Thirdparty Tranasction Authorization Request is invalid or doesn't - * match a `transactionRequestId`. - * - * The DFSP may use this to tell the PISP that the signed challenge returned in `PUT /thirdpartyRequest/authorizations/{ID}` - * was invalid. + * The HTTP request `PUT /thirdpartyRequests/transactions/{id}/authorizations` is used by the auth-service to update a thirdparty authorization after successful validation. + * For an unsuccessful authorization result, the `PUT /thirdpartyRequests/transactions/{id}/authorizations/error` will be called by the auth-service, instead of this endpoint. */ - PutThirdpartyRequestsAuthorizationsByIdAndError: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - }; - }; + UpdateThirdpartyAuthorization: { requestBody: { "application/json": { /** - * Data model for the complex type ErrorInformation. + * Base64 encoded binary string - the original challenge. */ - errorInformation: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; + challenge: string; + /** + * Base64 encoded binary string - the signed challenge. + */ + value: string; + /** + * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which consent allows the PISP to initiate transaction. + */ + consentId: string; + /** + * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + */ + sourceAccountId: string; + /** + * The status of the authorization. This value must be `VERIFIED` for a PUT request. + */ + status: "VERIFIED"; }; }; responses: { @@ -17620,413 +15763,838 @@ export interface operations { value: string; }[]; }; - }; - }; - }; - }; - }; - /** - * The HTTP request `POST /thirdpartyRequests/verifications` is used by the DFSP to verify a third party authorization. - */ - PutThirdpartyRequestsVerifications: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - }; - }; - requestBody: { - "application/json": { - verificationRequestId: string; - /** - * Base64 encoded bytes - The challenge generated by the DFSP. - */ - challenge: string; - value: { - /** - * Data model for the complex type AuthenticationInfo. - */ - authenticationInfo?: { - /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - authentication: "OTP" | "QRCODE" | "U2F"; - /** - * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. - */ - authenticationValue: Partial & - Partial & - Partial<{ - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }>; - }; - /** - * Below are the allowed values for the enumeration. - * - ENTERED - Consumer entered the authentication value. - * - REJECTED - Consumer rejected the transaction. - * - RESEND - Consumer requested to resend the authentication value. - */ - responseType?: "ENTERED" | "REJECTED" | "RESEND"; - }; - /** - * The id of the stored consent object that contains the credential with which to verify - * the signed challenge against. - */ - consentId: string; + }; + }; }; }; - responses: { - /** - * Accepted - */ - "202": unknown; - /** - * Bad Request - */ - "400": { - "application/json": { + }; + /** + * The HTTP request `POST /thirdpartyRequests/authorizations` is used to request the Payer to enter the applicable credentials in the PISP system. + */ + PostThirdpartyRequestsAutorizations: { + requestBody: { + "application/json": { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + authorizationRequestId: string; + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + transactionRequestId: string; + /** + * Base64 encoded bytes - The challenge generated by the DFSP. + */ + challenge: string; + /** + * The object sent in the PUT /quotes/{ID} callback. + */ + quote: { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { + transferAmount: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorCode: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Error description string. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - errorDescription: string; + amount: string; + }; + /** + * Data model for the complex type Money. + */ + payeeReceiveAmount?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Unauthorized - */ - "401": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + payeeFspFee?: { /** - * Error description string. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorDescription: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Forbidden - */ - "403": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + payeeFspCommission?: { /** - * Error description string. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorDescription: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - }; - /** - * Not Found - */ - "404": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Method Not Allowed - */ - "405": { - "application/json": { + expiration: string; /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + geoCode?: { /** - * Error description string. + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - errorDescription: string; + latitude: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + longitude: string; }; - }; - }; - /** - * Not Acceptable - */ - "406": { - "application/json": { /** - * Data model for the complex type ErrorInformation. + * Information for recipient (transport layer information). */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - }; - }; - /** - * Not Implemented - */ - "501": { - "application/json": { + ilpPacket: string; /** - * Data model for the complex type ErrorInformation. + * Condition that must be attached to the transfer by the Payer. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; + condition: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Number of Extension elements. */ - extensionList?: { + extension: { /** - * Number of Extension elements. + * Extension key. */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; }; - }; - /** - * Service Unavailable - */ - "503": { - "application/json": { + /** + * Data model for the complex type TransactionType. + */ + transactionType: { /** - * Data model for the complex type ErrorInformation. + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + scenario: + | "DEPOSIT" + | "WITHDRAWAL" + | "TRANSFER" + | "PAYMENT" + | "REFUND"; + /** + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + */ + subScenario?: string; + /** + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + */ + initiator: "PAYER" | "PAYEE"; + /** + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. + */ + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** + * Data model for the complex type Refund. + */ + refundInfo?: { /** - * Error description string. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - errorDescription: string; + originalTransactionId: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Reason for the refund. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + refundReason?: string; }; + /** + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + */ + balanceOfPayments?: string; }; }; }; - }; - /** - * The HTTP request `PUT /thirdpartyRequests/verifications/{ID}` is used by the Auth-Service to inform - * the DFSP of a successful result in validating the verification of a Thirdparty Transaction Request. - * - * If the validation fails, The Auth-Service MUST use `PUT /thirdpartyRequests/verifications/{ID}/error` - * instead. - */ - PutThirdpartyRequestsVerificationsById: { - parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - }; - }; - requestBody: { - "application/json": { - /** - * The verification passed - */ - authenticationResponse: "VERIFIED"; - }; - }; responses: { /** - * OK + * Accepted */ - "200": unknown; + "202": unknown; /** * Bad Request */ @@ -18334,58 +16902,58 @@ export interface operations { }; }; /** - * The HTTP request `PUT /thirdpartyRequests/verifications/{ID}/error` is used by the Auth-Service to inform - * the DFSP of a failure in validating or looking up the verification of a Thirdparty Transaction Request. + * The callback PUT /thirdpartyRequests/authorizations/{ID} is used to inform the client of the + * result of a previously-requested authorization. The ID in the URI should + * contain the one that was used in the POST /authorizations/ requestBody.transactionRequestId @ OUTBOUND */ - PutThirdpartyRequestsVerificationsByIdAndError: { + PutThirdpartyRequestsAuthorizationsById: { parameters: { - header: { - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; + path: { + ID: string; }; }; - requestBody: { - "application/json": { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; + responses: { + /** + * information about result of required (via POST) /authorization + */ + "200": { + "application/json": { /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type AuthenticationInfo. */ - extensionList?: { + authenticationInfo: { /** - * Number of Extension elements. + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; + authentication: "OTP" | "QRCODE" | "U2F"; + /** + * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. + */ + authenticationValue: Partial & + Partial & + Partial<{ + /** + * U2F challenge-response. + */ + pinValue: string; + /** + * Sequential counter used for cloning detection. Present only for U2F authentication. + */ + counter: string; + }>; }; + /** + * Below are the allowed values for the enumeration. + * - ENTERED - Consumer entered the authentication value. + * - REJECTED - Consumer rejected the transaction. + * - RESEND - Consumer requested to resend the authentication value. + */ + responseType: "ENTERED" | "REJECTED" | "RESEND"; }; }; - }; - responses: { - /** - * OK - */ - "200": unknown; /** * Bad Request */ @@ -18692,3471 +17260,3869 @@ export interface operations { }; }; }; -} - -export interface components { - parameters: { - /** - * The identifier value. - */ - ID: string; - /** - * The `Date` header field indicates the date when the request was sent. - */ - Date: string; - /** - * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. - * - * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. - */ - "X-Forwarded-For": string; - /** - * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). - */ - "FSPIOP-Source": string; - /** - * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. - */ - "FSPIOP-Destination": string; - /** - * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. - */ - "FSPIOP-Encryption": string; - /** - * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. - */ - "FSPIOP-Signature": string; - /** - * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-URI": string; - /** - * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). - */ - "FSPIOP-HTTP-Method": string; - /** - * The `Accept` header field indicates the version of the API the client would like the server to use. - */ - Accept: string; - /** - * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. - * - * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). - */ - "Content-Length": number; - /** - * The `Content-Type` header indicates the specific version of the API used to send the payload body. - */ - "Content-Type": string; - /** - * The type of the service identifier. For example, `THIRD_PARTY_DFSP` - */ - ServiceType: string; - }; - schemas: { - /** - * Below are the allowed values for the enumeration AuthorizationChannelType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - AuthorizationChannelType: "OTP" | "QRCODE" | "U2F"; - /** - * Enum containing response information; if the customer entered the - * authentication value, rejected the transaction, or requested a - * resend of the authentication value. - */ - AuthorizationResponseType: "ENTERED" | "REJECTED" | "RESEND"; - /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - AuthenticationType: "OTP" | "QRCODE" | "U2F"; - /** - * The API data type Integer is a JSON String consisting of digits only. Negative numbers and leading zeroes are not allowed. The data type is always limited to a specific number of digits. - */ - Integer: string; - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - Currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - Amount: string; - /** - * Data model for the complex type Money. - */ - Money: { + /** + * The HTTP request `PUT /thirdpartyRequests/authorizations/{ID}/error` is used by the DFSP or PISP to inform + * the other party that something went wrong with a Thirdparty Tranasction Authorization Request. + * + * The PISP may use this to tell the DFSP that the Thirdparty Tranasction Authorization Request is invalid or doesn't + * match a `transactionRequestId`. + * + * The DFSP may use this to tell the PISP that the signed challenge returned in `PUT /thirdpartyRequest/authorizations/{ID}` + * was invalid. + */ + PutThirdpartyRequestsAuthorizationsByIdAndError: { + parameters: { + header: { + /** + * The `Accept` header field indicates the version of the API the client would like the server to use. + */ + Accept: string; + }; + }; + requestBody: { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + responses: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * OK */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + "200": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Not Found */ - amount: string; - }; - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - CorrelationId: string; - /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). - */ - DateTime: string; - /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. - */ - Latitude: string; - /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. - */ - Longitude: string; - /** - * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. - */ - GeoCode: { + "404": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Method Not Allowed */ - latitude: string; + "405": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Not Acceptable */ - longitude: string; - }; - /** - * Information for recipient (transport layer information). - */ - IlpPacket: string; - /** - * Condition that must be attached to the transfer by the Payer. - */ - IlpCondition: string; - /** - * Extension key. - */ - ExtensionKey: string; - /** - * Extension value. - */ - ExtensionValue: string; - /** - * Data model for the complex type Extension. - */ - Extension: { + "406": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; /** - * Extension key. + * Not Implemented */ - key: string; + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; /** - * Extension value. + * Service Unavailable */ - value: string; + "503": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; }; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - ExtensionList: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; + }; + /** + * The HTTP request `POST /thirdpartyRequests/verifications` is used by the DFSP to verify a third party authorization. + */ + PutThirdpartyRequestsVerifications: { + parameters: { + header: { /** - * Extension value. + * The `Accept` header field indicates the version of the API the client would like the server to use. */ - value: string; - }[]; + Accept: string; + }; }; - /** - * The object sent in the PUT /quotes/{ID} callback. - */ - QuotesIDPutResponse: { - /** - * Data model for the complex type Money. - */ - transferAmount: { + requestBody: { + "application/json": { + verificationRequestId: string; /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Base64 encoded bytes - The challenge generated by the DFSP. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + challenge: string; + value: { + /** + * Data model for the complex type AuthenticationInfo. + */ + authenticationInfo?: { + /** + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. + */ + authentication: "OTP" | "QRCODE" | "U2F"; + /** + * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. + */ + authenticationValue: Partial & + Partial & + Partial<{ + /** + * U2F challenge-response. + */ + pinValue: string; + /** + * Sequential counter used for cloning detection. Present only for U2F authentication. + */ + counter: string; + }>; + }; + /** + * Below are the allowed values for the enumeration. + * - ENTERED - Consumer entered the authentication value. + * - REJECTED - Consumer rejected the transaction. + * - RESEND - Consumer requested to resend the authentication value. + */ + responseType?: "ENTERED" | "REJECTED" | "RESEND"; + }; /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * The id of the stored consent object that contains the credential with which to verify + * the signed challenge against. */ - amount: string; + consentId: string; + }; + }; + responses: { + /** + * Accepted + */ + "202": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; }; /** - * Data model for the complex type Money. + * Unauthorized */ - payeeReceiveAmount?: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; + "401": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; }; /** - * Data model for the complex type Money. + * Not Found */ - payeeFspFee?: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; + "404": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; }; /** - * Data model for the complex type Money. + * Not Acceptable */ - payeeFspCommission?: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + "406": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + }; + }; + /** + * The HTTP request `PUT /thirdpartyRequests/verifications/{ID}` is used by the Auth-Service to inform + * the DFSP of a successful result in validating the verification of a Thirdparty Transaction Request. + * + * If the validation fails, The Auth-Service MUST use `PUT /thirdpartyRequests/verifications/{ID}/error` + * instead. + */ + PutThirdpartyRequestsVerificationsById: { + parameters: { + header: { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * The `Accept` header field indicates the version of the API the client would like the server to use. */ - amount: string; + Accept: string; + }; + }; + requestBody: { + "application/json": { + /** + * The verification passed + */ + authenticationResponse: "VERIFIED"; }; + }; + responses: { /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + * OK */ - expiration: string; + "200": unknown; /** - * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. + * Bad Request */ - geoCode?: { - /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. - */ - latitude: string; - /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. - */ - longitude: string; + "400": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Forbidden + */ + "403": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Found + */ + "404": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; }; /** - * Information for recipient (transport layer information). - */ - ilpPacket: string; - /** - * Condition that must be attached to the transfer by the Payer. - */ - condition: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Not Acceptable */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; + "406": { + "application/json": { /** - * Extension value. + * Data model for the complex type ErrorInformation. */ - value: string; - }[]; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; }; - }; - /** - * POST /authorizations request object. - */ - AuthorizationsPostRequest: { - /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - authenticationType: "OTP" | "QRCODE" | "U2F"; - /** - * The API data type Integer is a JSON String consisting of digits only. Negative numbers and leading zeroes are not allowed. The data type is always limited to a specific number of digits. - */ - retriesLeft: string; /** - * Data model for the complex type Money. + * Not Implemented */ - amount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; + "501": { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; }; /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionId: string; - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionRequestId: string; - /** - * The object sent in the PUT /quotes/{ID} callback. + * Service Unavailable */ - quote: { - /** - * Data model for the complex type Money. - */ - transferAmount: { + "503": { + "application/json": { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Data model for the complex type ErrorInformation. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + }; + }; + /** + * The HTTP request `PUT /thirdpartyRequests/verifications/{ID}/error` is used by the Auth-Service to inform + * the DFSP of a failure in validating or looking up the verification of a Thirdparty Transaction Request. + */ + PutThirdpartyRequestsVerificationsByIdAndError: { + parameters: { + header: { + /** + * The `Accept` header field indicates the version of the API the client would like the server to use. + */ + Accept: string; + }; + }; + requestBody: { + "application/json": { + /** + * Data model for the complex type ErrorInformation. + */ + errorInformation: { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - amount: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; - /** - * Data model for the complex type Money. - */ - payeeReceiveAmount?: { + }; + }; + responses: { + /** + * OK + */ + "200": unknown; + /** + * Bad Request + */ + "400": { + "application/json": { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Data model for the complex type ErrorInformation. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Unauthorized + */ + "401": { + "application/json": { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Data model for the complex type ErrorInformation. */ - amount: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; - /** - * Data model for the complex type Money. - */ - payeeFspFee?: { + }; + /** + * Forbidden + */ + "403": { + "application/json": { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Data model for the complex type ErrorInformation. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Found + */ + "404": { + "application/json": { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Data model for the complex type ErrorInformation. */ - amount: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; - /** - * Data model for the complex type Money. - */ - payeeFspCommission?: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + }; + /** + * Method Not Allowed + */ + "405": { + "application/json": { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Data model for the complex type ErrorInformation. */ - amount: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; - /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). - */ - expiration: string; - /** - * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. - */ - geoCode?: { + }; + /** + * Not Acceptable + */ + "406": { + "application/json": { /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Data model for the complex type ErrorInformation. */ - latitude: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + }; + }; + /** + * Not Implemented + */ + "501": { + "application/json": { /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Data model for the complex type ErrorInformation. */ - longitude: string; + errorInformation?: { + /** + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + */ + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; - /** - * Information for recipient (transport layer information). - */ - ilpPacket: string; - /** - * Condition that must be attached to the transfer by the Payer. - */ - condition: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { + }; + /** + * Service Unavailable + */ + "503": { + "application/json": { /** - * Number of Extension elements. + * Data model for the complex type ErrorInformation. */ - extension: { + errorInformation?: { /** - * Extension key. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - key: string; + errorCode: string; /** - * Extension value. + * Error description string. */ - value: string; - }[]; + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; }; }; + }; +} + +export interface components { + parameters: { + /** + * The identifier value. + */ + ID: string; + /** + * The `Date` header field indicates the date when the request was sent. + */ + Date: string; + /** + * The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API. + * + * **Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`. + */ + "X-Forwarded-For": string; + /** + * The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`). + */ + "FSPIOP-Source": string; + /** + * The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty. + */ + "FSPIOP-Destination": string; + /** + * The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request. + */ + "FSPIOP-Encryption": string; + /** + * The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature. + */ + "FSPIOP-Signature": string; + /** + * The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-URI": string; + /** + * The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set). + */ + "FSPIOP-HTTP-Method": string; + /** + * The `Accept` header field indicates the version of the API the client would like the server to use. + */ + Accept: string; + /** + * The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body. + * + * **Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes). + */ + "Content-Length": number; + /** + * The `Content-Type` header indicates the specific version of the API used to send the payload body. + */ + "Content-Type": string; + /** + * The type of the service identifier. For example, `THIRD_PARTY_DFSP` + */ + ServiceType: string; + }; + schemas: { + /** + * Below are the allowed values for the enumeration AuthorizationChannelType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. + */ + AuthorizationChannelType: "OTP" | "QRCODE" | "U2F"; + /** + * Enum containing response information; if the customer entered the + * authentication value, rejected the transaction, or requested a + * resend of the authentication value. + */ + AuthorizationResponseType: "ENTERED" | "REJECTED" | "RESEND"; + /** + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. + */ + AuthenticationType: "OTP" | "QRCODE" | "U2F"; + /** + * The API data type Integer is a JSON String consisting of digits only. Negative numbers and leading zeroes are not allowed. The data type is always limited to a specific number of digits. + */ + Integer: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + Currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * The status of the Consent. - * - "REVOKED" - The Consent is no longer valid and has been revoked. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - ConsentStatusType: "REVOKED"; + Amount: string; /** - * PATCH /consents/{ID} request object. - * - * Sent to both the PISP and DFSP when a consent is revoked. + * Data model for the complex type Money. */ - ConsentsIDPatchResponse: { + Money: { /** - * The status of the Consent. - * - "REVOKED" - The Consent is no longer valid and has been revoked. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - status: "REVOKED"; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - revokedAt: string; + amount: string; }; /** - * Fulfilment that must be attached to the transfer by the Payee. - */ - IlpFulfilment: string; - /** - * Memo assigned to transaction. - */ - Note: string; - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - PartyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + CorrelationId: string; /** - * Identifier of the Party. + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - PartyIdentifier: string; + DateTime: string; /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - PartySubIdOrType: string; + Latitude: string; /** - * FSP identifier. + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - FspId: string; + Longitude: string; /** - * Data model for the complex type PartyIdInfo. + * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. */ - PartyIdInfo: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD - */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; + GeoCode: { /** - * FSP identifier. + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - fspId?: string; + latitude: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + longitude: string; }; /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * Information for recipient (transport layer information). */ - ErrorCode: string; + IlpPacket: string; /** - * Error description string. + * Condition that must be attached to the transfer by the Payer. */ - ErrorDescription: string; + IlpCondition: string; /** - * Data model for the complex type ErrorInformation. + * Extension key. */ - ErrorInformation: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; + ExtensionKey: string; /** - * Data model for the complex type PartyResult. + * Extension value. */ - PartyResult: { + ExtensionValue: string; + /** + * Data model for the complex type Extension. + */ + Extension: { /** - * Data model for the complex type PartyIdInfo. + * Extension key. */ - partyId: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD + key: string; + /** + * Extension value. + */ + value: string; + }; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + ExtensionList: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + key: string; /** - * Identifier of the Party. + * Extension value. */ - partyIdentifier: string; + value: string; + }[]; + }; + /** + * The object sent in the PUT /quotes/{ID} callback. + */ + QuotesIDPutResponse: { + /** + * Data model for the complex type Money. + */ + transferAmount: { /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - partySubIdOrType?: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * FSP identifier. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - fspId?: string; + amount: string; + }; + /** + * Data model for the complex type Money. + */ + payeeReceiveAmount?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; /** - * Data model for the complex type ErrorInformation. + * Data model for the complex type Money. */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; + payeeFspFee?: { /** - * Error description string. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - errorDescription: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + amount: string; }; - }; - /** - * The object sent in the POST /participants request. - */ - ParticipantsPostRequest: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - requestId: string; /** - * List of PartyIdInfo elements that the client would like to update - * or create FSP information about. + * Data model for the complex type Money. */ - partyList: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD - */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + payeeFspCommission?: { /** - * Identifier of the Party. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - partyIdentifier: string; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - partySubIdOrType?: string; + amount: string; + }; + /** + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + */ + expiration: string; + /** + * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. + */ + geoCode?: { /** - * FSP identifier. + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - fspId?: string; + latitude: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }[]; + longitude: string; + }; /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Information for recipient (transport layer information). */ - currency?: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + ilpPacket: string; + /** + * Condition that must be attached to the transfer by the Payer. + */ + condition: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - AccountAddress: string; - /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. - */ - Name: string; - /** - * Data model for the complex type Account. + * POST /authorizations request object. */ - Account: { + AuthorizationsPostRequest: { /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - address?: string; + authenticationType: "OTP" | "QRCODE" | "U2F"; /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * The API data type Integer is a JSON String consisting of digits only. Negative numbers and leading zeroes are not allowed. The data type is always limited to a specific number of digits. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + retriesLeft: string; + /** + * Data model for the complex type Money. + */ + amount: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - description?: string; - }; - /** - * Data model for the complex type AccountList. - */ - AccountList: { + transactionId: string; /** - * Accounts associated with the Party. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - account: { + transactionRequestId: string; + /** + * The object sent in the PUT /quotes/{ID} callback. + */ + quote: { + /** + * Data model for the complex type Money. + */ + transferAmount: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; + /** + * Data model for the complex type Money. + */ + payeeReceiveAmount?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; + /** + * Data model for the complex type Money. + */ + payeeFspFee?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * Data model for the complex type Money. */ - address?: string; + payeeFspCommission?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + expiration: string; /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. */ - description?: string; - }[]; + geoCode?: { + /** + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + */ + latitude: string; + /** + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + */ + longitude: string; + }; + /** + * Information for recipient (transport layer information). + */ + ilpPacket: string; + /** + * Condition that must be attached to the transfer by the Payer. + */ + condition: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; }; /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. + * The status of the Consent. + * - "REVOKED" - The Consent is no longer valid and has been revoked. */ - MerchantClassificationCode: string; + ConsentStatusType: "REVOKED"; /** - * Name of the Party. Could be a real name or a nickname. + * PATCH /consents/{ID} request object. + * + * Sent to both the PISP and DFSP when a consent is revoked. */ - PartyName: string; + ConsentsIDPatchResponse: { + /** + * The status of the Consent. + * - "REVOKED" - The Consent is no longer valid and has been revoked. + */ + status: "REVOKED"; + /** + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + */ + revokedAt: string; + }; /** - * First name of the Party (Name Type). + * Fulfilment that must be attached to the transfer by the Payee. */ - FirstName: string; + IlpFulfilment: string; /** - * Middle name of the Party (Name Type). + * Memo assigned to transaction. */ - MiddleName: string; + Note: string; /** - * Last name of the Party (Name Type). + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD */ - LastName: string; + PartyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** - * Data model for the complex type PartyComplexName. + * Identifier of the Party. */ - PartyComplexName: { + PartyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + PartySubIdOrType: string; + /** + * FSP identifier. + */ + FspId: string; + /** + * Data model for the complex type PartyIdInfo. + */ + PartyIdInfo: { /** - * First name of the Party (Name Type). + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD */ - firstName?: string; + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** - * Middle name of the Party (Name Type). + * Identifier of the Party. */ - middleName?: string; + partyIdentifier: string; /** - * Last name of the Party (Name Type). + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - lastName?: string; + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; /** - * Date of Birth of the Party. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - DateOfBirth: string; + ErrorCode: string; /** - * Data model for the complex type PartyPersonalInfo. + * Error description string. */ - PartyPersonalInfo: { + ErrorDescription: string; + /** + * Data model for the complex type ErrorInformation. + */ + ErrorInformation: { /** - * Data model for the complex type PartyComplexName. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - complexName?: { - /** - * First name of the Party (Name Type). - */ - firstName?: string; - /** - * Middle name of the Party (Name Type). - */ - middleName?: string; - /** - * Last name of the Party (Name Type). - */ - lastName?: string; - }; + errorCode: string; /** - * Date of Birth of the Party. + * Error description string. */ - dateOfBirth?: string; - }; - /** - * Data model for the complex type Party. - */ - Party: { + errorDescription: string; /** - * Data model for the complex type AccountList. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - accounts?: { + extensionList?: { /** - * Accounts associated with the Party. + * Number of Extension elements. */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; + extension: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Extension key. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + key: string; /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + * Extension value. */ - description?: string; + value: string; }[]; }; + }; + /** + * Data model for the complex type PartyResult. + */ + PartyResult: { /** * Data model for the complex type PartyIdInfo. */ - partyIdInfo: { + partyId: { /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. @@ -22200,16 +21166,16 @@ export interface components { * - THIRD_PARTY_LINK - TBD */ partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** * Identifier of the Party. */ @@ -22236,295 +21202,99 @@ export interface components { key: string; /** * Extension value. - */ - value: string; - }[]; - }; - }; - /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. - */ - merchantClassificationCode?: string; - /** - * Name of the Party. Could be a real name or a nickname. - */ - name?: string; - /** - * Data model for the complex type PartyPersonalInfo. - */ - personalInfo?: { - /** - * Data model for the complex type PartyComplexName. - */ - complexName?: { - /** - * First name of the Party (Name Type). - */ - firstName?: string; - /** - * Middle name of the Party (Name Type). - */ - middleName?: string; - /** - * Last name of the Party (Name Type). - */ - lastName?: string; + */ + value: string; + }[]; }; - /** - * Date of Birth of the Party. - */ - dateOfBirth?: string; }; - }; - /** - * The object sent in the PUT /parties/{Type}/{ID} callback. - * - * This is a variant based on FSPIOP `PartiesTypeIDPutResponse` specification. - * Main difference being that it returns a `Party` with the newly added - * `accounts` property. - */ - PartiesTypeIDPutResponse: { /** - * Data model for the complex type Party. + * Data model for the complex type ErrorInformation. */ - party: { + errorInformation?: { /** - * Data model for the complex type AccountList. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - accounts?: { + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Accounts associated with the Party. + * Number of Extension elements. */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; + extension: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Extension key. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + key: string; /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + * Extension value. */ - description?: string; + value: string; }[]; }; + }; + }; + /** + * The object sent in the POST /participants request. + */ + ParticipantsPostRequest: { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + requestId: string; + /** + * List of PartyIdInfo elements that the client would like to update + * or create FSP information about. + */ + partyList: { /** - * Data model for the complex type PartyIdInfo. + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD */ - partyIdInfo: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD - */ - partyIdType: + partyIdType: | "MSISDN" | "EMAIL" | "PERSONAL_ID" @@ -22535,251 +21305,682 @@ export interface components { | "ALIAS" | "CONSENT" | "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; - /** - * FSP identifier. - */ - fspId?: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. + * Identifier of the Party. */ - merchantClassificationCode?: string; + partyIdentifier: string; /** - * Name of the Party. Could be a real name or a nickname. + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - name?: string; + partySubIdOrType?: string; /** - * Data model for the complex type PartyPersonalInfo. + * FSP identifier. */ - personalInfo?: { + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Data model for the complex type PartyComplexName. + * Number of Extension elements. */ - complexName?: { - /** - * First name of the Party (Name Type). - */ - firstName?: string; + extension: { /** - * Middle name of the Party (Name Type). + * Extension key. */ - middleName?: string; + key: string; /** - * Last name of the Party (Name Type). + * Extension value. */ - lastName?: string; - }; - /** - * Date of Birth of the Party. - */ - dateOfBirth?: string; + value: string; + }[]; }; - }; + }[]; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency?: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; }; /** - * Below are the allowed values for the enumeration ServiceType - * - THIRD_PARTY_DFSP - Enum used to query for DFSP's that have thirdparty features enabled - */ - ServiceType: "THIRD_PARTY_DFSP"; - /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. - * - PENDING - Payer FSP has sent the transaction request to the Payer. - * - ACCEPTED - Payer has approved the transaction. - * - REJECTED - Payer has rejected the transaction. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - TransactionRequestState: "RECEIVED" | "PENDING" | "ACCEPTED" | "REJECTED"; + AccountAddress: string; /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. - * - PENDING - Payee FSP has validated the transaction. - * - COMPLETED - Payee FSP has successfully performed the transaction. - * - REJECTED - Payee FSP has failed to perform the transaction. + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. */ - TransactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; + Name: string; /** - * The object sent in the PATCH /thirdpartyRequests/transactions/{ID} callback. + * Data model for the complex type Account. */ - ThirdpartyRequestsTransactionsIDPatchResponse: { + Account: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - transactionId: string; + address?: string; /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. - * - PENDING - Payer FSP has sent the transaction request to the Payer. - * - ACCEPTED - Payer has approved the transaction. - * - REJECTED - Payer has rejected the transaction. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - transactionRequestState: "RECEIVED" | "PENDING" | "ACCEPTED" | "REJECTED"; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. - * - PENDING - Payee FSP has validated the transaction. - * - COMPLETED - Payee FSP has successfully performed the transaction. - * - REJECTED - Payee FSP has failed to perform the transaction. + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. */ - transactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; + description?: string; }; /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. - */ - TransactionScenario: - | "DEPOSIT" - | "WITHDRAWAL" - | "TRANSFER" - | "PAYMENT" - | "REFUND"; - /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + * Data model for the complex type AccountList. */ - TransactionSubScenario: string; + AccountList: { + /** + * Accounts associated with the Party. + */ + account: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + */ + description?: string; + }[]; + }; /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - TransactionInitiator: "PAYER" | "PAYEE"; + MerchantClassificationCode: string; /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * Name of the Party. Could be a real name or a nickname. */ - TransactionInitiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + PartyName: string; /** - * Reason for the refund. + * First name of the Party (Name Type). */ - RefundReason: string; + FirstName: string; /** - * Data model for the complex type Refund. + * Middle name of the Party (Name Type). */ - Refund: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - originalTransactionId: string; - /** - * Reason for the refund. - */ - refundReason?: string; - }; + MiddleName: string; /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + * Last name of the Party (Name Type). */ - BalanceOfPayments: string; + LastName: string; /** - * Data model for the complex type TransactionType. + * Data model for the complex type PartyComplexName. */ - TransactionType: { - /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. - */ - scenario: "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "PAYMENT" | "REFUND"; + PartyComplexName: { /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + * First name of the Party (Name Type). */ - subScenario?: string; + firstName?: string; /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * Middle name of the Party (Name Type). */ - initiator: "PAYER" | "PAYEE"; + middleName?: string; /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * Last name of the Party (Name Type). */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + lastName?: string; + }; + /** + * Date of Birth of the Party. + */ + DateOfBirth: string; + /** + * Data model for the complex type PartyPersonalInfo. + */ + PartyPersonalInfo: { /** - * Data model for the complex type Refund. + * Data model for the complex type PartyComplexName. */ - refundInfo?: { + complexName?: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * First name of the Party (Name Type). */ - originalTransactionId: string; + firstName?: string; /** - * Reason for the refund. + * Middle name of the Party (Name Type). */ - refundReason?: string; + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; }; /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + * Date of Birth of the Party. */ - balanceOfPayments?: string; + dateOfBirth?: string; }; /** - * The object sent in the POST /transactionRequests request. + * Data model for the complex type Party. */ - TransactionRequestsPostRequest: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - transactionRequestId: string; + Party: { /** - * Data model for the complex type Party. + * Data model for the complex type AccountList. */ - payee: { + accounts?: { /** - * Data model for the complex type AccountList. + * Accounts associated with the Party. */ - accounts?: { + account: { /** - * Accounts associated with the Party. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: | "AED" | "AFN" | "ALL" @@ -22892,193 +22093,70 @@ export interface components { | "PGK" | "PHP" | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. - */ - description?: string; - }[]; - }; - /** - * Data model for the complex type PartyIdInfo. - */ - partyIdInfo: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD - */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; - /** - * FSP identifier. - */ - fspId?: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; - /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. - */ - merchantClassificationCode?: string; - /** - * Name of the Party. Could be a real name or a nickname. - */ - name?: string; - /** - * Data model for the complex type PartyPersonalInfo. - */ - personalInfo?: { - /** - * Data model for the complex type PartyComplexName. - */ - complexName?: { - /** - * First name of the Party (Name Type). - */ - firstName?: string; - /** - * Middle name of the Party (Name Type). - */ - middleName?: string; - /** - * Last name of the Party (Name Type). - */ - lastName?: string; - }; + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * Date of Birth of the Party. + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. */ - dateOfBirth?: string; - }; + description?: string; + }[]; }; /** * Data model for the complex type PartyIdInfo. */ - payer: { + partyIdInfo: { /** * This is a variant based on FSPIOP `PartyIdType` specification. * Main difference being the CONSENT and THIRD_PARTY_LINK enums. @@ -23122,16 +22200,16 @@ export interface components { * - THIRD_PARTY_LINK - TBD */ partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** * Identifier of the Party. */ @@ -23164,1138 +22242,1597 @@ export interface components { }; }; /** - * Data model for the complex type Money. + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - amount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + merchantClassificationCode?: string; + /** + * Name of the Party. Could be a real name or a nickname. + */ + name?: string; + /** + * Data model for the complex type PartyPersonalInfo. + */ + personalInfo?: { /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Data model for the complex type PartyComplexName. */ - amount: string; + complexName?: { + /** + * First name of the Party (Name Type). + */ + firstName?: string; + /** + * Middle name of the Party (Name Type). + */ + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; + }; + /** + * Date of Birth of the Party. + */ + dateOfBirth?: string; }; + }; + /** + * The object sent in the PUT /parties/{Type}/{ID} callback. + * + * This is a variant based on FSPIOP `PartiesTypeIDPutResponse` specification. + * Main difference being that it returns a `Party` with the newly added + * `accounts` property. + */ + PartiesTypeIDPutResponse: { /** - * Data model for the complex type TransactionType. + * Data model for the complex type Party. */ - transactionType: { + party: { /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. + * Data model for the complex type AccountList. */ - scenario: "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "PAYMENT" | "REFUND"; + accounts?: { + /** + * Accounts associated with the Party. + */ + account: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + */ + description?: string; + }[]; + }; /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + * Data model for the complex type PartyIdInfo. */ - subScenario?: string; + partyIdInfo: { + /** + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD + */ + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; + /** + * Identifier of the Party. + */ + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - initiator: "PAYER" | "PAYEE"; + merchantClassificationCode?: string; /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * Name of the Party. Could be a real name or a nickname. */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + name?: string; /** - * Data model for the complex type Refund. + * Data model for the complex type PartyPersonalInfo. */ - refundInfo?: { + personalInfo?: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * Data model for the complex type PartyComplexName. */ - originalTransactionId: string; + complexName?: { + /** + * First name of the Party (Name Type). + */ + firstName?: string; + /** + * Middle name of the Party (Name Type). + */ + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; + }; /** - * Reason for the refund. + * Date of Birth of the Party. */ - refundReason?: string; + dateOfBirth?: string; }; - /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. - */ - balanceOfPayments?: string; }; + }; + /** + * Below are the allowed values for the enumeration ServiceType + * - THIRD_PARTY_DFSP - Enum used to query for DFSP's that have thirdparty features enabled + */ + ServiceType: "THIRD_PARTY_DFSP"; + /** + * Below are the allowed values for the enumeration. + * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. + * - PENDING - Payer FSP has sent the transaction request to the Payer. + * - ACCEPTED - Payer has approved the transaction. + * - REJECTED - Payer has rejected the transaction. + */ + TransactionRequestState: "RECEIVED" | "PENDING" | "ACCEPTED" | "REJECTED"; + /** + * Below are the allowed values for the enumeration. + * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. + * - PENDING - Payee FSP has validated the transaction. + * - COMPLETED - Payee FSP has successfully performed the transaction. + * - REJECTED - Payee FSP has failed to perform the transaction. + */ + TransactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; + /** + * The object sent in the PATCH /thirdpartyRequests/transactions/{ID} callback. + */ + ThirdpartyRequestsTransactionsIDPatchResponse: { /** - * Memo assigned to transaction. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - note?: string; + transactionId: string; /** - * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. + * Below are the allowed values for the enumeration. + * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. + * - PENDING - Payer FSP has sent the transaction request to the Payer. + * - ACCEPTED - Payer has approved the transaction. + * - REJECTED - Payer has rejected the transaction. */ - geoCode?: { + transactionRequestState: "RECEIVED" | "PENDING" | "ACCEPTED" | "REJECTED"; + /** + * Below are the allowed values for the enumeration. + * - RECEIVED - Payee FSP has received the transaction from the Payer FSP. + * - PENDING - Payee FSP has validated the transaction. + * - COMPLETED - Payee FSP has successfully performed the transaction. + * - REJECTED - Payee FSP has failed to perform the transaction. + */ + transactionState: "RECEIVED" | "PENDING" | "COMPLETED" | "REJECTED"; + }; + /** + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. + */ + TransactionScenario: + | "DEPOSIT" + | "WITHDRAWAL" + | "TRANSFER" + | "PAYMENT" + | "REFUND"; + /** + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + */ + TransactionSubScenario: string; + /** + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + */ + TransactionInitiator: "PAYER" | "PAYEE"; + /** + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. + */ + TransactionInitiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** + * Reason for the refund. + */ + RefundReason: string; + /** + * Data model for the complex type Refund. + */ + Refund: { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + originalTransactionId: string; + /** + * Reason for the refund. + */ + refundReason?: string; + }; + /** + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + */ + BalanceOfPayments: string; + /** + * Data model for the complex type TransactionType. + */ + TransactionType: { + /** + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. + */ + scenario: "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "PAYMENT" | "REFUND"; + /** + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + */ + subScenario?: string; + /** + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + */ + initiator: "PAYER" | "PAYEE"; + /** + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. + */ + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** + * Data model for the complex type Refund. + */ + refundInfo?: { /** - * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - latitude: string; + originalTransactionId: string; /** - * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + * Reason for the refund. */ - longitude: string; + refundReason?: string; }; /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. */ - authenticationType?: "OTP" | "QRCODE" | "U2F"; + balanceOfPayments?: string; + }; + /** + * The object sent in the POST /transactionRequests request. + */ + TransactionRequestsPostRequest: { /** - * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - expiration?: string; + transactionRequestId: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type Party. */ - extensionList?: { + payee: { /** - * Number of Extension elements. + * Data model for the complex type AccountList. */ - extension: { + accounts?: { + /** + * Accounts associated with the Party. + */ + account: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + */ + description?: string; + }[]; + }; + /** + * Data model for the complex type PartyIdInfo. + */ + partyIdInfo: { + /** + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD + */ + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** - * Extension key. + * Identifier of the Party. */ - key: string; + partyIdentifier: string; /** - * Extension value. + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - value: string; - }[]; - }; - }; - /** - * Data model for the complex type object that contains an optional element ErrorInformation used along with 4xx and 5xx responses. - */ - ErrorInformationResponse: { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation?: { - /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. - */ - errorCode: string; - /** - * Error description string. - */ - errorDescription: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { + partySubIdOrType?: string; /** - * Number of Extension elements. + * FSP identifier. */ - extension: { - /** - * Extension key. - */ - key: string; + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * Extension value. + * Number of Extension elements. */ - value: string; - }[]; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; - }; - }; - AccountsIDPutResponse: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountNickname: string; - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - id: string; - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - }[]; - /** - * Data model for the complex type object that contains ErrorInformation. - */ - ErrorInformationObject: { - /** - * Data model for the complex type ErrorInformation. - */ - errorInformation: { /** - * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - errorCode: string; + merchantClassificationCode?: string; /** - * Error description string. + * Name of the Party. Could be a real name or a nickname. */ - errorDescription: string; + name?: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Data model for the complex type PartyPersonalInfo. */ - extensionList?: { + personalInfo?: { /** - * Number of Extension elements. + * Data model for the complex type PartyComplexName. */ - extension: { + complexName?: { /** - * Extension key. + * First name of the Party (Name Type). */ - key: string; + firstName?: string; /** - * Extension value. + * Middle name of the Party (Name Type). */ - value: string; - }[]; + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; + }; + /** + * Date of Birth of the Party. + */ + dateOfBirth?: string; }; }; - }; - /** - * The API data type OtpValue is a JSON String of 3 to 10 characters, consisting of digits only. Negative numbers are not allowed. One or more leading zeros are allowed. - */ - OtpValue: string; - /** - * QR code used as a One Time Password. - */ - QRCODE: string; - /** - * U2F challenge-response, where payer FSP verifies if the response provided by end-user device matches the previously registered key. - */ - U2FPIN: string; - /** - * U2F challenge-response, where payer FSP verifies if the response provided by end-user device matches the previously registered key. - */ - U2FPinValue: { - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }; - /** - * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. - */ - AuthenticationValue: Partial & - Partial & - Partial<{ - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }>; - /** - * Data model for the complex type AuthenticationInfo. - */ - AuthenticationInfo: { - /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. - */ - authentication: "OTP" | "QRCODE" | "U2F"; - /** - * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. - */ - authenticationValue: Partial & - Partial & - Partial<{ - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }>; - }; - /** - * Below are the allowed values for the enumeration. - * - ENTERED - Consumer entered the authentication value. - * - REJECTED - Consumer rejected the transaction. - * - RESEND - Consumer requested to resend the authentication value. - */ - AuthorizationResponse: "ENTERED" | "REJECTED" | "RESEND"; - /** - * The object sent in the PUT /authorizations/{ID} callback. - */ - AuthorizationsIDPutResponse: { /** - * Data model for the complex type AuthenticationInfo. + * Data model for the complex type PartyIdInfo. */ - authenticationInfo?: { + payer: { /** - * Below are the allowed values for the enumeration AuthenticationType. - * - OTP - One-time password generated by the Payer FSP. - * - QRCODE - QR code used as One Time Password. - * - U2F - U2F is a new addition isolated to Thirdparty stream. + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD */ - authentication: "OTP" | "QRCODE" | "U2F"; + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** - * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. + * Identifier of the Party. */ - authenticationValue: Partial & - Partial & - Partial<{ - /** - * U2F challenge-response. - */ - pinValue: string; - /** - * Sequential counter used for cloning detection. Present only for U2F authentication. - */ - counter: string; - }>; - }; - /** - * Below are the allowed values for the enumeration. - * - ENTERED - Consumer entered the authentication value. - * - REJECTED - Consumer rejected the transaction. - * - RESEND - Consumer requested to resend the authentication value. - */ - responseType: "ENTERED" | "REJECTED" | "RESEND"; - }; - /** - * The scopes requested for a ConsentRequest. - * - "accounts.getBalance" - Get the balance of a given account. - * - "accounts.transfer" - Initiate a transfer from an account. - */ - ConsentScopeType: "accounts.getBalance" | "accounts.transfer"; - /** - * Scope + Account Identifier mapping for a Consent. - */ - Scope: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }; - /** - * The auth channel being used for the consentRequest. - * - "WEB" - The Web auth channel. - * - "OTP" - The OTP auth channel. - */ - ConsentRequestChannelType: "WEB" | "OTP"; - /** - * The object sent in a `POST /consentRequests` request. - */ - ConsentRequestsPostRequest: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - id: string; - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { + partyIdentifier: string; /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: ("WEB" | "OTP")[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - }; - /** - * The web auth channel being used for PUT consentRequest/{ID} request. - */ - ConsentRequestChannelTypeWeb: "WEB"; - /** - * The object sent in a `PUT /consentRequests/{ID}` request. - * - * Schema used in the request consent phase of the account linking web flow, - * the result is the PISP being instructed on a specific URL where this - * supposed user should be redirected. This URL should be a place where - * the user can prove their identity (e.g., by logging in). - */ - ConsentRequestsIDPutResponseWeb: { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { + partySubIdOrType?: string; /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * FSP identifier. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "WEB"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - /** - * The callback uri that the pisp app redirects to for user to complete their login. - */ - authUri: string; - }; - /** - * The object sent in a `PUT /consentRequests/{ID}` request. - * - * Schema used in the authentication phase of the account linking flow, - * the user is expected to prove their identity to the DFSP by passing a OTP - * or secret to the PISP. - */ - ConsentRequestsIDPutResponseWebAuth: { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { + fspId?: string; /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "WEB"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - /** - * The callback uri that the pisp app redirects to for user to complete their login. - */ - authUri: string; - /** - * The Auth token from the OTP or redirect to pisp app. - */ - authToken: string; - }; - /** - * The OTP auth channel being used for PUT consentRequest/{ID} request. - */ - ConsentRequestChannelTypeOTP: "OTP"; - /** - * The object sent in a `PUT /consentRequests/{ID}` request. - * - * Schema used in the request consent phase of the account linking OTP/SMS flow. - */ - ConsentRequestsIDPutResponseOTP: { + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; /** - * The id of the PISP who will initiate transactions on a user's behalf. + * Data model for the complex type Money. */ - initiatorId: string; - scopes: { + amount: { /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "OTP"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - }; - /** - * The object sent in a `PUT /consentRequests/{ID}` request. - * - * Schema used in the authentication phase of the account linking flow, - * the user is expected to prove their identity to the DFSP by passing a OTP - * or secret to the PISP. - */ - ConsentRequestsIDPutResponseOTPAuth: { - /** - * The id of the PISP who will initiate transactions on a user's behalf. - */ - initiatorId: string; - scopes: { + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - authChannels: "OTP"[]; - /** - * The callback uri that the user will be redirected to after completing the WEB auth channel. - */ - callbackUri: string; - /** - * The Auth token from the OTP or redirect to pisp app. - */ - authToken: string; - }; - /** - * The object sent in a `PATCH /consentRequests/{ID}` request. - */ - ConsentRequestsIDPatchRequest: { - /** - * The API data type OtpValue is a JSON String of 3 to 10 characters, consisting of digits only. Negative numbers are not allowed. One or more leading zeros are allowed. - */ - authToken: string; - }; - /** - * The object sent in a `POST /consents` request. - */ - ConsentsPostRequest: { - /** - * Common ID between the PISP and FSP for the Consent object - * decided by the DFSP who creates the Consent - * This field is REQUIRED for POST /consent. - */ - consentId: string; + amount: string; + }; /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. + * Data model for the complex type TransactionType. */ - consentRequestId: string; - scopes: { + transactionType: { /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; - }; - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - CredentialType: "FIDO"; - /** - * The challenge that has been signed by a PISP. - */ - CredentialChallengeSigned: { - /** - * Base64 encoded binary of the challenge that must be answered by the PISP. - */ - payload: string; - /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. - */ - signature: string; - }; - /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * SignedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be PENDING when updating - * a credential. - */ - SignedCredential: { - /** - * The id of a Credential. - */ - id: string; - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The challenge has signed but not yet verified. - */ - status: "PENDING"; - /** - * The challenge that has been signed by a PISP. - */ - challenge: { + scenario: "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "PAYMENT" | "REFUND"; /** - * Base64 encoded binary of the challenge that must be answered by the PISP. + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). */ - payload: string; + subScenario?: string; /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. */ - signature: string; + initiator: "PAYER" | "PAYEE"; + /** + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. + */ + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** + * Data model for the complex type Refund. + */ + refundInfo?: { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + originalTransactionId: string; + /** + * Reason for the refund. + */ + refundReason?: string; + }; + /** + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + */ + balanceOfPayments?: string; }; /** - * Base64 encoded bytes - The public key of the Public/Private keypair. + * Memo assigned to transaction. */ - payload: string; - }; - /** - * The HTTP request `PUT /consents/{ID}` is used by the PISP to update a Consent - * with a signed challenge and register a credential. - * - * Called by a `PISP` to after signing a challenge. Sent to an `auth-service` for verification. - */ - ConsentsIDPutResponseSigned: { + note?: string; /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. + * Data model for the complex type GeoCode. Indicates the geographic location from where the transaction was initiated. */ - requestId: string; + geoCode?: { + /** + * The API data type Latitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + */ + latitude: string; + /** + * The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. + */ + longitude: string; + }; /** - * FSP identifier. + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - participantId: string; + authenticationType?: "OTP" | "QRCODE" | "U2F"; /** - * PISP identifier who uses this Consent. + * The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC). */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; + expiration?: string; /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * SignedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be PENDING when updating - * a credential. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - credential: { - /** - * The id of a Credential. - */ - id: string; - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The challenge has signed but not yet verified. - */ - status: "PENDING"; + extensionList?: { /** - * The challenge that has been signed by a PISP. + * Number of Extension elements. */ - challenge: { + extension: { /** - * Base64 encoded binary of the challenge that must be answered by the PISP. + * Extension key. */ - payload: string; + key: string; /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + * Extension value. */ - signature: string; - }; - /** - * Base64 encoded bytes - The public key of the Public/Private keypair. - */ - payload: string; + value: string; + }[]; }; - }; - /** - * The challenge issued by a DFSP that must be answered by the PISP. - */ - CredentialChallengeUnsigned: { - /** - * Base64 encoded binary of the challenge that must be answered by the PISP. - */ - payload: string; - }; - /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * UnsignedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be PENDING when updating - * a credential. + }; + /** + * Data model for the complex type object that contains an optional element ErrorInformation used along with 4xx and 5xx responses. */ - UnsignedCredential: { - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The challenge has initialized but not yet answered by the PISP. - */ - status: "PENDING"; + ErrorInformationResponse: { /** - * The challenge issued by a DFSP that must be answered by the PISP. + * Data model for the complex type ErrorInformation. */ - challenge: { + errorInformation?: { /** - * Base64 encoded binary of the challenge that must be answered by the PISP. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - payload: string; + errorCode: string; + /** + * Error description string. + */ + errorDescription: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; }; - /** - * The HTTP request `PUT /consents/{ID}` is used to request a PISP to sign a challenge. - * The `{ID}` in the URI should contain the `{ID}` that was used in the `POST /consents`. - * - * Called by a `auth-service` to request PISP to add the credential details. - */ - ConsentsIDPutResponseUnsigned: { + AccountsIDPutResponse: { /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - requestId: string; + accountNickname: string; /** - * FSP identifier. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - participantId: string; + id: string; /** - * PISP identifier who uses this Consent. + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ - initiatorId: string; - scopes: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - accountId: string; - actions: ("accounts.getBalance" | "accounts.transfer")[]; - }[]; + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + }[]; + /** + * Data model for the complex type object that contains ErrorInformation. + */ + ErrorInformationObject: { /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * UnsignedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be PENDING when updating - * a credential. + * Data model for the complex type ErrorInformation. */ - credential: { + errorInformation: { /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. + * The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error. */ - type: "FIDO"; + errorCode: string; /** - * The challenge has initialized but not yet answered by the PISP. + * Error description string. */ - status: "PENDING"; + errorDescription: string; /** - * The challenge issued by a DFSP that must be answered by the PISP. + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - challenge: { + extensionList?: { /** - * Base64 encoded binary of the challenge that must be answered by the PISP. + * Number of Extension elements. */ - payload: string; + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; }; }; }; /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * VerifiedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be VERIFIED when updating - * a credential. + * The API data type OtpValue is a JSON String of 3 to 10 characters, consisting of digits only. Negative numbers are not allowed. One or more leading zeros are allowed. */ - VerifiedCredential: { + OtpValue: string; + /** + * QR code used as a One Time Password. + */ + QRCODE: string; + /** + * U2F challenge-response, where payer FSP verifies if the response provided by end-user device matches the previously registered key. + */ + U2FPIN: string; + /** + * U2F challenge-response, where payer FSP verifies if the response provided by end-user device matches the previously registered key. + */ + U2FPinValue: { /** - * The id of a Credential. + * U2F challenge-response. */ - id?: string; + pinValue: string; /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. + * Sequential counter used for cloning detection. Present only for U2F authentication. */ - type: "FIDO"; + counter: string; + }; + /** + * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. + */ + AuthenticationValue: Partial & + Partial & + Partial<{ + /** + * U2F challenge-response. + */ + pinValue: string; + /** + * Sequential counter used for cloning detection. Present only for U2F authentication. + */ + counter: string; + }>; + /** + * Data model for the complex type AuthenticationInfo. + */ + AuthenticationInfo: { /** - * The Credential is valid, and ready to be used by the PISP. + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - status: "VERIFIED"; + authentication: "OTP" | "QRCODE" | "U2F"; /** - * The challenge that has been signed by a PISP. + * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. */ - challenge: { + authenticationValue: Partial & + Partial & + Partial<{ + /** + * U2F challenge-response. + */ + pinValue: string; + /** + * Sequential counter used for cloning detection. Present only for U2F authentication. + */ + counter: string; + }>; + }; + /** + * Below are the allowed values for the enumeration. + * - ENTERED - Consumer entered the authentication value. + * - REJECTED - Consumer rejected the transaction. + * - RESEND - Consumer requested to resend the authentication value. + */ + AuthorizationResponse: "ENTERED" | "REJECTED" | "RESEND"; + /** + * The object sent in the PUT /authorizations/{ID} callback. + */ + AuthorizationsIDPutResponse: { + /** + * Data model for the complex type AuthenticationInfo. + */ + authenticationInfo?: { /** - * Base64 encoded binary of the challenge that must be answered by the PISP. + * Below are the allowed values for the enumeration AuthenticationType. + * - OTP - One-time password generated by the Payer FSP. + * - QRCODE - QR code used as One Time Password. + * - U2F - U2F is a new addition isolated to Thirdparty stream. */ - payload: string; + authentication: "OTP" | "QRCODE" | "U2F"; /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. */ - signature: string; + authenticationValue: Partial & + Partial & + Partial<{ + /** + * U2F challenge-response. + */ + pinValue: string; + /** + * Sequential counter used for cloning detection. Present only for U2F authentication. + */ + counter: string; + }>; }; /** - * Base64 encoded bytes - The public key of the Public/Private keypair. + * Below are the allowed values for the enumeration. + * - ENTERED - Consumer entered the authentication value. + * - REJECTED - Consumer rejected the transaction. + * - RESEND - Consumer requested to resend the authentication value. */ - payload?: string; + responseType: "ENTERED" | "REJECTED" | "RESEND"; }; /** - * The HTTP request `PUT /consents/{ID}` is used by the DFSP or Auth-Service to - * update a Consent object once it has been Verified. - * - * Called by a `auth-service` to notify a DFSP and PISP that a credential has been verified and registered. + * The scopes requested for a ConsentRequest. + * - "accounts.getBalance" - Get the balance of a given account. + * - "accounts.transfer" - Initiate a transfer from an account. */ - ConsentsIDPutResponseVerified: { + ConsentScopeType: "accounts.getBalance" | "accounts.transfer"; + /** + * Scope + Account Identifier mapping for a Consent. + */ + Scope: { /** - * The id of the ConsentRequest that was used to initiate the - * creation of this Consent. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - requestId: string; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }; + /** + * The auth channel being used for the consentRequest. + * - "WEB" - The Web auth channel. + * - "OTP" - The OTP auth channel. + */ + ConsentRequestChannelType: "WEB" | "OTP"; + /** + * The object sent in a `POST /consentRequests` request. + */ + ConsentRequestsPostRequest: { /** - * FSP identifier. + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). */ - participantId: string; + id: string; /** - * PISP identifier who uses this Consent. + * The id of the PISP who will initiate transactions on a user's behalf. */ initiatorId: string; scopes: { @@ -24307,1163 +23844,956 @@ export interface components { accountId: string; actions: ("accounts.getBalance" | "accounts.transfer")[]; }[]; + authChannels: ("WEB" | "OTP")[]; /** - * A credential used to allow a user to prove their identity and access - * to an account with a DFSP. - * - * VerifiedCredential is a special formatting of the credential to allow us to be - * more explicit about the `status` field - it should only ever be VERIFIED when updating - * a credential. - */ - credential: { - /** - * The id of a Credential. - */ - id?: string; - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. - */ - type: "FIDO"; - /** - * The Credential is valid, and ready to be used by the PISP. - */ - status: "VERIFIED"; - /** - * The challenge that has been signed by a PISP. - */ - challenge: { - /** - * Base64 encoded binary of the challenge that must be answered by the PISP. - */ - payload: string; - /** - * Base64 encoded binary string or result of the payload signed by the PISP using the private key. - */ - signature: string; - }; - /** - * Base64 encoded bytes - The public key of the Public/Private keypair. - */ - payload?: string; - }; - }; - /** - * A credential used to allow a user to prove their identity - * and access to an account with a DFSP. - */ - ConsentsIDGenerateChallengePostRequest: { - /** - * The type of the Credential. - * - "FIDO" - A FIDO public/private keypair. + * The callback uri that the user will be redirected to after completing the WEB auth channel. */ - type: "FIDO"; + callbackUri: string; }; /** - * The object sent in a `PUT /services/{ServiceType}` request. - */ - ServicesServiceTypePutResponse: { providers: string[] }; - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * This validation interface should be use by `POST /thirdpartyRequests/transactions` - * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent + * The web auth channel being used for PUT consentRequest/{ID} request. */ - PartyIdTypeTPLink: "THIRD_PARTY_LINK"; + ConsentRequestChannelTypeWeb: "WEB"; /** - * Data model for the complex type PartyIdInfo. - */ - PartyIdInfoTPLink: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * This validation interface should be use by `POST /thirdpartyRequests/transactions` - * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent - */ - partyIdType: "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; + * The object sent in a `PUT /consentRequests/{ID}` request. + * + * Schema used in the request consent phase of the account linking web flow, + * the result is the PISP being instructed on a specific URL where this + * supposed user should be redirected. This URL should be a place where + * the user can prove their identity (e.g., by logging in). + */ + ConsentRequestsIDPutResponseWeb: { /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + * The id of the PISP who will initiate transactions on a user's behalf. */ - partySubIdOrType?: string; + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "WEB"[]; /** - * FSP identifier. + * The callback uri that the user will be redirected to after completing the WEB auth channel. */ - fspId?: string; + callbackUri: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * The callback uri that the pisp app redirects to for user to complete their login. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + authUri: string; }; /** - * Below are the allowed values for the enumeration AmountType. - * - SEND - Amount the Payer would like to send, that is, the amount that should be withdrawn from the Payer account including any fees. - * - RECEIVE - Amount the Payer would like the Payee to receive, that is, the amount that should be sent to the receiver exclusive of any fees. - */ - AmountType: "SEND" | "RECEIVE"; - /** - * The object sent in the POST /thirdpartyRequests/transactions request. + * The object sent in a `PUT /consentRequests/{ID}` request. + * + * Schema used in the authentication phase of the account linking flow, + * the user is expected to prove their identity to the DFSP by passing a OTP + * or secret to the PISP. */ - ThirdpartyRequestsTransactionsPostRequest: { - /** - * Common ID between the FSPs for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request. - */ - transactionRequestId: string; + ConsentRequestsIDPutResponseWebAuth: { /** - * Information about the Payee in the proposed financial transaction. + * The id of the PISP who will initiate transactions on a user's behalf. */ - payee: { - /** - * Data model for the complex type AccountList. - */ - accounts?: { - /** - * Accounts associated with the Party. - */ - account: { - /** - * A long-lived unique account identifier provided by the DFSP. This MUST NOT - * be Bank Account Number or anything that may expose a User's private bank - * account information. - */ - address?: string; - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. - * - * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). - * - * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. - */ - description?: string; - }[]; - }; + initiatorId: string; + scopes: { /** - * Data model for the complex type PartyIdInfo. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - partyIdInfo: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * Main difference being the CONSENT and THIRD_PARTY_LINK enums. - * - * Below are the allowed values for the enumeration. - * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory - * Number, that is, the phone number) is used as reference to a participant. - * The MSISDN identifier should be in international format according to the - * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). - * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the - * international prefix. - * - EMAIL - An email is used as reference to a - * participant. The format of the email should be according to the informational - * [RFC 3696](https://tools.ietf.org/html/rfc3696). - * - PERSONAL_ID - A personal identifier is used as reference to a participant. - * Examples of personal identification are passport number, birth certificate - * number, and national registration number. The identifier number is added in - * the PartyIdentifier element. The personal identifier type is added in the - * PartySubIdOrType element. - * - BUSINESS - A specific Business (for example, an organization or a company) - * is used as reference to a participant. The BUSINESS identifier can be in any - * format. To make a transaction connected to a specific username or bill number - * in a Business, the PartySubIdOrType element should be used. - * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a - * specific business or organization is used as reference to a Party. - * For referencing a specific device under a specific business or organization, - * use the PartySubIdOrType element. - * - ACCOUNT_ID - A bank account number or FSP account ID should be used as - * reference to a participant. The ACCOUNT_ID identifier can be in any format, - * as formats can greatly differ depending on country and FSP. - * - IBAN - A bank account number or FSP account ID is used as reference to a - * participant. The IBAN identifier can consist of up to 34 alphanumeric - * characters and should be entered without whitespace. - * - ALIAS An alias is used as reference to a participant. The alias should be - * created in the FSP as an alternative reference to an account owner. - * Another example of an alias is a username in the FSP system. - * The ALIAS identifier can be in any format. It is also possible to use the - * PartySubIdOrType element for identifying an account under an Alias defined - * by the PartyIdentifier. - * - CONSENT - TBD - * - THIRD_PARTY_LINK - TBD - */ - partyIdType: - | "MSISDN" - | "EMAIL" - | "PERSONAL_ID" - | "BUSINESS" - | "DEVICE" - | "ACCOUNT_ID" - | "IBAN" - | "ALIAS" - | "CONSENT" - | "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; - /** - * FSP identifier. - */ - fspId?: string; - /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. - */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; - }; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "WEB"[]; + /** + * The callback uri that the user will be redirected to after completing the WEB auth channel. + */ + callbackUri: string; + /** + * The callback uri that the pisp app redirects to for user to complete their login. + */ + authUri: string; + /** + * The Auth token from the OTP or redirect to pisp app. + */ + authToken: string; + }; + /** + * The OTP auth channel being used for PUT consentRequest/{ID} request. + */ + ConsentRequestChannelTypeOTP: "OTP"; + /** + * The object sent in a `PUT /consentRequests/{ID}` request. + * + * Schema used in the request consent phase of the account linking OTP/SMS flow. + */ + ConsentRequestsIDPutResponseOTP: { + /** + * The id of the PISP who will initiate transactions on a user's behalf. + */ + initiatorId: string; + scopes: { /** - * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - merchantClassificationCode?: string; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "OTP"[]; + /** + * The callback uri that the user will be redirected to after completing the WEB auth channel. + */ + callbackUri: string; + }; + /** + * The object sent in a `PUT /consentRequests/{ID}` request. + * + * Schema used in the authentication phase of the account linking flow, + * the user is expected to prove their identity to the DFSP by passing a OTP + * or secret to the PISP. + */ + ConsentRequestsIDPutResponseOTPAuth: { + /** + * The id of the PISP who will initiate transactions on a user's behalf. + */ + initiatorId: string; + scopes: { /** - * Name of the Party. Could be a real name or a nickname. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - name?: string; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + authChannels: "OTP"[]; + /** + * The callback uri that the user will be redirected to after completing the WEB auth channel. + */ + callbackUri: string; + /** + * The Auth token from the OTP or redirect to pisp app. + */ + authToken: string; + }; + /** + * The object sent in a `PATCH /consentRequests/{ID}` request. + */ + ConsentRequestsIDPatchRequest: { + /** + * The API data type OtpValue is a JSON String of 3 to 10 characters, consisting of digits only. Negative numbers are not allowed. One or more leading zeros are allowed. + */ + authToken: string; + }; + /** + * The object sent in a `POST /consents` request. + */ + ConsentsPostRequest: { + /** + * Common ID between the PISP and FSP for the Consent object + * decided by the DFSP who creates the Consent + * This field is REQUIRED for POST /consent. + */ + consentId: string; + /** + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. + */ + consentRequestId: string; + scopes: { /** - * Data model for the complex type PartyPersonalInfo. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - personalInfo?: { - /** - * Data model for the complex type PartyComplexName. - */ - complexName?: { - /** - * First name of the Party (Name Type). - */ - firstName?: string; - /** - * Middle name of the Party (Name Type). - */ - middleName?: string; - /** - * Last name of the Party (Name Type). - */ - lastName?: string; - }; - /** - * Date of Birth of the Party. - */ - dateOfBirth?: string; - }; - }; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + }; + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + CredentialType: "FIDO"; + /** + * The challenge that has been signed by a PISP. + */ + CredentialChallengeSigned: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + /** + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + */ + signature: string; + }; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * SignedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be PENDING when updating + * a credential. + */ + SignedCredential: { + /** + * The id of a Credential. + */ + id: string; + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; /** - * Information about the Payer in the proposed financial transaction. + * The challenge has signed but not yet verified. */ - payer: { - /** - * This is a variant based on FSPIOP `PartyIdType` specification. - * This validation interface should be use by `POST /thirdpartyRequests/transactions` - * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent - */ - partyIdType: "THIRD_PARTY_LINK"; - /** - * Identifier of the Party. - */ - partyIdentifier: string; - /** - * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. - */ - partySubIdOrType?: string; + status: "PENDING"; + /** + * The challenge that has been signed by a PISP. + */ + challenge: { /** - * FSP identifier. + * Base64 encoded binary of the challenge that must be answered by the PISP. */ - fspId?: string; + payload: string; /** - * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. */ - extensionList?: { - /** - * Number of Extension elements. - */ - extension: { - /** - * Extension key. - */ - key: string; - /** - * Extension value. - */ - value: string; - }[]; - }; + signature: string; }; /** - * SEND for sendAmount, RECEIVE for receiveAmount. + * Base64 encoded bytes - The public key of the Public/Private keypair. */ - amountType: "SEND" | "RECEIVE"; + payload: string; + }; + /** + * The HTTP request `PUT /consents/{ID}` is used by the PISP to update a Consent + * with a signed challenge and register a credential. + * + * Called by a `PISP` to after signing a challenge. Sent to an `auth-service` for verification. + */ + ConsentsIDPutResponseSigned: { /** - * Requested amount to be transferred from the Payer to Payee. + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. */ - amount: { - /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. - */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; - /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. - */ - amount: string; - }; + requestId: string; /** - * Type of transaction. + * FSP identifier. */ - transactionType: { + participantId: string; + /** + * PISP identifier who uses this Consent. + */ + initiatorId: string; + scopes: { /** - * Below are the allowed values for the enumeration. - * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. - * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. - * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. - * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. - * - REFUND - Used for performing a refund of transaction. + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. */ - scenario: "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "PAYMENT" | "REFUND"; + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * SignedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be PENDING when updating + * a credential. + */ + credential: { /** - * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + * The id of a Credential. */ - subScenario?: string; + id: string; /** - * Below are the allowed values for the enumeration. - * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. - * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. */ - initiator: "PAYER" | "PAYEE"; + type: "FIDO"; /** - * Below are the allowed values for the enumeration. - * - CONSUMER - Consumer is the initiator of the transaction. - * - AGENT - Agent is the initiator of the transaction. - * - BUSINESS - Business is the initiator of the transaction. - * - DEVICE - Device is the initiator of the transaction. + * The challenge has signed but not yet verified. */ - initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + status: "PENDING"; /** - * Data model for the complex type Refund. + * The challenge that has been signed by a PISP. */ - refundInfo?: { + challenge: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * Base64 encoded binary of the challenge that must be answered by the PISP. */ - originalTransactionId: string; + payload: string; /** - * Reason for the refund. + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. */ - refundReason?: string; + signature: string; }; /** - * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + * Base64 encoded bytes - The public key of the Public/Private keypair. */ - balanceOfPayments?: string; + payload: string; }; + }; + /** + * The challenge issued by a DFSP that must be answered by the PISP. + */ + CredentialChallengeUnsigned: { /** - * Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond. + * Base64 encoded binary of the challenge that must be answered by the PISP. */ - expiration: string; + payload: string; }; /** - * The object sent in the PUT /thirdPartyRequests/transactions/{ID} request. + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * UnsignedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be PENDING when updating + * a credential. */ - ThirdpartyRequestsTransactionsIDPutResponse: { + UnsignedCredential: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. */ - transactionId: string; + type: "FIDO"; /** - * Below are the allowed values for the enumeration. - * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. - * - PENDING - Payer FSP has sent the transaction request to the Payer. - * - ACCEPTED - Payer has approved the transaction. - * - REJECTED - Payer has rejected the transaction. + * The challenge has initialized but not yet answered by the PISP. */ - transactionRequestState: "RECEIVED" | "PENDING" | "ACCEPTED" | "REJECTED"; + status: "PENDING"; + /** + * The challenge issued by a DFSP that must be answered by the PISP. + */ + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + }; }; /** - * The API data type BinaryString is a JSON String. The string is a base64url encoding of a string of raw bytes, where padding (character ‘=’) is added at the end of the data if needed to ensure that the string is a multiple of 4 characters. The length restriction indicates the allowed number of characters. + * The HTTP request `PUT /consents/{ID}` is used to request a PISP to sign a challenge. + * The `{ID}` in the URI should contain the `{ID}` that was used in the `POST /consents`. + * + * Called by a `auth-service` to request PISP to add the credential details. */ - BinaryString: string; + ConsentsIDPutResponseUnsigned: { + /** + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. + */ + requestId: string; + /** + * FSP identifier. + */ + participantId: string; + /** + * PISP identifier who uses this Consent. + */ + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * UnsignedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be PENDING when updating + * a credential. + */ + credential: { + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; + /** + * The challenge has initialized but not yet answered by the PISP. + */ + status: "PENDING"; + /** + * The challenge issued by a DFSP that must be answered by the PISP. + */ + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + }; + }; + }; /** - * The object sent in the PUT /thirdpartyRequests/transactions/{id}/authorizations request. + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * VerifiedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be VERIFIED when updating + * a credential. */ - ThirdpartyRequestsTransactionsIDAuthorizationsPutResponse: { + VerifiedCredential: { /** - * Base64 encoded binary string - the original challenge. + * The id of a Credential. */ - challenge: string; + id?: string; /** - * Base64 encoded binary string - the signed challenge. + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. */ - value: string; + type: "FIDO"; /** - * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which consent allows the PISP to initiate transaction. + * The Credential is valid, and ready to be used by the PISP. */ - consentId: string; + status: "VERIFIED"; /** - * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + * The challenge that has been signed by a PISP. */ - sourceAccountId: string; + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + /** + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + */ + signature: string; + }; + /** + * Base64 encoded bytes - The public key of the Public/Private keypair. + */ + payload?: string; + }; + /** + * The HTTP request `PUT /consents/{ID}` is used by the DFSP or Auth-Service to + * update a Consent object once it has been Verified. + * + * Called by a `auth-service` to notify a DFSP and PISP that a credential has been verified and registered. + */ + ConsentsIDPutResponseVerified: { + /** + * The id of the ConsentRequest that was used to initiate the + * creation of this Consent. + */ + requestId: string; + /** + * FSP identifier. + */ + participantId: string; + /** + * PISP identifier who uses this Consent. + */ + initiatorId: string; + scopes: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + accountId: string; + actions: ("accounts.getBalance" | "accounts.transfer")[]; + }[]; + /** + * A credential used to allow a user to prove their identity and access + * to an account with a DFSP. + * + * VerifiedCredential is a special formatting of the credential to allow us to be + * more explicit about the `status` field - it should only ever be VERIFIED when updating + * a credential. + */ + credential: { + /** + * The id of a Credential. + */ + id?: string; + /** + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. + */ + type: "FIDO"; + /** + * The Credential is valid, and ready to be used by the PISP. + */ + status: "VERIFIED"; + /** + * The challenge that has been signed by a PISP. + */ + challenge: { + /** + * Base64 encoded binary of the challenge that must be answered by the PISP. + */ + payload: string; + /** + * Base64 encoded binary string or result of the payload signed by the PISP using the private key. + */ + signature: string; + }; + /** + * Base64 encoded bytes - The public key of the Public/Private keypair. + */ + payload?: string; + }; + }; + /** + * A credential used to allow a user to prove their identity + * and access to an account with a DFSP. + */ + ConsentsIDGenerateChallengePostRequest: { /** - * The status of the authorization. This value must be `VERIFIED` for a PUT request. + * The type of the Credential. + * - "FIDO" - A FIDO public/private keypair. */ - status: "VERIFIED"; + type: "FIDO"; }; /** - * The object sent in the POST /thirdpartyRequests/transactions/{id}/authorizations request. + * The object sent in a `PUT /services/{ServiceType}` request. */ - ThirdpartyRequestsTransactionsIDAuthorizationsPostRequest: { + ServicesServiceTypePutResponse: { providers: string[] }; + /** + * This is a variant based on FSPIOP `PartyIdType` specification. + * This validation interface should be use by `POST /thirdpartyRequests/transactions` + * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent + */ + PartyIdTypeTPLink: "THIRD_PARTY_LINK"; + /** + * Data model for the complex type PartyIdInfo. + */ + PartyIdInfoTPLink: { /** - * Base64 encoded binary string - the original challenge. + * This is a variant based on FSPIOP `PartyIdType` specification. + * This validation interface should be use by `POST /thirdpartyRequests/transactions` + * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent */ - challenge: string; + partyIdType: "THIRD_PARTY_LINK"; /** - * Base64 encoded binary string - the signed challenge + * Identifier of the Party. */ - value: string; + partyIdentifier: string; /** - * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which constent allows the PISP to initiate transaction. + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. */ - consentId: string; + partySubIdOrType?: string; /** - * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + * FSP identifier. */ - sourceAccountId: string; + fspId?: string; /** - * The status of the authorization. This MUST be PENDING for a POST request + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. */ - status: "PENDING"; + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; /** - * POST /thirdpartyRequests/authorizations request object. + * Below are the allowed values for the enumeration AmountType. + * - SEND - Amount the Payer would like to send, that is, the amount that should be withdrawn from the Payer account including any fees. + * - RECEIVE - Amount the Payer would like the Payee to receive, that is, the amount that should be sent to the receiver exclusive of any fees. */ - ThirdpartyRequestsAuthorizationsPostRequest: { - /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). - */ - authorizationRequestId: string; + AmountType: "SEND" | "RECEIVE"; + /** + * The object sent in the POST /thirdpartyRequests/transactions request. + */ + ThirdpartyRequestsTransactionsPostRequest: { /** - * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + * Common ID between the FSPs for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request. */ transactionRequestId: string; /** - * Base64 encoded bytes - The challenge generated by the DFSP. - */ - challenge: string; - /** - * The object sent in the PUT /quotes/{ID} callback. + * Information about the Payee in the proposed financial transaction. */ - quote: { + payee: { + /** + * Data model for the complex type AccountList. + */ + accounts?: { + /** + * Accounts associated with the Party. + */ + account: { + /** + * A long-lived unique account identifier provided by the DFSP. This MUST NOT + * be Bank Account Number or anything that may expose a User's private bank + * account information. + */ + address?: string; + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name. + * + * Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ). + * + * **Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters. + */ + description?: string; + }[]; + }; /** - * Data model for the complex type Money. + * Data model for the complex type PartyIdInfo. */ - transferAmount: { + partyIdInfo: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * This is a variant based on FSPIOP `PartyIdType` specification. + * Main difference being the CONSENT and THIRD_PARTY_LINK enums. + * + * Below are the allowed values for the enumeration. + * - MSISDN - An MSISDN (Mobile Station International Subscriber Directory + * Number, that is, the phone number) is used as reference to a participant. + * The MSISDN identifier should be in international format according to the + * [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). + * Optionally, the MSISDN may be prefixed by a single plus sign, indicating the + * international prefix. + * - EMAIL - An email is used as reference to a + * participant. The format of the email should be according to the informational + * [RFC 3696](https://tools.ietf.org/html/rfc3696). + * - PERSONAL_ID - A personal identifier is used as reference to a participant. + * Examples of personal identification are passport number, birth certificate + * number, and national registration number. The identifier number is added in + * the PartyIdentifier element. The personal identifier type is added in the + * PartySubIdOrType element. + * - BUSINESS - A specific Business (for example, an organization or a company) + * is used as reference to a participant. The BUSINESS identifier can be in any + * format. To make a transaction connected to a specific username or bill number + * in a Business, the PartySubIdOrType element should be used. + * - DEVICE - A specific device (for example, a POS or ATM) ID connected to a + * specific business or organization is used as reference to a Party. + * For referencing a specific device under a specific business or organization, + * use the PartySubIdOrType element. + * - ACCOUNT_ID - A bank account number or FSP account ID should be used as + * reference to a participant. The ACCOUNT_ID identifier can be in any format, + * as formats can greatly differ depending on country and FSP. + * - IBAN - A bank account number or FSP account ID is used as reference to a + * participant. The IBAN identifier can consist of up to 34 alphanumeric + * characters and should be entered without whitespace. + * - ALIAS An alias is used as reference to a participant. The alias should be + * created in the FSP as an alternative reference to an account owner. + * Another example of an alias is a username in the FSP system. + * The ALIAS identifier can be in any format. It is also possible to use the + * PartySubIdOrType element for identifying an account under an Alias defined + * by the PartyIdentifier. + * - CONSENT - TBD + * - THIRD_PARTY_LINK - TBD */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + partyIdType: + | "MSISDN" + | "EMAIL" + | "PERSONAL_ID" + | "BUSINESS" + | "DEVICE" + | "ACCOUNT_ID" + | "IBAN" + | "ALIAS" + | "CONSENT" + | "THIRD_PARTY_LINK"; /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Identifier of the Party. */ - amount: string; + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { + /** + * Number of Extension elements. + */ + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; }; /** - * Data model for the complex type Money. + * A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc. */ - payeeReceiveAmount?: { + merchantClassificationCode?: string; + /** + * Name of the Party. Could be a real name or a nickname. + */ + name?: string; + /** + * Data model for the complex type PartyPersonalInfo. + */ + personalInfo?: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Data model for the complex type PartyComplexName. */ - currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + complexName?: { + /** + * First name of the Party (Name Type). + */ + firstName?: string; + /** + * Middle name of the Party (Name Type). + */ + middleName?: string; + /** + * Last name of the Party (Name Type). + */ + lastName?: string; + }; /** - * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + * Date of Birth of the Party. */ - amount: string; + dateOfBirth?: string; }; + }; + /** + * Information about the Payer in the proposed financial transaction. + */ + payer: { /** - * Data model for the complex type Money. + * This is a variant based on FSPIOP `PartyIdType` specification. + * This validation interface should be use by `POST /thirdpartyRequests/transactions` + * - THIRD_PARTY_LINK - is the DFSP's internal reference which allows DFSP to find out the corresponding consent */ - payeeFspFee?: { + partyIdType: "THIRD_PARTY_LINK"; + /** + * Identifier of the Party. + */ + partyIdentifier: string; + /** + * Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType. + */ + partySubIdOrType?: string; + /** + * FSP identifier. + */ + fspId?: string; + /** + * Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment. + */ + extensionList?: { /** - * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + * Number of Extension elements. */ - currency: + extension: { + /** + * Extension key. + */ + key: string; + /** + * Extension value. + */ + value: string; + }[]; + }; + }; + /** + * SEND for sendAmount, RECEIVE for receiveAmount. + */ + amountType: "SEND" | "RECEIVE"; + /** + * Requested amount to be transferred from the Payer to Payee. + */ + amount: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: | "AED" | "AFN" | "ALL" @@ -25626,6 +24956,326 @@ export interface components { | "ZAR" | "ZMW" | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; + /** + * Type of transaction. + */ + transactionType: { + /** + * Below are the allowed values for the enumeration. + * - DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User. + * - WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer. + * - TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction. + * - PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on. + * - REFUND - Used for performing a refund of transaction. + */ + scenario: "DEPOSIT" | "WITHDRAWAL" | "TRANSFER" | "PAYMENT" | "REFUND"; + /** + * Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). + */ + subScenario?: string; + /** + * Below are the allowed values for the enumeration. + * - PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way. + * - PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device. + */ + initiator: "PAYER" | "PAYEE"; + /** + * Below are the allowed values for the enumeration. + * - CONSUMER - Consumer is the initiator of the transaction. + * - AGENT - Agent is the initiator of the transaction. + * - BUSINESS - Business is the initiator of the transaction. + * - DEVICE - Device is the initiator of the transaction. + */ + initiatorType: "CONSUMER" | "AGENT" | "BUSINESS" | "DEVICE"; + /** + * Data model for the complex type Refund. + */ + refundInfo?: { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + originalTransactionId: string; + /** + * Reason for the refund. + */ + refundReason?: string; + }; + /** + * (BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. + */ + balanceOfPayments?: string; + }; + /** + * Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond. + */ + expiration: string; + }; + /** + * The object sent in the PUT /thirdPartyRequests/transactions/{ID} request. + */ + ThirdpartyRequestsTransactionsIDPutResponse: { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + transactionId: string; + /** + * Below are the allowed values for the enumeration. + * - RECEIVED - Payer FSP has received the transaction from the Payee FSP. + * - PENDING - Payer FSP has sent the transaction request to the Payer. + * - ACCEPTED - Payer has approved the transaction. + * - REJECTED - Payer has rejected the transaction. + */ + transactionRequestState: "RECEIVED" | "PENDING" | "ACCEPTED" | "REJECTED"; + }; + /** + * The API data type BinaryString is a JSON String. The string is a base64url encoding of a string of raw bytes, where padding (character ‘=’) is added at the end of the data if needed to ensure that the string is a multiple of 4 characters. The length restriction indicates the allowed number of characters. + */ + BinaryString: string; + /** + * The object sent in the PUT /thirdpartyRequests/transactions/{id}/authorizations request. + */ + ThirdpartyRequestsTransactionsIDAuthorizationsPutResponse: { + /** + * Base64 encoded binary string - the original challenge. + */ + challenge: string; + /** + * Base64 encoded binary string - the signed challenge. + */ + value: string; + /** + * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which consent allows the PISP to initiate transaction. + */ + consentId: string; + /** + * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + */ + sourceAccountId: string; + /** + * The status of the authorization. This value must be `VERIFIED` for a PUT request. + */ + status: "VERIFIED"; + }; + /** + * The object sent in the POST /thirdpartyRequests/transactions/{id}/authorizations request. + */ + ThirdpartyRequestsTransactionsIDAuthorizationsPostRequest: { + /** + * Base64 encoded binary string - the original challenge. + */ + challenge: string; + /** + * Base64 encoded binary string - the signed challenge + */ + value: string; + /** + * Common ID between the PISP and FSP for the Consent object This tells DFSP and auth-service which constent allows the PISP to initiate transaction. + */ + consentId: string; + /** + * DFSP specific account identifiers, e.g. `dfspa.alice.1234` + */ + sourceAccountId: string; + /** + * The status of the authorization. This MUST be PENDING for a POST request + */ + status: "PENDING"; + }; + /** + * POST /thirdpartyRequests/authorizations request object. + */ + ThirdpartyRequestsAuthorizationsPostRequest: { + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + authorizationRequestId: string; + /** + * Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘). + */ + transactionRequestId: string; + /** + * Base64 encoded bytes - The challenge generated by the DFSP. + */ + challenge: string; + /** + * The object sent in the PUT /quotes/{ID} callback. + */ + quote: { + /** + * Data model for the complex type Money. + */ + transferAmount: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ @@ -25634,173 +25284,523 @@ export interface components { /** * Data model for the complex type Money. */ - payeeFspCommission?: { + payeeReceiveAmount?: { /** * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. */ currency: - | "AED" - | "AFN" - | "ALL" - | "AMD" - | "ANG" - | "AOA" - | "ARS" - | "AUD" - | "AWG" - | "AZN" - | "BAM" - | "BBD" - | "BDT" - | "BGN" - | "BHD" - | "BIF" - | "BMD" - | "BND" - | "BOB" - | "BRL" - | "BSD" - | "BTN" - | "BWP" - | "BYN" - | "BZD" - | "CAD" - | "CDF" - | "CHF" - | "CLP" - | "CNY" - | "COP" - | "CRC" - | "CUC" - | "CUP" - | "CVE" - | "CZK" - | "DJF" - | "DKK" - | "DOP" - | "DZD" - | "EGP" - | "ERN" - | "ETB" - | "EUR" - | "FJD" - | "FKP" - | "GBP" - | "GEL" - | "GGP" - | "GHS" - | "GIP" - | "GMD" - | "GNF" - | "GTQ" - | "GYD" - | "HKD" - | "HNL" - | "HRK" - | "HTG" - | "HUF" - | "IDR" - | "ILS" - | "IMP" - | "INR" - | "IQD" - | "IRR" - | "ISK" - | "JEP" - | "JMD" - | "JOD" - | "JPY" - | "KES" - | "KGS" - | "KHR" - | "KMF" - | "KPW" - | "KRW" - | "KWD" - | "KYD" - | "KZT" - | "LAK" - | "LBP" - | "LKR" - | "LRD" - | "LSL" - | "LYD" - | "MAD" - | "MDL" - | "MGA" - | "MKD" - | "MMK" - | "MNT" - | "MOP" - | "MRO" - | "MUR" - | "MVR" - | "MWK" - | "MXN" - | "MYR" - | "MZN" - | "NAD" - | "NGN" - | "NIO" - | "NOK" - | "NPR" - | "NZD" - | "OMR" - | "PAB" - | "PEN" - | "PGK" - | "PHP" - | "PKR" - | "PLN" - | "PYG" - | "QAR" - | "RON" - | "RSD" - | "RUB" - | "RWF" - | "SAR" - | "SBD" - | "SCR" - | "SDG" - | "SEK" - | "SGD" - | "SHP" - | "SLL" - | "SOS" - | "SPL" - | "SRD" - | "STD" - | "SVC" - | "SYP" - | "SZL" - | "THB" - | "TJS" - | "TMT" - | "TND" - | "TOP" - | "TRY" - | "TTD" - | "TVD" - | "TWD" - | "TZS" - | "UAH" - | "UGX" - | "USD" - | "UYU" - | "UZS" - | "VEF" - | "VND" - | "VUV" - | "WST" - | "XAF" - | "XCD" - | "XDR" - | "XOF" - | "XPF" - | "YER" - | "ZAR" - | "ZMW" - | "ZWD"; + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; + /** + * Data model for the complex type Money. + */ + payeeFspFee?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; + /** + * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. + */ + amount: string; + }; + /** + * Data model for the complex type Money. + */ + payeeFspCommission?: { + /** + * The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies. + */ + currency: + | "AED" + | "AFN" + | "ALL" + | "AMD" + | "ANG" + | "AOA" + | "ARS" + | "AUD" + | "AWG" + | "AZN" + | "BAM" + | "BBD" + | "BDT" + | "BGN" + | "BHD" + | "BIF" + | "BMD" + | "BND" + | "BOB" + | "BRL" + | "BSD" + | "BTN" + | "BWP" + | "BYN" + | "BZD" + | "CAD" + | "CDF" + | "CHF" + | "CLP" + | "CNY" + | "COP" + | "CRC" + | "CUC" + | "CUP" + | "CVE" + | "CZK" + | "DJF" + | "DKK" + | "DOP" + | "DZD" + | "EGP" + | "ERN" + | "ETB" + | "EUR" + | "FJD" + | "FKP" + | "GBP" + | "GEL" + | "GGP" + | "GHS" + | "GIP" + | "GMD" + | "GNF" + | "GTQ" + | "GYD" + | "HKD" + | "HNL" + | "HRK" + | "HTG" + | "HUF" + | "IDR" + | "ILS" + | "IMP" + | "INR" + | "IQD" + | "IRR" + | "ISK" + | "JEP" + | "JMD" + | "JOD" + | "JPY" + | "KES" + | "KGS" + | "KHR" + | "KMF" + | "KPW" + | "KRW" + | "KWD" + | "KYD" + | "KZT" + | "LAK" + | "LBP" + | "LKR" + | "LRD" + | "LSL" + | "LYD" + | "MAD" + | "MDL" + | "MGA" + | "MKD" + | "MMK" + | "MNT" + | "MOP" + | "MRO" + | "MUR" + | "MVR" + | "MWK" + | "MXN" + | "MYR" + | "MZN" + | "NAD" + | "NGN" + | "NIO" + | "NOK" + | "NPR" + | "NZD" + | "OMR" + | "PAB" + | "PEN" + | "PGK" + | "PHP" + | "PKR" + | "PLN" + | "PYG" + | "QAR" + | "RON" + | "RSD" + | "RUB" + | "RWF" + | "SAR" + | "SBD" + | "SCR" + | "SDG" + | "SEK" + | "SGD" + | "SHP" + | "SLL" + | "SOS" + | "SPL" + | "SRD" + | "STD" + | "SVC" + | "SYP" + | "SZL" + | "THB" + | "TJS" + | "TMT" + | "TND" + | "TOP" + | "TRY" + | "TTD" + | "TVD" + | "TWD" + | "TZS" + | "UAH" + | "UGX" + | "USD" + | "UYU" + | "UZS" + | "VEF" + | "VND" + | "VUV" + | "WST" + | "XAF" + | "XCD" + | "XDR" + | "XOF" + | "XPF" + | "YER" + | "ZAR" + | "ZMW" + | "ZWD"; /** * The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed. */ @@ -25919,17 +25919,17 @@ export interface components { * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. */ authenticationValue: Partial & - Partial & - Partial<{ - /** + Partial & + Partial<{ + /** * U2F challenge-response. */ - pinValue: string; - /** + pinValue: string; + /** * Sequential counter used for cloning detection. Present only for U2F authentication. */ - counter: string; - }>; + counter: string; + }>; }; /** * Below are the allowed values for the enumeration. @@ -25964,17 +25964,17 @@ export interface components { * Contains the authentication value. The format depends on the authentication type used in the AuthenticationInfo complex type. */ authenticationValue: Partial & - Partial & - Partial<{ - /** + Partial & + Partial<{ + /** * U2F challenge-response. */ - pinValue: string; - /** + pinValue: string; + /** * Sequential counter used for cloning detection. Present only for U2F authentication. */ - counter: string; - }>; + counter: string; + }>; }; /** * Below are the allowed values for the enumeration. diff --git a/thirdparty/openapi3/paths/services_ServiceType_error.yaml b/thirdparty/openapi3/paths/services_ServiceType_error.yaml index b9ee120c..8e50fea1 100644 --- a/thirdparty/openapi3/paths/services_ServiceType_error.yaml +++ b/thirdparty/openapi3/paths/services_ServiceType_error.yaml @@ -14,7 +14,7 @@ put: description: | The HTTP request `PUT /services/{ServiceType}/error` is used to return error information operationId: PutServicesByIdAndError - summary: PutServicesByIdAndError + summary: PutServicesByServiceTypeAndError tags: - services - sampled