
Trial, Grace Period, Cancellation: How Billing Actually Works
By menu-MENA Team
Published on September 26, 2026
What starts the 14-day clock
Sign up for menu-MENA and no one asks for a card. Your account opens in trial status with a 14-day deadline stored right on the tenant record, a field called trialEndsAt. Your menu is fully public and working for the whole 14 days, same as a paying account.
The day your trial runs out
That deadline isn't decorative. A function called effectiveStatus runs on every request to your public menu page, and it checks the actual timestamp, not just whatever status string happens to be sitting in the database. The moment trialEndsAt passes, your storefront treats the account as past due immediately, before any background job has touched your record. A daily job, subscription-tick, runs once each morning to write that change back permanently and start sending reminder emails, but the storefront itself never waits on it.
A paid subscription works the same way. currentPeriodEnd, the date your monthly or yearly payment covers you through, gets checked live too. If a renewal payment fails and the period lapses, the visitor-facing menu reacts the same way it would for an expired trial.
The 14-day grace period
Trial and paid subscription both land in the same place once they lapse: past_due, with a graceEndsAt timestamp set 14 days out. Your menu page doesn't 404 during that window. It swaps to a bilingual screen, "Subscription expired, please resubscribe" in English and "الاشتراك منتهي، برجاء التجديد" in Arabic, with one button that sends the owner to sign in and pay through Paymob. Resubscribing brings the storefront back the same moment, no batch job, no support ticket required.
Cancelling on purpose lands in the same place. A cancelled account gets the identical 14-day grace window as a failed card, not an instant cutoff. Cancel and change your mind three days later, and resubscribing puts the menu right back up.
What happens once the 14 days run out
If grace expires with nothing done, the account flips to deleted and the public menu now returns a real 404, not the resubscribe screen. There's a further 7-day window after that where the account and its data still exist, but getting them back isn't self-service at that point. It takes reaching out to us so the account can be restored from the admin side. Once those 7 days pass, a cleanup job removes the tenant and everything under it for good, menu data, uploaded images, and every branch that hangs off it.
So the real safety margin is the 14-day grace window, where fixing a card or resubscribing takes care of everything on your own. The 7 days after deletion is a last resort, not a plan.
If you run more than one branch
Billing status doesn't live on each branch separately, it lives on the root account, and the daily job writes the same status and the same graceEndsAt to every branch underneath it in one pass. If your main subscription lapses, every branch enters grace at once, the same way running several locations under one owner already works for menu edits and analytics. There's no scenario where branch two is still live while branch one's payment has failed.
The emails you'll actually get
menu-MENA sends four reminder emails to the account owner's address as the clock runs, not a flood of them: one three days before the trial ends, then three during a grace period, at day 0, day 7, and a final notice a day before deletion. Each one is stamped once per account, so a retry of the same daily job never sends it twice.
Where billing lives
Managing the subscription and paying by card or wallet is owner-only, same as adding a branch or opening the audit log. A manager account, even one with full access to a specific branch, can't see or touch billing at all. If your menu suddenly shows the resubscribe screen and you're not the account owner, that's not a bug. Someone with owner access needs to sign in and handle it.
A small number of accounts run on a manual grant instead, ones we've comped for a partner or a beta test. Those ignore the billing clock entirely and stay active until we turn the grant off by hand. If that's your account, none of the above applies to you.