Skip to content

Introduction

Trile is a subscription billing and payment platform for Nepal. SaaS businesses integrate Trile’s APIs to charge recurring payments; their customers fund a Trile wallet that auto-deducts on each billing cycle.

Nepal’s payment ecosystem (eSewa, Khalti, Fonepay) has no native support for recurring or scheduled charges, and Nepali banks do not offer Variable Recurring Payments (VRP). So building a subscription business in Nepal has meant manual monthly collection, pre-paid credits, or routing through international gateways that most local customers can’t use.

Trile fills that gap: a customer authorizes once, tops up a wallet, and Trile deducts each cycle automatically — within Nepal Rastra Bank’s (NRB) regulatory framework.

Because there’s no card-on-file rail, Trile inverts the usual flow. Instead of pulling from a card every month, the customer maintains a prepaid wallet balance. When a subscription renews, Trile deducts the cycle amount from the wallet. If the wallet can’t cover a cycle, the subscription goes past_due and the customer is prompted to top up. See The wallet model for the full lifecycle.

  • Recurring subscriptions — monthly/annual plans with trials, billed from the wallet.
  • Hosted checkout — a Trile-hosted page where a customer tops up and subscribes in one flow.
  • Usage you reconcile yourself — an append-only event log and webhooks keep your system in sync.
PrincipleWhat it means for you
Money is paisaEvery amount is integer paisa (NPR × 100) as a string. Never send floats. See Money & paisa.
Idempotency is mandatoryEvery POST/PATCH/DELETE requires an Idempotency-Key. See Idempotency.
Everything is envelopedResponses are { success, data, meta }. See the API envelope.
IDs are prefixed & sortablecus_…, sub_…, price_… — ULID-based. See Object IDs.
Test before livenep_test_ keys hit a sandbox; nep_live_ keys move real money. See Test mode.