PISP

Payment request initiation (PISP)

Description

The following use cases can be applied:

  • payment request on behalf of a merchant
  • transfer request on behalf of the account's owner
  • standing-order request on behalf of the account's owner

Data content

A payment request or a transfer request might embed several payment instructions having

  • one single execution date or multiple execution dates
    • case of one single execution date, this date must be set at the payment level
    • case of multiple execution dates, those dates must be set at each payment instruction level
  • one single beneficiary or multiple beneficiaries
    • case of one single beneficiary, this beneficiary must be set at the payment level
    • case of multiple beneficiaries, those beneficiaries must be set at each payment instruction level Having at the same time multiple beneficiaries and multiple execution date might not be a relevant business case, although it is technically allowed. Each implementation will have to specify which business use cases are actually supported. A standing order request must embed one single payment instruction and must address one single beneficiary.
  • The beneficiary must be set at the payment level
  • The standing order specific characteristics (start date, periodicity...) must be set at the instruction level

Payment request can rely for execution on different payment instruments:

  • SEPA Credit Transfer (SCT)
  • Domestic Credit Transfer in a non-Euro-currency
  • International payment The following table indicates how to use the different fields, depending on the payment instrument:
StructureSEPA paymentsDomestic payments in non-euro currencyInternational payments
PaymentTypeInformation/InstructionPriority (payment level)"HIGH" for high-priority SCT, "NORM" for other SCT, Ignored for SCTInst"HIGH" for high-priority CT, "NORM" or ignored for other CT"HIGH" for high-priority payments, "NORM" or ignored for other payments
PaymentTypeInformation/ServiceLevel (payment level)"SEPA" for SCT and SCTInstignoredignored
PaymentTypeInformation/CategoryPurpose (payment level)"CASH" for transfer request, "DVPM" for payment request on behalf of a merchant"CORT" for generic international payments, "INTC" for transfers between two branches within the same company, "TREA" for treasury transfers
PaymentTypeInformation/LocalInstrument (payment level)"INST" pour les SCTInst, otherwise ignoredIgnored or valued with ISO20022 external code
RequestedExecutionDate (at transaction level)Optional. if set by the PISP, it indicates the date on debit on the ordering party account. If not set by the PISP, this requests the ASPSP to execute the payment instruction as soon as possible.
EndToEndIdentification (at transaction level)MandatoryOptional
UltimateDebtor (at transaction level)Optional
UltimateCreditor (at transaction level)Optional
InstructedAmount (at transaction level)MandatoryMandatory and exclusive use of one of these structures
EquivalentAmount (at transaction level)Not usedMandatory and exclusive use of one of these structures
ChargeBearer (at transaction level)"SLEV" for SCT and SCTInst"SLEV" or "SHAR""CRED", "DEBT" or "SHAR"
Purpose (at transaction level)Optional
RegulatoryReportingCode (at transaction level)Not usedMandatory (possibly multiple values)
InstructionForCreditorAgent (at transaction level)Not usedOptional (possibly multiple values)
RemittanceInformationMandatory. Structured or unstructured, depending on the local rules and constraints
Debtor (at payment level)Mandatory, 2 address lines onlyMandatory, 4 address lines onlyMandatory. Complete strustured address can be used.
DebtorAccount (at payment level)OptionalOptional. Account currency may be specified
DebtorAgent (at payment level)Optional
Creditor (at transaction level)Mandatory, 2 address lines onlyMandatory, 4 address lines onlyMandatory. Complete strustured address can be used. Date and place of birth must be specified
CreditorAccount (at transaction level)MandatoryMandatory. Account currency may be specified
CreditorAgent (at transaction level)Optional
ClearingSystemId et ClearingSystemMemberId (at transaction level)Not usedOptional
IntermediaryAgent et IntermediaryAgentAccount (at transaction level)Not usedOptional

Prerequisites for all use cases

  • The TPP was registered by the Registration Authority for the PISP role
  • The TPP was provided with an OAUTH2 "Client Credential" access token by the ASPSP (cf. § 3.4.2).
  • The TPP and the ASPSP have successfully processed a mutual check and authentication
  • The TPP has presented its "OAUTH2 Client Credential" access token

Business flow

Payment Request use case

