Skip to main content

Return URLs and redirects

After users complete an action in the Vipps or MobilePay app—such as completing a payment, logging in, or accepting an agreement—you can redirect them to your website or app.

The following APIs provide redirect functionality:

When the API request is complete, it will return a URL.

The phone's operating system uses universal linking to recognize that the URL is owned by Vipps MobilePay. This triggers an app-switch, automatically opening the Vipps or MobilePay app for seamless payment confirmation — without user input.

Example flow​

An example of how redirects are handled:

  1. The user starts a web session in the non-default browser (e.g., Firefox).
  2. A Vipps MobilePay purchase is started where the merchant specifies a redirect URL.
  3. The user completes the purchase in the Vipps MobilePay app.
  4. The app requests the operating system to open the URL specified by the merchant.
  5. The OS opens the URL in the default browser, not necessarily the browser where the session started (e.g., Firefox).
  6. The merchant handles the redirect without the customer noticing any discrepancies from the browser switch.

Best practices​

We have limited control over the redirect back to the merchant's website after a completed purchase or log-in. Your integration must not assume that the app will redirect to the exact same session. For example, don't rely entirely on cookies in order to handle the redirect event. The redirect may send the user to a different web browser.

Examples of some, but not all, factors outside our control:

  • Configurations set by the operating system, for example the default browser.
  • User configurations of browsers.
  • Users closing the app immediately upon purchase.

Because of this, we recommend a stateless approach on the website that should be the end of the session. For example, implement polling-based result handling from a value in the redirect URL.

Troubleshooting​

Timeout​

The app-switch only works if the landing page URL opens within ~3 seconds after the user clicks the link. Delays longer than that may prevent the switch, and result in the landing page being shown. This is based on observed behavior, as the exact timeout isn't documented by Apple or Google.

Ad blocker​

If the user has installed an ad blocker, that may cause problems opening URL with custom URL schemas.

Custom and embedded browsers​

If the payment started in a custom browser (like Chrome on iOS, or an embedded browser on Instagram, instead of the default Safari browser), the redirect URL (the result page) will still be opened in the default browser.

See also: Changing the default browser on iOS