The examples on this page use the shared sandbox key
sk_test_DOCS_SHARED_KEY. You can run them right now — no signup needed. Want your own isolated sandbox? Get one in 1 call →Get my own sandbox →Using: sk_test_DOCS_SHARED_KEY
Before you begin
Get an API key
You need a Plinth API key. If you don’t have one yet, get one here. Sandbox keys start with
sk_test_.Steps
Create a customer
A customer is who you’re billing. Create one with a name, email, and optionally your own internal ID (
external_ref).Response
Subscribe them to a plan
Pick a plan from your catalog. The sandbox already has two —
plan_pro (₦5,000/month, stored as 500000 kobo) and plan_max (₦12,000/month, stored as 1200000 kobo).Response
What happens next
Next month, we charge automatically. The subscription’snext_bill_at date triggers the billing engine — it charges the card on file and marks the invoice paid. If the card declines, dunning kicks in: we retry on a schedule and send you webhooks at every step. You get a subscription.past_due event when the first charge fails, subscription.recovered if we succeed later, and subscription.delinquent if we never do.
Next steps
Core concepts
Understand subscription states, invoices, and the billing lifecycle.
Card billing guide
Full walkthrough: plan creation, tokenisation, renewal handling.
Transfer billing guide
Set up virtual accounts for customers who pay by bank transfer.
Webhook reference
Every event type we emit and what the payload looks like.