The short answer
You need an ERP that tracks stock in every warehouse, prices each customer consistently, puts freight, duty and brokerage into item cost, and applies each province's sales tax. Entry-level accounting manages tax and struggles with the rest. Prometheus, our ERP built on ERPNext, has a distribution and retail edition covering all four, with CAD and USD in one ledger. Success depends on pricing and costing rules set up the way you trade.
Inventory you can trust
If the system says 40 units and the shelf has 12, every other number is wrong.
Every location
Warehouses, consignment stock and goods in transit; transfers recorded as they happen.
Batches and serials
ERPNext tracks batches with expiry dates for food, health, chemical and other dated goods.
Reorder levels
Per warehouse, with purchase requests raised automatically below the minimum.
Units of measure
Conversions that work: buy by the case, sell by the unit.
Cycle counts
Not one painful annual count; adjustments recorded and explained.
Barcode scanning
At receiving, picking and packing, where volumes justify it.
Pricing that stays consistent
List, contract, volume, promotional, CAD and USD prices: kept in memory or a spreadsheet, they leak margin. ERPNext pricing rules cover most distribution pricing without custom code, by:
- Item, item group or brand
- Customer, group or territory
- Quantity or value range
- Date
- Currency or price list
Quarterly rebates or prices tied to supplier cost changes we build as customizations.
Landed cost: where margin hides
The supplier's invoice is not your cost. Freight, insurance, duty, brokerage and currency conversion belong in it; posted as general expenses, they make some products look more profitable than they are and others less.
ERPNext's landed cost voucher adds these charges to item valuation on a purchase receipt. Decide how each is allocated (value, quantity, weight or volume) and who enters the broker's invoice. Duties and taxes are managed in the CBSA's CARM Client Portal; keep the broker's reference on the landed cost record for a clear trail.
Worked example: one container, two products
A distributor receives 1,000 kettles at USD 12.00 and 500 toasters at USD 20.00, a supplier total of USD 22,000, converted at the rate on the receipt date. Freight and insurance of $3,200, duty of $1,450 (on the kettles only) and brokerage of $300 arrive later on separate invoices.
- Freight, insurance and brokerage are allocated by value across both products.
- Duty is allocated to the kettles only.
- The item valuations update, and the next sales margin report shows the true landed cost of each product.
Canadian sales tax and currency
Tax follows the delivery address: GST, HST, QST or GST plus PST. The CRA's GST/HST pages cover the federal side; PST and QST have their own rules. Prometheus tax templates and rules apply taxes by customer and shipping address. We configure what your accountant specifies; this is not tax advice. Buying in USD and selling in CAD needs multi-currency accounting that records exchange gains and losses, not absorbs them.
Rather talk it through? Send us a recent import with its freight, duty and brokerage invoices, and we will show you the landed cost and margin Prometheus would calculate. Talk to a Promatics specialist
Connecting the rest of the business
- Online store or B2B portal
- Shipping carriers: rates and labels
- EDI with large retailers, via an EDI provider
- Warehouse management system
- Bank feeds for reconciliation
Scope each connection at the start: it shapes how items, customers and prices are structured. See connecting your online store to your ERP.
What usually goes wrong
| Mistake | Fix |
|---|---|
| Landed costs posted as expenses (margin disappears) | Landed cost vouchers |
| Copied price lists nobody updates | Pricing rules and customer groups |
| Opening stock loaded without a count | Count before go-live |
| A separate item per size and colour | A variant structure |
| Store or EDI connected after go-live | Scope integrations first; late ones force item code and pricing changes |
- Every warehouse, consignment location and in-transit stock is listed.
- We know which items need batch, expiry or serial tracking.
- Customer pricing rules are written down, including volume breaks and promotions.
- We have agreed how freight, duty and brokerage will be allocated.
- Sales tax by province has been confirmed with our accountant.
- Currencies and exchange-rate handling are agreed.
- Integrations (store, shipping, EDI, bank) are listed and prioritized.
- A full stock count is planned before go-live.
When to bring in help
One warehouse, simple prices, no imports? Accounting software with an inventory add-on often works. Bring in an ERP partner when you import, run several warehouses, use contract pricing or connect a store or EDI: set-up decisions there quietly decide margin, and one team should own configuration, migration, integration and support.
Sources and further reading
Product capabilities and guidance change. These are the primary sources this article relies on, checked on the review date above.
- Landed Cost Voucher, ERPNext documentation (Frappe)
- Pricing Rule, ERPNext documentation (Frappe)
- Batch, ERPNext documentation (Frappe)
- CARM: Assess and pay duties and taxes on imported commercial goods, Canada Border Services Agency
- GST/HST for businesses, Canada Revenue Agency
This article is general information, not legal, accounting or security advice for your specific situation. Examples are hypothetical unless stated otherwise.