Services
A B2B wholesale online store is a closed ordering portal that your business customers, grocery stores and distributors access with an approved account, where each customer sees their agreed prices, orders by the carton rather than the piece, pays upfront or on credit within a credit limit, and receives a tax invoice carrying their VAT number. The difference from a retail store is not the design but the selling rules. If you are a distributor, manufacturer or wholesaler in Saudi Arabia and your orders still arrive by phone, WhatsApp messages and photos of lists, you will find here what you need to move wholesale selling online: the eight core functions, credit terms and limits, e-invoicing, when Salla or Zid is enough and when you need a custom solution, approximate costs in SAR, and a 90-day plan to move your existing customers onto the portal.

Looking for a website to buy wholesale from? Ready-made wholesale marketplaces such as Sary and Salla's "Wholesale Market" connect suppliers with retailers, and they are your destination as a buyer. But if you are a supplier or manufacturer who wants your own ordering portal for your customers, this guide is for you.
A retail store is designed for an anonymous customer who visits once, buys one or two items and pays immediately by card. A wholesale store is designed for a known customer who buys every week, orders large quantities, negotiates on price and needs an invoice whose VAT they can deduct in their return. That is why copying retail store logic onto wholesale is the most common mistake we see: a beautiful store that shows one price to everyone, accepts an order for a single piece, and knows nothing about credit.
| Item | B2C retail store | B2B wholesale online store |
|---|---|---|
| Who sees prices | Every visitor | Usually the approved customer after logging in |
| Price | One price and general offers | Prices by customer or category, and volume discounts |
| Unit of sale | The piece | The carton or pallet, with a minimum order |
| Payment | Immediate: mada, Apple Pay, cards, installments for individuals | Bank transfer, cash on delivery, or 30–60 day credit within a credit limit |
| Invoice | Simplified tax invoice | (Standard) tax invoice in the business's name with its VAT number |
| Who orders | One person | Several of the customer's employees with different permissions |
| Buying behavior | Browsing and discovery | Quickly reordering the same list |
| Digital | Ads and seasonal offers | A sales rep relationship, annual agreements and payment terms |
In any wholesale online store, the customer, not the product, is at the center of the system. Every rule (price, minimum order, payment method and permitted products) is tied to the customer's account. That is where the specification starts.
This list is what we ask every client to review before requesting a quote. Not every distributor needs all eight functions from day one, but it is important to know which of them are essential for you and which can wait.
The customer submits an account request and uploads their Commercial Registration and VAT registration certificate, then your team reviews and approves it and assigns a price category. Before approval they see no prices, or only indicative prices. This step protects your prices from competitors and ensures the tax invoice details are correct from the start.
A large supermarket does not pay the same price as a small grocery, and a sub-distributor in Qassim has a different price from a direct customer in Riyadh. In the store, this translates into price lists: one list per category (distributor, wholesale, semi-wholesale) and sometimes a special list for a single large customer. What matters is that the lists are managed from one place, and that each customer sees only their own price after logging in.
An example for a building materials supplier: a bag of cement at one price up to 49 bags, a lower price from 50 to 199, and a third price from 200 upwards. The tier table should appear on the product page itself, and the cart should recalculate the price automatically when the quantity changes, so the customer does not have to call and ask "How much if I take more?".
There are two kinds of minimum: a minimum value for the whole order (for example SAR 1,500 to qualify for free delivery on your truck), and a minimum per item with its multiples (sold by the carton of 12 pieces, so an order for 15 is not accepted). Most retail platforms only handle multiples through add-ons, so test this point yourself in any technical demo you are given.
In contracting projects and large orders, the customer does not press "Pay now"; they send the cart as a quotation request. The sales rep reviews it, adjusts the price or quantity, then sends it back to the customer as a formal quotation they accept with one click, turning it into an order. This cycle is what makes the portal useful to the sales rep instead of feeling like a replacement for them.
This is the hardest and most important function, which is why we dedicate the next section to it in detail.
Your customer is a chain with 6 branches: each branch manager orders for their branch, the purchasing manager approves orders above a certain amount, and the accountant sees only invoices and the account statement. This requires a main account for the business, with user accounts under it that have permissions and multiple delivery addresses. And add a purchase order (PO) number field to every order, because corporate purchasing departments will not approve an invoice without one.
A wholesale customer knows what they want. They need a quick order form (item code, then quantity), a "Repeat last month's order" button, saved lists, and the ability to upload the order as an Excel file. These small functions are what make customers leave WhatsApp and use the portal, simply because it is faster.
In the Saudi market, a large part of wholesale trade runs on credit, and any B2B platform that ignores this will only be used for small cash orders. But opening credit online without controls is more dangerous than managing it manually, because orders arrive faster and without anyone checking the account statement. These are the rules we recommend:
An important technical note for those working on Odoo: Odoo's standard credit limit feature (Sales Credit Limit in the accounting settings) shows a warning on the sales order when the limit is exceeded, but by default it does not prevent confirming it. If you want strict blocking for orders coming from the portal, that is a rule added through customization, and it must be written explicitly into the scope of work.
And what about "buy now, pay later"? Services such as Tabby and Tamara are designed mainly for individuals' installment purchases, and we explained their numbers in our article Tabby and Tamara for stores: the real commission and its effect on your sales. Financing business purchases, on the other hand, is offered by separate financing providers. If you want to bring in a third party to fund credit on your behalf, first check that it is licensed by the Saudi Central Bank (SAMA); you will find the official lists on SAMA's licensed entities page. And read carefully who bears the default risk, and how much is deducted from your invoice.
This is where a wholesale store differs fundamentally from a retail store. ZATCA's e-invoicing requirements distinguish between two types of invoice:
What does this mean for your store? Three practical things:
And because businesses join Phase Two in waves based on their revenue, check the date of your wave on ZATCA's e-invoicing page, and you will find a full explanation of both phases in our ZATCA e-invoicing guide. The golden rule: only one system issues the invoice. If you have Odoo, it is usually the best place to issue B2B invoices, and the store only sends it the order.
A Commercial Registration covering wholesale and e-commerce activities, verification of the online store under the E-Commerce Law, and VAT registration with e-invoicing compliant with Phase Two. And if you offer financing through a third party, check its license with the Saudi Central Bank, as we explain in the credit section.

