- METHOD TYPEReal-Time Bank Transfer
 - PAYMENTS
 - PAYOUTS
 - REFUNDS
 - RECURRING
 
Introduction
MobilePay simplifies deposits for 6,5 m users and +230.000 locations in the Nordics (Denmark and Finland). It’s easy to use and secure! It’s a complete Wallet solution that quickens payments and refunds for both users and operators. There are no amount limits as long as there is coverage on your credit card.
Supported Countries
- Denmark
 - Finland
 
Supported Currencies
- DKK
 - EUR
 - NOK
 - SEK
 
Onboarding Registration
Registration Requirements
As part of the onboarding process, you must provide Nuvei with the following details for proper registration with MobilePay:
- Your Merchant Name as you wish it to be displayed to the end user.
 - Your logo with the following requirements: PNG or JPG file format, 250×250 pixels.
The merchant logo increases conversion by preventing drop offs and enhancing the “safe payment” experience for users. 
Additional Notes
- With regard to a context switch on the client side, the merchant cannot rely on a session when using MobilePay:
- When recognizing the returning customer, the merchant return page should not rely on any kind of session object. It instead should rely solely on data provided in the redirect.
 - If possible, the merchant should not rely on the customer returning client side at all. Instead, the purchase should be processed when the webhook, or direct
