Skip to main content
This is where the hospital connects the account that receives money from patients — card payments on invoices, deposits taken at booking, memberships and Auto Pay. It is not how the hospital pays ClinikEHR; that is the subscription, under Change your plan.

What this tab controls

Which provider you see is decided by your currency, set on Billing and plans. Naira shows Paystack Connect; every other currency shows Stripe Connect. You never choose between them here. Both cards state the platform fee in their description: ClinikEHR collects a 1.9% platform fee on each transaction. The Paystack card adds that “Payments are settled directly to your bank account. The clinic bears Paystack transaction fees.”

Set it up

1

Confirm your currency first

Open Billing and plans and check Currency. It picks the provider, and switching it later does not carry a connection across.
2

Start the connection

Select Connect Stripe Account — or, on Naira, Connect Bank Account. Stripe takes you off to its own onboarding; Paystack shows a short form here.
3

Give the provider what it asks for

Business details, an identity document and the bank account that should receive payouts. This is the provider’s process, not ClinikEHR’s, and it is where most of the time goes.
4

Nigeria: confirm the account holder

Choose your Bank, enter the 10-digit account number, and wait for “Verifying account…” to resolve. You must see the account name come back with Account verified before Connect Bank Account will submit.
5

Check the status tiles

Come back to this tab. You want Onboarding: Complete and Charges: Enabled, with an ● Active badge on the card. Anything else means the connection is not finished.

What changes once you save

Nothing about a connection is partial in effect — it is the pair onboarding complete + charges enabled that unlocks the rest of the product. Until both are true:
  • Payment links on invoices cannot be issued, so patients have no online way to settle a bill.
  • Booking-time payment stays unavailable — Require Upfront Payment in the Booking page designer shows “Stripe not connected” (or “Paystack not connected”) with a link back here instead of a provider picker.
  • Auto Pay shows “Connect Stripe to use Auto Pay” and cannot be turned on.
  • Membership sales cannot be taken, because there is nowhere for the money to land.
Once both are true, all four become available without any further switch. The ● Active badge appears on the card, the Auto Pay tab renders its controls, and a payment link can be attached to an invoice. The two providers are not interchangeable per transaction. A Stripe payment link is refused on a workspace collecting through Paystack, with: “This clinic collects payments via Paystack — Stripe payment links are not available.” Use the payment channels on Payment details for anything the provider cannot take. Card details are held by the provider, never by ClinikEHR — the Stripe card says so: “Card data is stored securely by Stripe and never touches ClinikEHR servers.”

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

The card shows ● Active (Stripe) or ● Connected (Paystack), with Onboarding: Complete and Charges: Enabled. Then raise a small test invoice and issue a payment link — it should generate rather than refuse. Finally open Auto Pay: its controls should now render instead of the “Connect Stripe” notice.

Common issues

That panel is for Auto Pay (auto-charging a saved card), which is a separate, higher-tier feature from connecting the account itself: “Processing card-on-file payments is a premium feature available on our Essential and Team plans.” Connecting Stripe or Paystack to take payments is available on every plan, including Free. See Change your plan.
“Only the clinic owner or a manager can connect a payment account.” Any other role can read the status but not start the connection.
The provider still wants something — usually an identity document or a bank detail. Select Continue setup to return to Stripe and finish it. Charges stay disabled until it clears.
“Your Stripe onboarding session expired. Please start again.” Onboarding links are short-lived — select Connect Stripe Account again.
The number must be a 10-digit NUBAN and must match the bank you selected. If the lookup returns “Could not verify account”, re-check the bank in the picker before the digits.
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 patient needs to save a new card at checkout, through the portal, or on a payment link you send.