- METHOD TYPEE-wallet
- PAYMENTS
- PAYOUTS
- REFUNDS
- RECURRING
Introduction
Satispay is a mobile payment platform. It allows users to make payments, transfer money and manage their finances through a mobile application.
Supported Countries
- Austria
- Belgium
- Bulgaria
- Croatia
- Cyprus
- Czech Republic
- Denmark
- Estonia
- Finland
- France
- Germany
- Greece
- Hungary
- Iceland
- Ireland
- Italy
- Latvia
- Liechtenstein
- Lithuania
- Luxembourg
- Malta
- Netherlands
- Norway
- Poland
- Portugal
- Romania
- Slovakia
- Slovenia
- Spain
- Sweden
- Switzerland
- Turkey
- United Kingdom
Supported Currencies
- EUR
Payment (Deposit) Flow
Press tab to open…
Follow these steps to perform a payment using Nuvei REST API integration:
1. Generate a sessionToken
Press here for details.
2. Send a /payment
Request
Perform the payment by sending a /payment
request with its mandatory parameters including:
userTokenId
amount
currency
paymentOption.alternativePaymentMethod
class containing:paymentMethod
: “apmgw_Satispay“
deviceDetails
class containing:ipAddress
billingAddress
class containing:firstName
,lastName
,country
,email
userDetails
class containing:firstName
,lastName
,country
,email
Marketplace merchants must also include the marketplace
addendum with its mandatory parameters, including subMerchantId
. With certain providers, if the request includes subMerchantName
, Nuvei sends it to the provider as the point of sale, up to 50 characters. Otherwise, Nuvei sends subMerchantId
.
If the /payment
request includes deviceDetails.deviceType
: “SMARTPHONE” and urlDetails.appReturnlink
: “<deep link to merchant native application>“, the redirectUrl
in the /payment
response is that deep link URL.
Example /payment
Request
{ "sessionToken": "<sessionToken from getSessionToken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientRequestId": "<unique request ID in merchant system>", "amount": "200", "currency": "EUR", "userTokenId": "<unique customer identifier in merchant system>", "clientUniqueId": "<unique transaction ID in merchant system>", "paymentOption": { "alternativePaymentMethod": { "paymentMethod": "apmgw_Satispay" } }, "deviceDetails": { "ipAddress": "<customer's IP address>", "deviceType": "SMARTPHONE" }, "billingAddress": { "firstName": "John", "lastName": "Smith", "country": "IE", "email": "[email protected]" }, "userDetails": { "firstName": "John", "lastName": "Smith", "country": "IE", "email": "[email protected]" }, "urlDetails": { "appReturnlink": "https://online.satispay.com/pay/f7eb91c0-d501-469a-b4a7-0204e03b10ca?redirect_url=https://r2.girogate.de/satispay/P1137/B?tx=140291704284&rs=wq1SgzZbq3drkDPZmxaLo9D2fZVWWFlT&cs=d4b7db9cb8ad621442d895f3fc4914513175fff8980e17c517d0ca" }, "timeStamp": "<YYYYMMDDHHmmss>", "checksum": "<calculated checksum>" }
Example /payment
Response
{ "orderId": "39139681", "userTokenId": "tokenmm123", "paymentOption": { "redirectUrl": "https://online.satispay.com/pay/f7eb91c0-d501-469a-b4a7-0204e03b10ca?redirect_url=https://r2.girogate.de/satispay/P1137/B?tx=140291704284&rs=wq1SgzZbq3drkDPZmxaLo9D2fZVWWFlT&cs=d4b7db9cb8ad621442d895f3fc4914513175fff8980e17c517d0ca", "userPaymentOptionId": "2152903871", "card": {} }, "transactionStatus": "REDIRECT", "sessionToken": "2d8ad9e4-5676-4822-8b7d-1f00ccaea389", "internalRequestId": 26436201, "status": "SUCCESS", "errCode": 0, "reason": "", "merchantId": "1102398682906145682", "merchantSiteId": "228311", "version": "1.0" }
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to urlDetails.notificationUrl
, which Nuvei recommends including in the /payment
request.
Follow these steps to perform a payment using Nuvei Web SDK integration.
1. Initiate a Session
Before you can submit payment using the client-side Nuvei Web SDK, you need to send the /openOrder
API call.
If the /openOrder
request includes deviceDetails.deviceType
: “SMARTPHONE” and urlDetails.appReturnlink
: “<deep link to merchant native application>“, the redirectUrl
in the createPayment()
response is that deep link URL.
2. Initialize the Web SDK
Instantiate the Web SDK with the sessionToken
received from the server call to /openOrder
.
3. Create an APM Payment
Send a createPayment()
request with its mandatory parameters including:
paymentOption.alternativePaymentMethod
class containing:paymentMethod
: “apmgw_Satispay“
deviceDetails
class containing:ipAddress
billingAddress
class containing:firstName
,lastName
,country
,email
userDetails
class containing:firstName
,lastName
,country
,email
Example createPayment()
Request
sfc.createPayment({ sessionToken: "<sessiontoken>", paymentOption: { alternativePaymentMethod: { paymentMethod: "apmgw_Satispay", } }, deviceDetails:{ ipAddress:"<customer's IP address>" }, billingAddress: { firstName: "John", lastName: "Smith", country: "IE", email: "[email protected]" }, userDetails: { firstName: "John", lastName: "Smith", country: "IE", email: "[email protected]" }, }, function (res) { console.log(res); });
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to urlDetails.notificationUrl
, which Nuvei recommends including in the /openOrder
request.
Example Payment Page Request
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to notify_url
, which Nuvei recommends including in the request.
- REST API
-
Follow these steps to perform a payment using Nuvei REST API integration:
1. Generate a
sessionToken
Press here for details.
2. Send a
/payment
RequestPerform the payment by sending a
/payment
request with its mandatory parameters including:userTokenId
amount
currency
paymentOption.alternativePaymentMethod
class containing:paymentMethod
: “apmgw_Satispay“
deviceDetails
class containing:ipAddress
billingAddress
class containing:firstName
,lastName
,country
,email
userDetails
class containing:firstName
,lastName
,country
,email
Marketplace merchants must also include the
marketplace
addendum with its mandatory parameters, includingsubMerchantId
. With certain providers, if the request includessubMerchantName
, Nuvei sends it to the provider as the point of sale, up to 50 characters. Otherwise, Nuvei sendssubMerchantId
.If the
/payment
request includesdeviceDetails.deviceType
: “SMARTPHONE” andurlDetails.appReturnlink
: “<deep link to merchant native application>“, theredirectUrl
in the/payment
response is that deep link URL.Example
/payment
Request{ "sessionToken": "<sessionToken from getSessionToken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientRequestId": "<unique request ID in merchant system>", "amount": "200", "currency": "EUR", "userTokenId": "<unique customer identifier in merchant system>", "clientUniqueId": "<unique transaction ID in merchant system>", "paymentOption": { "alternativePaymentMethod": { "paymentMethod": "apmgw_Satispay" } }, "deviceDetails": { "ipAddress": "<customer's IP address>", "deviceType": "SMARTPHONE" }, "billingAddress": { "firstName": "John", "lastName": "Smith", "country": "IE", "email": "[email protected]" }, "userDetails": { "firstName": "John", "lastName": "Smith", "country": "IE", "email": "[email protected]" }, "urlDetails": { "appReturnlink": "https://online.satispay.com/pay/f7eb91c0-d501-469a-b4a7-0204e03b10ca?redirect_url=https://r2.girogate.de/satispay/P1137/B?tx=140291704284&rs=wq1SgzZbq3drkDPZmxaLo9D2fZVWWFlT&cs=d4b7db9cb8ad621442d895f3fc4914513175fff8980e17c517d0ca" }, "timeStamp": "<YYYYMMDDHHmmss>", "checksum": "<calculated checksum>" }
Example
/payment
Response{ "orderId": "39139681", "userTokenId": "tokenmm123", "paymentOption": { "redirectUrl": "https://online.satispay.com/pay/f7eb91c0-d501-469a-b4a7-0204e03b10ca?redirect_url=https://r2.girogate.de/satispay/P1137/B?tx=140291704284&rs=wq1SgzZbq3drkDPZmxaLo9D2fZVWWFlT&cs=d4b7db9cb8ad621442d895f3fc4914513175fff8980e17c517d0ca", "userPaymentOptionId": "2152903871", "card": {} }, "transactionStatus": "REDIRECT", "sessionToken": "2d8ad9e4-5676-4822-8b7d-1f00ccaea389", "internalRequestId": 26436201, "status": "SUCCESS", "errCode": 0, "reason": "", "merchantId": "1102398682906145682", "merchantSiteId": "228311", "version": "1.0" }
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to
urlDetails.notificationUrl
, which Nuvei recommends including in the/payment
request. - Web SDK
-
Follow these steps to perform a payment using Nuvei Web SDK integration.
1. Initiate a Session
Before you can submit payment using the client-side Nuvei Web SDK, you need to send the
/openOrder
API call.If the
/openOrder
request includesdeviceDetails.deviceType
: “SMARTPHONE” andurlDetails.appReturnlink
: “<deep link to merchant native application>“, theredirectUrl
in thecreatePayment()
response is that deep link URL.2. Initialize the Web SDK
Instantiate the Web SDK with the
sessionToken
received from the server call to/openOrder
.3. Create an APM Payment
Send a
createPayment()
request with its mandatory parameters including:paymentOption.alternativePaymentMethod
class containing:paymentMethod
: “apmgw_Satispay“
deviceDetails
class containing:ipAddress
billingAddress
class containing:firstName
,lastName
,country
,email
userDetails
class containing:firstName
,lastName
,country
,email
Example
createPayment()
Requestsfc.createPayment({ sessionToken: "<sessiontoken>", paymentOption: { alternativePaymentMethod: { paymentMethod: "apmgw_Satispay", } }, deviceDetails:{ ipAddress:"<customer's IP address>" }, billingAddress: { firstName: "John", lastName: "Smith", country: "IE", email: "[email protected]" }, userDetails: { firstName: "John", lastName: "Smith", country: "IE", email: "[email protected]" }, }, function (res) { console.log(res); });
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to
urlDetails.notificationUrl
, which Nuvei recommends including in the/openOrder
request. - Payment Page
-
Example Payment Page Request
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to
notify_url
, which Nuvei recommends including in the request.
Example Payment DMN with Status
=APPROVED
...'ppp_status=OK&Status=APPROVED&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=39128781&userid=ScMigrationTest3&merchant_unique_id=97c10831-d399-48d7-8ea5-41f89619d2fa6&customData=MartinaK02&productId=test_name_1&first_name=John&last_name=Doe&email=john.doe%40gmail.com¤cy=EUR&customField1=meccabingo.com&customField2=a2db82db-8186-44bb-a6d9-cb9f8f7ea25e&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=rnk_pr01&invoice_id=&address1=Test+Address&address2=2992&country=Bulgaria&state=&city=San+Diego&zip=12345&phone1=13094526617&phone2=&phone3=&client_ip=127.0.0.1&nameOnCard=&cardNumber=&bin=&noCVV=&acquirerId=&acquirerBank=PPRO-PI&expMonth=&expYear=&Token=&tokenId=&AuthCode=&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=228311&merchant_status=&action=&requestVersion=&message=APPROVED&merchantLocale=en_US&unknownParameters=&payment_method=apmgw_Satispay&ID=&merchant_id=1102398682906145682&responseTimeStamp=2023-05-14.16%3A27%3A50&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=&transactionType=Sale&externalEmail=&cardCompany=&eci=&user_token_id=tokenmm1&user_token=auto&userPaymentOptionId=2152901211&TransactionID=2110000000009428735&externalTransactionId=140070187651&APMReferenceID=F8043EA9020BEAFDA12729E00167DDBF&orderTransactionId=19648301&totalAmount=100.00&dynamicDescriptor=Rank+Descriptor&item_name_1=test_name_1&item_number_1=&item_amount_1=100.00&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&amountWithoutFee=&houseNumber=&customCurrency=&upoRegistrationDate=20230514&type=DEPOSIT&clientRequestId=&relatedTransactionId=&apmPayerInfo=FundsState%3ANOT_EXPECTED%3B&sessionId=b0abb5071789ba836317a457a430&responsechecksum=6d9affefa691c2f8032b5ac1f199f6f6&advanceResponseChecksum=aed5dff999f103946af79ed1e0f4b2e1',
Example Payment DMN with Status
=PENDING
...'ppp_status=PENDING&Status=PENDING&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=39139981&userid=Marti07778411&merchant_unique_id=&customData=&productId=&first_name=John&last_name=Doe&email=ivanp%40abv.bg¤cy=EUR&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=Address+here+65&address2=&country=Bulgaria&state=&city=Toronto&zip=M6T+1J1&phone1=14161238888&phone2=&phone3=&client_ip=78.90.242.129&nameOnCard=&cardNumber=&bin=&noCVV=&acquirerId=&acquirerBank=PPRO-PI&expMonth=&expYear=&Token=&tokenId=&AuthCode=&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=228311&merchant_status=&action=&requestVersion=&message=PENDING&merchantLocale=&unknownParameters=&payment_method=apmgw_Satispay&ID=&merchant_id=1102398682906145682&responseTimeStamp=2023-05-15.12%3A37%3A49&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=&transactionType=Sale&externalEmail=&cardCompany=&eci=&user_token_id=Marti07778411&userPaymentOptionId=2152903911&TransactionID=2110000000009439321&externalTransactionId=140070468979&APMReferenceID=3B7A26C2F5FDF1E772CFE2A43D4E37C2&orderTransactionId=19659701&totalAmount=122.00&dynamicDescriptor=Rank+Descriptor&item_name_1=NA&item_number_1=&item_amount_1=122.00&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&amountWithoutFee=&houseNumber=&customCurrency=&upoRegistrationDate=20230515&type=DEPOSIT&clientRequestId=&relatedTransactionId=&sessionId=f6a28038be4c6b7321793c2ab7c6&responsechecksum=1325b67d6f98f2acdf205374e58d2e89&advanceResponseChecksum=0b498faa48a6b18e0dd6327591e8a042',
Example Payment DMN with Status
=DECLINED
...'ppp_status=FAIL&Status=DECLINED&ExErrCode=0&ErrCode=1&errApmCode=1&errApmDescription=order+is+closed&errScCode=10121&errScDescription=Transaction+not+allowed&Reason=Transaction+not+allowed&ReasonCode=10121&PPP_TransactionID=39128621&userid=mkktoken117&merchant_unique_id=&customData=&productId=&first_name=&last_name=&email=test%40test.com¤cy=CNY&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=&address2=&country=China&state=&city=&zip=&phone1=&phone2=&phone3=&client_ip=&nameOnCard=&cardNumber=&bin=&noCVV=&acquirerId=&acquirerBank=AlipayPlusMS-PI&expMonth=&expYear=&Token=&tokenId=&AuthCode=&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=228311&merchant_status=&action=&requestVersion=&message=DECLINED&merchantLocale=&unknownParameters=&payment_method=apmgw_Alipay&ID=&merchant_id=1102398682906145682&responseTimeStamp=2023-05-14.12%3A29%3A32&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=&transactionType=Sale&externalEmail=&cardCompany=&eci=&user_token_id=mkktoken117&userPaymentOptionId=2152901111&TransactionID=2110000000009424333&externalTransactionId=20230514190741010000E0004005841&APMReferenceID=680179A584DE1A608F19975020FE0F20&orderTransactionId=19648131&totalAmount=120.00&dynamicDescriptor=Rank+Descriptor&item_name_1=NA&item_number_1=&item_amount_1=120.00&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&amountWithoutFee=&houseNumber=&customCurrency=&upoRegistrationDate=20230514&type=DEPOSIT&clientRequestId=20230514151831&relatedTransactionId=&sessionId=a32b49e77add9bdd3ab839a1761e&responsechecksum=8b74308926c4abb17f127a056254a2cf&advanceResponseChecksum=9d5b772628a0b856b6240c211a1cbe31',
User Experience
- The user is redirected to the Satispay website where they enter their mobile number or scan a QR code.
- The user opens the Satispay app and authenticates. If they are using the QR code, they must scan the code.
- In the Satispay app, the user confirms the payment.
- After payment confirmation, the user is redirected back to the payment page.