---
title: "Payment initiation request"
method: POST
path: "/v1/{payment-service}/{payment-product}"
tags: ["Payment Initiation Service (PIS)"]
---

# Payment initiation request

`POST /v1/{payment-service}/{payment-product}`

This method is used to initiate a payment at the ASPSP.

## Variants of payment initiation requests

This method to initiate a payment initiation at the ASPSP can be sent with either a JSON body or an pain.001 body depending on the payment product in the path.

There are the following **payment products**:

  - Payment products with payment information in *JSON* format:
    - ***domestic-swiss-credit-transfers-isr***
    - ***domestic-swiss-credit-transfers***
    - ***domestic-swiss-credit-transfers-qr***
    - ***domestic-swiss-foreign-credit-transfers***
    - ***swiss-sepa-credit-transfers***
    - ***swiss-cross-border-credit-transfers***
  - Payment products with payment information in *SIX pain.001* XML format:
    - ***pain.001-sepa-credit-transfers***
    - ***pain.001-cross-border-credit-transfers***
    - ***pain.001-swiss-six-credit-transfers***

Furthermore the request body depends on the **payment-service**:
  * ***payments***: A single payment initiation request.
  * ***bulk-payments***: A collection of several payment initiation requests.
  
    In case of a *pain.001* message there are more than one payments contained in the *pain.001 message.

    In case of a *JSON* there are several JSON payment blocks contained in a joining list.
  * ***periodic-payments***:
    Create a standing order initiation resource for recurrent i.e. periodic payments addressable under {paymentId}
     with all data relevant for the corresponding payment product and the execution of the standing order contained in a JSON body.

This is the first step in the API to initiate the related recurring/periodic payment.

## Single and mulitilevel SCA Processes

The payment initiation requests are independent from the need of one or multilevel 
SCA processing, i.e. independent from the number of authorisations needed for the execution of payments. 

But the response messages are specific to either one SCA processing or multilevel SCA processing. 

For payment initiation with multilevel SCA, this specification requires an explicit start of the authorisation, 
i.e. links directly associated with SCA processing like 'scaRedirect' or 'scaOAuth' cannot be contained in the 
response message of a Payment Initation Request for a payment, where multiple authorisations are needed. 
Also if any data is needed for the next action, like selecting an SCA method is not supported in the response, 
since all starts of the multiple authorisations are fully equal. 
In these cases, first an authorisation sub-resource has to be generated following the 'startAuthorisation' link.

## Path parameters

- `payment-service` 'payments' | 'bulk-payments' | 'periodic-payments', required
- `payment-product` 'domestic-swiss-credit-transfers-isr' | 'domestic-swiss-credit-transfers' | 'domestic-swiss-credit-transfers-qr' | 'domestic-swiss-foreign-credit-transfers' | 'swiss-sepa-credit-transfers' | 'swiss-cross-border-credit-transfers' | 'pain.001-sepa-credit-transfers' | 'pain.001-cross-border-credit-transfers' | 'pain.001-swiss-six-credit-transfers', required

## Headers