merchant notification (DMN), is received. 
 - If the user wants to cancel the transaction, the user has the option to cancel from the MobilePay application. Until the end user cancels the transaction, the merchant should not expect a DMN.
 - Per configuration, instead of using a redirect URL Nuvei can provide the merchant with a MetaData JSON (in the format DesktopUrl, AppUrl, CDNPageUrl) which allows the merchant to determine which URL to use (DesktopUrl, AppUrl, or CDNPageUrl).
 
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:
userTokenIdcurrencyamountpaymentOption.alternativePaymentMethodclass containing:paymentMethod: “apmgw_MobilePay“
deviceDetailsclass containing:ipAddressdeviceType– Possible values: DESKTOP, SMARTPHONE, TABLET
billingAddressclass containing:firstName,lastName,email,countryuserDetailsclass containing:firstName,lastName,email,country,phone
Example /payment Request
{
  "sessionToken": "<sessionToken from /getSessionToken>",
  "merchantId": "<your merchantId>",
  "merchantSiteId": "<your merchantSiteId>",
  "clientRequestId": "<unique request ID in merchant system>",
  "amount": "200",
  "currency": "DKK",
  "userTokenId": "<unique customer identifier in merchant system>",
  "clientUniqueId": "<unique transaction ID in merchant system>",
  "paymentOption": {
    "alternativePaymentMethod": {
      "paymentMethod": "apmgw_MobilePay"
    }
  },
  "deviceDetails": {
    "ipAddress": "<customer's IP address>",
    "deviceType": "DESKTOP" 
  },
  "billingAddress": {
    "firstName": "John",
    "lastName": "Smith",
    "email": "[email protected]",
    "country": "DK"
  },
  "userDetails": {
    "firstName": "John",
    "lastName": "Smith",
    "email": "[email protected]",
    "country": "DK",
    "phone": "00451235678"
  },
  "timeStamp": "<YYYYMMDDHHmmss>",
  "checksum": "<calculated checksum>"
}
Example /payment Response
The request is processed and returned with transactionStatus: “REDIRECT“. The URL is redirected to the MobilePay application.
  "reason": "",
  "orderId": "38469561",
  "transactionStatus": "REDIRECT",
  "clientRequestId": "D16T6MGO6",
  "internalRequestId": 23398951,
  "merchantDetails": {
    "customField1": "customField1-value",
    "customField2": "customField2-value"
  },
  "version": "1.0",
  "merchantSiteId": "126006",
  "merchantId": "2502136204546424962",
  "clientUniqueId": "LYBJQHEDMYPA",
  "errCode": 0,
  "paymentOption": {
    "redirectUrl": "https://sandprod-products.mobilepay.dk/remote-website/index.html?page=request&id=46ecbfc9-78c5-4bcd-adb2-1eb01eb5a0fb",
    "userPaymentOptionId": "8393691",
    "card": {}
  },
  "sessionToken": "9ef98871-0983-4f3a-889a-d968e431155b",
  "userTokenId": "RGLA9NP9Y414",
  "status": "SUCCESS"
}
After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to the URL provided in 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.
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:
sessionTokenpaymentOption.alternativePaymentMethodclass containing:paymentMethod: “apmgw_MobilePay“
deviceDetailsclass containing:ipAddressbillingAddressclass containing:firstName,lastName,country,emailuserDetailsclass containing:firstName,lastName,email,country
Example createPayment() Request
sfc.createPayment({
  sessionToken: sessionData.sessionToken,
  paymentOption: {
    alternativePaymentMethod: {
      paymentMethod: "apmgw_MobilePay"
    }
  },
  deviceDetails: {
    ipAddress  : "<customer's IP address>"
  },
  billingAddress: {
    firstName: "John",
    lastName: "Smith",
    email: "[email protected]",
    country: "DK"
  }
  userDetails: {
    firstName: "John",
    lastName: "Smith",
    email: "[email protected]",
    country: "DK"
  }
}, 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 the URL provided in urlDetails.notificationUrl, which Nuvei recommends including in the /openOrder request.
- REST API
 - 
				            
Follow these steps to perform a payment using Nuvei REST API integration:
1. Generate a
sessionTokenPress here for details.
2. Send a
/paymentRequestPerform the payment by sending a
/paymentrequest with its mandatory parameters including:userTokenIdcurrencyamountpaymentOption.alternativePaymentMethodclass containing:paymentMethod: “apmgw_MobilePay“
deviceDetailsclass containing:ipAddressdeviceType– Possible values: DESKTOP, SMARTPHONE, TABLET
billingAddressclass containing:firstName,lastName,email,countryuserDetailsclass containing:firstName,lastName,email,country,phone
Example
/paymentRequest{ "sessionToken": "<sessionToken from /getSessionToken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientRequestId": "<unique request ID in merchant system>", "amount": "200", "currency": "DKK", "userTokenId": "<unique customer identifier in merchant system>", "clientUniqueId": "<unique transaction ID in merchant system>", "paymentOption": { "alternativePaymentMethod": { "paymentMethod": "apmgw_MobilePay" } }, "deviceDetails": { "ipAddress": "<customer's IP address>", "deviceType": "DESKTOP" }, "billingAddress": { "firstName": "John", "lastName": "Smith", "email": "[email protected]", "country": "DK" }, "userDetails": { "firstName": "John", "lastName": "Smith", "email": "[email protected]", "country": "DK", "phone": "00451235678" }, "timeStamp": "<YYYYMMDDHHmmss>", "checksum": "<calculated checksum>" }Example
/paymentResponseThe request is processed and returned with
transactionStatus: “REDIRECT“. The URL is redirected to the MobilePay application."reason": "", "orderId": "38469561", "transactionStatus": "REDIRECT", "clientRequestId": "D16T6MGO6", "internalRequestId": 23398951, "merchantDetails": { "customField1": "customField1-value", "customField2": "customField2-value" }, "version": "1.0", "merchantSiteId": "126006", "merchantId": "2502136204546424962", "clientUniqueId": "LYBJQHEDMYPA", "errCode": 0, "paymentOption": { "redirectUrl": "https://sandprod-products.mobilepay.dk/remote-website/index.html?page=request&id=46ecbfc9-78c5-4bcd-adb2-1eb01eb5a0fb", "userPaymentOptionId": "8393691", "card": {} }, "sessionToken": "9ef98871-0983-4f3a-889a-d968e431155b", "userTokenId": "RGLA9NP9Y414", "status": "SUCCESS" }After the transaction is processed, Nuvei sends a Direct Merchant Notification (DMN) that includes the result of the transaction to the URL provided in
urlDetails.notificationUrl, which Nuvei recommends including in the/paymentrequest. - 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
/openOrderAPI call.2. Initialize the Web SDK
Instantiate the Web SDK with the
sessionTokenreceived from the server call to/openOrder.3. Create an APM Payment
Send a
createPayment()request with its mandatory parameters including:sessionTokenpaymentOption.alternativePaymentMethodclass containing:paymentMethod: “apmgw_MobilePay“
deviceDetailsclass containing:ipAddressbillingAddressclass containing:firstName,lastName,country,emailuserDetailsclass containing:firstName,lastName,email,country
Example
createPayment()Requestsfc.createPayment({ sessionToken: sessionData.sessionToken, paymentOption: { alternativePaymentMethod: { paymentMethod: "apmgw_MobilePay" } }, deviceDetails: { ipAddress : "<customer's IP address>" }, billingAddress: { firstName: "John", lastName: "Smith", email: "[email protected]", country: "DK" } userDetails: { firstName: "John", lastName: "Smith", email: "[email protected]", country: "DK" } }, 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 the URL provided in
urlDetails.notificationUrl, which Nuvei recommends including in the/openOrderrequest. 
User Experience
- The user is redirected to the Pay via Mobile page.
 - The user enters their mobile phone number and presses Continue to proceed to payment via the MobilePay application.

 - The user presses Approved on their mobile phone to approve the payment via MobilePay.

 - The user logs in to the MobilePay application on their mobile phone and selects the credit card with which to pay (such as Mastercard).

 - The user presses the Authorise button.

 - After the card is verified, the payment is authorized by the card issuer and the merchant charges the card.

 - The user exits the MobilePay application on their mobile phone. The transaction is completed and the user is redirected to the Merchant’s page and receives a notification regarding payment status: “Success” or “Decline“.