The PISP forwards a payment request on behalf of a merchant. The PSU buys some goods or services on an e-commerce website held by a merchant. Among other payment method, the merchant suggests the use of a PISP service. As there is obviously a contract between the merchant and the PISP, there is no need for the ASPSP to check the existence of such a contract between the PSU and this PISP to initiate the process. Case of the PSU that chooses to use the PISP service:

  • The merchant forwards the requested payment characteristics to the PISP and redirects the PSU to the PISP portal.

  • The PISP requests from the PSU which ASPSP will be used.

  • The PISP prepares the Payment Request and sends this request to the ASPSP.

  • The Request can embed several payment instructions having different requested execution date.

  • The beneficiary, as being the merchant, is set at the payment level.

    Transfer Request use case

    The PISP forwards a transfer request on behalf of the owner of the account.

    • The PSU provides the PISP with all information needed for the transfer.
    • The PISP prepares the Transfer Request and sends this request to the relevant ASPSP that holds the debtor account.
    • The Request can embed several payment instructions having different beneficiaries.
    • The requested execution date, as being the same for all instructions, is set at the payment level.
    Standing Order Request use case

    The PISP forwards a Standing Order request on behalf of the owner of the account.

    • The PSU provides the PISP with all information needed for the Standing Order.
    • The PISP prepares the Standing Order Request and sends this request to the relevant ASPSP that holds the debtor account.
    • The Request embeds one single payment instruction with
      • The requested execution date of the first occurrence
      • The requested execution frequency of the payment in order to compute further execution dates
      • An execution rule to handle cases when the computed execution dates cannot be processed (e.g. bank holydays)
      • An optional end date for closing the standing Order
post/payment-requests

Request

  • Base URL
    https://www.18919.live.api.89c3.com/stet/psd2/v1.6.2
  • Auth
    OAuth 2
    Client credentials
    Token URL: /stet/psd2/oauth/token scopes: pisp

Query parameters

ui_localesstring

End-User's preferred languages and scripts for the user interface, represented as a space-separated list of BCP47 [RFC5646] language tag values, ordered by preference.

Headers

Authorizationstring required

Access token to be passed as a header

PSU-IP-Addressstring

IP address used by the PSU's terminal when connecting to the TPP

PSU-IP-Portstring

IP port used by the PSU's terminal when connecting to the TPP

PSU-HTTP-Methodstring

Http method for the most relevant PSU’s terminal request to the TTP

PSU-Datestring

Timestamp of the most relevant PSU’s terminal request to the TTP

PSU-GEO-Locationstring

Geographical location of the PSU as provided by the PSU mobile terminal if any to the TPP

PSU-User-Agentstring

"User-Agent" header field sent by the PSU terminal when connecting to the TPP

PSU-Refererstring

"Referer" header field sent by the PSU terminal when connecting to the TPP. Notice that an initial typo in RFC 1945 specifies that "referer" (incorrect spelling) is to be used. The correct spelling "referrer" can be used but might not be understood.

PSU-Acceptstring

"Accept" header field sent by the PSU terminal when connecting to the TPP

PSU-Accept-Charsetstring

"Accept-Charset" header field sent by the PSU terminal when connecting to the TPP

PSU-Accept-Encodingstring

"Accept-Encoding" header field sent by the PSU terminal when connecting to the TPP

PSU-Accept-Languagestring

"Accept-Language" header field sent by the PSU terminal when connecting to the TPP

PSU-Device-IDstring

UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of installation identification this ID need to be unaltered until removal from device.

Digeststring

Digest of the body

Signaturestring required

http-signature of the request The keyId must specify the way to get the relevant qualified certificate. It is requested that this identifier is an URL aiming to provide the relevant Qualified Certificate.

X-Request-IDstring required

Correlation header to be set in a request and retrieved in the relevant response

PSU-Workspacestring

Workspace to be used for processing the PSU authentication when confirming a PISP request.

Request body

resourceIdstring

API: Identifier assigned by the ASPSP for further use of the created resource through API calls. The API client cannot set or modify the value of this field. Since this value can be exchanged between the server and the client as an URL element or for support information, it must not contain sensitive value such as personal or business data. However it is the duty of each ASPSP to perform its own risk analysis on this topic.

