Trustly
Trustly is a bank transfer payment service. During the online checkout process, consumers select their bank, log into their online banking, choose the account from which they wish to make the payment, and then verify their purchase. Founded in Sweden in 2008, Trustly operates in 29 countries.
Payment Method Properties
Available country codes | AT, DE, DK, EE, ES, FI, GB, LT, LV, NL, NO, SE |
Processing (Presentation) currencies | DKK, EUR, GBP, NOK, SEK |
Settlement currencies | DKK, EUR, GBP, NOK, SEK |
Consumer currencies | DKK, EUR, GBP, NOK, SEK |
Channel member tag | trustly |
Scheme name in the settlement file | Trustly |
Minimum transaction amount | 0.01 EUR (or equivalent) |
Maximum transaction amount | None |
Session timeout | 7 days |
Refund | Full Partial Multiple partial |
Refund Validity | 365 days |
Chargeback | No |
Integration Type | Asynchronous |
Sandbox | Scheme-hosted |
- The consumer checks out on the merchant’s page.
- They select the payment method.
- The consumer is redirected to the bank selection page.
- They enter the bank details and approve the payment.
- The consumer is redirected back to the merchant.
Specific input parameters for the TRANSACTION call
Field Name | M/O | Type | RegEx | Description |
---|---|---|---|---|
specin.consumerref | M | utf-8 | ABCDEFGHIJKLMNOPQRSTUVXYZ abcdefghijklmnopqrstuvxyz01234 56789.@%,&/+*$- | The ID, username, hash, or anything used to identify the consumer. Make sure it is the same ID, username, or hash used in the merchant's shopping system. For example, if the shopper John Doe is identified with the unique identifier ABCXYZ123 , populate the field specin.consumerref with ABCXYZ123 . Max length 50 characters. |
specin.useremail | M | utf-8 | N/A | The email of the consumer that they shop with the merchant. Use it for faster checkout for returning consumers. **Note.: _specin.useremail _will become mandatory field from 20.Nov.2024. |
specin.clientip | O | ascii | N/A | The consumer’s publicly-routable IPv4. |
specin.nationalid | O | utf-8 | N/A | The consumer’s social security number/ personal number/birth number/etc. Some banks use it for identifying transactions and Know Your Customer or Anti Money Laundering. |
specin.beneficiaryid | M | utf-8 | N/A | Only for e-wallet merchants: ID, username, hash, or anything uniquely identifying the ultimate beneficiary |
specin.beneficiaryname | M | utf-8 | N/A | Only for e-wallet merchants: The ultimate beneficiary’s full name (see Annotations for details) |
specin.beneficiaryaddress | M | utf-8 | N/A | Only for e-wallet merchants: The ultimate beneficiary’s street address (street, zip code, city), excluding the country Example: Main street 1, 12345, Barcelona |
specin.beneficiarycountrycode | M | utf-8 | N/A | Only for e-wallet merchants: The ultimate beneficiary’s country of residence (two-letter ISO 3166 code) Example: ES |
The specin.consumerref
input parameter has different requirements for each payment method.
For standard input parameters, see Input parameters for the TRANSACTION call.
Important
This payment method requires the real account holder value for the accountholdername parameter.
Specific output parameters for the TRANSACTION call
Field Name | Type | Description |
---|---|---|
specout.srcBankName | String | Bank Name of the payer. |
specout.srcCountry | String | The country where the payer's bank account is located. |
specout.srcAccountHolder | String | Account holder names. - (Optional , activation on request) |
specout.srcIban | String | IBAN of the payer.(Optional , activation on request) |
specout.srcBankCode | String | Bank code of the payer's bank account.(Optional , activation on request) |
specout.srcAccountNumber | String | Bank account number belonging to the payer.(Optional , activation on request) |
specout.srcPartialAccountNumber | String | Partial Account Number belonging to the payer. |
For standard output parameters, see Output parameters for the TRANSACTION call.
TRANSACTION call input
tag=trustly
&txtype=TRANSACTION
&countrycode=SE
¤cy=SEK
&amount=20000
&merchanttxid=d5DSmQvEz6mM
&login=johndoe
&password=wXBrpVporFVjGO4R
&contractid=JOHNDOECONTRACT
&channel=testchannel
&merchantredirecturl=https%3A%2F%2Fmerchant.com%2Fwork%2Fppro2%2Flanding.php
¬ificationurl=https%3A%2F%2Fmerchant.com%2Fwork%2Fppro2%2Fnotification.php
&specin.dynamicdescriptor=DynDescriptor
&accountholdername=John%20Doe
&specin.consumerref=ABCD12345678
&specin.clientip=64.78.88.63
&specin.nationalid=93248261668
&returnmode=urlencodeext
TRANSACTION call output
REQUESTSTATUS=SUCCEEDED
&STATUS=SUCCEEDED
&TXID=622349098
&ERRMSG=
&CHANNEL=testchannel
&TAG=trustly
&PAYMENTGUARANTEE=NONE
&REDIRECTSECRET=XuynxnsDoYss2qgjDy27yAQiQUONDf35
&SPECOUT.PAYMENTPURPOSE=WKV 3F0LRQ7
&SPECOUT.SRCCOUNTRY=SE
Branding Guidelines
For branding information, see the Trustly Brand Guidelines.
Additional Information
Using Trustly within an app
If you want to use Trustly within an app (without opening a separate browser session), you must utilize a Safari ViewController on iOS or Chrome CustomTabs on Android. Not using the operating system-native web views will cause the Trustly flow to break or not invoke a 2-factor authentication flow for the consumer after the bank selection.
Updated 4 months ago