Concorbit HelpAll guides →

Vendors And Costs

Vendors and cost pricing

concorbit tracks both what you sell products and services for (the selling price) and what they cost you (the cost price), so every invoice line and ticket charge carries a margin you can report on.

Where to set cost prices

On every product record (Billing → Products → edit a product) you'll find:

  • Cost price: what you pay for this item from your supplier, in pence

  • Procurement URL: optional link to the vendor's product page for quick re-ordering

  • Vendor: which supplier stocks this item

These fields are optional. Leaving them blank just means margin calculations skip that product.

Vendors

Manage vendors from Billing → Vendors. A vendor record has:

  • Name (e.g. "Tech Data", "Ingram Micro")

  • Account number

  • Default contact email

  • Notes field for support line, portal URL, etc.

Products link to a vendor so when you're re-ordering you can sort by vendor to batch purchase orders.

Automatic cost propagation

When staff add a charge to a ticket by picking a product from the catalogue, the charge's cost price is automatically copied from the product. If you change the product's cost later, existing charges keep their historical cost, so you're always looking at what the item cost when it was billed.

For time-based charges (pro-services tickets), cost price is calculated as:

rounded_hours × engineer_hourly_cost

The engineer hourly cost comes from the claims setting claims.rates.engineer_hourly_cost by default, with per-user overrides supported (see Staff guide for cost override details).

Margin reporting

Margin appears on:

  • Product list: margin % column, sort-able

  • Invoice lines: hover a line to see margin

  • Ticket charges: displayed alongside the charge

  • Job costs & profits: the full reporting dashboard (coming soon)

Who can see what

Cost prices are sensitive. They're gated by the billing.costs.view permission:

  • Admins and finance staff: see everything

  • Sales / support staff: see the selling price only; cost fields are blank

  • Customers (portal): never see cost prices

Check Settings → Roles to confirm which roles carry the permission in your workspace.

Importing cost prices

The product import CSV accepts a cost_price column (in pence). The jcp:backfill-cost-prices artisan command can also populate cost on historical charges that were created before cost tracking was added.