paymentInformationIdstring required

ISO20022: Reference assigned by a sending party to unambiguously identify the payment information block within the message. API: This field is a clue for idempotency check by the ASPSP in order to avoid duplicate SCA or payment execution. However the ASPSP may use other mechanisms.

batchBookingboolean

Identifies whether a single entry per individual transaction or a batch entry for the sum of the amounts of all transactions within the group of a message is requested. Meaning When True: Identifies that a batch entry for the sum of the amounts of all transactions in the batch or message is requested. Meaning When False: Identifies that a single entry for each of the transactions in the batch or message is requested. Default value: each ASPSP must be able to specify its own default value.

creationDateTimestring date-time required

ISO20022: Date and time at which a (group of) payment instruction(s) was created by the instructing party.

numberOfTransactionsinteger required

ISO20022: Number of individual transactions contained in the message. API: Each ASPSP will specify a maximum value for this field taking into accounts its specificities about payment request handling

acceptDebtorAccountChangeboolean

indicator that the debtor account can be changed in the payment request by the ASPSP if needed

  • true: debtor account can be changed (default value)
  • false: debtor account cannot be changed
acceptChargeHandlingChangeboolean

indicator that the charge handling can be changed in the payment request by the ASPSP if needed

  • true: charge handling can be changed (default value)
  • false: charge handling cannot be changed
acceptInstantPaymentDowngradeboolean

Indicator that the requested instant SEPA Credit Transfer method can be downgraded by the ASPSP into a plain-vanilla SEPA Credit Transfer, when Instant SCT cannot apply or is refused by the PSU. Eventually, it is up to the ASPSP to downgrade or reject the payment. In case of a downgrade, the ASPSP will have to update de relevant field [LocalInstrument] and remove the “INST” value in order to keep the PISP informed.

  • true: payment method can be downgraded
  • false: payment method cannot be downgraded (default value)
chargeBearer'DEBT' | 'CRED' | 'SHAR' | 'SLEV'

ISO20022: Specifies which party/parties will bear the charges associated with the processing of the payment transaction. The following values are allowed:

CodeNameDescription
DEBTBorneByDebtorAll transaction charges are to be borne by the debtor.
CREDBorneByCreditorAll transaction charges are to be borne by the creditor.
SHARSharedIn a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor.
SLEVFollowingServiceLevelCharges are to be applied following the rules agreed in the service level and/or scheme.
paymentInformationStatus'ACCP' | 'ACSC' | 'ACSP' | 'ACTC' | 'ACWC' | 'ACWP' | 'CANC' | 'PART' | 'RCVD' | 'PDNG' | 'RJCT' | 'ACCO'

ISO20022: Specifies the status of the payment information. API: Mandatory. The following values are allowed to provide the status of the Payment Request

CodeNameDescription
ACCOAcceptedCustomerCOnfirmedThe customer, during his/her authentication, has confirmed the payment request.
ACCPAcceptedCustomerProfilePreceding check of technical validation was successful. Customer profile check was also successful.
ACSCAcceptedSettlementCompletedSettlement on the debtor's account was completed. In the case of SCTInst, this status must not been set by the debtor's Bank before the reception of the positive confirmation.
ACSPAcceptedSettlementInProcessAll preceding checks such as technical validation and customer profile were successful. Dynamic risk assessment is now also successful and therefore the Payment Request was accepted for execution.
ACTCAcceptedTechnicalValidationAuthentication and syntactical and semantical validation are successful.
ACWCAcceptedWithChangeInstruction is accepted but a change will be made, such as date or remittance not sent.
ACWPAcceptedWithoutPostingPayment instruction included in the credit transfer is accepted without being posted to the creditor customer’s account.
CANCCancelledPayment initiation was successfully cancelled after having received a request for cancellation.
PARTPartiallyAcceptedA number of transactions were accepted, whereas another number of transactions have not yet achieved 'accepted' status.
PATCPartiallyAcceptedTechnicalCorrectPayment initiation needs multiple authentications, where some but not yet all were performed. Syntactical and semantical validations are successful.
RCVDReceivedPayment initiation was received by the receiving agent.
PDNGPendingPayment request or individual transaction included in the Payment Request is pending. Further checks and status update will be performed.
RJCTRejectedPayment request was rejected.
statusReasonInformation'AC01' | 'AC04' | 'AC06' | 'AG01' | 'AG03' | 'AM18' | 'CH03' | 'CUST' | 'DS02' | 'DUPL' | 'FF01' | 'FRAD' | 'MS03' | 'NOAS' | 'RR01' | 'RR03' | 'RR04' | 'RR12' | 'CNOR' | 'CH04'

