🌟 What Is City Offers for Merchants?
This guide is translated from Arabic for your convenience; if anything differs, the Arabic version prevails.
City Offers is a game in which people walk through their city to Boxes on the map and open them. You put your store's offers in these Boxes — a discount, a voucher, or a sample — around your Branches, and customers come to you on foot.
The Idea in Three Steps
- Publish a Campaign: choose the offer, Branches, range, number of Boxes, and duration, and pay for it from your Wallet.
- Players open the Boxes near your Branches, and whoever finds your prize gets a Coupon.
- Redeem the Coupon: the customer shows its code, and the cashier scans it in the app.
You pay for the Boxes, not for redemptions, and any of your Boxes left unopened come back to you as Box Credits.
What You Need
- A valid Commercial Registration (CR) in Saudi Arabia and a copy of it (image or PDF), plus your store logo.
- A Saudi mobile number to sign in with.
- At least one Branch that serves customers.
- Optional: your VAT number and certificate, and your municipality license.
📝 Signing Up and Approval
Signing In with Your Mobile Number
- Enter your mobile number and tap "Send Verification Code".
- Enter the code you receive by text message.
- If you are new, the app opens "Register a Store" for you.
The Registration Application
- Enter your full name and the store name, and choose your Business category and Operating Cities.
- Enter your CR number and expiry date, and upload a copy.
- Upload your logo — it is cropped to a circle, and players see it on your Coupon.
- Add any of the optional items you like: your VAT number with its certificate, your municipality license, and your email.
- Read the Merchant Terms and the Privacy Policy and check the consent box, then tap "Submit for Review".
You do not enter a contact number: we take it from the mobile number you signed in with.
After You Submit
- Your application shows as "Under Review", and we usually review it within three business days.
- If it is approved, the app takes you straight to your store dashboard.
- If it is rejected, you can read the reason under "Review Result", then edit and resubmit your application without re-uploading anything that has not changed.
Accepting the Terms
- Every user in your store (the owner and each team member) accepts the Merchant Terms and the Privacy Policy the first time they sign in.
- If we make a material change to them, we notify you before it takes effect, and you will then be asked to accept the new version.
- You can read them at any time from Settings → "About the App — Documents".
🧭 A Tour of the App
At the bottom of the screen there are four tabs:
- Home: your balance, your store's numbers since the start, shortcuts to create a Campaign and redeem a Coupon, and the Plus section if it is active.
- Campaigns: active and past Campaigns, and a button to create a Campaign or a Quick Campaign.
- Packages: your Box Credits and Box Packages.
- Menu: Branches, Reports, Activity Log, Wallet, Sponsorship, Team, Documents, Coupon complaints, Help Center, My Tickets, and Settings.
What you see depends on your role: the owner sees everything, and others see what is within their scope and the permissions they have been granted.
🏪 Business Profile and Branches
Branches
- From the Menu → Branches → "Add Branch".
- Enter the Branch name, and a descriptive address if you like.
- Set its location on the map (the "My Location" button centers the map on you) — your Campaign Boxes are scattered from this location. The Branch's city is set automatically from its location.
- A Branch is not deleted but archived, and you can reactivate it. An archived Branch cannot be chosen for a new Campaign.
Hours and Contact
- From Settings → Business Profile → "Hours & Contact": set the opening and closing time for each day or leave it closed, and add the Store Mobile that customers call (separate from the number registered with us).
- Players see these on your Coupons — it is how they decide when to visit you.
Name, Logo, and Category
- Changing the store name or logo is a request that the owner sends and we review, with thirty days required between any two approved changes. Coupons issued before the change keep the old name.
- The store category can be changed by the owner at any time — it determines which stores like yours you are compared with in Plus.
Store Directory
- Your store appears automatically in the Store Directory for the cities of your active Branches.
- For the owner: "Show my store in the Store Directory" — a hidden store does not appear in the list, but its page stays available to anyone holding one of your Coupons.
- Your online store link (optional) appears to players as a "Visit Shop" button, and you can see how many tapped it.
About the Store
- From Settings → Business Profile → "About the Store": a short (optional) text written by the owner that appears to players on your store page as soon as you save it.
- Up to 300 characters and 4 lines. Introduce what you offer and what makes you different.
- It is rejected if it contains a contact number, link, email or handle ("@…") — your phone and link have their own fields in the profile — or an offensive word, and the message tells you what to fix.
- Players may report it, and we may remove it or stop you from writing one if it breaches the Terms — you'll get a notification if we do. If it's locked, contact support.
📣 Campaigns
Creating a Campaign
From the Campaigns tab → "New Campaign", in five steps:
- Campaign Details: the title, the offer text (shown as the ad headline and in your followers' notification), the description, the cover, the discount permit number, the dates, and a target group if you like (gender or age).
- Branches and Range: choose the Branches, the number of Boxes per Branch, the range around it, a "gap" around the Branch where no Boxes are scattered, and the Scatter Direction (a full, half, or quarter circle).
- Scatter Schedule: all at once, or in rounds that repeat at an interval you choose (every hour, every 4 hours…), with their Boxes adding up until the Campaign ends.
- Prizes: the type of each prize (a percentage discount, a fixed-value voucher, or a sample), its title, conditions, image, and quantity, and the number of days the Coupon stays valid after the Campaign ends.
- Review and Confirm: see what will be published and the full pricing, accept the Responsibility Statement, then publish.
The amount is charged when you publish, even if the Campaign is scheduled for a later date — and its Boxes do not appear before then.
Restricted Places
Boxes are not scattered at government and military sites, schools, mosques, hospitals, highways, and similar places. The app shows you the restricted areas while you set the range, and before payment it rejects a range that is mostly restricted — so widen the range, reduce the gap, or choose another Branch.
Discount Permit Number
- A discount offer may require a license from the Ministry of Commerce, and obtaining it is your responsibility (see the Terms).
- Enter the license number in the Campaign, and the player sees it on the Coupon.
- We may make the number required for publishing Campaigns — the field will then be marked "required", and the Campaign cannot be published without it.
Quick Campaign
- A small Campaign near one Branch: a few Boxes, for a few days, within a short range of the Branch — published in a minute.
- From the Campaigns tab → "Quick Campaign": choose the Branch, enter the offer and the prize, then tap "Publish Now".
- It has no setup fee, and every day of it is paid.
Campaign Details
- From the Campaign card: the Box Journey (scattered · opened · won · redeemed), the Branches, the prizes, and your statement and permit number.
- Edit: add days, Boxes, or range and pay only the difference. The duration cannot be shortened and the range cannot be narrowed.
- End Now: unopened Boxes are withdrawn and returned as Box Credits. The setup fee and the day and range fees are not refunded. Coupons that players have won stay valid.
- Republish: copies an ended Campaign into a new one that you can edit before publishing (without its dates, statement, or cover).
How Do Players See Your Campaign?
- Your Boxes look like any other Box — the contents are not revealed before opening, and rarity or priority cannot be bought.
- After a player opens a Box from your store, your store's other Boxes are hidden from them for a while (currently one full day), so that your offer reaches as many people as possible.
- Your store's followers get a notification when a new Campaign starts (except Campaigns targeted at a specific group).
🎟️ Redeeming Coupons
How Do I Redeem a Coupon?
- From Home or the Menu → "Redeem Coupon".
- Scan the QR code on the customer's screen — or tap "Enter Code Manually" and type it, or scan it with a barcode reader.
- The app checks it and shows "Redeemed" with the offer and its conditions — then hand the customer their prize.
Redemption Messages
- "Already Redeemed": the Coupon has been used and cannot be redeemed twice.
- Expired or not for your store: it cannot be redeemed — apologize to the customer politely.
- You cannot redeem your own Coupon with your account.
- Weak network? Don't keep tapping: scan again, and if it was already redeemed, you will see that.
Your Commitment to the Coupon
- Accept every valid Coupon at the Campaign's Branches, on its conditions, until the last day of its validity — even if the Campaign has ended.
- If a customer complains that their Coupon was refused, the complaint reaches you in Menu → Coupon complaints (with the Coupon code and the complaint text, without their name), and you must reply there within two business days.
- Neither you nor your team may open your store's Boxes from the player app.
👥 Team
Roles and Permissions
- Store Owner: everything, and is the only one with access to the Wallet, Packages, Documents, Sponsorship, the Directory, and account closure.
- General Manager: over all Branches or some of them.
- Branch Manager: over one Branch.
- Staff: at one Branch — usually the cashier.
Permissions are granted one by one: Redeem Coupons · Create Campaigns · End Campaigns · Quick Campaigns · Manage Branches · Manage Team.
Anyone granted Create Campaigns spends from the store Wallet, so grant it only to people you trust.
Inviting Staff
- From the Menu → Team → "Invite Staff".
- Enter their mobile number and name, and choose their role, Branch, and permissions.
- Tell them yourself to download the merchant app and sign in with their number — we do not send them a message.
- The invitation is valid for the period shown next to it, and you can renew or cancel it from "Pending Invitations".
Suspending Staff
- From the member's card → "Suspend Staff Member": they are signed out of the store account immediately, and their name stays in the record of what they redeemed. You can reactivate them later.
- Suspend anyone who leaves your employment right away.
💰 Wallet and Packages
Wallet
- From the Menu → Wallet (for the owner): your balance in riyals, the Transaction History (amount, reason, time, and balance after), and Invoices.
- Top up the Wallet with the payment methods shown there, and see the amount before you pay.
- The Wallet balance cannot be withdrawn as cash, and it is refunded when the account is finally closed.
Box Credits and Packages
- Box Packages are bought from the Wallet at a lower price for larger quantities, and they never expire.
- Box Credits are used automatically in any Campaign before the Wallet is charged — and anyone granted Create Campaigns can create a Campaign with them.
- Unopened Boxes from ended or terminated Campaigns return to these credits.
How Much Does a Campaign Cost?
- A setup fee for each Campaign (not for Quick Campaigns).
- The Box price, in tiers that drop as the quantity grows — and Boxes covered by Box Credits are not charged.
- Duration: free days, then a fee for each day (a partial day counts as a full day).
- Range: a fee per Branch based on how wide it is; a small range is free.
- Current prices are in "Review and Confirm" and in the Packages tab. If a price changes before you confirm, the operation is rejected with no charge and the new prices are shown.
📊 Numbers and Reports
Store Dashboard
- Your store's Box Journey: how many Boxes were scattered, opened, won, and redeemed.
- Cost per Visitor: what you spent divided by what was redeemed.
- Your Top Campaigns and Branches, and Who Redeems on your team.
Reports and Activity Log
- From the Menu → Reports: choose the sections and save your store report as a PDF or print it, in your interface language.
- Activity Log: who did what and when in your store (Campaigns, redemptions, team, Wallet).
What You Don't See
- You do not see the player's name, number, or location — only the Coupon, its time, the Branch, and who redeemed it.
⭐ Plus
- Plus gives your store extra numbers and insights: When Your Customers Redeem (by hour and day), Compare All Your Campaigns, Which Offer Brings More Redemptions, Where Redemptions Come From (the Box's distance from your Branch), Who Redeems Your Coupons (gender and age), Compared with Stores Like Yours, A Tip for Your Next Campaign, and the Monthly Report (PDF and Excel).
- For the owner and the General Manager.
- Subscription (Owner): monthly or yearly at the price shown, deducted from the Wallet, renewing automatically with a reminder three days before, and you can turn off renewal so it lasts until the period ends — and you can ask for a free trial ("Request a Plus Trial"), and you will be notified when it is activated.
- Privacy: "Who Redeems" does not appear before thirty redemptions in the period, and no group with fewer than five is shown. The peer comparison is an anonymous median of at least five stores, and your store's numbers feed into your peers' median without your name.
🤝 Sponsorship
- From the Menu → Sponsorship (for the owner): put prizes from your store in the Boxes of Events organized by the platform.
- "Offers for You": we offer you a Sponsorship with prizes and a fee per Box — if you accept, the amount is charged; if you decline or don't reply, nothing happens.
- "Seeking Sponsors": Events waiting for sponsors — propose a prize (its type, value, quantity, and conditions) with no charge, and we turn it into an offer or decline with a reason.
- At the end, the fee for unopened Boxes is returned to your Wallet, and if we cancel the Event before it starts, the full amount is refunded.
- The sponsoring store's team cannot open the Boxes of the Event it sponsors.
📄 Documents
- We alert you before your Commercial Registration expires.
- Renewal: from the Menu → Documents → "Renew Commercial Registration": upload the new CR, its number and date, and any other documents that have changed. The new date takes effect after we approve it.
- If your CR expires, no new Campaigns can be published until the renewal is approved — your existing Campaigns continue and Coupons already issued are still redeemed.
🔔 Notifications
- The bell at the top of the screen keeps your notifications for ninety days.
- From Settings → Notifications: a switch for each type — Coupon Redeemed, Team Changes, Campaign Ended, Campaign Boxes Depleted, Sponsorship, Wallet Deposit, Commercial Registration Expiring, and General Notifications (offers and news).
- Service notifications (store status, Campaign suspension, prices, and support replies) cannot be turned off.
⚙️ Settings and Security
- Appearance: Light, Dark, or System.
- Language: Arabic or English — server messages and notifications reach you in your language.
- Fingerprint Sign-In: asked when the app opens and after two minutes in the background, with your device passcode as a fallback if your fingerprint is not read.
- Account: your name and how to edit it, your mobile number (changed through support), your store IDs for support, "A Copy of My Data", and Leave the Team for anyone other than the owner.
- About the App — Documents: the Merchant Terms, the Privacy Policy, and this guide.
🧊 Frozen Store
- If we freeze your store, a banner at the top of the screen shows the reason, and no new Campaigns can be published.
- Temporary freeze: players' Coupons stay valid and your team redeems them, and their validity is extended by the length of the freeze when it is lifted.
- Freeze for a violation: players' Coupons issued by you may be cancelled.
- You can appeal with a ticket from the Help Center.
🚪 Closing the Account
- The owner goes to Settings → Account → "Request Account Closure" → "Write Closure Request", and a ticket reaches us.
- Request, Then Freeze: we confirm with you and freeze the store.
- Clearing the Map: your Campaigns end and your Boxes are withdrawn.
- Waiting for the Last Coupon: you redeem every issued Coupon until the last day of its validity — the screen shows how many there are and the date of the last one.
- Final Closure: we refund your Wallet balance and unused Box Credits to the business's bank account within fifteen business days (see the Terms).
🆘 Help and Support
- Help Center: answers to common questions, with search and sections.
- Open a Ticket if you don't find your answer: choose the category, enter the subject and details, and attach the related Campaign or transaction. We usually reply within two business days.
- My Tickets: follow our replies and respond to them. A ticket is closed as resolved if you don't reply within a week of our answer.
- By email: support@city-offers.com — and for privacy: privacy@city-offers.com.
❓ Frequently Asked Questions
Do I Pay for Every Coupon Redeemed?
No. You pay for the Boxes when you publish the Campaign, and redemption itself is free of charge.
What If Not All My Boxes Are Opened?
Unopened Boxes come back as Box Credits that you can use in your next Campaign.
Can I See Who Redeemed My Coupon?
You see the Coupon, its time, the Branch, and who on your team redeemed it — not the customer's name or number.
A Customer Has a Valid Coupon but the Campaign Has Ended — Do I Redeem It?
Yes. The Coupon is valid until the expiry date written on it, even if the Campaign has ended.
Do I Need a Discount License?
Discount offers may require a license from the Ministry of Commerce, and obtaining it is your responsibility — you enter its number in the Campaign so the customer can see it. If you are not sure, ask the Ministry on 1900.
A Staff Member Has Left — What Should I Do?
Suspend them from Team right away, and they are signed out of the store account immediately.