Collect payments with Paystack
PAYSTACK uses a hosted checkout: Centipid Billing initializes a
transaction, sends the payer’s browser to Paystack’s authorization page, and
verifies the result against Paystack before crediting anything.
Offered in the country catalog for Kenya, Rwanda, Ghana, Côte d’Ivoire,
South Africa, Egypt, and Nigeria.
Before you start
- Complete Paystack merchant onboarding in an account owned by the ISP, and have the business verified so live keys are issued.
- From the Paystack dashboard collect the live secret key (
sk_live_…) and the live public key (pk_live_…). - Plan the walled garden: the payer’s browser must reach Paystack’s checkout page, so a Hotspot subscriber who is not yet online cannot pay unless Paystack is reachable pre-authentication.
Configure the gateway
1
Open Settings → Payments → Paystack
Select Paystack from the payment marketplace.
2
Enter the secret key
Secret key (required) starts with
sk_live_. It is stored as a secret
and is not echoed back into the form after saving.3
Enter the public key
Public key (required) starts with
pk_live_.4
Allow Paystack through the captive walled garden
Add Paystack’s checkout domain to the walled garden on every Hotspot router,
then confirm from a device that is not yet authenticated. See
Captive portal.
5
Run a controlled test payment
Pay a small amount from the captive portal on a real unauthenticated device,
and confirm the payment reaches the ledger with method Paystack.
Credentials
Callback URLs
Settings → Payments showshttps://<your-host>/tenant/paystack/callback, which
is where Paystack returns the payer after checkout.
What the payer must provide
Whatever Paystack’s own checkout page asks for — card details, mobile money, or a bank transfer, depending on what Paystack has enabled for your account. The amount and reference are fixed before the payer arrives.How a payment completes
1
Initialize
Centipid Billing calls
https://api.paystack.co/transaction/initialize and
receives an authorization URL, then stores the local transaction against the
reference.2
Payment
The payer’s browser is sent to Paystack and the payment is completed there.
3
Verification
On return, the reference is verified against Paystack. Only a verified
successful transaction records a payment and applies the package — the
return itself proves nothing.
Troubleshooting
For every gateway’s fields in one place, see the
credential reference.
