Trustly

Payment Method String trustly
Available Countries AT, CZ, DE, DK, FI, EE, ES, IT, LT, LV, NL, NO, PL, SE, SK
Available Currencies EUR
Min Transaction Amount
EUR 0.01
Max Transaction Amount
None
Supports Refunds
Full & Partial with 365 day limit
Chargebacks
No
Sandbox
Yes

Sample request

HTTP POST (HPP)

<form method="POST" action="https://pay.sandbox.realexpayments.com/pay">
<input type="hidden" name="TIMESTAMP" value ="{{ timestamp }}">
<input type="hidden" name="MERCHANT_ID" value ="{{merchantId}}">
<input type="hidden" name="ACCOUNT" value ="internet">
<input type="hidden" name="ORDER_ID" value ="20230202204701-63dc21453cffc">
<input type="hidden" name="AMOUNT" value ="100">
<input type="hidden" name="CURRENCY" value ="EUR">
<input type="hidden" name="SHA1HASH" value ="4eed4bf3758105a439eb813d089bb8063536b7c9">
<input type="hidden" name="AUTO_SETTLE_FLAG" value ="1">
<input type="hidden" name="HPP_VERSION" value ="2">
<input type="hidden" name="HPP_CUSTOMER_COUNTRY" value ="DE">
<input type="hidden" name="HPP_CUSTOMER_FIRSTNAME" value ="James">
<input type="hidden" name="HPP_CUSTOMER_LASTNAME" value ="Mason">
<input type="hidden" name="MERCHANT_RESPONSE_URL" value =https://www.example.com/statusUrl>
<input type="hidden" name="HPP_TX_STATUS_URL" value =https://www.example.com/statusUrl>
<input type="hidden" name="HPP_ADDRESS_MATCH_INDICATOR" value ="false">
<input type="hidden" name="HPP_BILLING_STREET1" value ="Flat 123">
<input type="hidden" name="HPP_BILLING_CITY" value ="Halifax">
<input type="hidden" name="HPP_BILLING_POSTALCODE" value ="E77 4QJ">
<input type="hidden" name="HPP_BILLING_COUNTRY" value ="826">
<input type="hidden" name="HPP_LANG" value ="EN">
<input type="hidden" name="HPP_CHALLENGE_REQUEST_INDICATOR" value ="NO_PREFERENCE">
<input type="hidden" name="HPP_CUSTOMER_EMAIL" value ="james.mason@example.com">
<input type="hidden" name="VAR_REF" value="248b1c430fb24fa19b1c">
<input type="hidden" name="COMMENT1" value="Mobile Channel">
<input type="hidden" name="COMMENT2" value="Down Payment">
<input type="hidden" name="CARD_PAYMENT_BUTTON" value="Pay Now">
<input type="submit" value="Click here to Purchase">
</form>

XML

<?xml version='1.0' encoding='UTF-8'?>			
<request type='payment-set' timestamp='{{timestamp}}'>			
	<merchantid>Merchant ID</merchantid>		
	<account>internet</account>		
	<amount currency='EUR'>5100</amount>		
	<autosettle flag='1' />		
	<orderid>N6qsk4kYRZihmPrTXWYS6g</orderid>		
	<paymentmethod>trustly</paymentmethod>		
	<paymentmethoddetails>		
		<returnurl>https://www.example.com/returnUrl</returnurl>	
		<errorurl>https://www.example.com/errorUrl</errorurl>	
		<statusupdateurl>https://www.example.com/statusUrl</statusupdateurl>	
		<descriptor>Test Transaction</descriptor>	
		<country>DE</country>	
		<accountholdername>James Mason</accountholdername>			
	</paymentmethoddetails>		
	<comments>		
		<comment id='1'>Mobile Channel</comment>	
		<comment id='2'>Down Payment</comment>	
	</comments>
<tssinfo>
   <varref>248b1c430fb24fa19b1c</varref>
</tssinfo>
	<sha1hash>82f3d22c04292f8673bc1e0fb8ecf0c54e38065c</sha1hash>		
</request>

JSON

{
    "account_name": "{{acc_name}}",
    "channel": "CNP",
    "type": "SALE",
    "amount": "5100",
    "currency": "EUR",
    "reference": "{{reference}}",
    "country": "DE",
    "consumer_reference":"248b1c430fb24fa19b1c",
    "order": {
        "reference": "248b1c430fb24fa19b1c"
        },
    "payment_method": {
        "name": "Doe",
        "entry_mode": "ECOM",
        "apm": {
            "provider": "trustly"
        }
    },
    "notifications": {
        "return_url": "<Replace with your own endpoints>",                
        "status_url": "<Replace with your own endpoints>"  
    },
    "payer":{}
}

Sample Request

Additional Fields Syntax

Type indicates whether the element is Mandatory (M), Optional (O), or Conditional (C) - dependent on another field.

Name Type Format Length Description
National Id O [a-zA-Z0-9\s]* 0-30

Customer national identification or tax id.
Brazil: CPF/CPNJ

Variable Reference M [a-zA-Z0-9\-\s\.,\+@_]* 1-50

A unique reference for this customer or transaction, for example from your CRM system or OMS.

Customer IP Address O '()|(((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))' 0-15

The IP address of the customer's device.

Customer Number M [a-zA-Z0-9\-\s\.,\+@_]* 0-50

A unique reference for this customer; for example, from your CRM system

Beneficiary ID M [a-zA-Z0-9\s]* 0-30

ID, username, hash, or anything uniquely identifying the beneficiary.

Beneficiary Name M [a-zA-Z]* 0-30

The beneficiary's name.

Beneficiary Address M [a-zA-Z0-9\s]* 0-255

The beneficiary's address.

Beneficiary Country Code M ISO 3166 2

The beneficiary's country code (two-letter ISO 3166 code).