Icone PayDocsSubscriptions
Recurring billing across Stripe (auto-renew) and Moncash (prepaid term + reminders).
Overview
Sell subscriptions to your customers on two rails, one API. Stripe holds a card and auto-charges each period. Moncash has no mandate, so a subscription is a prepaid term (e.g. 3 months) the customer manually renews after a reminder — if they don't re-pay, access lapses. A plan is single-rail: Moncash plans are HTG, Stripe plans use a card currency (USD/DOP/CLP).
Create a Plan
A plan defines the price and interval. interval + intervalCount make the term — e.g. month × 3 = every 3 months.
Subscribe a Customer
Subscribing returns a checkoutUrl — send the customer there (Moncash prepaid checkout, or Stripe subscription checkout). The subscription activates when that first payment settles. Pass customerEmail to let Icone Pay email renewal reminders directly.
Check Access
Icone Pay tracks status; your app grants access. Either react to the webhooks below, or check on demand — an active subscription with a future currentPeriodEnd means grant access.
Renewals
Stripe renews automatically. Moncash can't auto-charge, so Icone Pay sends a subscription.expiring webhook (and an email if you provided one) before the term ends. Get a fresh checkout URL and send it to your customer to renew:
Cancel
Webhooks
Subscription events are signed and delivered to your route webhook URL, exactly like payment webhooks (verify them the same way — see Verifying Webhooks): subscription.active, subscription.renewed, subscription.expiring, subscription.past_due, subscription.expired, subscription.canceled.