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 :

 

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 => "FWNG--following" (payment execution the next working day) 
  • "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
  • only for Banques Populaires, Banque de Savoie and Banque Palatine ASPSP 
  • only for Caisse d'Epargne, Banque BCP, Credit Coopératif and BTP Banque ASPSP 
    • SCT Core (immediate, differed) are available for PART/EI customer segments
    • Instant Payment available for PART/EI 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 on Monday if the PIS transaction occurs on Saturday or Sunday

 

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
message : RJCT

Wrong format for BIC

400

Bad request

error code : FF01
message : RJCT
error : the field creditorAgent.bicFi bicFi-Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362

Wrong format for serviceLevel

400

Bad request

error code : FF01
message : RJCT
error : value not one of declared Enum instance names: [SEPA, NURG]

Wrong format for chargeBearer different from SLEV

400

Bad request

error code: FF01
message: RJCT
error: value not one of declared Enum instance names: [SLEV]

Wrong format for schemeName

400

Bad request

error code: FF01
message : RJCT
error : the field creditor.privateId.schemeName schemeName-Possible values BANK,COID,SREN,DSRET,NIDN,OAUT,CPAN

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
message: RJCT
error: value not one of declared Enum instance names: [CASH, DVPM]

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