Payment Url
For our Seamless Views, the field called paymentUrl
will be used when the
payer is redirected out of the Seamless View (the iframe
). The payer is
redirected out of frame when selecting payment instruments which trigger SCA.
This includes 3-D Secure card payments, installment account, invoice, MobilePay,
monthly invoice payments, Trustly and Vipps.
The URL should represent the page of where the Payment Order Seamless View was
hosted originally, such as the checkout page, shopping cart page, or similar.
Basically, paymentUrl
should be set to the same URL as that of the page where
the JavaScript for the Seamless View was added to in order to initiate the
payment process.
Please note that the paymentUrl
must be able to invoke the same JavaScript URL
from the same Payment Order as the one that initiated the payment process
originally, so it should include some sort of state identifier in the URL. The
state identifier is the ID of the order, shopping cart or similar that has the
URL of the Payment stored.
With paymentUrl
in place, the retry process becomes much more convenient for
both the integration and the payer.
paymentUrl
is used by the Seamless View flow and must be used for
WebView-based app implementations. Some payment instruments only work when
owning the full browser page (no use of <iframe>
), this will be solved by
doing a full browser (top frame) redirect out of the Seamless View. 3-D Secure
requires this, for example.
For mobile flows, some payment instruments work best when app-to-app switching is enabled and handled automatically (Swish, Vipps etc). To solve this, it is important that the third party app or site understand where to redirect the payer back to after the flow on their end is completed.
Refresh your
payment menu after the payer’s return!: The paymentUrl
is the URL
Swedbank Pay will provide to the third party for handling the redirect back to
your site or app. When the payer returns from the paymentUrl
either in an app
or a web page, it is vital that you refresh the Seamless View payment menu so
the payment flow can be completed. Failing to do so could lead to issues.
For in-app it is important that you either implement the onPaymentCompleted
event or let the Seamless View redirect to the completeUrl
before intercepting
the WebView. If you intercept the WebView when the payer’s device is redirected
to the paymentUrl
it can lead to issues. If you want to handle payment errors
in your own code, you should also subscribe to other events provided by the
Seamless View JavaScript and shut down the Seamless View if any of these events
occur.
Events to subscribe to for full control over the payment flow are can be found in Payment Menu Events.
When implementing the Seamless View flow into a WebView in your mobile app, you
should use a custom scheme or Universal Link
in the paymentUrl
for handling automatic switching between your app and the
payment app on the mobile device.