The Sales module is the heart of your revenue operations, enabling you to manage the entire sales cycle from initial quotation to final invoice. Whether you're selling products or services, the Sales module streamlines your workflow and helps you close deals faster.
Business Value:
- Reduce quotation creation time by 70% with templates
- Track sales pipeline in real-time
- Automate invoice generation from orders
- Manage complex pricing with pricelists
- Integrate seamlessly with Inventory and Accounting

Before using the Sales module effectively, ensure you have:
- ✅ Configured company settings (name, address, logo)
- ✅ Set up chart of accounts (for invoicing integration)
- ✅ Created product catalog with pricing
- ✅ Defined sales teams and assigned salespeople
- ✅ Configured tax rates for your region
Navigate to Sales → Configuration → Settings
Essential Settings to Enable:
- ✅ Units of Measure - Sell products in different units (kg, liters, boxes)
- ✅ Product Variants - Manage products with attributes (size, color)
- ✅ Pricelists - Set different prices for customer segments
- ✅ Discounts - Apply discounts on orders
- ✅ Sales Teams - Organize salespeople into teams
- ✅ Quotation Templates - Speed up quote creation

Path: Sales → Configuration → Sales Teams
Sales teams help you organize your sales force and track performance by group.
Steps:
- Click Create
- Enter team name (e.g., "Direct Sales", "Online Sales")
- Assign team leader
- Add team members
- Set monthly revenue target
- Define team email alias (optional)
This allows you to:
- Track team performance separately
- Set team-specific targets
- Route leads automatically
- Generate team-based reports
Path: Sales → Products → Products
Before creating quotations, set up your products:
- Click Create
- Enter product name and description
- Set sales price
- Configure:
- Product Type: Storable (physical) or Service
- Invoice Policy: Ordered quantities or Delivered quantities
- Sales Description: What customers see on quotations
- Add product image
- Save

¶ Workflow 1: Create and Send Quotation
Business Scenario: A customer requests a quote for 50 office chairs and 10 desks.
Steps:
- Navigate to Sales → Orders → Quotations
- Click Create
- Select customer (or create new)
- Order Date auto-fills to today

- In the Order Lines tab, click Add a product
- Search and select "Office Chair"
- Set quantity to 50
- Unit price auto-fills from product
- Repeat for "Office Desk" (qty: 10)
- Apply discount if applicable (e.g., 5% for bulk)

¶ Step 3: Set Terms and Validity
- Expiration Date: Set validity period (e.g., 30 days)
- Payment Terms: Select "Net 30" or custom terms
- Delivery Date: Expected delivery timeline
- Notes: Add special instructions or terms
- Click Send by Email
- System opens email composer with:
- Professional quotation template
- PDF quotation attached
- Customer portal link
- Customize email message if needed
- Click Send
Result: Customer receives professional PDF quotation with portal access to accept online.
Next Steps:
- Follow up with customer (schedule activity)
- Track quotation status: Sent → Viewed (if portal enabled)
- Wait for customer acceptance or send reminder
Business Scenario: Customer accepts the quotation for office furniture.
Option A: Customer Accepts via Portal
If you enabled customer portal:
- Customer clicks link in email
- Reviews quotation online
- Clicks "Accept & Pay" or "Accept"
- Quotation automatically converts to Sales Order
- You receive notification
Option B: Manual Confirmation
- Open the quotation
- Click Confirm
- Status changes to "Sales Order"
- Order number is assigned (e.g., S00042)

What Happens Next:
Kanban View of Orders:
You can track order status visually:

Calendar View for Delivery Planning:

