Subscriptions
Bill every month, without chasing anyone
Make a plan in the dashboard and share a link, or start subscriptions from your own website or app. We charge the card each period, retry a decline, send the invoice in your customer's language, and tell you what happened.
- Extra fee
- None
- Languages
- English, Sinhala, Tamil
- Website
- Not needed
Every period, on time
What we do, so you do not have to
Once a customer subscribes, the renewals are ours to run. Each one shows in your dashboard, and you receive an event for it.
Charged on the day
Each period's invoice is made and the card the customer kept is charged, with no one pressing anything.
Declines retried
A declined card is tried again on days 1, 3, 7 and 14 after the first decline. Each time, the customer is emailed a page to pay with another card, and sent an SMS.
Cancelled only after a fair wait
If every retry fails, the subscription is cancelled 7 days after the last one, and you receive the event.
In your customer's language
Invoices, receipts and reminders go out in English, Sinhala or Tamil, whichever the customer chose when they subscribed.
Cards about to expire
When a kept card is close to expiring, the customer is told, with a link to add a new one, before a renewal can fail.
VAT on every invoice
Your tax rates, included or added, on every invoice line, with your details and a number in sequence.
Changes worked out to the day
A switch of plan or a change of quantity mid period is charged or credited for the days that remain, and shown before it is confirmed.
Trials that behave
A free trial keeps the card, charges nothing until it ends, and reminds the customer before it does. You choose what happens when a trial ends without a card.
Price it the way you sell it
Flat, per unit, per package, tiered or by usage
Every kind of recurring price, in rupees. Pick one when you add a plan, and the form shows a worked example for the choice you made.
One amount
Rs. 2,500 a month, or Rs. 25,000 a year. Weekly and daily plans too.
Per unit
Rs. 900 for each user, seat or device. The quantity can change, and the difference is worked out to the day.
Per package
Rs. 250 for every 100 messages. A part package counts as a whole one.
Tiered
The first 100 units at Rs. 5 each and the rest at Rs. 4, unit by unit; or one rate for all, set by the total.
By usage
Send us what each customer used, or count events on a meter, and the period is billed when it ends. Alerts tell you and the customer before usage runs high.
Trials, coupons and promotion codes, tax rates, installments and schedules, and invoices to pay by a due date sit on top of any of them.
Three ways to start
A link, a button, or your own server
Customers subscribe where they already are: in a chat, on your website, in your app, or over the counter.
- 1
Share a subscription link
A page on payments.lk with your plans side by side, a box for a promotion code and, if you like, a free trial. Paste it into a chat or an email, or print its QR image. No website needed.
- 2
Put a button on your website or app
The same pay button as a checkout. Your server starts the subscription, the customer pays the first period on Payable's page and agrees to keep the card for the renewals.
- 3
Start it yourself
Start a subscription for a customer from the dashboard, or send them an invoice to pay by a due date, with reminders, and no card kept.
The customer portal
Customers manage their own plan
Every customer has a page with their subscriptions, their invoices and the card the renewals go on. You choose in your billing settings what they may change there.
- A new card, before the old one expires
- Switch plan or change the quantity, with the price shown before they confirm
- Pause payments for a few months
- Add a promotion code
- Cancel, with a coupon you choose offered once before they do
- Reached from a signed in link we email, or a button on your own site
In your dashboard
Add a plan, then watch it grow
Subscriptions sit in your Payments.lk dashboard, next to your payments, with the same test mode and the same support team.
- 1
Add a plan
Name it, choose how it charges and how often. The form explains each choice with a worked example, so tiered and usage prices hold no surprises.
- 2
Start or share
Start a subscription for a customer, share a link, or send an invoice. In the sandbox, a test clock runs a subscription's time ahead, so you see a renewal, a trial ending or a retry in minutes.
- 3
Follow the money
Recurring revenue, subscribers by status, churn and trials, month by month, with CSV exports. Every invoice, retry and email is on the subscription's own page.
For developers
Or start subscriptions from your own server
Make prices once, start a subscription in one request and send the customer to its checkout. Keep your records from signed webhooks: the subscription's status, each invoice paid or failed, and the features each customer has. The Node and PHP SDKs cover every billing endpoint.
// Once: a product and its monthly price. Keep the id in your config.
const monthly = await lk.prices.create({ product: { name: "Coffee club" }, unitAmountCents: 250000, interval: "month" });
// When a customer presses Join: the subscription, and the checkout where they pay the first month.
const customer = await lk.customers.create({ email: "[email protected]", name: "Nimali Perera", locale: "si" });
const subscription = await lk.subscriptions.create(
{ customerId: customer.id, priceId: monthly.id, successUrl: "https://yourshop.lk/account", cancelUrl: "https://yourshop.lk/club" },
{ idempotencyKey: "club-" + customer.id }, // a double click never starts two
);
res.redirect(subscription.checkoutUrl);
// From then on, signed webhooks: invoice.paid each month, invoice.payment_failed when a card
// declines, and customer.subscription.updated whenever anything about it changes.Safe by design
Cards stay with Payable, and customers stay in control
No card numbers, ever
The customer types their card on Payable's secure page, once. Renewals charge the card Payable kept; you and Payments.lk hold an id, never a number.
Never charged twice
One invoice a period and one charge an invoice. A retry, a restart or a double click never bills a customer again for the same period.
Consent kept with the card
When the customer agreed to renewals, in which language and which words they read is saved with the card, and they can cancel from the portal at any time.
The full list
Everything in subscriptions
Prices
- Every day, week, month or year
- Flat, per unit, per package, tiered and metered
- Free trials
- Coupons and promotion codes
- Tax rates, included or added
- Bill everyone on the 1st
- Several items on one subscription
Invoices
- Numbered invoices with your details
- Hosted invoice pages to view and pay
- Invoices to pay by a due date, with reminders
- Credit notes and customer credit
- One-off invoice items
- Installments and schedules
Customers
- English, Sinhala and Tamil
- Email and SMS when a payment fails
- The customer portal
- Expiring card reminders
- Switch, pause and cancel, worked out to the day
- A retention coupon before a cancel
Running it
- Test mode and a test clock
- Analytics and CSV exports
- Meters and usage alerts
- Entitlements: which features each customer has
- Signed webhooks for every change
- API, Node and PHP SDKs
No extra fee for subscriptions
Each renewal is a card payment at your plan's rate, from 2.29%. No setup fee, no monthly fee, and nothing per subscriber.
Live renewals charge a card the customer kept, so saved cards need to be switched on for your account, on Payable's Advanced plan.
Ready to bill your first subscriber?
Add a plan as soon as your application is sent, and try renewals with a test clock while we check it.