
Send a single payment request initiation in €
Context
This call is used to send to the account-holding bank (ASPSP) of a customer (PAO) a request for payment initiation in order to debit the PAO account and to credit the account of the payment service user (PSU) for which the Payment Service Provider (PISP) is connected.
For the time being, the initiation of single payment in euros is only accepted in our treatments. When submitting the request and if all the fields are correctly formatted, a response (HTPP 201) will be returned.
This response will contain the resourceID of the payment initiation request, as well as the SCA Redirect authentication mode (sole mode available), the consent URL depending on the payer's bank (urlconsent_approval_URL ) and nonce.
Prerequisites
In order to process this request it's needed to fill the eligibility (see "Eligibility" use case), and to get the OAUTH2 access token (see "Retrieve your access token" use case).
Request POST
The entry point depends on the bank code <bkcode>.
You need to insert the same <bkcode> parameter as the one used for requesting the access token.
As a reminder, the list of our banking institutions and the possible values of <bkcode> are specified in the "Limits" use case, see examples below :
Bank code <bkcode> | Bank name | Bank short name |
13807 | B.P Grand Ouest | BPGO |
17515 | CE Ile de France | CEIDF |
For instance the URI will be :
- POST https://www.13807.live.api.89c3.com/stet/psd2/v1/paymentRequests to initiate a single payment for a customer (POA) of Banque Populaire Grand Ouest in live production.
- POST https://www.17515.live.api.89c3.com/stet/psd2/v1/paymentRequests to initiate a single payment for a customer (POA) of Caisse d'Epargne Ile de France in live production.
Mandatory or facultative body parameters needed for calling the service
Body structure and mandatory fields are described in the STET standard.
The parameters below must be setup at the following values :
- serviceLevel => "SEPA"
- currency => "EUR" => NO international currency transfers available.
- requestedExecutionDate => equal or greater than transaction date
- numberOfTransactions => "1" for single payment initiation
- executionRule => for recurring PIS operations, not available in this implementaition of STET V1.4.0
- "Iban", "debtorAccount", "creditorAccount" => a valid normalized IBAN
- BIC Creditor data is mandatory
- chargeBearer field is mandatory (= SLEV in euro zone)
- successfullReportUrl => mandatory parameter for the REDIRECT mode
- unsuccessfullReportUrl => if not filled, the data in "successfullReportUrl" will be used
- supplementaryData => "REDIRECT"
- scaHint => field ignored whatever value is set => NO SCA exemptions
- creationDateTime => ISO8601
- The three regular expressions allowed are:
- YYYY-MM-DDTHH:MM:SS.SSS+HH:MM
- YYYY-MM-DDTHH:MM:SS.SSS+HHMM
- YYYY-MM-DDTHH:MM:SS.SSS
- Examples:
- 2019-11-12T00:00:00.000+02:00
- 2019-11-12T00:00:00.000+0200
- 2019-11-12T00:00:00.000
- The three regular expressions allowed are:
- only for Banques Populaires, Banque de Savoie and Banque Palatine ASPSP :
- localInstrument => not valued as only SCT CORE payments (immediate, differed) are available => NO instant payment feature available
- requestedExecutionDate data can't be a week-end, a bank holiday or Target 2 closing day for SCT CORE payments, see calendar on https://www.ecb.europa.eu/paym/target/target2/profuse/calendar/html/index.en.html
- only for Caisse d'Epargne, Banque BCP, Credit Coopératif and BTP Banque ASPSP :
- SCT Core (immediate, differed) are available for PART/EI/PRO/ENT customer segments
- Instant Payment available for PART/EI/PRO/ENT customer segments
- The cut-off hour for clearing transactions on the same day is 01:30 pm, otherwise it will be cleared the next day (if not a bank holiday or a Target 2 closing day for SCT CORE payments, see calendar)
Single SCA (Fluid UX)
If the PISP transmits to the ASPSP all the information necessary to initiate the payment, including the account number/IBAN of the account to be debited, ASPSPs supports a single SCA for a single payment initiation :
- Debtor IBAN (debtorAccount) only : a screen for PSU identification is still requested before the unique SCA (for dynamic linking)
- Debtor IBAN (debtorAccount) + PSU identification : no need ti identify the PSU before the unique SCA (for dynamic linking)
Creditor IBAN control
A temporary control for NOT allowing PISP initiaitions has been added since December 7th, 2020 (alignment on direct access security features for funds transfer) :
- If the Creditor IBAN is NOT included in preregistered list done through the direct access
- AND if the field categoryPurpose = "CASH"
- AND if the SCA is NOT peformed by the PSU using the most secure authentication means (e.g. Sécur'Pass for retail PSU)
Error Codes
Error type | HTTP code | Description | Reason |
Generic, bad structure | 400 | Bad request | error code : FF01 |
Wrong format for BIC | 400 | Bad request | error code : FF01 |
Wrong format for serviceLevel | 400 | Bad request | error code : FF01 |
Wrong format for chargeBearer different from SLEV | 400 | Bad request | error code: FF01 |
Wrong format for schemeName | 400 | Bad request | error code: FF01 |
Wrong format for purpose | 400 | Bad request | error code: FF01 message: RJCT error: value not one of declared Enum instance names: [TRPT, CASH, CPKC, ACCT, COMC] |
Wrong format for categoryPurpose | 400 | Bad request | error code: FF01 |
Wrong access token, authentication issue | 403 | Forbidden | |
Unknown request resource | 404 | Not Found | |
Wrong request, or request out of authorized scope | 405 | Method not allowed | |
Generic message | 500 | Internal server error | |
Duplicate request | 500 | Internal server error | error : Database insertion problem, duplicate unique key |