Business Scenario: Customer received the office furniture, time to invoice.
Best for: Services, digital products, or prepayment scenarios
Steps:
- Open sales order
- Click Create Invoice
- Select Regular Invoice
- Click Create
- Invoice opens - review and click Confirm
- Click Send & Print to email invoice to customer
Use case: Service contracts, software licenses, consulting
Best for: Physical products shipped from warehouse
Steps:
- Wait for warehouse to complete delivery
- Delivery order status shows "Done"
- Return to sales order
- Click Create Invoice
- System automatically invoices delivered quantities
- Confirm and send invoice
Use case: E-commerce, wholesale, manufacturing
If customer receives partial delivery:
- Delivery team validates partial delivery (30 chairs instead of 50)
- Create invoice from sales order
- System invoices only 30 chairs (delivered quantity)
- Remaining 20 chairs invoiced when delivered
Business Scenario: You frequently quote similar product bundles and want to speed up the process.
Creating a Template:
- Navigate to Sales → Configuration → Quotation Templates
- Click Create
- Enter template name (e.g., "Office Starter Package")
- Add products to template:
- 1 x Office Desk
- 1 x Office Chair
- 1 x Desk Lamp
- 1 x Monitor Stand
- Set default validity days (30)
- Add terms and conditions
- Save
Using a Template:
- Create new quotation
- Click Use Template button
- Select "Office Starter Package"
- All products auto-populate
- Adjust quantities as needed
- Send to customer
Time Saved: 5 minutes per quotation → 20+ hours per month for active sales teams
¶ Down Payments and Advance Invoicing
Business Scenario: Customer places $10,000 order. You require 30% upfront before manufacturing.
Setup:
- Navigate to Sales → Configuration → Settings
- Enable Down Payments
- Configure down payment product (auto-created)
Process:
- Create order for $10,000
- Confirm order
- Click Create Invoice → Down Payment
- Select Percentage
- Enter 30%
- Click Create & View Invoice
- Invoice for $3,000 created
- Send to customer
- Customer pays $3,000
- Click Register Payment on invoice
- Enter payment details
- Payment recorded
- Complete manufacturing/delivery
- Click Create Invoice → Regular Invoice
- System creates invoice for remaining $7,000
- Down payment automatically deducted
- Send final invoice
Result: Cash flow improved, production risk reduced.
¶ Pricelists and Dynamic Pricing
Business Scenario: You want different prices for wholesale vs retail customers, with volume discounts.
- Navigate to Sales → Configuration → Pricelists
- Click Create
Example 1: Wholesale Pricelist
- Name: "Wholesale Prices"
- Rule: All products → 20% discount
Example 2: Volume Discount Pricelist
- Name: "Volume Discount"
- Rule 1: Qty 10-49 → 5% discount
- Rule 2: Qty 50-99 → 10% discount
- Rule 3: Qty 100+ → 15% discount
Example 3: Customer Segment Pricelist
- Name: "VIP Customers"
- Rule: Specific products → Custom prices
- Product A: $95 (instead of $100)
- Product B: $180 (instead of $200)
Option A: Customer-Level
- Open customer record
- Sales & Purchase tab
- Set Pricelist to "Wholesale Prices"
- All quotations for this customer use this pricelist
Option B: Per Quotation
- Create quotation
- Click Pricelist dropdown
- Select pricelist
- Prices update automatically

Configuration:
- Sales → Configuration → Settings
- Enable Online Payment
- Configure payment providers (Stripe, PayPal)
- Enable Auto-confirm orders when paid online
Result: Customer pays online → Order confirms automatically → Delivery created → No manual intervention
Scenario 1: Thank You Email After Order
- Navigate to Settings → Technical → Automation → Automated Actions
- Click Create
- Trigger: Record is created or updated
- Model: Sales Order
- Trigger Condition: Status = Sale Order
- Action: Send Email
- Select email template: "Order Confirmation"
Scenario 2: Payment Reminder
Create automation to send reminder 7 days before invoice due date.
Workflow: Sales order automatically creates delivery order
How It Works:
- Create sales order with storable products (e.g., laptops)
- Confirm order
- System checks product configuration:
- Product Type = Storable Product ✅
- Route = Deliver from stock ✅
- Delivery Order created automatically in Inventory module
- Smart button appears on sales order: "Delivery"
- Warehouse team:
- Opens delivery order
- Picks products from shelves
- Validates delivery
- Sales order updates to "Done"
Configuration Required:
- Products must have Product Type = "Storable Product"
- Warehouse routes configured
- Stock available (or system creates backorder)
See: Inventory Module Documentation
Workflow: Invoice from sales order creates journal entries
How It Works:
- Create invoice from sales order
- Confirm invoice
- Journal Entry automatically created:
- Debit: Accounts Receivable (e.g., $1,000)
- Credit: Revenue Account (e.g., $1,000)
- Customer pays invoice
- Register payment:
- Debit: Bank Account (e.g., $1,000)
- Credit: Accounts Receivable (e.g., $1,000)
Configuration Required:
- Sales → Configuration → Settings: Enable "Invoicing"
- Products must have Income Account configured
- Customer must have Accounts Receivable account set
See: Accounting Module Documentation
Workflow: Convert lead to quotation
How It Works:
- CRM lead identified: "ABC Corp - interested in office furniture"
- CRM → Lead: Click "New Quotation"
- System creates quotation with:
- Customer = ABC Corp (auto-created if new)
- Salesperson = Lead owner
- Opportunity linked
- Send quotation
- Customer accepts
- Confirm order
- CRM Opportunity automatically updates:
- Status → Won
- Revenue recorded
See: CRM Module Documentation
¶ Standard Reports
Path: Sales → Reporting → Sales
This is your primary dashboard for sales performance.

