Overview
The platform is two applications sharing one database: the store your customers see, and the back office where your team manages products, orders and content.
The storefront
Home, catalogue, product pages, cart, checkout, customer account, blog and legal pages. Available in French, English and Arabic.
The back office
Dashboard, catalogue, stock, orders, delivery, content, customers, finances and settings. Open to staff accounts.
No technical skill is needed day to day. Copy, pages, products, delivery rates and settings are all edited from the back office, with no redeployment.
The storefront
What your customers see and use. Everything works on a phone: filters and menus become slide-out panels on small screens.
- Home/
- Built from blocks (video banner, story, key figures, benefits, products, FAQ, contact…) that you reorder and edit from the back office.
- Catalogue/products
- Search, a category tree, filters by colour, size and price, and a featured selection. Out-of-stock products cannot be added to the cart.
- Product page/products/…
- Gallery, variants, technical specifications, customer reviews, and a quick view from the list.
- Cart and checkout/cart · /checkout
- Wilaya and commune, home delivery or stop desk, a shipping estimate, promo codes, and payment on delivery or by card. A signed-in customer's details are filled in already.
- Customer account/account
- Order tracking and one-click reordering, wishlist, address book, profile with photo, a default delivery address, and notifications on their device.
- Blog/blog
- Articles by category, search, and an automatic table of contents in each article.
- Free-form pages/a-propos, /cgv…
- Any page created in the back office is live at its address as soon as it is published: about, terms of sale, legal notice, privacy policy.
The life of an order
Every order gets a number like ORD-20260919-0001 (today's date, then a counter). Staff change its status from the order page in the back office, and every change is timestamped in its history.
-
pendingPlacedThe customer places an order
- The quantities ordered are reserved in stock; if the last unit is reserved, the product goes out of stock.
- The customer gets a confirmation email; staff get a "new order" notification.
- The order is scored by the fraud-protection module.
-
confirmedConfirmedYour team confirms it
- Usually after calling the customer, for cash on delivery.
- The customer is told immediately: email, a notification in their account, and a push notification.
-
shippedShippedThe parcel leaves
- Assigned to one of your drivers or to a delivery company, with a tracking number and a label.
- The customer is told the same way.
-
deliveredDeliveredThe customer receives it
- Physical stock is drawn down and the reservation released.
- A cash-on-delivery order is marked paid automatically.
At any point before delivery an order can be
cancelledorrefunded: the reservation is released and the product becomes available again.
The back office
Five groups, in the same order as the side menu. The dashboard sums up the day: orders to handle, revenue, low stock, and the health of the store.
Catalogue
- Products
- A step-by-step form: copy, gallery, price and compare-at price, variants, specifications, opening stock, and search-engine settings.
- Categories
- A tree with as many levels as you need, used by the catalogue filters.
- Stock
- Physical quantity, reserved quantity, low-stock threshold, and a movement history. Restocking puts a product back on sale.
- Orders
- A filterable list, a detail page, status changes, internal notes, printing, and a timestamped history.
- Promo codes
- A percentage (with a cap), a fixed amount, or free shipping; a minimum order value, validity dates, and limits per code and per customer.
Delivery
- Drivers
- Your own drivers, their zones and availability. Each one follows their runs from a personal link on their phone.
- Deliveries
- Parcel tracking, a map, failed attempts, and synchronisation with the carrier.
Content
- Pages
- A block-based page editor with drafts and publishing, live preview, menus and footer.
- Blog · FAQ
- Articles and frequently asked questions, shown on the storefront.
- Media
- An image and video library shared across the back office.
People
- Customers
- Customer records, past orders, addresses.
- Abandoned carts
- Carts never completed, with an automatic reminder email once a day.
- Users
- Staff accounts and their roles.
- Reviews · Analytics
- Review moderation; sales, products and channels that perform.
Business
- Finances
- Income, expenses and margin over the period you choose.
- Protection
- Suspicious orders to review, customer profiles, a blocklist, and rules.
- Audit log
- Who changed what, and when: statuses, stock, users, settings.
- Languages
- Active languages and the wording of the interface.
- Settings
- Identity, social links, announcement bar, legal information, taxes, order rules, returns, payment methods, delivery rates by zone, automatic emails, SEO, ad tracking, and maintenance mode.
Notifications
Notifications go out the moment the action happens, not on a schedule. When someone confirms an order, the customer hears about it in the same second.
| Event | Who hears | How | When |
|---|---|---|---|
| New order | Staff | Back-office bell, push | Immediately |
| Order confirmed, shipped, delivered, cancelled | Customer | Email, account bell, push | Immediately |
| Stock below its threshold | Staff | Bell, push | Immediately |
| Abandoned-cart reminder | Customer | Once a day, 9am | |
| Carrier parcel tracking | — | Status refresh | Once a day, 6am |
The two daily jobs (reminders and carrier tracking) run once a day, the limit of Vercel's free hosting plan. A paid plan allows them to run hourly.
Delivery and carriers
Addresses are entered by wilaya and commune, as Algerian carriers require. Shipping is priced from your own zone table, or by the carrier when one is connected.
| Method | Status | What it gives you |
|---|---|---|
| Your own drivers | Available | Assignment, zones, and tracking from the driver's phone. |
| Yalidine | Connected | Parcel creation, label, and automatic status tracking. |
| About 90 other companies (Ecotrack, Maystro, Noest, Procolis…) | Planned | Already listed; until they are connected, tracking is entered by hand. |
69 wilayas, 58 carrier codes. Since the 2026 redistricting Algeria has 69 wilayas, but carriers still accept only 58. The platform stores the customer's real wilaya and sends the carrier the code it knows.
Payment and protection
Cash on delivery
The most common method here. The order is marked paid automatically once it is delivered.
CIB or Edahabia card
Online payment through Chargily Pay. Each method can be switched on or off in the settings.
The Protection module limits fake orders, which are common with cash on delivery: each order gets a risk score built from the customer's history, their phone number and your rules. Doubtful orders wait for your decision, abusive numbers can be blocked, and the store can require a phone-verification code before a cash-on-delivery order is accepted.
No SMS provider is connected yet. The code is generated, but your team reads it to the customer over the phone. Connecting an SMS service is all it takes for it to be sent automatically.
Roles and access
Every account has a role. A role can only manage the roles below it, and nobody can change their own.
| Role | For | Access |
|---|---|---|
platform_admin | The owner | Everything, including managing administrators. |
admin | Store manager | The whole back office; manages staff. |
staff | Team (packing, customer service) | The back office, day to day. |
customer | Customers | The storefront and their own account. |
Staff accounts see an "Administration" link in their account menu on the storefront, to move between the two sides.
Pages and content
Every page is a sequence of blocks: banner, text and images, key figures, benefits, team, reviews, scroll-driven video, products, articles, FAQ, contact form, legal text, call to action. You choose the blocks, their order and their content; changes stay as drafts until you publish them.
The look — colours, typography, animation — is a theme that ships with the platform. A new client can be given a bespoke visual identity without their content or back office changing at all.
The legal texts supplied are drafts. Terms of sale, terms of use, legal notice and privacy policy are written against Algerian law (18-05, 09-03 and 18-07), but no lawyer has reviewed them. Anything specific to your company (trade register, tax number, address…) is marked "À COMPLÉTER". Have them reviewed before you open.
Under the hood
What the store runs on. Useful if your developer wants to know what they are inheriting, or if you are comparing it with a platform rented by the month.
Technology
- ApplicationNext.js 16 · React 19
- Pages are rendered on the server, so visitors receive ready-made HTML — which search engines read without running any JavaScript.
- DatabaseMongoDB
- Products, orders, customers, content and settings in one database, hosted on MongoDB Atlas with automatic backups.
- HostingVercel
- A worldwide delivery network, HTTPS certificate included, deployed by pushing the code. No server to administer.
- Images and files
- Resized and converted to modern formats (AVIF, WebP) to match the visitor's screen. Storage of your choice: Vercel Blob, Supabase, FTP or local disk.
Security
- Access
- Four ranked roles; nobody can raise their own. Every sensitive action is timestamped in the audit log, including refused attempts.
- Passwords
- Hashed (bcrypt), never stored in readable form. Eight characters minimum with an uppercase letter, a digit and a symbol, enforced by the form and by the server alike.
- Payments
- Only Chargily's signed notification can mark an order paid; the browser coming back from the gateway decides nothing. Amount and order are checked, a replayed notification is handled only once, and a double payment is flagged for refund.
- Orders
- A double-click never creates two orders. An order's tracking page opens only for its owner or through a signed link, never by guessing a number.
- Abuse
- Attempt limits on sign-in, code sending and password resets; risk scoring and a blocklist on cash-on-delivery orders.
Quality and performance
- Automated tests
- 345 unit tests and an end-to-end suite (Playwright) covering sign-in, ordering, payment and the back office. They run before every release.
- Search engines
- A title and description for each page, an automatically generated sitemap and robots.txt, and readable addresses. A built-in audit tool points out incomplete pages.
- Multilingual
- French, English and Arabic, with right-to-left layout. Interface wording is corrected from the back office, without touching the code.
- Mobile
- Installable as an app (PWA), push notifications included, and an interface designed for the phone first.
- Measurement
- Sales tracked both in the browser and from the server, so conversions still register when an ad blocker is on.
What is still unfinished, plainly. Card payment has never been tested with real money; carriers other than Yalidine are tracked by hand; sending codes by SMS needs a provider; and the legal texts need a lawyer's review.
Going live
What it takes to move from the demo to your own store. The platform refuses to start when something essential is missing, rather than running half-configured.
- A domain name pointed at Vercel hosting.
- A MongoDB Atlas database, with backups.
- Email sending through Resend, from a verified address on your domain.
- Image storage (Vercel Blob or Supabase).
- Online payment: Chargily keys in
livemode, if you accept cards. - A carrier: Yalidine credentials, and the wilaya your warehouse ships from.
- Push notifications: notification keys, generated once.
- Content: your catalogue, your pages, your reviewed legal texts, your delivery rates.
- The first owner account, created during installation.