ISO20022: Provides detailed information on the status reason.

API: Can only be used in case the status is equal to "RJCT" or "CANC". Only the following values are allowed:

CodeNameDescription
AC01IncorectAccountNumberthe account number is either invalid or does not exist
AC04ClosedAccountNumberthe account is closed and cannot be used
AC06BlockedAccountthe account is blocked and cannot be used
AG01TransactionForbiddenTransaction forbidden on this type of account
AG03TransactionNotSupportedTransaction type not supported/authorized on this account
AM18InvalidNumberOfTransactionsthe number of transactions exceeds the ASPSP acceptance limit
CH03RequestedExecutionDateOrRequestedCollectionDateTooFarInFutureThe requested execution date is too far in the future
CH04RequestedExecutionDateOrRequestedCollectionDateTooFarInPastValue in Requested Execution Date or Requested Collection Date is too far in the past
CNORCreditorBankIsNotRegisteredCreditor bank is not registered under this BIC in the CSM
CUSTRequestedByCustomerThe reject is due to the debtor: refusal or lack of liquidity
DS02OrderCancelledAn authorized user has cancelled the order
DUPLDuplicatePaymentPayment is a duplicate of another payment. Can only be set by a PISP for a payment request cancellation.
FF01InvalidFileFormatThe reject is due to the original Payment Request which is invalid (syntax, structure or values)
FRADFraudulentOriginatedthe Payment Request is considered as fraudulent
MS03NotSpecifiedReasonAgentGeneratedNo reason specified by the ASPSP
NOASNoAnswerFromCustomerThe PSU has neither accepted nor rejected the Payment Request and a time-out has occurred
RR01MissingDebtorAccountOrIdentificationThe Debtor account and/or Identification are missing or inconsistent
RR03MissingCreditorNameOrAddressSpecification of the creditor’s name and/or address needed for regulatory requirements is insufficient or missing.
RR04RegulatoryReasonReject from regulatory reason
RR12InvalidPartyIDInvalid or missing identification required within a particular country or payment type.
TECHTechnicalProblemTechnical problems resulting in an erroneous transaction. Can only be set by a PISP for a payment request cancellation.
fundsAvailabilityboolean

Indicator that the payment can be covered or not by the funds available on the relevant account

  • true: payment is covered
  • false: payment is not covered This indicator must be provided by the ASPSP when the Booking Information is present and set to "False". This indicator will not be provided if the Booking Information is absent or set to "True".
bookingboolean

Indicator that the payment can be immediately booked or not

  • true: payment is booked
  • false: payment is not booked Booking a transaction means that the funds required by this transaction are immediatly reserved and that a subsequent transaction will not interfere with the proper execution of the payment. However, usual fraud detection mechanisms might still be triggered and result as a rejection of the payment. This indicator must be provided when the relevant Credit Transfer will be executed as soon as possible but not as an instant payment. This indicator is irrelevant and will not be provided for delayed payments. This indicator is only relevant for the first occurrence of a standing order when this occurrence is not delayed and will be executed as soon as possible.

Case the Information System cannot handle this immediate booking, the ASPSP will have to provide the funds availability information.

Response

The request was created as a resource. The ASPSP must authenticate the PSU.

appliedAuthenticationApproach'REDIRECT' | 'DECOUPLED' | 'EMBEDDED-1-FACTOR' | 'NONE'

Authentication approaches that can be applied. REDIRECT: the PSU is redirected by the TPP to the ASPSP which processes identification and authentication DECOUPLED: the TPP identifies the PSU and forwards the identification to the ASPSP which processes the authentication through a decoupled device NONE: there is no need for the PSU to authenticate

noncestring

Challenge to be sent in order to avoid replay of the authentication process.

Changes

No recorded changes to this operation across all 1 revision of this API.