Skip to main content
This tab is how your clients pay you — card payments on invoices, deposits at booking, and saved cards for later. It is not how you pay ClinikEHR for your subscription; that is arranged separately and nothing on this tab affects it.

What this tab controls

You do not choose your provider. The tab reads your currency from Billing and plans and shows the one that matches: Naira gets Paystack Connect, every other currency gets Stripe Connect. Both take a 1.9% platform fee per transaction, on top of the provider’s own fees.

Set it up

1

Confirm your currency first

Open Billing & Plans and check the Currency. Changing it later switches you to the other provider and your existing connection does not come with you.
2

Start the connection

On Online Payments, select Connect Stripe Account or Connect Bank Account, depending on which card you see.
3

Complete Stripe's checks

Stripe asks for your business details, a bank account and identity documents. This happens on Stripe’s own site. When you come back, a green banner reads “Stripe account connected!”
4

Or enter your Nigerian bank details

For Paystack, choose your Bank and enter the 10-digit account number. Wait for the account name to be verified — the Connect Bank Account button stays disabled until it is — then select it. A “Bank account connected successfully!” toast confirms it.
5

Check the status tiles

On Stripe, both Onboarding and Charges need to be green. A connected account that cannot yet take charges is a half-finished connection, not a working one.

What changes once you save

Once the connection is live and Charges is enabled:
  • Payment links become sendable. You can generate a pay-this-now link for an invoice and send it to a client.
  • Invoices gain a pay-online route. An invoice you send stops being purely a request for a bank transfer.
  • The booking page can take payment at the time of booking — the full fee, or a deposit a service sets, and cancellation and missed appointment fees can be charged to a saved card after you review them.
  • Auto Pay becomes available. It charges saved cards automatically and requires a connected Stripe account specifically; the tab reads “Connect Stripe to use Auto Pay” until then.
  • Memberships can be sold. Without a connected payout account you cannot publish or activate a membership plan at all — the product refuses with “Connect a payout account first”.
Until the account can accept charges, all of those stay unavailable. A part-connected account is the common trap: everything looks set up, and nothing works. Two things do not change. Money already collected in cash or by transfer is untouched — this only adds a new way to be paid. And the manual details you print on invoices are separate: those live on Payment details. One provider-specific refusal to know about: if your practice collects through Paystack and something tries to raise a Stripe payment link, it is turned down with “This clinic collects payments via Paystack — Stripe payment links are not available.” That is expected, not a fault.

Multiple accounts, a default, and switching between them

You can connect up to 3 Stripe accounts and 3 Paystack accounts (active and deactivated ones both count toward that limit — it exists to stop payouts being redirected by cycling through accounts). Exactly one account per provider is the default, and every new charge, payment link, membership sale and Auto Pay attempt uses it.
  • The first account you connect becomes the default automatically. Connecting a second or third never silently takes over payouts — it starts inactive-as-default (still usable once verified, just not the one new money goes to) until you choose Make default.
  • Make default is disabled with a tooltip until the account can actually accept charges (Stripe: onboarding complete and charges enabled; Paystack: onboarding complete).
  • Deactivate never deletes. Before you confirm, the dialog shows exactly what is still tied to the account — active memberships still billing on it, and saved cards on it — so nothing is a surprise. If you deactivate the current default, you are asked which of your other active accounts should take over; with none available, the tab shows as not connected until you reactivate or connect one.
  • Reactivate brings a deactivated account back, but it does not become the default by itself — choose Make default separately if you want that.
  • Nothing already running moves when the default changes. A membership sold on an older account keeps billing there, and a refund always goes back through the account that took the original payment — never the new default.
  • A card saved on an account that is no longer the default is shown as “saved on a previous payment account” and is never charged again automatically. The None’s card is re-saved the next time they check out, pay through the portal, or pay a payment link — or you can send a payment link, or collect the card again at their next visit. Billing can see which None have a card that needs re-saving.

Check it worked

Open any unpaid invoice and look for the option to pay or send a payment link. On Stripe, the tab itself is the faster check — the badge should read ● Active and both Onboarding and Charges should be green. On Paystack, the card should show your bank, account number and account name with a ● Connected badge.

Common issues

You are not the owner or a manager. The card reads “Only the clinic owner or a manager can connect a payment account” — any other role can view the accounts, without account numbers, but not act.
Look at the Charges tile. “Onboarding incomplete — your clinic cannot charge patients yet” means Stripe still wants something. Select Continue setup and finish their questions.
Your practice currency is not Naira. The provider follows the currency on Billing & Plans, not your location. Set the currency to NGN and the Paystack card replaces the Stripe one.
The tab checks the number with the bank you selected and shows the account name back to you. “Could not verify account” almost always means the wrong bank is selected for that number — Nigerian banks share number formats. Re-check the bank before re-typing the number.
That was the default and no other active account existed to take over. Reactivate the one you deactivated, or connect a new one, then select Make default. Anything already billing on the old account (a membership, for instance) kept going the whole time — deactivating never cancels what is already running.
Check which account it was saved on. A card saved on an account that is no longer the default shows “saved on a previous payment account” and is skipped on purpose, never silently — the client needs to save a new card at checkout, through the portal, or on a payment link you send.