Initiate a Standalone Predefined Payment - with Web Form
Pre-requisites
Client Token with the scope predefinedpayment:manager as scope. LINK?
client ID and Secret needed same as for creating users
Step 1 - Initiate payment
To initiate a SEPA Credit Transfer or SEPA Instant Credit Transfer through a payment link or QR Code, use the Create a standalone predefined payment request endpoint: CHANGE LINK
POST /payment/createStandalonePayment
To create a predefined payment you also need to provide your Client ID and Secret from your default client in the API.
If the IBAN and name of the sender account are already known, we recommend including them in the payment initiation payload to avoid the possibility that several SCAs will be required.
If the IBAN or name of the sender account is not known, it is still possible to initiate a payment without the sender info and the end user will have to select the Bank or IBAN on the Web Form (see the next step) and potentially provide their name manually.
There are some payment data validations that we recommend being implemented to avoid bank payment rejections. Please refer to Payment Data Validation.
Step 2 - The user has to log in at the bank and authorize the payment
As a result of Step 1, a link and base64 code are generated. Activating either will trigger the generation of the corresponding web form. You can find the URL of the web form and the base64 code in the response:
"link": "https://di-predefined-payment-finapi-general-staging.finapi.io:443/api/v1",
"qrCode": "iVBORw0KGgoAAAANSUhEUgAAAPUAAAD1CAAAAACt2uy5AAAQuElEQVR4XtWPwZIlOXLE9v9"
The web form has to be presented to the user. If the sender’s IBAN was not provided in Step 1, the user will have to either enter the IBAN into the web form or search for a bank first. Once the sender account is selected, the user will proceed to the payment authorization.
Step 3 - Check the status of the web form
To retrieve the status of the web form, you can either call the Get a web form service or a callback can be sent of completion to a callback URL provided in the payment initiation payload during Step 1.
Note the paymentId returned in the response (in the payload object) to get the status of the payment initiation in the next step.
More details are available here: Web Form 2.0 Basics | Want-to-know-web-form-status?
Step 4 - Check the status of the payment initiation
To retrieve the status of the payment initiation, get the paymentId from Step 3 and execute Get payments:
GET /payments?ids=$paymentId
For more details, please refer to How to get the payment initiation status.