Are your wholesale orders still arriving on WhatsApp?
We review how you currently sell to distributors and identify the functions you actually need in a wholesale store, with a clear cost in SAR before any commitment.
This is the question most people considering a wholesale online store ask, and the honest answer is: it depends on the number of rules, not the number of products. Ready-made platforms are excellent if your rules are simple. According to Salla's help center at the time of writing, Salla offers customer groups, and customized payment methods, shipping, offers and coupons for each group. It also offers the "Wholesale Market" platform that connects suppliers with retailers within its ecosystem. Deeper functions, however, such as a price list per customer, carton multiples, requests for quotation and credit with credit limits, usually need apps from the app store or additional development. The situation is similar on Zid. And since features change constantly, ask any provider for a live, hands-on demo of the eight functions on your own data, not a slide presentation. Outside the local platforms, in 2026 Shopify made most of its business-to-business features available on all its plans, such as company accounts, net payment terms and volume discounts, with a limit of 3 price catalogs on regular plans, while per-company pricing with a dedicated, unlimited catalog remains part of Shopify Plus. You will find a comparison of the platforms from a retail angle in Salla, Zid or WooCommerce.
| Your situation | Usually the best option | why |
|---|---|---|
| Fewer than 50 wholesale customers, 2–3 price categories, prepayment or bank transfer | Salla or Zid with customer groups and a wholesale app | Fastest launch and lowest cost, with simple rules |
| You sell wholesale and retail with the same products | A ready-made retail store + a separate wholesale portal, or one platform that supports both modes | Separating the two experiences keeps wholesale prices from showing to individuals |
| Hundreds of customers, credit and credit limits, field sales reps | Odoo (website + sales + inventory + accounting) or a custom portal connected to your system | The rules live in the accounting system, not in the store |
| A manufacturer selling to exclusive distributors with territories and annual contracts | A custom portal, or Odoo with customization | Contract prices, quotas, exclusive territories and distributor reports |
| You want to test selling online before building | List your products on an existing wholesale marketplace (such as Sary or Salla's Wholesale Market) on commission | Prove the demand first, then build your own portal |
| You only want a digital catalog instead of PDF files | A catalog website with quotation requests, without online payment | Do not build a full store for a problem a catalog can solve |
A practical rule: if you find yourself writing "except for customer so-and-so" in your specification more than three times, your rules no longer suit a ready-made platform, and you will pay more for piled-up apps and workarounds than you would for a suitable solution from the start.
The following figures are approximate as of 2026 and exclude 15% VAT. They vary with the number of customers and rules, the quality of your item data and the number of integrations required. According to their published pages at the time of writing, subscriptions to ready-made platforms start at about SAR 99 per month for basic plans and about SAR 299 for advanced plans on Salla and Zid, with wholesale apps added on top.
| Option | Build and setup cost | Recurring cost | Time to launch | Suitable for |
|---|---|---|---|---|
| Salla or Zid + customer groups + wholesale apps | SAR 5,000 – 20,000 (setup, item import and design) | About SAR 300 – 1,500 per month (subscription + apps) | 2 – 6 weeks | A small distributor with simple rules |
| WooCommerce + B2B plugins | SAR 25,000 – 70,000 | SAR 500 – 2,500 per month (hosting, maintenance and plugin licenses) | 6 – 10 weeks | Moderate rules and design flexibility |
| Odoo: website and wholesale portal + sales + inventory + accounting | SAR 60,000 – 180,000 for implementation and Saudi localization | Licenses of about SAR 51 – 120 per internal user per month (Standard or Custom) + hosting and support | 3 – 5 months | Credit, warehouses and B2B invoicing from one system |
| Custom B2B portal + a mobile app for customers or sales reps | SAR 150,000 – 400,000 and above | A maintenance contract usually worth 15% – 20% of the build value per year | 5 – 9 months | A manufacturer or large distributor with complex contractual rules |
Three items many proposals leave out, which then show up later as a surprise:
And if you want to estimate a retail store running alongside the wholesale store, the full breakdown is in the cost of creating an online store in Saudi Arabia.
In an online wholesale store, the real problem is usually that the numbers are spread across three places: the store knows the order, the warehouse knows the quantity, and the accountant knows the outstanding balance. A B2B store only delivers its value if these three agree in real time. In Odoo, this data lives in a single database:
And if your current store is on Salla or Zid and you want to keep it for retail while managing wholesale from Odoo, the three integration options, their cost and who issues the invoice are covered in our article on integrating Salla and Zid with Odoo. The key is to decide early: where does the customer's price live? If it lives in Odoo, the store displays and does not decide; if it lives in the store, you will need reverse syncing that will cause you problems later. We handle this setup, from price lists to the store integration, as part of our Odoo ERP development and implementation service. And if you are a manufacturer running production itself in Odoo, see Odoo for factories and production costing to see how the actual product cost reaches the distributor price list.
The biggest risk in a wholesale online store project is not technical; it is launching the portal and having customers keep ordering on WhatsApp because they are used to it. Here is a practical plan that can be applied to a food distributor in Riyadh serving groceries and catering suppliers, a spare parts supplier in Dammam serving workshops, or a building materials supplier in Jeddah serving contractors:
This is where your implementation partner comes in: at Bateel, we start distributor store projects with a specification session in which we turn your current way of selling into written rules (categories, limits, credit and invoicing) before writing a single line of code. That is because most of the cost of later changes comes from a rule that was not written down at the start.
A B2B wholesale store is an online sales platform aimed at businesses rather than individuals. The customer logs in with an approved account to see their own prices, orders in quantities and by the carton with a minimum order, pays upfront or on credit within a credit limit, and receives a tax invoice in their business's name with its VAT number. It serves distributors, manufacturers and wholesalers who sell to groceries, companies and contractors.
Yes, for simple cases. Salla offers customer groups and customized payment methods, shipping and offers for each group, which is enough for a small distributor with a few price categories and prepayment. Price lists per customer, carton multiples, credit with credit limits and requests for quotation, however, usually need additional apps, a custom solution or integration with a system such as Odoo.
Approximately, as of 2026 and before 15% VAT: SAR 5,000 to 20,000 to set up a ready-made store on Salla or Zid with wholesale apps, SAR 25,000 to 70,000 on WooCommerce, and SAR 60,000 to 180,000 for a fully integrated Odoo solution. A custom portal starts at about SAR 150,000. The cost is driven more by the number of rules and integrations than by the number of products.
Yes. When selling to a VAT-registered business, you issue a (standard) tax invoice that includes the buyer's details and VAT number, so they can deduct input VAT. In Phase Two of e-invoicing, this invoice is sent for clearance by the FATOORA platform before it is delivered. So collect and verify the customer's tax details when opening their account.
Set a credit limit in SAR and a payment term for each customer, and have the store check the available balance and overdue invoices with every order. An order that exceeds the limit moves to "Awaiting finance approval". Start new customers on prepayment, then open credit for them after regular orders, with an account statement they can see and pay from directly.
What makes a wholesale online store succeed is the accuracy of its rules before the beauty of its interface: each customer sees their price, orders in their unit, has their credit controlled, and gets a correct invoice from a single system. Start by writing down these rules, then choose the platform that carries them with the least complexity: a ready-made store if they are simple, and Odoo or a custom portal if prices and credit are the heart of your business.
The Bateel Tech Solutions team in Riyadh, with experience spanning more than 120 projects and 50 clients, works in e-commerce store design service and website and custom portal development and Odoo implementation. We review your current way of selling with you and suggest the best option for your size, with a clear cost in SAR. Contact us on WhatsApp or through the Contact Us Page and book your free consultation.