Connect your application

EuniPay connects to your website through its backend and payment page. The dashboard manages your merchant settings; your website still owns its customers, orders, and delivery.

If you have not prepared your merchant account, complete Quickstart first.

Who does what?

RoleResponsibility
MerchantConfigure the business profile, Stripe, currencies, and API key in EuniPay
Website backendSave customer billing details, create checkout, and verify payment notifications
Website payment pageDisplay the payment form and help the customer finish paying
EuniPayCalculate VAT, manage the connected payment, confirm its result, and prepare the receipt

A custom website needs a one-time development integration. There is no universal key field you can paste into any website to make this happen automatically.

Follow one order from start to finish

Use your own customer and order IDs throughout. For example, keep the same customer ID when they pay again, but use a new order ID for a genuinely new purchase.

  1. Save the customer. Your backend sends the billing name, email, country, address, and individual or business status. A business also supplies its VAT number. Success means EuniPay has a customer profile for that ID.
  2. Connect notifications once. Your backend registers its payment-result address with EuniPay and saves the signing secret. This is separate from Stripe notifying EuniPay.
  3. Create checkout. Your backend sends the order ID, customer ID, amount, and currency. EuniPay returns a checkout ID, a browser token, and the calculated payment amounts. Save the checkout ID with your order.
  4. Display the payment form. The payment page uses the browser token to show EuniPay Checkout. The customer chooses a method and submits payment.
  5. Update the order. Your backend verifies EuniPay's successful-payment notification, checks the order reference, and marks the order paid exactly once. Use the amounts returned by EuniPay, not values supplied by the browser.
  6. Show the result. Your website reads the order status from its own backend. A browser redirect or completion message is not sufficient evidence that the order is paid.

Which addresses are needed?

  • EuniPay service address: the API root your backend calls. In the examples, https://pay.example.com is a placeholder for your actual service address.
  • Payment page origin: your website's scheme and host, without a page path.
  • Return page: the page the customer returns to after a redirect-based payment. It must share the payment page origin.
  • Payment-result address: an endpoint on your backend, reachable by EuniPay. It is not a page the customer opens.

For local testing, a public service cannot reach a callback that exists only on your computer. Use a reachable test deployment or an appropriate development tunnel, and ensure the callback address is permitted in the selected environment.

Start with the working example

The first test payment tutorial puts connection checks, customer creation, notification registration, checkout creation, and the browser form in one place. It also explains what to replace in each example.

Use the API reference for individual fields and response codes. If a test payment does not reach your order, follow Troubleshooting.