Skip to main content
All articles
Guide4 min read

Payment link or checkout: which to pick

Two ways to take payments online, two very different workloads. The criteria that actually decide, without the jargon.

The question comes up on every integration: should you send a payment link, or build an order funnel with a checkout session? Both get you paid. What separates them is the work you will have to do and the control you will keep over the journey.

You create a link with an amount and a description, you share it, the customer pays on a page hosted by ChariPay. You write no payment page, you host no card data, and you have nothing to get certified.

It is the right choice when payment is an isolated event rather than a step inside a funnel:

  • an invoice sent by email or WhatsApp;
  • a quote accepted over the phone;
  • a remote sale on social media;
  • an over-the-counter payment, with the QR code or the printed poster.

The link carries everything needed to track it: your own order identifier, an expiry date, and a payment status you find in the portal as well as in the API.

A merchant who sells on Instagram and invoices over WhatsApp needs nothing else. Building an order funnel for that case means paying a month of development to replace a copy-paste.

The checkout session: payment inside your funnel

Here, an order from your shop becomes a session. You redirect the buyer to the payment page, and they come back to your URLs — one for success, one for failure.

This is what you need when:

  • payment sits inside a cart and a funnel you control;
  • you must show a confirmation page of your own, with your products and your delivery;
  • your order system has to change state at the exact moment of payment;
  • you measure a funnel and want to know where buyers drop off.

The price is modest: two URLs to expose, and a webhook handler to write.

The trap common to both: trusting the redirect

This is the mistake we see most often, and it is expensive.

When the buyer lands on your success URL, it means they came back. Not that the payment succeeded. Between the two sit their bank, a 3-D Secure challenge, sometimes a delay — and a buyer who closes the tab too early, or a mobile network that drops.

The rule is simple and has no exception: the redirect is for display, the webhook is for the decision. Show a pending state on return, and only release the order when the payment event arrives.

What about direct checkout?

A third door exists: build your own card form and call the checkout endpoints directly. It is open, but it puts you inside the card-data compliance perimeter — with everything that implies in audits, hosting and liability.

Only take it if you have a precise reason the hosted page does not cover. In the vast majority of cases it buys you a little styling and a lot of obligations.

The criteria, one by one

Volume. Ten sales a day are perfectly manageable with links: creation takes a few seconds in the portal. At a hundred sales a day, manual creation becomes a job — that is the signal for checkout, or at least for links created through the API.

Who closes the sale. A human in conversation with the customer? The link slots naturally into the exchange. A site that sells on its own, nights included? Checkout, obviously.

The amount. Fixed and known in advance — a course, a subscription, a single product — both work. Variable with the cart: checkout computes it; links would require one creation per sale.

The team available. Links require no developer. A checkout session requires a server-side integration — modest, but real: session creation, return page, webhook handling.

The need for customisation. The link shows your name and logo on a ChariPay page. The session carries your colours inside your funnel. The direct API lets you design every screen — at the price of owning the whole thing.

Migrating from one to the other

The choice is not forever, and migration is gentler than expected: both products share the same wallet, the same portal, the same webhooks and the same accounting export. Moving from links to checkout changes neither your cash position nor your reconciliation — only how the payment starts.

The usual path: start with links to validate the offer, wire checkout when volume justifies it, keep links for the cases outside the funnel — a special order, a phone follow-up, an event. The two coexist very well; that is in fact the stable state of most businesses: checkout for the flow, links for the exception.

In short

You want to…Take
Get an invoice, a quote or a remote sale paidThe payment link
Take payment inside your site's order funnelThe checkout session
Take a cash payment, at an agencyThe payment link, cash method
Build your own card formDirect checkout — and a compliance project

In every case, start in the sandbox: the test key cannot reach production, and you can replay a journey as many times as you need before you go live for real.

Written by ChariPay team.

Read next

A question about your integration?

Our team supports merchants and developers alike, from the first test through to go-live.