← Blog

How to Add Subscription Billing to Your Nepal SaaS Product

1 June 2026 · 9 min read · For Developers

You've built a SaaS product for the Nepal market. It solves a real problem, you have early users, and now you need to charge for it on a recurring basis. This is the point where most Nepal SaaS products hit their first infrastructure decision: how do you actually implement subscription billing in Nepal?

This guide walks through the options — from the simplest possible approach to a full API integration — so you can choose the right level of investment for where your product is today.


What "subscription billing" actually requires

Before choosing an approach, it's worth being clear about what subscription billing requires technically. There are four distinct problems:

1. Payment collection. Accepting the initial payment and each subsequent renewal. In Nepal, this means eSewa, Khalti, ConnectIPS, or some combination.

2. Renewal orchestration. Knowing when each subscriber's payment is due, reminding them before the date, and collecting the renewal payment. This is the part that requires ongoing automation — it doesn't end after the first payment.

3. State management. Tracking whether each subscriber is active, overdue, or lapsed — and updating your application accordingly. If your SaaS unlocks features based on subscription status, this state needs to be reliable and current.

4. Reporting. Understanding your monthly recurring revenue, churn, and collection rates — the numbers that drive SaaS business decisions.

A common mistake is to solve only problem 1 (payment collection) and then discover that problems 2, 3, and 4 require significant additional work.


Option 1: Payment links (no code required)

The fastest way to start collecting subscription payments in Nepal is SUQO payment links. Create a subscription plan in your SUQO dashboard — name, price, billing cycle — and SUQO generates a unique payment URL for that plan.

Share the link with your customers in onboarding. They click it, pay via eSewa or Khalti, and SUQO automatically creates their subscriber record and starts the billing cycle. Renewal reminders go out by SMS automatically before each due date.

This approach requires no code, no merchant API application, and takes under 10 minutes to set up. It handles all four billing problems — collection, reminders, state tracking, and revenue reporting — through the SUQO dashboard.

Best for: Early-stage products where speed matters more than a seamless in-product experience. Acceptable for B2B SaaS where the billing flow can live outside the main product interface.


Option 2: Full API integration

For products where billing needs to be embedded inside the product experience — subscription status visible in your dashboard, upgrades and downgrades handled in-app, billing cycle tied to feature access — the SUQO REST API gives you full programmatic control.

The integration pattern looks like this:

Step 1: Create the subscriber via API when a user signs up

When a user completes onboarding and is ready to pay, call POST /api/v1/external/subscriptions/ with their details and the plan ID. SUQO creates the subscriber record and returns a checkout URL that you redirect to, or embed as a payment link in your onboarding flow.

Step 2: Check subscription status to gate features

Call GET /api/v1/external/subscriptions/{id}/ to get the current status of a subscriber — active, due, overdue, cancelled. Gate feature access in your application based on this status. Poll on login or on-demand; cache aggressively.

Step 3: Handle plan changes

When a user upgrades, downgrades, or cancels, update the subscription via PATCH /api/v1/external/subscriptions/{id}/. SUQO handles the billing cycle adjustment; you update your application state based on the returned subscription object.

Step 4: Let SUQO handle reminders and renewals

You don't need to build reminder logic. SUQO sends SMS reminders automatically before and after renewal dates, with a payment link included. Subscribers pay; their status updates; your application reads the new status on the next check.

Best for: Products where subscription status is tightly coupled to product functionality, or where a fully in-product billing experience is important to the user experience.


What about building directly on eSewa or Khalti?

You can integrate directly with eSewa or Khalti's payment APIs. Both provide one-time payment collection endpoints that you can call after receiving a payment callback. What they don't provide is the recurring layer — renewal tracking, reminder automation, subscriber state management.

If you build on eSewa/Khalti directly, you're solving the payment collection problem and building everything else yourself. The cost is typically two to six weeks of development time. See Stop Rebuilding Recurring Billing on Every Nepal Project for a fuller breakdown of what that entails.

The practical advice: use SUQO as the billing layer on top of eSewa and Khalti. SUQO handles the gateway integration, so you don't need to apply for merchant API access from either provider.


Pricing and economics

SUQO charges no platform fee — there's no monthly subscription cost and no percentage of revenue taken. The cost components are:

  • Payment gateway fee: 1.13% per successful digital payment, charged by eSewa or Khalti directly. This is standard for all Nepal digital payments and applies regardless of which layer you use.
  • SMS credits: Approximately NPR 1.49 per SMS for automated renewal reminders, dropping at volume. Reminders are sent per billing cycle per subscriber.
  • API access: Free. No per-call charges, no developer tier, no rate limits.

For a SaaS product with 100 monthly subscribers, the SMS cost is roughly NPR 300–600/month depending on reminder frequency — a fraction of what staff time for manual follow-ups would cost.


Auto-debit and what's coming

True auto-debit — where a renewal payment is pulled from the subscriber's wallet automatically without any action from them — is not yet available through Nepal's payment rails at scale. SUQO is built to expose it through the same API endpoints the moment it becomes available. Products already integrated with SUQO will get auto-debit without changing their integration. See how recurring payments work in Nepal for the current state of the infrastructure.

Add subscription billing to your Nepal SaaS today.

Payment links to start in minutes. Full API for deeper integration. Free to start — KYC required to collect payments.