Achekam

Online payment options for South African invoices

The online payment options a South African business can put on its invoices, how each payment is confirmed before it counts, and how EFT is handled.

By Achekam · · 4 min read · For Running a business businesses in South Africa

PayFast Ozow Peach Stripe invoice payments

"Can I pay by card?" is a question every South African business hears, from the plumber's customer standing in a flooded kitchen to the attorney's client settling an account at nine at night. A pay button on the invoice turns that question into a payment. The harder question is the one that comes after: how do you know the money is really yours before you mark the invoice paid?

Achekam's answer is that a customer's word, or a redirect back to a "thank you" page, is not enough: a gateway payment is recorded only once it has been verified. This article goes through the options a South African business can offer and how each one is confirmed.

How a customer reaches the pay page

Once an invoice is issued, you can create a payment link for it, copy it, or e-mail it with the invoice. The customer pays on a public page that shows your business's name and branding. There is no link for a draft or voided invoice, and a link lasts 14 days by default. If you create another link for the same amount while one is still open, the open link is reused rather than a second one being made.

For South African businesses, the gateway settings list PayFast, Ozow, Peach Payments, Stripe, Flutterwave, Paystack and direct bank EFT. Each is set up with your own merchant account. A workspace administrator enters the credentials in Settings under Payment Gateways & Checkout and can test the connection with a real call to the gateway.

PayFast and how notifications are checked

PayFast takes payments in rand. When PayFast tells Achekam a payment has been made, the notification is checked four ways before it counts: by its signature, by the address it came from, by the amount, and by PayFast's own validation. A notification that fails any check is not recorded as a payment. Payfast's developer documentation describes its security signatures and payment notifications, if you or your developer want to see how they work.

Ozow EFT payments and the transaction lookup

Ozow takes instant EFT payments in rand: the customer pays from their own bank account without typing in your banking details. Each completed Ozow payment is confirmed through Ozow's transaction lookup before it is recorded. Achekam asks Ozow directly what happened, rather than relying only on what arrived in the notification.

Peach Payments hosted checkout

Peach Payments runs a hosted checkout, which means the card details are entered on Peach's page, not yours. In Achekam it takes payments in ZAR, USD, EUR, KES or MUR, though a rand invoice is paid in rand.

One point to be clear on: the Peach settings text mentions card tokenisation for retainers, but Achekam does not save cards or charge them again. Each payment is a fresh one made by the customer.

Stripe Checkout and webhook signatures

Stripe Checkout takes ZAR, USD, EUR or GBP. Stripe reports payments by webhook, and Achekam accepts a webhook only when its signature is valid and recent. An old or tampered message is refused.

Stripe can suit businesses whose customers include people paying with foreign cards.

Paystack and Flutterwave in rand

Paystack and Flutterwave also take rand. Paystack payments are confirmed with Paystack before they are recorded, and Flutterwave payments are re-verified with Flutterwave. For Paystack, a payment whose notification never arrives is still picked up, because the server asks Paystack about open payments on a schedule and while the pay page is open.

Bank EFT marked paid by a person

Many customers still prefer a plain EFT. The pay page can show your bank details and a payment reference. Bank EFT sends no notification, so a staff member marks the payment received once it shows on the bank statement. Do not mark it on the strength of a proof-of-payment e-mail: those are easy to fake, and a payment that never arrives leaves a debt you think is settled.

How each payment is confirmed, side by side

OptionHow the payment is checked
PayFastSignature, source address, amount and PayFast's validation
OzowOzow's transaction lookup
Peach PaymentsTaken on Peach's hosted checkout page
Stripe CheckoutWebhook signature that is valid and recent
PaystackConfirmed with Paystack; open payments checked on a schedule
FlutterwaveRe-verified with Flutterwave
Bank EFTA staff member, from the bank statement

Choosing between them

There is no need to switch on everything. Think about how your customers already pay. Customers who bank online every day are comfortable with an EFT-style option; customers who pay on the go reach for a card; overseas clients need a gateway that takes their cards. Each extra option is one more merchant account to reconcile every month, so add them one at a time and only when customers ask.

What happens in the books, and what does not

A verified gateway payment is recorded as a receipt against the invoice, debiting that gateway's clearing account and crediting trade receivables. The invoice shows as paid or part-paid. The amount is checked against what the link asked for, and a repeated notification never pays the invoice twice.

Two things Achekam does not do. It never charges a customer automatically: there are no saved cards or debit orders, and credit-control reminder e-mails carry no pay link. And refunds of online invoice payments are made in the gateway's own dashboard and recorded in Achekam by a person.

Choosing and connecting a gateway is covered step by step in setting up your payment gateway. If you also trade in Nigeria, collecting naira invoice payments online explains the naira side. And money flows the other way on payday; see producing a wages file your bank will import.

Pick one gateway your customers already know, connect it with your own merchant account, and add the pay link to your next batch of invoices. Add a second option later if customers ask for it.

General guidance only, not advice on your own circumstances. Tax and payroll rules change: check the current position with the authority or your adviser.

Related articles

More on Running a business

See how Achekam handles it with your own records: create your account