Due to changes in PCI-DSS requirements coming with v4 in March 2025, using Seamless View to display the payment UI will give you, as a merchant, more responsibilities than using our Redirect integration. This is because Seamless View is hosted by you. As the Redirect page is hosted by us, we also handle the responsibilities.
To learn more about how PCI-DSS affects you, we have further reading avaliable in Danish, Finnish, Norwegian and Swedish.
If you currently have a Seamless View integration and don’t want the impending responsibilities, switcing to Redirect is a very manageable task. Here’s what you need to do:
Use Redirect Operation
In the operations node of the payment response, right next to
view-checkout
which you should currently be using, you’ll find
redirect-checkout
. The corresponding href
contains a url which leads to the
Redirect UI. All you need to do is send the payer to this address.
Redirect-Checkout Operation
1
2
3
4
5
6
7
8
9
10
{
"operations": [
{
"method": "GET",
"href": "https://ecom.externalintegration.payex.com/payment/menu/b934d6f84a89a01852eea01190c2bbcc937ba29228ca7502df8592975ee3bb0d?_tc_tid=30f2168171e142d38bcd4af2c3721959",
"rel": "redirect-checkout",
"contentType": "text/html"
},
]
}
Remove Seamless View Code
You can remove all code related to the <script>
element used to load the
Seamless View.
Change URLs
Finally, you need to do some changes to the urls
node in your
payment request. The hostUrls
and paymentUrl
fields are
specific to Seamless View and can be removed.
The url you need to add is the cancelUrl
, so we know where to redirect the
payer if they chose to cancel, or you chose to abort the payment.
If you have permission to add your own logo, a logoUrl
is also
needed. If no logoUrl
is added or no agreement is in place to have your own
logo, Swedbank Pay’s logo will be shown by default.
The completeUrl
and callbackUrl
is universal and most be included regardless
of your UI choice.
Seamless View Specific URLs
1
2
3
4
5
6
{
"urls": {
"hostUrls": [ "https://example.com", "https://example.net" ],
"paymentUrl": "https://example.com/perform-payment"
}
}
Redirect Specific URLs
1
2
3
4
5
6
{
"urls": {
"cancelUrl": "https://example.com/payment-cancelled",
"logoUrl": "https://example.com/logo.png" //Optional
}
}