Search…
Credit Transfer

Sepa Credit Transfer

SEPA Credit Transfer (SCT) lets you transfer euros between accounts situated in the SEPA zone (all EU countries + the UK, Iceland, Lichtenstein, Norway, and Switzerland).
When an account receives a SEPA Credit Transfer, the transaction will be the SepaCreditTransferIntype.
When an account issues a SEPA Credit Transfer, the transaction will be the SepaCreditTransferOuttype.To validate the provided IBAN in the SCT out we execute multiple checks :
  • Is the IBAN size greater or equal to five?
  • Are the third and fourth characters numeric?
  • Is the country code an existing one?
  • Does the IBAN size match the country's IBAN size?
  • Is the IBAN checksum correct?
Be careful, when the Account holder verification process has not yet been completed by Swan and the Account has paymentLevel=Limited, the only possible beneficiary of SCT out is the Account holder's IBAN in another establishment.

Internal Credit Transfer

An Internal Credit Transfer is the same as a SEPA Credit Transfer except that it is instant between the two accounts.
Careful, when the Account owner's KYC has not yet been completed, it has not yet been accepted by Swan, and the Account will have the paymentLevel=Limited status. This means transfers are limited to 150€ over a period of 30 days and are only allowed for purchasing goods and services for consumption.

Initiate Credit Transfers

You can initiate credit transfers (Internal or SEPA) :
  • #nocode: use the white-labeled Web banking; the deeplink URL is available in your dashboard under the tab White-label #nocode.
  • by API: integrate payments into your product using our API.
To initiate credit transfers by API you must use the initiateCreditTransfer **** mutation. Make sure you are authentified with an accessToken in the name of the user that wants to make the payment. Learn More.
With just one call to this mutation you can initiate multiple credit transfers from the same account, towards different accounts, and for different amounts. Take note: this allows to make just one consent request for multiple transactions. This is helpful for setting up monthly payroll, or paying weekly bills.
A request from theinitiateCreditTransfermutation has two possible returns:
  1. 1.
    Swan requests user consent. In this case, the payment is created with ConsentPending status and a newly created consent resource carrying the consentUrl redirects the user to launch Swan's Strong Customer Authentication. Learn More. Once the consent process and Strong Customer Authentication is completed, the payment changes to Initiatedstatus.
  2. 2.
    Swan estimates that the context of this payment doesn't require user consent. In this case, the payment is created with Initiatedstatus.
Once the consent process and Strong Customer Authentication is completed, Swan checks that the available balance is sufficient to cover the total payment amount. If this is the case, a paymentProduct=SepaCreditTransfer transaction is created with Pendingstatus. This will change to Booked status once the transaction is processed into the SEPA Network and approved by Swan's financial security.
If you specify in the mutation that the target account is a Swan account, a paymentProduct=InternalCreditTransfer transaction is created with Pending status. This will change to Booked status once the transaction is approved by Swan's financial security. If you do not specify it, but Swan detects that the target account is a Swan account in the same project, we will follow the same process.
If the amount is insufficient, a transaction is created with Rejected status, with the reason for rejection in the rejectedReasonCodefield.
You can cancel a transaction only if its status is Upcoming. To do so, use the cancelTransaction mutation with the transaction id.
Once a transaction has been processed, it can no longer be canceled, even if its status is still Pending. If a credit transfer was made by error, you must request a recall.

R-Transactions

Once a credit transfer is initiated, there can be other transactions for the same payment linked to exterior events.

Return

When an issued payment is returned because the account doesn't exist, or is closed, or for whatever reason won't receive the payment, a second transaction is created with the SepaCreditTransferOutReturn type to credit the account.
When a credit transfer that has already been received and credited to the account is refused by the account owner, a second transaction is created with the SepaCreditTransferInReturn type to debit the account.
To simulate these exterior events in the Sandbox we have added the tab Event Simulator to your dashboard. It lets you test different scenarios.

Recall

When a user asks Swan to recall a credit transfer that was issued by error Swan transfers this request to the financial establishment that received the transfer so that they can solicit the beneficiary and ask if they accept the recall of this transfer. If the beneficiary accepts, a second transaction is created with the SepaCreditTransferOutRecall type to credit the account.
When the issuer of a credit transfer towards a Swan account asks his financial institution to recall a transfer issued by mistake the Financial establishment transmits this request to Swan so they can solicit the account holder and ask if he accepts the recall of this transfer. If they accept, a second transaction is created with the SepaCreditTransferInRecall type to debit the account.
To simulate these exterior events in the Sandbox we have added the tab Event Simulator to your dashboard. It lets you test different scenarios.