SEPA Instant Credit Transfers
Introduction
SEPA Instant Credit Transfer (Instant SCT) is a payment scheme that allows customers with bank accounts in a member country of the SEPA Scheme to make and receive SEPA Credit Transfers that are processed in less than 10 seconds. An Instant SCT transaction has a maximum of EUR 100,000. With this feature, your customers can receive and send Instant SCTs from and to any participating bank.
This guide explains how to implement this feature into your solution.
info
See the overview page to learn more about SEPA and the different types of SEPA payment schemes.
Prerequisites
You can only implement this feature after you have onboarded your customers with bank accounts and cards. See the Get started guide for instructions on how to implement the customer onboarding process for Digital Banking & Cards.
Important
- Instant SCT support is not enabled by default for your customers' accounts. Contact your Partner Manager to activate this feature.
- Starting from 09.01.2025, you will be required to support incoming Instant SCTs in your solution to comply with EU regulations. Please contact your Partner Manager for more information.
Account reachability
Account reachability is essential for Instant SCTs as not all bank accounts can accept this kind of transfer. For example, the bank of the recipient's account must be reachable via the Instant SCT scheme. Otherwise, the transaction will fail.
How does an Instant SCT work?
Once you've enabled this feature, your customers can receive and send Instant SCTs from their accounts to external bank accounts as long as such accounts are reachable via the Instant SCT scheme.
Below you'll find the product flow and the endpoints and webhooks you need to integrate into your solution.
Product flow
To view a larger version of this diagram, right-click on the image and click "Open in a new tab."
The product flow consists of the following steps:
- Your customer can initiate an Instant SCT transaction from your frontend by specifying the transaction details, such as the amount, recipient's IBAN and name, and a description of the transaction.
- We highly recommend validating the provided IBAN using the GET Check the reachability of the bank endpoint to ensure that the bank is reachable via Instant SCT to avoid transaction failure.
- Call the POST Create an Instant SCT to create the transaction.
- Your customer must authorize the transaction using the Change request process.
- After successful authorization, Solaris will process the created Instant SCT and make a reservation on the account of the type
SepaInstantCreditTransfer
. At this stage, the transaction status will change toREADY_FOR_CLEARING
. - Solaris confirms the transaction with TARGET Instant Payments (TIPS) scheme.
- After the scheme's confirmation, the SCT status changes to
CLEARED
. Meanwhile, Solaris resolves the reservation on the account, creates a booking on the sender's account of the typeSepaInstantCreditTransfer
, and transfers the funds. - The recipient receives the transaction.
API reference
Visit this section to find all endpoints related to the Instant SCT feature.
GET Check the reachability of the bank
Before initiating an Instant SCT transaction, call this endpoint to ensure that the recipient's bank is reachable to avoid transaction failure.
Request URL
GET /v1/sepa_instant_reachability/{iban}
Click here to view the full API reference.
POST Create a SEPA Instant Credit Transfer
Once you confirm that the bank is reachable, you can create an Instant SCT using the following endpoint. You must add the mandatory fields for the transaction details in the request body.
note
This endpoint triggers the 2FA flow. Your customer must authorize the transaction using the Change request process.
Request URL
POST /v1/accounts/{account_id}/transactions/sepa_instant_credit_transfers
Click here to view the full API reference.
GET Index all SEPA Instant Credit Transfers for an account
Click here to view the full API reference.
Webhooks
Subscribe to the following webhook events to receive updates about your customers' Instant SCTs:
- INSTANT_SEPA_CREDIT_TRANSFER_EXECUTED: The transaction is successfully executed.
- INSTANT_SEPA_CREDIT_TRANSFER_FAILED: The transaction has failed.
- BOOKING: A new booking has been posted on the account. The webhook payload will indicate the ID of the booking and the ID of the account where the booking was posted.
Instant SCT transaction flow
The following diagram explains the transaction flow and each status of an Instant SCT:
Status | Description |
---|---|
INITIATED |
A SEPA Instant Credit Transfer is successfully created but not yet processed. |
RESERVED |
A SEPA Instant Credit Transfer is being processed internally by Solaris, and reservations are made to lock funds availability. |
READY_FOR_CLEARING |
All internal checks are successful, pending the scheme's confirmation. |
CLEARED |
The transaction was successfully settled, bookings were made on the account, and and the receiving bank confirmed crediting the account. |
Instant SCT for reference accounts
To initiate Instant SCT transactions for reference accounts, use the reference account payouts endpoints linked below. To create an Instant SCT to a reference account, you must set the field instant_payment_rail
to sepa_instant
in the request body otherwise the transaction will be processed as a standard SCT.
Please note that you also have to check the bank reachability for Instant SCTs for reference accounts by calling GET Check the reachability of the bank before initiating a transaction.
Webhook events
Subscribe to the following webhook events to receive updates about Instant SCTs for reference accounts:
Sandbox testing
To simulate a successful Instant SCT on Sandbox (i.e., the transaction will be cleared and then created), then send an Instant SCT to the following test account:
- IBAN:
DE30110101990000000001
- BIC:
ACCPITRRXXX
To simulate a failed Instant SCT (i.e., the transaction will be rejected and therefore not created), then send an Instant SCT to the following test account:
- IBAN:
DE30110101970000000002
- BIC:
REJEITRRXXX