
Pricing your app on the App Market: plans, trials and private plans
The subscription models Zid supports, how to set up free trials and private plans, and what happens to a merchant's subscription on renewal and upgrade.
Two subscription models: recurring or usage-based
The last step before you submit your app for review is defining the plans merchants choose from. Zid supports two models:
- Recurring: merchants pay a fixed amount at regular intervals for continuous access. You set the plan duration (for example monthly, quarterly or yearly) and a price in SAR.
- Usage-Based: merchants are billed on actual consumption of a unit such as messages, emails, calls or orders.
To publish, you need at least one plan and at most eight. Each plan has a name, a description and up to five key features, entered in both Arabic and English.
What you can attach to a plan
Recurring plans support three optional extras:
- Trial period in days. If the trial length is 0 days, charges begin immediately.
- One-time fee paid only once, such as an installation or setup fee.
- Offer, a discount you configure to attract new merchants.
Usage-based plans have an initial cost the merchant pays to activate the subscription before usage charges apply. You then report the outstanding balance through POST /v1/managers/market/apps/plans/subscription-charge with the Subscription.read_write scope. The docs allow up to two updates per 30-day billing cycle.
Free trials: set them up and detect them
The review checklist asks that your trial give merchants enough time to explore and evaluate the app. In code, you can tell a subscription is a trial from webhook events such as app.market.subscription.active or app.market.application.install when plan_type equals Free Trial:
{
"event_name": "app.market.subscription.active",
"plan_type": "Free Trial",
"amount_paid": 0
}Use that field as the single signal for trial-specific logic, like nudging merchants toward key features before the trial ends.
Private plans for a specific merchant
When your public plans don't fit a particular merchant, enable Private Plans in your app settings. Merchants can then request a tailored plan directly from your app's page in the merchant dashboard.
- You get notified of new requests, and you can subscribe to the
app.market.private.plan.requestevent. - Review the merchant's requirements, send a customized offer and track their subscription status.
- Use Add Private Plan to send an offer to a specific store, with usage limits, pricing and any special terms, before activating it.
The subscription lifecycle and plan changes
Payment happens through Zid before activation, and a standard app must not ask for an additional partner-side payment. After that, a subscription moves through clear states, where T is the plan duration in days:
- WARNING: the last 3 days, prompting the merchant to renew.
- SUSPEND: when the duration ends, with a grace period until T+5 during which the app stays installed.
- EXPIRED: at T+5, when the app is uninstalled from the store.
- RENEW: the window to repurchase the same plan opens from T-5.
- UPGRADE: merchants can upgrade at any time to any available plan.
- REFUND: subscriptions can be refunded under Zid's refund policy.
Each state has a matching webhook, and you can fetch a merchant's subscription through GET /v1/market/app/subscription with the Subscription.read scope. If you want to change an agreed billing model, the activation policy says it must be reviewed with Zid before it reaches merchants.
Choosing a model that fits
- If your app delivers steady, ongoing value, a recurring plan is the most predictable option for merchants.
- If your costs scale with volume (messages, orders), consider usage-based pricing so each merchant pays for what they use.
- Use the eight-plan limit wisely: a few clearly separated tiers are easier to choose from than near-identical options.
- Reserve one-time fees for real setup work, not as a way to inflate the price.
- Describe features honestly. Merchant complaints about unsupported plan features are logged.
- Watch your dashboard analytics, including trial versus paid subscriptions, to see where pricing needs adjusting.
Key takeaways
- Zid supports recurring and usage-based plans, from one to eight per app.
- Trials, one-time fees and offers are optional extras on recurring plans.
- Private plans let you send a custom offer to a specific store.
- Subscribe to subscription webhooks to track renewals, upgrades and expiry.
Sources
- [Improvement - Apps] More Pricing Flexibility: Up to 8 Subscription Plans per App
- Create your First App
- App Management: Events
- Subscription Details
- Update Usage-Based Charges
- Zid App Activation & OAuth Policy
- Create a public app
- Public App Management
- Zid App Market: App Review Requirements Checklist
- Explore Partner Dashboard
Start building on Zid
Sign up in the partner portal, then build and test on a development store.


