Make your payment experience part of your brand. Increase conversion with the market’s most flexible checkout
Make your payment experience part of your brand. Increase conversion with the market’s most flexible checkout

Great customer service is one of our three core values. That’s why you won’t just be handed off to a chatbot when you need help.
How do I insert my logo?
Hi Adam!
You’ll find it under "Payment" and then "Payment windows". Let me know if you need any further help 💪
Best, Anders
ePay is owned and run by its founders. That means short decision-making paths, strong passion, and a sharp focus on delivering a payment solution that makes sense.

Make an impression with a checkout layout that fits your business.
Choose from three modern, clean layouts designed to deliver a seamless experience - no matter what kind of webshop you run.
Each layout is optimized for both desktop and mobile, ensuring high conversion across all devices.
With flexible options, you can tailor the look and make your payment page a natural part of your brand universe.
With the Sleek layout, you can create an inviting experience by adding a background image that matches your brand and makes your checkout unique.



Choose from 20 beautiful themes designed to highlight your brand and build customer trust.
All themes focus on readability, modern aesthetics and high performance - so you can quickly adapt checkout to campaigns, seasons or new product lines.
You can easily switch themes, letting you update your visual identity without writing a single line of code.
As a small demonstration of how creatively you can customize your checkout, we’ve also included a “Peppa” theme - perfect for kids’ shops or simply to show that the possibilities are almost endless.
Let customers pay in seconds with their preferred wallets like MobilePay, Google Pay and Apple Pay.
These payment methods appear instantly, making it quick and simple for customers to complete the purchase.
With our Quick checkout, traditional accordions are replaced by clear buttons at the top of the window.
This makes the methods easier to spot and lets customers quickly choose their preferred way to pay.
In our Backoffice you control which payment methods are shown in your checkout - and in what order.
Drag and drop to prioritize the methods your customers prefer and ensure the most relevant option is shown first.
Need to temporarily hide MobilePay during a campaign? Or only offer card payments on a specific sales channel? Toggle methods on or off with a single click - no developers or integration changes required.
Create a checkout that perfectly matches your visual identity.
With advanced design options you can tweak everything from border radius and colors to fonts.
Whether you want a minimalist look or something more vibrant, our tools give you full control - without writing any code.
With ePay you can connect multiple acquirers to your account. Gain better control of payment costs and optimize settlement.
By having separate agreements for different card types you can typically:
We call it multi-acquirer - a solution that lets you choose the most advantageous acquirer for each card type.
Our surcharge feature lets you configure advanced fee rules so you cover costs and protect your margin.
Create differentiated rules based on:
This flexibility lets you tailor fees to your business model and market requirements.
1export default async function CheckoutPage() {
2 const {
3 EPAY_API_KEY: apiKey,
4 EPAY_POS_ID: posId
5 } = process.env;
6
7 const response = await fetch(
8 'https://payments.epay.eu/public/api/v1/cit', // 💳 Endpoint for initializing a payment session (server side)
9 {
10 method: 'POST',
11 headers: {
12 Authorization: `Bearer ${apiKey}` // 🔑 Use your API key here
13 },
14 body: JSON.stringify({
15 pointOfSaleId: posId, // 🏪 Use your Point of Sale ID here
16 amount: 100, // 💰 Amount in the smallest unit (e.g., cents)
17 currency: 'DKK' // 💱 Currency code (e.g., DKK for Danish Krone)
18 })
19 }
20 );
21
22 const { paymentWindowUrl } = await response.json(); // 🔗 Get the payment window URL from the response
23
24 return (
25 <a href={paymentWindowUrl}>
26 Gå til betaling
27 </a>
28 );
29}