| Property | Details |
|---|---|
| Markets (consumer) | DK, FI |
| Consumer currencies | DKK, EUR |
| Authentication methods | REDIRECT / APP_AUTHORIZATION |
| Authentication timeout | Subject to channel rules |
| Minimum payment amount | Subject to channel rules |
| Maximum payment amount | Subject to channel rules |
| Payment instrument | DIGITAL_WALLET |
| One-time payment | Yes |
| Recurring payments | No |
| Separate captures | No |
| Refund | Full · Partial |
| Refund validity | Subject to channel rules |
| Disputes | Subject to channel rules |
| Supported products | Checkout Session · Hosted Checkout · Embedded Checkout · API |
next_action.redirect.return_url.DKK for customers in DenmarkEUR for customers in Finlandreturn_url must be provided when creating or confirming the PaymentIntent.auto_capture to true or omit it to use the default value.payment_method_data.mobilepay object currently does not require any MobilePay-specific business parameters. The optional extra_params object is reserved for extended channel parameters and should only be provided when instructed by UseePay.confirm to true.payment_method_data.type to mobilepaybilling.address.country to DK or FIcurrency to the currency supported for the customer marketconfirm to truereturn_url to the merchant result page{
"merchant_order_id": "order_mobilepay_001",
"amount": 10000,
"currency": "DKK",
"confirm": true,
"auto_capture": true,
"return_url": "https://merchant.example.com/payment/return",
"payment_method_data": {
"type": "mobilepay",
"billing": {
"first_name": "Anders",
"last_name": "Jensen",
"email": "anders.jensen@example.com",
"address": {
"country": "DK"
}
},
"mobilepay": {}
}
}{
"merchant_order_id": "order_mobilepay_002",
"amount": 1000,
"currency": "EUR",
"confirm": true,
"auto_capture": true,
"return_url": "https://merchant.example.com/payment/return",
"payment_method_data": {
"type": "mobilepay",
"billing": {
"first_name": "Matti",
"last_name": "Virtanen",
"email": "matti.virtanen@example.com",
"address": {
"country": "FI"
}
},
"mobilepay": {}
}
}requires_customer_action.{
"id": "1012611020000000003",
"code": "0000",
"message": "Approved or completed successfully",
"amount": 10000,
"currency": "DKK",
"status": "requires_customer_action",
"confirm": true,
"orderType": "sale",
"mode": "payment",
"sale": true,
"merchant_no": "500000000000000",
"app_id": "merchant.example.com",
"merchant_order_id": "order_mobilepay_001",
"refunded_amount": 0,
"next_action": {
"type": "redirect",
"redirect": {
"method": "GET",
"url": "https://payment.example.com/mobilepay/authorize",
"content_type": null,
"app_url": null,
"package_name": null
}
},
"return_url": "https://merchant.example.com/payment/return",
"auto_capture": true,
"payment_attempt": {
"billing": {
"address": {
"country": "DK"
}
},
"payment_method_details": {
"type": "mobilepay"
}
}
}status is requires_customer_action, redirect the customer using the available value in next_action.redirect.next_action.redirect.urlnext_action.redirect.app_urlreturn_url.succeeded.| Status | Description | Merchant Action |
|---|---|---|
requires_customer_action | Customer authorization is still required | Redirect the customer |
pending | The payment is pending the final result from the payment provider | Wait for the webhook notification |
succeeded | Payment completed successfully | Fulfill the order |
failed | Payment failed or authorization was rejected | Display the failure and allow retry |
canceled | Payment was canceled or expired | Close or recreate the payment |
Always use the PaymentIntent status or webhook event as the source of truth. Do not rely only on the browser or application redirect.