Building a Subscription and Access System for Your Business
A good subscription system opens and closes customer access automatically. Here's how to design plans, access periods, trials, and a record of every change.
Subscriptions appeal to many businesses: online courses, paid communities, monthly consulting, and SaaS apps. Revenue is easier to predict, and customers don't have to buy again every time. Behind the scenes, though, there's work that often gets underestimated: who can access what, from when, and until when.
Without a clear system, admins open and close access by hand, and renewals often cut off the remaining period. This article walks through the key parts of a subscription system, with examples from Numekara, the education business run by Lumekara's owner.
Separate payments from access
A common design mistake is treating “has paid” as the same as “may enter”. They're different things. A payment is an event at one moment, while access is a status that holds over a date range.
At Numekara, each purchase grants per-product access with a start date and an end date. Keeping these apart makes a lot of things easier. Access can be granted without a payment, for example through an invite code or a trial. It can also be revoked on refund without deleting the payment record.
The separation also helps once you sell more than one product. A single customer can hold several kinds of access at once, say an active subscription, a class that has ended, and a digital product bought once. Everything lives in one place, so admins and customers see the same picture.
Designing your plans
Too many plans confuse customers and complicate admin work. Numekara offers three durations for Premium: monthly, 3 months, and yearly. When designing your own plans, answer these questions:
- What does this plan unlock? List the products or features included so there's no misunderstanding.
- How long does access last? Choose a duration that suits how customers actually use your product.
- What happens when it expires? Does access close right away, or can customers still see part of the content?
- How do people renew? Make sure customers can renew on their own without messaging an admin.
Stack access periods, don't overwrite them
Picture a customer with ten days left who renews for a month early. In a careless system, the end date is recalculated from the purchase date, so those ten days vanish. The customer feels short-changed, and they'd be right to complain.
Numekara's subscription system stacks access periods. A new plan starts when the current one ends, so no days are wasted. The same care applies in reverse: when a full refund happens, only the access that came from that order is trimmed, while time from other purchases stays intact.
Trials and invite codes
A trial lets prospects experience the product before paying. Numekara offers a 7-day Premium trial. What you need to settle are the rules: who qualifies, whether it's once per account, and what happens when the trial ends.
It's best to record a trial as ordinary access with an end date, so the system closes it without an admin stepping in. When the trial ends, tell the customer what they can no longer use and how to subscribe, rather than locking them out without a word.
Invite codes cover needs outside the normal purchase path, such as giving access to partners, participants in a special programme, or customers owed compensation. At Numekara, admins can issue invite codes, extend access, or revoke it straight from the dashboard, so nobody has to edit the database directly.
An audit log for every change
Once admins can grant and revoke access, you need a clear record of who did what, and when. An audit log answers questions like “why was this customer's access extended?” or “who revoked access yesterday?”.
At Numekara, every access change is written to an audit log, and database triggers keep that log from being altered. A record like this helps with customer complaints, with checking admin mistakes, and with the moments you simply forget why a decision was made.
Small things that often get forgotten
- Reminders before access runs out. Numekara sends scheduled subscription expiry notices by email, so customers have time to renew.
- Status customers can see. Show the active plan and its end date on the account page.
- Numbers for the owner. A dashboard with monthly subscription revenue and customer retention tells you whether the subscription side of the business is healthy.
- The link to refunds. Make sure refunds adjust access automatically instead of waiting for an admin to remember.
Next steps
Write down the plans you want to sell, what each one unlocks, and your rules for renewals, trials, and refunds. That simple list is already a solid first design. Once the rules are clear, a system can be built to apply them consistently, and you only need to keep an eye on the dashboard.