- `X-Request-ID` string, required
- `Digest` string
- `Signature` string
- `TPP-Signature-Certificate` string, byte
- `PSU-ID` string
- `PSU-ID-Type` string
- `PSU-Corporate-ID` string
- `PSU-Corporate-ID-Type` string
- `Consent-ID` string — ID of the corresponding consent object as returned by an account information consent request.
- `PSU-IP-Address` string, ipv4, required
- `TPP-Redirect-Preferred` boolean
- `TPP-Redirect-URI` string, uri
- `TPP-Nok-Redirect-URI` string, uri
- `TPP-Explicit-Authorisation-Preferred` boolean
- `TPP-Rejection-NoFunds-Preferred` boolean
- `TPP-Brand-Logging-Information` string
- `TPP-Notification-URI` string
- `TPP-Notification-Content-Preferred` string
- `PSU-IP-Port` string
- `PSU-Accept` string
- `PSU-Accept-Charset` string
- `PSU-Accept-Encoding` string
- `PSU-Accept-Language` string
- `PSU-User-Agent` string
- `PSU-Http-Method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'
- `PSU-Device-ID` string
- `PSU-Geo-Location` string

## Request body

- union
  - PaymentInitiationJson — Generic Body for a payment initation via JSON. This generic JSON body can be used to represent valid payment initiations for the following JSON based payment product, which where defined in the Implementation Guidelines: * domestic-swiss-credit-transfers-isr * domestic-swiss-credit-transfers * domestic-swiss-credit-transfers-qr * domestic-swiss-foreign-credit-transfers * swiss-sepa-credit-transfers * swiss-cross-border-credit-transfers For the convenience of the implementer additional which are already predefinded in the Implementation Guidelines are included (but commented in source code), such that an ASPSP may add them easily. Take care: Since the format is intended to fit for all payment products there are additional conditions which are NOT covered by this specification. Please check the SIX Swiss Payment Standards implementation guidelines for details. The following data element are depending on the actual payment product available (in source code): <table style="width:100%"> <tr><td></td><td>Payment Type 1: ISR</td><td>Payment Type 3: IBAN/postal account and IID/BIC</td><td>Payment Type 3: QR-bill</td><td>Payment Type 4: Foreign currency</td><td>Payment Type 5: Foreign SEPA</td><td>Payment Type 6: Foreign</td></tr> <tr><td>CH Domestic Data Element</td><td>domestic-swiss-credit-transfers-isr</td><td>domestic-swiss-credit-transfers</td><td>domestic-swiss-credit-transfers-qr</td><td>domestic-swiss-foreign-credit-transfers</td><td>swiss-sepa-credit-transfers</td><td>swiss-cross-border-credit-transfers</td></tr> <tr><td>endToEndIdentification</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>instructionIdentification</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>debtorAccount (incl. type)</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>debtorAgent</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>optional</td></tr> <tr><td>debtorName</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>debtorId</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td></tr> <tr><td>ultimateDebtor</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>instructedAmount (incl. currency)</td><td>mandatory</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td></tr> <tr><td>equivalentAmount</td><td>n.a.</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td></tr> <tr><td>transactionCurrency</td><td>n.a.</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td></tr> <tr><td>exchangeRateInformation</td><td>n.a.</td><td>optional 2)</td><td>optional 2)</td><td>optional 2)</td><td>optional 2)</td><td>optional 2)</td></tr> <tr><td>creditorAccount</td><td>mandatory</td><td>mandatory</td><td>mandatory 8)</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>creditorAgent</td><td>n.a.</td><td>dependent 4)</td><td>dependent 4)</td><td>dependent 4)</td><td>dependent 4)</td><td>dependent 4)</td></tr> <tr><td>creditorAgentName</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>dependent 5)</td><td>n.a.</td><td>dependent 5)</td></tr> <tr><td>creditorName</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>creditorId</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>creditorAddress</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>creditorNameAndAddress</td><td>n.a.</td><td>dependent</td><td>dependent</td><td>dependent</td><td>dependent</td><td>dependent</td></tr> <tr><td>ultimateCreditor</td><td>n.a.</td><td>optional</td><td>n.a. (for future use)</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>chargeBearer</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td><td>mandatory</td><td>optional</td></tr> <tr><td>purposeCode</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>serviceLevel</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td><td>mandatory</td><td>optional</td></tr> <tr><td>remittanceInformationUnstructured</td><td>n.a.</td><td>optional</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>remittanceInformationUnstructuredArray</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>remittanceInformationStructured</td><td>mandatory</td><td>optional</td><td>mandatory 6)</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>remittanceInformationStructuredArray</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>requestedExecutionDate</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>requestedExecutionTime</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>intermediaryAgent</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>optional 2)</td><td>n.a.</td><td>optional 2)</td></tr> </table> Footnotes from the table: 1) This element may only be used by agreement with the instructed financial institution. 2) The element may only be used in consultation with the financial institution commissioned. 3) The element is currently ignored by financial institutions. 4) Dependence on creditorAccount, see SIX Swiss Payments Standards implementation guidelines. 5) Type 4(V3), 6(V2, V3): Must be present. Type 4(V2): May be present. Other species: May not be present. 6) QR-reference, creditor reference or IPI reference 7) transactionCurrency is a subfield of equivalentAmount and may only be used if equivalentAmount is used instead of instructedAmount. 8) QR-IBAN (CH/LI) must be present. IMPORTANT: In this API definition the following holds: * All data elements mentioned above are defined, but some of them are commented, i.e. they are only visible in the source code and can be used by uncommenting them. * Data elements which are mandatory in the table above for all payment products are set to be mandatory in this specification. * Data elements which are indicated in the table above as n.a. for all payment products are commented in the source code. * Data elements which are indicated to be option, conditional or mandatory for at least one payment product in the table above are set to be optional in the s specification except the case where all are definde to be mandatory. * Data element which are inticated to be n.a. can be used by the ASPS if needed. In this case uncomment tthe the relatetd lines in the source code. * If one uses this data types for some payment products he has to ensure that the used data type is valid according to the underlying payment product, e.g. by some appropriate validations.
    - `endToEndIdentification` string, required
    - `debtorName` string, required — Debtor name.
    - `debtorAccount` AccountReference16CH, required — Reference to an account by either * IBAN, of a payment accounts, or * otherAccountIdentification, for payment accounts if there is no IBAN adapted from ISO pain.001.001.03.ch.02 CashAccount16-CH_IdTpCcy
      - `iban` string — IBAN of an account.
      - `otherAccountIdentification` string — Other payment account Identifier. adapted from ISO pain.001.001.03.ch.02 GenericAccountIdentification1-CH
      - `currency` string — ISO 4217 Alpha 3 currency code.
      - `cashAccountType` string — ExternalCashAccountType1Code from ISO 20022.
    - `debtorId` string — Debtor Id.
    - `debtorAgent` DebtorAgent7CH — Reference to an debtorAgent by either * BIC, of the debtor bank, or * IID, of the debtor bank adapted from ISO pain.001.001.03.ch.02 FinancialInstitutionIdentification7-CH_BicOrClrId
      - `bic` string — BICFI
      - `iid` InstitutionalIdentification2 — Institiutional identification of a bank (Clearing System Member ID) adapted from ISO pain.001.001.03.ch.02 ClearingSystemMemberIdentification2
        - `clearingSystemIdCode` string, required
        - `clearingSystemMemberId` string, required
    - `ultimateDebtor` string — Ultimate debtor.
    - `instructedAmount` Amount
      - `currency` string, required — ISO 4217 Alpha 3 currency code.
      - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
    - `equivalentAmount` Amount
      - `currency` string, required — ISO 4217 Alpha 3 currency code.
      - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
    - `transactionCurrency` string — ISO 4217 Alpha 3 currency code.
    - `exchangeRateInformation` ExchangeRateInformation1 — as in ISO pain.001.001.03.ch.02 ExchangeRateInformation1
      - `exchangeRate` string
      - `contractIdentification` string
      - `rateType` 'SPOT' | 'SALE' | 'AGRD'
    - `creditorAccount` AccountReference16CH, required — Reference to an account by either * IBAN, of a payment accounts, or * otherAccountIdentification, for payment accounts if there is no IBAN adapted from ISO pain.001.001.03.ch.02 CashAccount16-CH_IdTpCcy
      - `iban` string — IBAN of an account.
      - `otherAccountIdentification` string — Other payment account Identifier. adapted from ISO pain.001.001.03.ch.02 GenericAccountIdentification1-CH
      - `currency` string — ISO 4217 Alpha 3 currency code.
      - `cashAccountType` string — ExternalCashAccountType1Code from ISO 20022.
    - `creditorAgent` CreditorAgent7CH — Reference to an creditorAgent by either * BIC, of the creditor bank, or * IID, of the creditor bank, or * IID and optional name and address of the creditor bank or * Name and address of the creditor bank adapted from ISO pain.001.001.03.ch.02 FinancialInstitutionIdentification7-CH
      - `bic` string — BICFI
      - `iid` InstitutionalIdentification2 — Institiutional identification of a bank (Clearing System Member ID) adapted from ISO pain.001.001.03.ch.02 ClearingSystemMemberIdentification2
        - `clearingSystemIdCode` string, required
        - `clearingSystemMemberId` string, required
      - `name` string
      - `address` PostalAddress6CH — as in ISO pain.001.001.03.ch.02 PostalAddress6 If possible structured. Simultaneous use of the structured elements <StrtNm>/ <BldgNb>/<PstCd>/<TwnNm> and the unstructured element <AdrLine> is not permitted. as in ISO pain.001.001.03.ch.02 PostalAddress6-CH
        - `streetName` string
        - `buildingNumber` string
        - `townName` string
        - `postCode` string
        - `country` string — ISO 3166 ALPHA2 country code.
        - `addressLine1` string
        - `addressLine2` string
    - `creditorAgentName` string — Creditor agent name.
    - `creditorName` string, required — Creditor name.
    - `creditorId` string — Identification of Creditors, e.g. a SEPA Creditor ID.
    - `creditorAddress` Address
      - `streetName` string
      - `buildingNumber` string
      - `townName` string
      - `postCode` string
      - `country` string, required — ISO 3166 ALPHA2 country code.
    - `creditorNameAndAddress` string — Creditor Name and Address in a free text field.
    - `ultimateCreditor` string — Ultimate creditor.
    - `purposeCode` 'SALA' | 'PENS' — ExternalPurpose1Code from ISO 20022. Values from ISO 20022 External Code List ExternalCodeSets_1Q2018 June 2018.
    - `serviceLevel` 'SEPA' | 'PRPT' | 'SDVA' | 'URGP' — Specifies the external service level code in the format of character string with a maximum length of 4 characters.
    - `chargeBearer` 'DEBT' | 'CRED' | 'SHAR' | 'SLEV' — Charge Bearer. ChargeBearerType1Code from ISO20022.
    - `remittanceInformationUnstructured` string — Unstructured remittance information.
    - `remittanceInformationStructured` RemittanceInformationStructured — Structured remittance information.
      - `reference` string, required
      - `referenceType` string
      - `referenceIssuer` string
      - `SCORorQRRorIPI` 'SCOR' | 'QRR' | 'IPI'
      - `additionalRemittanceInformation` string
    - `requestedExecutionDate` string, date, required
    - `intermediaryAgent` string — BICFI
  - PeriodicPaymentInitiationJson — Generic Body for a periodic payment initation via JSON. This generic JSON body can be used to represent valid periodic payment initiations for the following JSON based payment product, which where defined in the Implementation Guidelines: * domestic-swiss-credit-transfers-isr * domestic-swiss-credit-transfers * domestic-swiss-credit-transfers-qr * domestic-swiss-foreign-credit-transfers * swiss-sepa-credit-transfers * swiss-cross-border-credit-transfers For the convenience of the implementer additional which are already predefinded in the Implementation Guidelines are included (but commented in source code), such that an ASPSP may add them easily. Take care: Since the format is intended to fit for all payment products there are additional conditions which are NOT covered by this specification. Please check the SIX Swiss Payment Standards implementation guidelines for details. The following data element are depending on the actual payment product available (in source code): <table style="width:100%"> <tr><td></td><td>Payment Type 1: ISR</td><td>Payment Type 3: IBAN/postal account and IID/BIC</td><td>Payment Type 3: QR-bill</td><td>Payment Type 4: Foreign currency</td><td>Payment Type 5: Foreign SEPA</td><td>Payment Type 6: Foreign</td></tr> <tr><td>CH Domestic Data Element</td><td>domestic-swiss-credit-transfers-isr</td><td>domestic-swiss-credit-transfers</td><td>domestic-swiss-credit-transfers-qr</td><td>domestic-swiss-foreign-credit-transfers</td><td>swiss-sepa-credit-transfers</td><td>swiss-cross-border-credit-transfers</td></tr> <tr><td>endToEndIdentification</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>instructionIdentification</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>debtorAccount (incl. type)</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>debtorAgent</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>optional</td></tr> <tr><td>debtorName</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>debtorId</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td><td>optional 3)</td></tr> <tr><td>ultimateDebtor</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>instructedAmount (incl. currency)</td><td>mandatory</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td></tr> <tr><td>equivalentAmount</td><td>n.a.</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td></tr> <tr><td>transactionCurrency</td><td>n.a.</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td><td>dependent 1)</td></tr> <tr><td>exchangeRateInformation</td><td>n.a.</td><td>optional 2)</td><td>optional 2)</td><td>optional 2)</td><td>optional 2)</td><td>optional 2)</td></tr> <tr><td>creditorAccount</td><td>mandatory</td><td>mandatory</td><td>mandatory 8)</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>creditorAgent</td><td>n.a.</td><td>dependent 4)</td><td>dependent 4)</td><td>dependent 4)</td><td>dependent 4)</td><td>dependent 4)</td></tr> <tr><td>creditorAgentName</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>dependent 5)</td><td>n.a.</td><td>dependent 5)</td></tr> <tr><td>creditorName</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>creditorId</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>creditorAddress</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>creditorNameAndAddress</td><td>n.a.</td><td>dependent</td><td>dependent</td><td>dependent</td><td>dependent</td><td>dependent</td></tr> <tr><td>ultimateCreditor</td><td>n.a.</td><td>optional</td><td>n.a. (for future use)</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>chargeBearer</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td><td>mandatory</td><td>optional</td></tr> <tr><td>purposeCode</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>serviceLevel</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td><td>mandatory</td><td>optional</td></tr> <tr><td>remittanceInformationUnstructured</td><td>n.a.</td><td>optional</td><td>n.a.</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>remittanceInformationUnstructuredArray</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>remittanceInformationStructured</td><td>mandatory</td><td>optional</td><td>mandatory 6)</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>remittanceInformationStructuredArray</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>requestedExecutionDate</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>requestedExecutionTime</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>n.a.</td></tr> <tr><td>intermediaryAgent</td><td>n.a.</td><td>n.a.</td><td>n.a.</td><td>optional 2)</td><td>n.a.</td><td>optional 2)</td></tr> <tr><td>startDate</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>endDate</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>executionRule</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td><td>optional</td></tr> <tr><td>frequency</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td><td>mandatory</td></tr> <tr><td>dayOfExecution</td><td>conditional</td><td>conditional</td><td>conditional</td><td>conditional</td><td>conditional</td><td>conditional</td></tr> </table> Footnotes from the table: 1) This element may only be used by agreement with the instructed financial institution. 2) The element may only be used in consultation with the financial institution commissioned. 3) The element is currently ignored by financial institutions. 4) Dependence on creditorAccount, see SIX Swiss Payments Standards implementation guidelines. 5) Type 4(V3), 6(V2, V3): Must be present. Type 4(V2): May be present. Other species: May not be present. 6) QR-reference, creditor reference or IPI reference 7) currencyOfTransfer is a subfield of equivalentAmount and may only be used if equivalentAmount is used instead of instructedAmount. 8) QR-IBAN (CH/LI) must be present. IMPORTANT: In this API definition the following holds: * All data elements mentioned above are defined, but some of them are commented, i.e. they are only visible in the source code and can be used by uncommenting them. * Data elements which are mandatory in the table above for all payment products are set to be mandatory in this specification. * Data elements which are indicated in the table above as n.a. for all payment products are commented in the source code. * Data elements which are indicated to be option, conditional or mandatory for at least one payment product in the table above are set to be optional in the s specification except the case where all are definde to be mandatory. * Data element which are inticated to be n.a. can be used by the ASPS if needed. In this case uncomment tthe the relatetd lines in the source code. * If one uses this data types for some payment products he has to ensure that the used data type is valid according to the underlying payment product, e.g. by some appropriate validations.
    - `endToEndIdentification` string, required
    - `debtorName` string, required — Debtor name.
    - `debtorAccount` AccountReference16CH, required — Reference to an account by either * IBAN, of a payment accounts, or * otherAccountIdentification, for payment accounts if there is no IBAN adapted from ISO pain.001.001.03.ch.02 CashAccount16-CH_IdTpCcy
      - `iban` string — IBAN of an account.
      - `otherAccountIdentification` string — Other payment account Identifier. adapted from ISO pain.001.001.03.ch.02 GenericAccountIdentification1-CH
      - `currency` string — ISO 4217 Alpha 3 currency code.
      - `cashAccountType` string — ExternalCashAccountType1Code from ISO 20022.
    - `debtorId` string — Debtor Id.
    - `debtorAgent` DebtorAgent7CH — Reference to an debtorAgent by either * BIC, of the debtor bank, or * IID, of the debtor bank adapted from ISO pain.001.001.03.ch.02 FinancialInstitutionIdentification7-CH_BicOrClrId
      - `bic` string — BICFI
      - `iid` InstitutionalIdentification2 — Institiutional identification of a bank (Clearing System Member ID) adapted from ISO pain.001.001.03.ch.02 ClearingSystemMemberIdentification2
        - `clearingSystemIdCode` string, required
        - `clearingSystemMemberId` string, required
    - `ultimateDebtor` string — Ultimate debtor.
    - `instructedAmount` Amount
      - `currency` string, required — ISO 4217 Alpha 3 currency code.
      - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
    - `equivalentAmount` Amount
      - `currency` string, required — ISO 4217 Alpha 3 currency code.
      - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
    - `transactionCurrency` string — ISO 4217 Alpha 3 currency code.
    - `exchangeRateInformation` ExchangeRateInformation1 — as in ISO pain.001.001.03.ch.02 ExchangeRateInformation1
      - `exchangeRate` string
      - `contractIdentification` string
      - `rateType` 'SPOT' | 'SALE' | 'AGRD'
    - `creditorAccount` AccountReference16CH, required — Reference to an account by either * IBAN, of a payment accounts, or * otherAccountIdentification, for payment accounts if there is no IBAN adapted from ISO pain.001.001.03.ch.02 CashAccount16-CH_IdTpCcy
      - `iban` string — IBAN of an account.
      - `otherAccountIdentification` string — Other payment account Identifier. adapted from ISO pain.001.001.03.ch.02 GenericAccountIdentification1-CH
      - `currency` string — ISO 4217 Alpha 3 currency code.
      - `cashAccountType` string — ExternalCashAccountType1Code from ISO 20022.
    - `creditorAgent` CreditorAgent7CH — Reference to an creditorAgent by either * BIC, of the creditor bank, or * IID, of the creditor bank, or * IID and optional name and address of the creditor bank or * Name and address of the creditor bank adapted from ISO pain.001.001.03.ch.02 FinancialInstitutionIdentification7-CH
      - `bic` string — BICFI
      - `iid` InstitutionalIdentification2 — Institiutional identification of a bank (Clearing System Member ID) adapted from ISO pain.001.001.03.ch.02 ClearingSystemMemberIdentification2
        - `clearingSystemIdCode` string, required
        - `clearingSystemMemberId` string, required
      - `name` string
      - `address` PostalAddress6CH — as in ISO pain.001.001.03.ch.02 PostalAddress6 If possible structured. Simultaneous use of the structured elements <StrtNm>/ <BldgNb>/<PstCd>/<TwnNm> and the unstructured element <AdrLine> is not permitted. as in ISO pain.001.001.03.ch.02 PostalAddress6-CH
        - `streetName` string
        - `buildingNumber` string
        - `townName` string
        - `postCode` string
        - `country` string — ISO 3166 ALPHA2 country code.
        - `addressLine1` string
        - `addressLine2` string
    - `creditorAgentName` string — Creditor agent name.
    - `creditorName` string, required — Creditor name.
    - `creditorId` string — Identification of Creditors, e.g. a SEPA Creditor ID.
    - `creditorAddress` Address
      - `streetName` string
      - `buildingNumber` string
      - `townName` string
      - `postCode` string
      - `country` string, required — ISO 3166 ALPHA2 country code.
    - `creditorNameAndAddress` string — Creditor Name and Address in a free text field.
    - `ultimateCreditor` string — Ultimate creditor.
    - `purposeCode` 'SALA' | 'PENS' — ExternalPurpose1Code from ISO 20022. Values from ISO 20022 External Code List ExternalCodeSets_1Q2018 June 2018.
    - `serviceLevel` 'SEPA' | 'PRPT' | 'SDVA' | 'URGP' — Specifies the external service level code in the format of character string with a maximum length of 4 characters.
    - `chargeBearer` 'DEBT' | 'CRED' | 'SHAR' | 'SLEV' — Charge Bearer. ChargeBearerType1Code from ISO20022.
    - `remittanceInformationUnstructured` string — Unstructured remittance information.
    - `remittanceInformationStructured` RemittanceInformationStructured — Structured remittance information.
      - `reference` string, required
      - `referenceType` string
      - `referenceIssuer` string
      - `SCORorQRRorIPI` 'SCOR' | 'QRR' | 'IPI'
      - `additionalRemittanceInformation` string
    - `intermediaryAgent` string — BICFI
    - `startDate` string, date, required — The first applicable day of execution starting from this date is the first payment.
    - `endDate` string, date — The last applicable day of execution. If not given, it is an infinite standing order.
    - `executionRule` 'following' | 'preceding' — "following" or "preceding" supported as values. This data attribute defines the behaviour when recurring payment dates falls on a weekend or bank holiday. The payment is then executed either the "preceding" or "following" working day. ASPSP might reject the request due to the communicated value, if rules in Online-Banking are not supporting this execution rule.
    - `frequency` 'Daily' | 'Weekly' | 'EveryTwoWeeks' | 'Monthly' | 'EveryTwoMonths' | 'Quarterly' | 'SemiAnnual' | 'Annual' | 'MonthlyVariable', required — The following codes from the "EventFrequency7Code" of ISO 20022 are supported: - "Daily" - "Weekly" - "EveryTwoWeeks" - "Monthly" - "EveryTwoMonths" - "Quarterly" - "SemiAnnual" - "Annual" - "MonthlyVariable"
    - `dayOfExecution` '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12' | '13' | '14' | '15' | '16' | '17' | '18' | '19' | '20' | '21' | '22' | '23' | '24' | '25' | '26' | '27' | '28' | '29' | '30' | '31' — Day of execution as string. This string consists of up two characters. Leading zeroes are not allowed. 31 is ultimo of the month.
  - BulkPaymentInitiationJson — Generic Body for a bulk payment initation via JSON. paymentInformationId is contained in code but commented since it is n.a. and not all ASPSP are able to support this field now. In a later version the field will be mandatory.
    - `batchBookingPreferred` boolean — If this element equals 'true', the PSU prefers only one booking entry. If this element equals 'false', the PSU prefers individual booking of all contained individual transactions. The ASPSP will follow this preference according to contracts agreed on with the PSU.
    - `debtorAccount` AccountReference16CH, required — Reference to an account by either * IBAN, of a payment accounts, or * otherAccountIdentification, for payment accounts if there is no IBAN adapted from ISO pain.001.001.03.ch.02 CashAccount16-CH_IdTpCcy
      - `iban` string — IBAN of an account.
      - `otherAccountIdentification` string — Other payment account Identifier. adapted from ISO pain.001.001.03.ch.02 GenericAccountIdentification1-CH
      - `currency` string — ISO 4217 Alpha 3 currency code.
      - `cashAccountType` string — ExternalCashAccountType1Code from ISO 20022.
    - `debtorAgent` DebtorAgent7CH, required — Reference to an debtorAgent by either * BIC, of the debtor bank, or * IID, of the debtor bank adapted from ISO pain.001.001.03.ch.02 FinancialInstitutionIdentification7-CH_BicOrClrId
      - `bic` string — BICFI
      - `iid` InstitutionalIdentification2 — Institiutional identification of a bank (Clearing System Member ID) adapted from ISO pain.001.001.03.ch.02 ClearingSystemMemberIdentification2
        - `clearingSystemIdCode` string, required
        - `clearingSystemMemberId` string, required
    - `requestedExecutionDate` string, date
    - `requestedExecutionTime` string, date-time
    - `payments` PaymentInitiationBulkElementJson[], required — A list of generic JSON bodies payment initations for bulk payments via JSON. Note: Some fields from single payments do not occcur in a bulk payment element
      - `endToEndIdentification` string, required
      - `debtorName` string, required — Debtor name.
      - `debtorId` string — Debtor Id.
      - `ultimateDebtor` string — Ultimate debtor.
      - `instructedAmount` Amount
        - `currency` string, required — ISO 4217 Alpha 3 currency code.
        - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
      - `equivalentAmount` Amount
        - `currency` string, required — ISO 4217 Alpha 3 currency code.
        - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
      - `transactionCurrency` string — ISO 4217 Alpha 3 currency code.
      - `exchangeRateInformation` ExchangeRateInformation1 — as in ISO pain.001.001.03.ch.02 ExchangeRateInformation1
        - `exchangeRate` string
        - `contractIdentification` string
        - `rateType` 'SPOT' | 'SALE' | 'AGRD'
      - `creditorAccount` AccountReference16CH, required — Reference to an account by either * IBAN, of a payment accounts, or * otherAccountIdentification, for payment accounts if there is no IBAN adapted from ISO pain.001.001.03.ch.02 CashAccount16-CH_IdTpCcy
        - `iban` string — IBAN of an account.
        - `otherAccountIdentification` string — Other payment account Identifier. adapted from ISO pain.001.001.03.ch.02 GenericAccountIdentification1-CH
        - `currency` string — ISO 4217 Alpha 3 currency code.
        - `cashAccountType` string — ExternalCashAccountType1Code from ISO 20022.
      - `creditorAgent` CreditorAgent7CH — Reference to an creditorAgent by either * BIC, of the creditor bank, or * IID, of the creditor bank, or * IID and optional name and address of the creditor bank or * Name and address of the creditor bank adapted from ISO pain.001.001.03.ch.02 FinancialInstitutionIdentification7-CH
        - `bic` string — BICFI
        - `iid` InstitutionalIdentification2 — Institiutional identification of a bank (Clearing System Member ID) adapted from ISO pain.001.001.03.ch.02 ClearingSystemMemberIdentification2
          - `clearingSystemIdCode` string, required
          - `clearingSystemMemberId` string, required
        - `name` string
        - `address` PostalAddress6CH — as in ISO pain.001.001.03.ch.02 PostalAddress6 If possible structured. Simultaneous use of the structured elements <StrtNm>/ <BldgNb>/<PstCd>/<TwnNm> and the unstructured element <AdrLine> is not permitted. as in ISO pain.001.001.03.ch.02 PostalAddress6-CH
          - `streetName` string
          - `buildingNumber` string
          - `townName` string
          - `postCode` string
          - `country` string — ISO 3166 ALPHA2 country code.
          - `addressLine1` string
          - `addressLine2` string
      - `creditorAgentName` string — Creditor agent name.
      - `creditorName` string, required — Creditor name.
      - `creditorId` string — Identification of Creditors, e.g. a SEPA Creditor ID.
      - `creditorAddress` Address
        - `streetName` string
        - `buildingNumber` string
        - `townName` string
        - `postCode` string
        - `country` string, required — ISO 3166 ALPHA2 country code.
      - `creditorNameAndAddress` string — Creditor Name and Address in a free text field.
      - `ultimateCreditor` string — Ultimate creditor.
      - `purposeCode` 'SALA' | 'PENS' — ExternalPurpose1Code from ISO 20022. Values from ISO 20022 External Code List ExternalCodeSets_1Q2018 June 2018.
      - `serviceLevel` 'SEPA' | 'PRPT' | 'SDVA' | 'URGP' — Specifies the external service level code in the format of character string with a maximum length of 4 characters.
      - `chargeBearer` 'DEBT' | 'CRED' | 'SHAR' | 'SLEV' — Charge Bearer. ChargeBearerType1Code from ISO20022.
      - `remittanceInformationUnstructured` string — Unstructured remittance information.
      - `remittanceInformationStructured` RemittanceInformationStructured — Structured remittance information.
        - `reference` string, required
        - `referenceType` string
        - `referenceIssuer` string
        - `SCORorQRRorIPI` 'SCOR' | 'QRR' | 'IPI'
        - `additionalRemittanceInformation` string
      - `intermediaryAgent` string — BICFI

## Response `201`

CREATED

- PaymentInitationRequestResponse201 — Body of the response for a successful payment initiation request.
  - `transactionStatus` 'ACCC' | 'ACCP' | 'ACSC' | 'ACSP' | 'ACTC' | 'ACWC' | 'ACWP' | 'RCVD' | 'PDNG' | 'RJCT' | 'CANC' | 'ACFC' | 'PATC' | 'PART', required — The transaction status is filled with codes of the ISO 20022 data table: - 'ACCC': 'AcceptedSettlementCompleted' - Settlement on the creditor's account has been completed. - 'ACCP': 'AcceptedCustomerProfile' - Preceding check of technical validation was successful. Customer profile check was also successful. - 'ACSC': 'AcceptedSettlementCompleted' - Settlement on the debtoro?=s account has been completed. **Usage:** this can be used by the first agent to report to the debtor that the transaction has been completed. **Warning:** this status is provided for transaction status reasons, not for financial information. It can only be used after bilateral agreement. - 'ACSP': 'AcceptedSettlementInProcess' - All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution. - 'ACTC': 'AcceptedTechnicalValidation' - Authentication and syntactical and semantical validation are successful. - 'ACWC': 'AcceptedWithChange' - Instruction is accepted but a change will be made, such as date or remittance not sent. - 'ACWP': 'AcceptedWithoutPosting' - Payment instruction included in the credit transfer is accepted without being posted to the creditor customero?=s account. - 'RCVD': 'Received' - Payment initiation has been received by the receiving agent. - 'PDNG': 'Pending' - Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed. - 'RJCT': 'Rejected' - Payment initiation or individual transaction included in the payment initiation has been rejected. - 'CANC': 'Cancelled' Payment initiation has been cancelled before execution Remark: This codeis accepted as new code by ISO20022. - 'ACFC': 'AcceptedFundsChecked' - Preceding check of technical validation and customer profile was successful and an automatic funds check was positive . Remark: This code is accepted as new code by ISO20022. - 'PATC': 'PartiallyAcceptedTechnical' Correct The payment initiation needs multiple authentications, where some but not yet all have been performed. Syntactical and semantical validations are successful. Remark: This code is accepted as new code by ISO20022. - 'PART': 'PartiallyAccepted' - A number of transactions have been accepted, whereas another number of transactions have not yet achieved 'accepted' status. Remark: This code may be used only in case of bulk payments. It is only used in a situation where all mandated authorisations have been applied, but some payments have been rejected.
  - `paymentId` string, required — Resource identification of the generated payment initiation resource.
  - `transactionFees` Amount
    - `currency` string, required — ISO 4217 Alpha 3 currency code.
    - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
  - `currencyConversionFee` Amount
    - `currency` string, required — ISO 4217 Alpha 3 currency code.
    - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
  - `estimatedTotalAmount` Amount
    - `currency` string, required — ISO 4217 Alpha 3 currency code.
    - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
  - `estimatedInterbankSettlementAmount` Amount
    - `currency` string, required — ISO 4217 Alpha 3 currency code.
    - `amount` string, required — The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78
  - `transactionFeeIndicator` boolean — If equals 'true', the transaction will involve specific transaction cost as shown by the ASPSP in their public price list or as agreed between ASPSP and PSU. If equals 'false', the transaction will not involve additional specific transaction costs to the PSU unless the fee amount is given specifically in the data elements transactionFees and/or currencyConversionFees. If this data element is not used, there is no information about transaction fees unless the fee amount is given explicitly in the data element transactionFees and/or currencyConversionFees.
  - `scaMethods` AuthenticationObject[] — This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also a hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP.
    - `authenticationType` 'SMS_OTP' | 'CHIP_OTP' | 'PHOTO_OTP' | 'PUSH_OTP' | 'SMTP_OTP', required — Type of the authentication method. More authentication types might be added during implementation projects and documented in the ASPSP documentation. - 'SMS_OTP': An SCA method, where an OTP linked to the transaction to be authorised is sent to the PSU through a SMS channel. - 'CHIP_OTP': An SCA method, where an OTP is generated by a chip card, e.g. a TOP derived from an EMV cryptogram. To contact the card, the PSU normally needs a (handheld) device. With this device, the PSU either reads the challenging data through a visual interface like flickering or the PSU types in the challenge through the device key pad. The device then derives an OTP from the challenge data and displays the OTP to the PSU. - 'PHOTO_OTP': An SCA method, where the challenge is a QR code or similar encoded visual data which can be read in by a consumer device or specific mobile app. The device resp. the specific app than derives an OTP from the visual challenge data and displays the OTP to the PSU. - 'PUSH_OTP': An OTP is pushed to a dedicated authentication APP and displayed to the PSU. - 'SMTP_OTP': An OTP is sent via email to the PSU.
    - `authenticationVersion` string — Depending on the "authenticationType". This version can be used by differentiating authentication tools used within performing OTP generation in the same authentication type. This version can be referred to in the ASPSP?s documentation.
    - `authenticationMethodId` string, required — An identification provided by the ASPSP for the later identification of the authentication method selection.
    - `name` string — This is the name of the authentication method defined by the PSU in the Online Banking frontend of the ASPSP. Alternatively this could be a description provided by the ASPSP like "SMS OTP on phone +49160 xxxxx 28". This name shall be used by the TPP when presenting a list of authentication methods to the PSU, if available.
    - `explanation` string — Detailed information about the SCA method for the PSU.
  - `chosenScaMethod` ChosenScaMethod — Authentication object.
    - `authenticationType` 'SMS_OTP' | 'CHIP_OTP' | 'PHOTO_OTP' | 'PUSH_OTP' | 'SMTP_OTP', required — Type of the authentication method. More authentication types might be added during implementation projects and documented in the ASPSP documentation. - 'SMS_OTP': An SCA method, where an OTP linked to the transaction to be authorised is sent to the PSU through a SMS channel. - 'CHIP_OTP': An SCA method, where an OTP is generated by a chip card, e.g. a TOP derived from an EMV cryptogram. To contact the card, the PSU normally needs a (handheld) device. With this device, the PSU either reads the challenging data through a visual interface like flickering or the PSU types in the challenge through the device key pad. The device then derives an OTP from the challenge data and displays the OTP to the PSU. - 'PHOTO_OTP': An SCA method, where the challenge is a QR code or similar encoded visual data which can be read in by a consumer device or specific mobile app. The device resp. the specific app than derives an OTP from the visual challenge data and displays the OTP to the PSU. - 'PUSH_OTP': An OTP is pushed to a dedicated authentication APP and displayed to the PSU. - 'SMTP_OTP': An OTP is sent via email to the PSU.
    - `authenticationVersion` string — Depending on the "authenticationType". This version can be used by differentiating authentication tools used within performing OTP generation in the same authentication type. This version can be referred to in the ASPSP?s documentation.
    - `authenticationMethodId` string, required — An identification provided by the ASPSP for the later identification of the authentication method selection.
    - `name` string — This is the name of the authentication method defined by the PSU in the Online Banking frontend of the ASPSP. Alternatively this could be a description provided by the ASPSP like "SMS OTP on phone +49160 xxxxx 28". This name shall be used by the TPP when presenting a list of authentication methods to the PSU, if available.
    - `explanation` string — Detailed information about the SCA method for the PSU.
  - `challengeData` ChallengeData — It is contained in addition to the data element 'chosenScaMethod' if challenge data is needed for SCA. In rare cases this attribute is also used in the context of the 'startAuthorisationWithPsuAuthentication' link.
    - `image` string, byte — PNG data (max. 512 kilobyte) to be displayed to the PSU, Base64 encoding, cp. [RFC4648]. This attribute is used only, when PHOTO_OTP or CHIP_OTP is the selected SCA method.
    - `data` string[] — A collection of strings as challenge data.
    - `imageLink` string — A link where the ASPSP will provides the challenge image for the TPP.
    - `otpMaxLength` integer — The maximal length for the OTP to be typed in by the PSU.
    - `otpFormat` 'characters' | 'integer' — The format type of the OTP to be typed in. The admitted values are "characters" or "integer".
    - `additionalInformation` string — Additional explanation for the PSU to explain e.g. fallback mechanism for the chosen SCA method. The TPP is obliged to show this to the PSU.
  - `_links` LinksPaymentInitiation, required — A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the response depend on the dynamical decisions of the ASPSP when processing the request. **Remark:** All links can be relative or full links, to be decided by the ASPSP. Type of links admitted in this response, (further links might be added for ASPSP defined extensions): * 'scaRedirect': In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to redirect the PSU browser. * 'scaOAuth': In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of the Authorisation Server can be retrieved. The configuration follows the OAuth 2.0 Authorisation Server Metadata specification. * 'confirmation': Might be added by the ASPSP if either the "scaRedirect" or "scaOAuth" hyperlink is returned in the same response message. This hyperlink defines the URL to the resource which needs to be updated with * a confirmation code as retrieved after the plain redirect authentication process with the ASPSP authentication server or * an access token as retrieved by submitting an authorization code after the integrated OAuth based authentication process with the ASPSP authentication server. * 'startAuthorisation': In case, where an explicit start of the transaction authorisation is needed, but no more data needs to be updated (no authentication method to be selected, no PSU identification nor PSU authentication data to be uploaded). * 'startAuthorisationWithPsuIdentification': The link to the authorisation end-point, where the authorisation sub-resource has to be generated while uploading the PSU identification data. * 'startAuthorisationWithPsuAuthentication': The link to the authorisation end-point, where the authorisation sub-resource has to be generated while uploading the PSU authentication data. * 'startAuthorisationWithEncryptedPsuAuthentication': Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on application layer in uploading. * 'startAuthorisationWithAuthenticationMethodSelection': The link to the authorisation end-point, where the authorisation sub-resource has to be generated while selecting the authentication method. This link is contained under exactly the same conditions as the data element "scaMethods" * 'startAuthorisationWithTransactionAuthorisation': The link to the authorisation end-point, where the authorisation sub-resource has to be generated while authorising the transaction e.g. by uploading an OTP received by SMS. * 'self': The link to the payment initiation resource created by this request. This link can be used to retrieve the resource data. * 'status': The link to retrieve the transaction status of the payment initiation. * 'scaStatus': The link to retrieve the scaStatus of the corresponding authorisation sub-resource. This link is only contained, if an authorisation sub-resource has been already created.
    - `scaRedirect` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `scaOAuth` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `confirmation` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `startAuthorisation` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `startAuthorisationWithPsuIdentification` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `startAuthorisationWithPsuAuthentication` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `startAuthorisationWithEncryptedPsuAuthentication` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `startAuthorisationWithAuthenticationMethodSelection` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `startAuthorisationWithTransactionAuthorisation` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `self` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `status` HrefType — Link to a resource.
      - `href` string — Link to a resource.
    - `scaStatus` HrefType — Link to a resource.
      - `href` string — Link to a resource.
  - `psuMessage` string — Text to be displayed to the PSU.
  - `tppMessages` TppMessage2XX[]
    - `category` 'ERROR' | 'WARNING', required — Category of the TPP message category.
    - `code` 'WARNING', required — Message codes for HTTP Error codes 2XX.
    - `path` string
    - `text` string — Additional explaining text to the TPP.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `405` — Method Not Allowed
- `406` — Not Acceptable
- `408` — Request Timeout
- `409` — Conflict
- `415` — Unsupported Media Type
- `429` — Too Many Requests
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/openbankingproject-ch/apis/swiss-nextgen-banking-api-framework.md) · [All operations](https://skmtc.net/openbankingproject-ch/apis/swiss-nextgen-banking-api-framework/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openbankingproject-ch/swiss-nextgen-banking-api-framework/revisions/c32e86db40b4/schema)
