A warehouse or third-party storage company in Saudi Arabia does not sell goods, it sells space and movement. Every pallet position rents at a daily or monthly rate, every inbound and outbound transaction carries a handling fee, and every customer signs a service-level agreement with specific obligations on accuracy, cycle time, and damage tolerance. A bonded warehouse holds inventory under customs suspension, and the cost of one miscounted location ripples through the customer invoice, the customs declaration, and the monthly P&L. ZATCA e-invoicing applies on every storage-period invoice and every handling-fee charge, and the difference between a profitable warehouse and one that bleeds is accounting discipline on occupancy, handling productivity, and SLA compliance.
What makes warehouse accounting different
A warehouse is not a retail business and not a typical service firm either. Its revenue is a mix of recurring storage rent (per pallet, per cubic meter, per square meter, per day or per month) and transactional handling fees (inbound receipt, outbound pick, value-added services). Its cost base is rent, electricity, labor, forklift maintenance, and racking depreciation, none of which scale linearly with revenue. Generic accounting tools cannot bill a pallet-day or track an SLA penalty.
Warehouse accounting revolves around five connected pieces: a billing engine that prorates storage by pallet-day across multiple rate cards, handling-fee capture on every inbound and outbound move, customer SLA tracking with credit notes on misses, bonded-inventory ledgers separated from free-circulation stock, and ZATCA tax invoice issuance on every monthly billing cycle. Each of these connects directly to a journal entry.
Daily reality is hundreds of moves per warehouse: pallet receipts, putaways, replenishments, picks, loads, returns, value-added jobs, and customer-requested cycle counts. Each move must post a handling-fee line and update the pallet-day clock for storage billing. Missing a single inbound posting silently compresses next month’s invoice and the customer never asks for the missing line.
The most common accounting challenges in warehouses
Every warehouse and third-party logistics provider in Saudi Arabia hits the same four recurring problems. They share one root cause: storage billing runs on spreadsheets, handling fees are captured manually, and bonded inventory lives in a customs system disconnected from accounting.
1. Pallet-day storage under-billed. A customer brings in 240 pallets on the 7th and ships 180 on the 22nd. Without an automated pallet-day clock per location, the monthly invoice rounds to whole months and the warehouse loses two to four working days of revenue per customer per month.
2. Handling fees missed at the dock. Every inbound receipt and outbound pick should post its handling-fee line automatically. When operators forget to log fees at the dock, 4% to 9% of monthly revenue silently disappears and reappears six months later as a customer dispute that cannot be reconciled.
3. Bonded inventory mixed with free stock. A bonded warehouse holds inventory under customs suspension with duty and VAT deferred until release. Without a separate bonded ledger, a release to free circulation triggers a customs declaration that does not reconcile to accounting, and the next ZATCA audit finds a six-figure exposure.
4. SLA penalties not tracked. A customer SLA promises 99.5% inventory accuracy and 24-hour outbound cycle time, with credit-note penalties on misses. Without an integrated SLA tracker, misses are absorbed without invoicing adjustments, the operations team never sees the cost of poor service, and next year’s contract renewal stalls on the same complaint.
What a warehouse actually needs from its accounting software
A generic accounting tool was built for selling goods, not for renting pallet positions and selling moves. The difference is concrete:
| Task | Generic accounting tool | What a warehouse needs |
|---|---|---|
| Storage billing | Flat monthly invoice | Per pallet-day, prorated |
| Handling fees | Manual line on AR | Auto-posted on every move |
| Customer SLA | Not tracked | Accuracy + cycle-time KPIs with credits |
| Bonded inventory | Single stock ledger | Bonded vs free-circulation separation |
| Rate cards | One price list | Per-customer, per-zone, per-service |
| VAT | Flat 15% | Per-line, including bonded suspension |
Beyond the table, a warehouse specifically needs three capabilities that generic platforms do not deliver:
- Pallet-day billing engine, where every inbound receipt starts the clock for a pallet position and every outbound stops it, with month-end billing prorated to the exact day at the customer’s contracted rate card.
- Auto-posted handling fees on every move, with the inbound, outbound, replenishment, and value-added job tariffs tied to the warehouse management transaction so no fee ever leaves the dock without a matching invoice line.
- Bonded ledger with ZATCA e-invoicing, keeping customs-suspended stock in a separate account, posting a customs-cleared release to free circulation with the right duty and VAT treatment, and issuing ZATCA-certified tax invoices on every storage and handling billing cycle.
How to organize a warehouse’s books step by step
Moving a warehouse to integrated accounting takes around four to six weeks depending on customer count and bonded scope. This is the sequence Qoyod applies with every new warehouse customer:
E-invoicing and ZATCA compliance for warehouses
Phase two of ZATCA e-invoicing requires every storage and handling invoice to be issued through a certified system connected to the Fatoora platform. Warehouses in Saudi Arabia issue mostly B2B tax invoices to corporate customers through the Clearance flow, with occasional simplified tax invoices on small ad-hoc storage. For a side-by-side view of vendor costs, read the guide on e-invoicing pricing in Saudi Arabia.
Every invoice must include the warehouse company name and tax number, a sequential invoice number, the date and time, the customer name and tax number, an itemized list of storage periods and handling moves with the pallet count and rate, VAT at 15% on standard-rated lines (with bonded suspension flagged separately), totals before and after VAT, and a QR code. A certified system generates the QR code, signs the invoice in XML, and transmits it to the Fatoora platform automatically inside the Clearance window.
How to evaluate a ZATCA-certified system for a warehouse
When evaluating any e-invoicing vendor for a warehouse, verify these six criteria:
- Official ZATCA phase-two certification with a verifiable approval number on the Authority’s portal.
- Clearance flow on B2B customer invoices plus Reporting flow on B2C simplified invoices.
- Per-line VAT treatment with bonded-suspension stock flagged separately.
- Customs-declaration field on bonded-release invoice lines.
- Long-term cloud storage of signed invoices for at least six years.
- Monthly input-VAT and output-VAT reports ready in time for the quarterly filing deadline.
Where Qoyod fits in specifically for warehouses
Qoyod brings together, inside one account: cloud accounting with customer and zone dimensions, pallet-day billing engine, auto-posted handling fees, rate-card versioning per customer, customer SLA tracking with credit-note proposals, bonded-inventory ledgers separated from free-circulation stock, ZATCA-approved e-invoicing, payroll, and consolidated reports. Every inbound, outbound, value-added job, storage accrual, and bonded release lands an automatic journal entry inside the same ledger.
The platform handles multi-warehouse networks under one account, with shared master data (customers, rate cards, item master, COA), role-based permissions per location, and either consolidated or per-warehouse reports. It runs entirely in the cloud, so owners, warehouse managers, and the external auditor share the same numbers from any device.
For warehouses opening new sites or migrating from a legacy warehouse-management system, the setup service and the bookkeeping service are available as part of Qoyod Pro Services, alongside the app marketplace for connecting to warehouse-management-system partners.
Frequently asked questions
Does Qoyod support per pallet-day storage billing?+
How does Qoyod handle handling fees?+
Can Qoyod track customer SLAs?+
Does Qoyod separate bonded inventory from free-circulation stock?+
Does Qoyod work for multi-warehouse networks?+
Is technical support available 24/7?+
Running a warehouse does not need a generic accounting tool, it needs an operating ledger that ties pallet-day billing, handling fees, customer SLAs, bonded inventory, and ZATCA e-invoicing together inside one account. The warehouses that consistently grow are the ones that see pallet-day utilization and SLA performance every week. That capability is what makes Qoyod the right fit for warehouses in Saudi Arabia.