Views Available:
-
Graph View: Revenue trends over time
- Line chart: Monthly revenue
- Bar chart: Revenue by product category
-
Pivot View: Multi-dimensional analysis

Filters:
- Date range (This Month, Last Quarter, This Year)
- Sales team
- Salesperson
- Product category
- Customer
- Order status (Quotation, Sales Order, Done)
Measures:
- Untaxed Amount
- Total Amount
- Quantity
- Number of Orders
- Average Order Value
Path: Sales → Reporting → Salesperson
Compare your sales team performance:

Metrics:
- Total revenue per salesperson
- Number of orders closed
- Average order value
- Conversion rate (if using CRM)
- Target vs actual performance
Use Cases:
- Monthly sales commissions
- Team performance reviews
- Identify top performers
- Sales coaching opportunities
Path: Sales → Reporting → Products
Analyze which products generate most revenue:
Insights:
- Best-selling products
- Slow-moving items
- Seasonal trends
- Profitability by product (with cost integration)
Actions:
- Adjust inventory levels
- Update pricing strategy
- Plan promotions
- Discontinue underperforming products
Scenario: Analyze revenue by product category and customer segment by month
- Navigate to Sales → Reporting → Sales
- Click Pivot view
- Drag fields:
- Rows: Product Category, Product
- Columns: Order Month
- Measures: Untaxed Amount, Quantity
- Click Total button to add subtotals
- Click Favorites → Save current search
- Name: "Monthly Category Performance"
Result: Reusable custom report accessible from Favorites
Any report can be exported:
- Open report (any view type)
- Click ⋮ (More options)
- Click Export All or Export Selection
- Choose format: Excel (.xlsx)
- Opens in spreadsheet for advanced analysis
Use Templates for Common Scenarios
- Create templates for frequently sold bundles
- Include standard terms and conditions
- Pre-configure payment terms
- Time Saved: 5 minutes per quote
Set Expiry Dates
- Add validity period (typically 30 days)
- Creates urgency for customer decision
- Automatically marks expired quotes
- Benefit: Clean pipeline, accurate forecasting
Track Follow-Up Activities
- Schedule activity: "Follow up on quotation"
- Set reminder for 3 days after sending
- Use activity feed to track communication
- Benefit: Never miss follow-up
Use Product Bundles
- Pre-configure commonly sold together items
- One-click add to quotation
- Upsell related products
- Benefit: Increased average order value
Segment Customers with Pricelists
- Create pricelists: Retail, Wholesale, VIP
- Set customer-level defaults
- Benefit: Automated pricing, no manual discounts
Implement Volume Discounts
- Configure automatic discount tiers
- Example: 10+ items → 5% off, 50+ items → 10% off
- Benefit: Encourage larger orders
Use Time-Based Pricing
- Set pricelist activation dates
- Example: "Summer Sale 2025" (June 1 - Aug 31)
- Benefit: Seasonal promotions automated
Multi-Currency for International Sales
- Configure currencies and exchange rates
- Auto-convert based on customer currency
- Benefit: Professional international quotations
Use Order Tags
- Create tags: Rush, Wholesale, Retail, Custom
- Filter and report by tag
- Benefit: Quick order categorization
Configure Payment Terms
- Standard terms: Net 30, Net 60, Immediate
- Set customer-level defaults
- Benefit: Consistent cash flow management
Set Realistic Delivery Dates
- Use Expected Delivery Date field
- Sync with warehouse capacity
- Benefit: Meet customer expectations
Document Special Requirements
- Use Internal Notes for warehouse instructions
- Use Customer Notes for special requests
- Benefit: Error-free order fulfillment
Symptoms: "Create Invoice" button is grayed out or disabled
Possible Causes:
-
Order not confirmed
- Status still shows "Quotation"
- Solution: Click "Confirm" to convert to sales order
-
Already fully invoiced
- Check "Invoice Status" field
- Shows "Fully Invoiced"
- Solution: This is expected - order is complete
-
Products configured as "Nothing to Invoice"
- Solution:
- Open product
- Sales tab
- Change Invoice Policy to "Ordered quantities" or "Delivered quantities"
-
Delivered quantity is zero
- If invoice policy is "Delivered quantities"
- But nothing shipped yet
- Solution: Complete delivery first, or change invoice policy
Symptoms: Confirmed sales order but no delivery order in Inventory
Possible Causes:
-
Products are Services or Consumables
- Only Storable Products create delivery orders
- Solution:
- Check product Product Type
- Change to "Storable Product" if physical item
-
Inventory module not installed
- Solution: Install Inventory module
-
Warehouse routes not configured
- Solution:
- Navigate to Inventory → Configuration → Warehouses
- Verify routes are active
Symptoms: Expected price not showing on quotation
Possible Causes:
-
Pricelist not set on customer or quotation
- Solution: Check pricelist dropdown on quotation form
-
Pricelist rules don't match
- Date range expired
- Quantity threshold not met
- Product not in pricelist scope
- Solution: Review pricelist rules configuration
-
Pricelist priority conflict
- Multiple pricelists active
- Solution: Check pricelist sequence/priority
Symptoms: Click "Send by Email" but customer doesn't receive
Possible Causes:
-
Email server not configured
- Solution: Settings → Technical → Outgoing Mail Servers
-
Customer has no email address
- Solution: Add email to customer record
-
Email template missing
- Solution: Settings → Technical → Email Templates → Restore defaults
Q: Can I modify a confirmed sales order?
A: Yes, but with caution:
- If no invoice or delivery created: Simply edit and save
- If delivery created: Unlock order (may require manager permission), edit, confirm again
- If invoiced: You cannot modify invoiced lines. Create credit note and new invoice instead.
Best Practice: For major changes, cancel and create new order.
Q: How do I handle returns and refunds?
A:
-
For Delivery Returns:
- Navigate to sales order
- Click Return button
- Creates reverse delivery order
- Warehouse receives products back
-
For Invoice Refunds:
- Open invoice
- Click Credit Note
- Creates negative invoice
- Register refund payment
Q: Can I have different invoicing and delivery addresses?
A: Yes:
- Create quotation/order
- Click Other Info tab
- Invoice Address: Select or create
- Delivery Address: Select or create
- These can be different contacts under same customer
Q: How do I cancel a sales order?
A:
- Open sales order
- Click Cancel button
- Note: This only works if:
- No delivery validated
- No invoice created
- If delivery/invoice exists, you must cancel those first
Q: Can I reserve stock for a quotation before confirmation?
A: No, stock is only reserved when order is confirmed.
Workaround:
- Use Inventory module to create manual reservation
- Or confirm order and keep it "On Hold" status
Q: How do I set up recurring sales orders (subscriptions)?
A: This requires the Subscriptions module (separate from base Sales). Once installed:
- Create subscription product
- Set recurrence period (monthly, annually)
- Create subscription order
- System auto-generates orders/invoices
- CRM - Convert leads to quotations, track opportunities
- Inventory - Fulfill sales orders, manage deliveries
- Accounting - Invoicing, payments, financial reports
- eCommerce - Online store integration, B2C sales
- Point of Sale - Retail POS system
- Projects - Service-based sales, project invoicing
- Purchase - Dropshipping, purchase on sales order
Alt + C - Create new record
Alt + E - Edit current record
Alt + S - Save
Esc - Discard changes
/ - Global search
(Coming soon)
- Creating Your First Quotation (5 min)
- Advanced Pricing with Pricelists (10 min)
- Sales Order to Delivery Workflow (8 min)
- Handling Returns and Refunds (6 min)
Quotation - Preliminary offer sent to customer before confirmation. Not binding.
Sales Order - Confirmed order that triggers delivery and invoicing. Binding commitment.
Pricelist - Set of pricing rules for products/customers (discounts, markups, custom prices).
Down Payment - Partial payment received before order fulfillment (e.g., 30% upfront).
Delivery Order - Warehouse instruction to ship products to customer.
Invoice Policy - Rules determining when to create invoice:
- Ordered quantities: Invoice immediately on order confirmation
- Delivered quantities: Invoice only after delivery validated
Order Line - Individual product line on sales order (product + quantity + price).
Smart Button - Clickable button on form showing related records (e.g., "Delivery" button shows delivery orders).