Skip to main content

Sales Module Overview

The Sales module is Shaari's core revenue management toolkit. It covers everything from the first conversation with a customer to the final payment and ZATCA-compliant tax reporting. Instead of juggling spreadsheets, PDFs, and manual government portal submissions, you manage the entire sales lifecycle inside one connected system.

What the Sales Module Includes

Invoices

Create professional sales invoices with line items, discounts, and automatic VAT calculations. Shaari supports four document types:

  • Standard Invoice -- the regular tax invoice for goods or services sold.
  • Credit Note -- issued when you need to refund, correct, or reduce a previous invoice.
  • Debit Note -- issued when you need to add charges to a previous invoice.
  • Payment Invoice -- used for installment-based billing, where a single sale is split across multiple invoices.

Every invoice follows a controlled status workflow: Draft, Pending Approval, Approved, Cleared or Reported (via ZATCA), and Cancelled.

Quotations

Draft and send price quotations to prospective customers. When the customer accepts, convert the quotation directly into a sales invoice or a sales contract with a single click. All line items, pricing, and customer details carry over automatically.

Sales Contracts

Formalize agreements with your customers. Contracts support digital signatures -- the client can sign electronically, the seller adds their signature, and the company stamp is applied from your uploaded stamp image. Signed contracts can then be converted into invoices for billing.

Customer Management

Maintain a complete customer database with contact details, VAT registration numbers, commercial registration numbers, and Saudi national addresses. Customer records link to their full purchase history, making it easy to review past transactions.

Product Catalog

Build a catalog of your products and services with SKU codes, barcodes, descriptions, pricing, and inventory levels. When creating an invoice or quotation, select items from the catalog to auto-fill line item details.

Sales Analytics

Track revenue trends, analyze customer spending patterns, measure product performance, and monitor payment statuses. Compare periods month-over-month or year-over-year to understand how your business is growing.

Plan Availability

info

The Sales module is available on Plus and Enterprise plans. Basic plan users can upgrade from Settings > Subscription to unlock sales features.

Key Workflows

The Sales module is designed around three primary workflows that connect its components:

Quote to Invoice

  1. Create a quotation with line items and pricing.
  2. Send it to the customer for review.
  3. When confirmed, convert the quotation to a sales invoice.
  4. Submit the invoice for approval and ZATCA clearance or reporting.

Quote to Contract to Invoice

  1. Create a quotation and get customer confirmation.
  2. Convert the quotation to a sales contract.
  3. Collect digital signatures from all parties.
  4. Convert the signed contract into one or more invoices.

Direct Invoice

  1. Create a sales invoice from scratch.
  2. Add customer, line items, and tax details.
  3. Submit for approval and ZATCA processing.

ZATCA Phase 2 Integration

Shaari integrates directly with Saudi Arabia's ZATCA (Zakat, Tax and Customs Authority) Phase 2 e-invoicing system. Once enabled for your tenant, every approved invoice is automatically submitted to ZATCA:

  • B2B transactions go through the clearance process, where ZATCA validates and stamps the invoice before it reaches the buyer.
  • B2C transactions go through the reporting process, where the invoice is reported to ZATCA within 24 hours of issuance.

Each invoice receives a compliant QR code in the 9-tag TLV format, containing seller details, VAT number, invoice totals, and a cryptographic hash for tamper detection.

tip

If you are new to the Sales module, start by adding a few customers and products to your catalog. This makes creating your first invoice much faster since you can select from existing records instead of typing everything from scratch.