Skip to main content

Online payments

Choose your online payment flow based on your checkout needs:

  • Standard - Traditional flow where customers complete payment after reviewing their cart
  • Express - Streamlined one-click checkout with shipping selection in the app

Ready to build?

Use the ePayment API to implement either online payment flow.

Standard online payment

The customer selects items in your e-commerce store, clicks checkout, and completes payment in the Vipps MobilePay app.

ePayment online process

Flow diagram: 6-step online payment process. (1) Customer selects to pay with Vipps or MobilePay. (2) Customer enters their phone number. (3) Customer confirms the payment in the app. (4) Merchant shop confirms the order. (5) Merchant shop completes and ships the order. (6) Payment is transferred to the merchant's bank account.

  1. Add products to order - Customer selects items in your online store.
  2. Send payment request - Initiate payment using the ePayment API with WEB_REDIRECT.
  3. Open the app or payment dialog - The Widget SDK switches to the Vipps MobilePay app on mobile and tablet, or opens a payment dialog with the landing page on desktop.
  4. Customer authorizes - Customer approves payment in their app.
  5. Provide confirmation - Display order confirmation to customer.
  6. Prepare the order - Pack the goods and make them ready to dispatch.
  7. Capture payment - Capture the payment and confirm that the full amount was captured.
  8. Ship the order - Hand the goods to the carrier only after the capture is confirmed.
View sequence diagram

Standard online payment flow

100%
  1. Customer selects to pay with Vipps or MobilePay.
  2. Merchant initiates a payment request via the ePayment API.
  3. ePayment API returns a redirectUrl and payment reference to the merchant.
  4. Merchant handles the app switch with the redirectUrl. We recommend using the Widget SDK for this.
  5. ePayment API requests the payment in the customer's Vipps or MobilePay app.
  6. Customer selects a card and clicks pay.
  7. Webhooks API sends the merchant an authorized, aborted, or expired event.
  8. Merchant gets the payment from the ePayment API, as a backup if the webhook is delayed or missed.
  9. ePayment API returns the current state of the payment.
  10. If the payment was aborted or expired, the customer is returned to the checkout page and the flow ends.
  11. If the payment was authorized, the merchant displays order confirmation to the customer.
  12. Merchant prepares the order (packs goods, makes ready to dispatch).
  13. Merchant captures the payment via the ePayment API.
  14. ePayment API returns a response with the captured amount.
  15. Merchant verifies the captured amount matches expected before shipping.
  16. Merchant ships the order (only after full capture is verified).

Implementation resources

Start with the ePayment API overview or use the links for your selected flow.

Standard:

  • How ePayment works online - Step-by-step walkthrough of the standard online payment flow
  • Create payment - Reference for creating a payment
  • Widget SDK - Renders the pay button that either switches to the app or opens the payment dialog that provides the landing page
  • Landing page - What the customer sees when paying on desktop, and how to customize it

Express: