How Configo Works
A guided tour of Configo end to end — how your material catalog, configurators, orders, production, documents, and analytics fit together into one workflow.
Why manual quoting stops working
Almost every custom-manufacturing business starts the same way: a customer calls or writes, someone notes down the dimensions, and the price is worked out from experience — in a notebook, in a chat, in a spreadsheet. At two or three orders a week that works fine. At twenty it starts to cost real money:
- Forgotten line items. The profile and the fabric are in the quote; the brackets, rivets and the trip to the site are not. The margin quietly disappears.
- Arithmetic that nobody double-checks. One wrong cell in a spreadsheet and a whole batch of quotes is priced below cost.
- Every quote takes an hour. And it takes that hour from the person who should be selling or producing.
- Nobody knows what actually earns. Revenue is visible on the bank statement; profit per product is not.
- The pricing logic lives in one head. A new salesperson can't quote without supervision, and the owner can't take a holiday.
Spreadsheets don't solve this because a spreadsheet stores numbers — it doesn't run a process. It won't tell you that an order has been sitting untouched for a week, it won't stop a manager from selling below cost, it won't produce a customer-ready PDF, and it won't hand your customer a calculator on your own website.
Configo replaces that layer. You describe your products once — materials, prices, rules — and from then on the platform does the arithmetic, keeps the paperwork, tracks the order to completion, and shows you the numbers.
The shape of the workflow
Everything in Configo happens inside a project — your company's workspace, holding one catalog, one set of configurators, one pipeline, and one team. The flow through it looks like this:
- Catalog — you load your materials with your real purchase prices and units.
- Configurator — you describe one product as inputs plus formulas: a small pricing engine.
- Quote — a salesperson (or the customer, via the widget) fills in the parameters and gets a price and a bill of materials instantly.
- Order — the configured item lands in an order that moves through your own pipeline of statuses.
- Production — the bill of materials is written off from a warehouse, the cut list goes to the workshop, finished goods come back into stock.
- Documents — offer, invoice, delivery note and production sheet are generated from templates as PDFs.
- Analytics — revenue, cost of goods, gross profit, margin and team performance for any period.
Each step below is a section of the app, and each one is optional: you can use Configo purely as a quoting calculator and ignore the warehouse, or run the full cycle. The order in which they're described is the order in which it's easiest to set them up.
Step 1 — Your catalog, with your prices
An estimate is only worth something if it's built from the prices you actually pay. Configo has no built-in "average market rates": the Materials catalog is yours, and everything downstream reads from it.
Each material carries:
- Name, group and vendor code — the group is what lets a configurator offer "every colour in the Powder coat group" as a dropdown, so grouping is worth doing properly.
- Unit of measure — pieces, metres, square metres, kilograms, and so on. Quantities are always calculated in the material's own unit.
- Three prices — purchase, sale and dealer. They exist side by side so one catalog can serve internal costing, retail selling and a dealer channel at once.
- Waste % — an optional loss factor. If a material is set to 7% waste, every calculated quantity is increased by 7% before it's priced, so cutting loss stops being something a salesperson has to remember.
- Properties — free-form key/value data in YAML (
color: [White, Brown, Anthracite]). Properties are what make cascading dropdowns possible later: a control can be populated from a property instead of a hand-typed list.
The catalog doesn't have to be typed in by hand. Export produces an .xlsx file with your current list, a worked
example row, and a sheet of valid unit values; fill it in, Import it back, and rows with a known UUID are updated
while new rows are created. That's usually how a real price list gets in on day one.
Updating a price is a single edit in one place. Change your tube price from 80 to 72 per metre and every quote made from that day forward uses 72 — no spreadsheet has to be hunted down.
Step 2 — Configurators: your pricing logic, without code
A configurator is a self-contained pricing engine for one product. It's the part of Configo that replaces the head-scratching, and it's built entirely by configuration — no developer, no deployment, no waiting for a release.
A configurator has four working parts:
Controls — what gets asked
The inputs a person fills in: width, height, colour, opening direction, mounting type. Each control has a variable
ID like $width that formulas and templates refer to. Beyond plain text and number fields, controls can be:
- a select whose options come from a material group, from a property across a group, or from a fixed YAML list;
- a select with image, rendering options as clickable thumbnails from a material group;
- a select with dependency, whose options are filtered by what's already been chosen elsewhere in the form — pick a series first, then see only the colours that series is available in;
- a materials control, letting the person pick materials and quantities directly.
The product name itself is a template — Plisse 16mm $width x $height $color — so every configured item arrives in the
order already named the way your paperwork needs it.
Calculations — how much material is consumed
Each calculation targets one material and holds up to 15 formulas. A formula is a JavaScript-like expression over
the control variables, with the usual maths helpers available (ceil, round, min, max, sqrt, PI, …), and its
result is the required quantity of that material in that material's unit.
Formulas can be gated by up to 10 conditions (is, is not, greater than, less than, include, not include)
compared against control values. Conditions inside one formula are ANDed; formulas are tried in order and the first one
that matches and yields a quantity above zero wins. That's how "one formula above 2 metres, another below it"
gets expressed — and a formula with no conditions at all is simply always applied, which is how a fixed hardware kit is
modelled.
This is the mechanism that catches what people forget. The bracket, the rivet, the crossbar that appears only above a certain width — once it's in a formula, it is in every single quote, forever.
Parts — the cut list
Calculations answer how much material is consumed. Parts answer how it's cut up: one Part is one distinct cut
piece — a material, a size formula per dimension, and how many identical copies are needed. A frame profile running
around a perimeter isn't one Part, it's two (two pieces of $width, two of $height). Parts are what the production
sheet is printed from, so the workshop gets lengths, not just totals.
Presets — the shortcuts
Named snapshots of control values ("Standard 800×2100 White") that fill in the whole form at once. Useful for the configurations you sell every week.
Every change can be checked in the Preview tab, which runs the configurator exactly as a customer would see it — including unsaved draft changes — and shows the material breakdown and the computed production list live underneath. That's where you confirm the logic is right, not just that the formula parses.
How the price is assembled
Material quantities are priced from the catalog and totalled into three columns:
| Materials | Work cost + amortization | Price multiplier | |
|---|---|---|---|
| Purchase | ✅ | ❌ | ✅ (materials only) |
| Sale | ✅ | ✅ | ✅ (materials only) |
| Dealer | ✅ | ✅ | ✅ (materials only) |
Purchase price is your raw material cost basis; sale and dealer add the flat work cost and amortization set on the configurator. Because purchase is tracked separately from sale on every single line, Configo can tell you the gross profit of an order without you ever entering it — that's the number the analytics section is built on.
Not starting from scratch
The Showcase is a cross-project directory of configurators that other Configo users have marked shareable. You can preview any of them and copy one into your project — materials included — as a starting point for your own.
Step 3 — Orders: the pipeline
An order is where a quote becomes a commitment. It can be worked as a Kanban board grouped by status (drag a card between columns to move it along) or as a flat table with amounts, paid, and remaining balance. Filters — search, status, responsible member, date range — live in the URL, so a filtered view can be bookmarked or sent to a colleague.
Opening an order gives you three panels:
- Info — status, responsible team member, and the linked contact. Contact fields, including your own custom ones, are editable right inside the order, so nobody has to switch screens mid-call.
- Products — the configured items, with per-line markup and discount, and payment totals: paid amount (with 10 / 25 / 50 / 100% quick fills), discount, total and remaining. A line added by a configurator can be re-opened and recalculated at any time.
- Activity log — an automatic, chronological record of everything that happened, with before/after diffs for field changes, filterable by order vs. contact, plus manual notes you type yourself.
The pipeline itself is yours to define. In Settings → Statuses you create your own statuses with colours, mark defaults, and — importantly — draw a transition matrix deciding which status may follow which. That's what stops an order jumping from Quote straight to Shipped without production ever happening. A status can also demand that certain contact fields be filled before an order is allowed to enter it, and closing an order as lost can require a loss reason from a list you maintain — which is what makes the funnel report meaningful later.
Behind orders sits the Contacts section: a CRM with types and statuses, its own activity history, and custom fields (text, number, date, date & time, select) that you define, reorder, and optionally show as columns in the table. Your business's own vocabulary, in other words, rather than a fixed schema.
Step 4 — Production: plan, fact, and stock
This is where the bill of materials stops being a printout and starts moving real inventory.
Warehouses hold stock for both materials and finished products, with a minimum level per item, a current quantity, and a running total value. Every change is recorded in a movement history typed by operation — income, spend, manual adjustment, supplier receipt, sale, return — so any discrepancy can be traced back to the moment it happened. Receipts can be logged against a supplier contact with a number and a note, and bulk receiving can be pre-filled from a configurator's material list or from exactly the quantities an order was short of.
Automations connect the pipeline to the warehouse. An automation listens for an event — currently order status changed — checks its conditions, and runs a list of actions:
- Spend from warehouse — write off the order's bill of materials (or its finished products) from a chosen warehouse;
- Receive finished products — book the completed items into stock.
So "when an order moves to In production, deduct the materials" is a rule you configure once, not a task somebody performs. Actions can run inside the same database transaction as the status change itself, which means a write-off that fails takes the status change down with it rather than leaving the two out of sync. Every run is recorded in a run history whether it succeeded or not, so an automation is never a black box.
Two safety rails matter here. Stock can't be driven negative — a write-off larger than the quantity on hand is rejected rather than silently applied. And a Return rolls production back cleanly: the materials from a product's BOM go back into stock and the finished product is removed, for exactly the lines you select.
For keeping ahead of shortages, the Stock below minimum report lists every item that has fallen under the minimum level you set.
Step 5 — Documents the customer actually receives
Configo generates paperwork from templates you control, per project, in Settings → Documents. The built-in types cover the usual set:
- Offer — the customer-facing quote;
- Invoice, and a table-oriented invoice variant;
- Delivery note;
- Production sheet — the internal document, printed from the configurator's Parts, with the cut list the workshop works from.
Templates are edited visually and filled from the order, the contact, the product lines and your project logo, then rendered to PDF by a dedicated rendering service. In an order, the available documents appear as buttons above the product list — one click to preview or generate. A template can also be marked shown on widget, letting a customer print their own quote straight from the configurator.
The practical effect: the customer gets a clean, branded document with the full specification a minute after agreeing a price, and the workshop gets a sheet with real dimensions instead of a photo of a whiteboard.
Step 6 — Selling without your team in the loop
Not every enquiry needs a salesperson. A configurator can be made publicly accessible and handed to customers in two ways:
- A direct link —
https://configo.org/widget?token=…opens your project's calculators with no login required. - An embed — a one-line script that opens the configurator in a modal iframe on your own website, or a raw
<iframe>if you'd rather control the layout yourself.
Access is carried by a signed token generated in Settings → Widget, and the token is where you decide what the public surface can do: whether the built-in cart is shown, whether only public configurators are listed, which of the three prices are visible, whether price override or adjustment is allowed, and whether documents can be printed. It behaves like a credential — anyone with the link has exactly those permissions — so regenerate it if it leaks.
For deeper integrations the widget speaks postMessage in both directions: the host page is notified when a
configuration is calculated or added to the cart, and can push configuration and product data back in. That's what makes
it practical to embed the calculator inside an existing CRM and keep checkout in the host system. The protocol is
documented in Widget embedding & iframe API.
The pay-off is the same one the whole platform is built around: instead of an enquiry that says "how much for a balcony?", you receive a request that already carries dimensions, materials, options and a price.
Step 7 — Team, roles, and who sees which price
Permissions in Configo are a per-project matter, not a global one. Each member is given a role, and a role is a set of permissions covering orders, contacts, materials, configurators, products, documents, reports, warehouses, wiki, automations, and project administration.
Two details are worth knowing because they map directly onto how manufacturing teams actually work:
- Visibility is scoped, not binary. For orders and contacts a role sees own, by role, or all records — so a salesperson can be limited to their own deals without hiding the pipeline from their manager.
- Each price column is its own permission. Purchase, sale and dealer price visibility are separate switches. A dealer or a junior salesperson can quote from the sale price while never seeing what the materials cost you.
Project owners bypass permission checks entirely. Predefined Owner, Manager and Dealer roles are there to start from, and you can define your own.
Step 8 — The numbers
Because purchase price is tracked alongside sale price on every line, profitability isn't something you reconstruct at month end — it's already there.
Orders Analytics covers any period you select and answers the money questions directly: revenue, COGS, gross profit, margin and average deal size as headline figures, then three views — a Dynamics chart of amount and profit over time, a Funnel breaking orders into new / active / done / cancelled, and an Orders table listing every deal with its purchase amount, profit, profit %, paid and remaining. Rows with negative profit are highlighted in red; fully paid ones in green.
Team Productivity does the same per person: orders handled, revenue, profit, margin and amount actually collected, each with growth against the equivalent previous period.
These are the reports that answer the questions a spreadsheet never could — which products carry the best margin, which are quietly sold at a loss, where quotes stall, and who is closing.
Supporting pieces
Two sections exist to keep the knowledge and the assets in the same place as the work:
- Wiki — a per-project knowledge base organised into spaces and a page tree, written in Markdown with callouts, tables and checklists. Pages keep a full version history you can restore from, support comments, and are locked while somebody else is editing so two people can't overwrite each other. Deleted pages go to a trash you can recover from. This is where production instructions, cutting rules and onboarding notes belong.
- Files — project file storage with per-file public or private access, filterable by type, size and upload date.
Adding a new product doesn't take a release
Nothing described above requires code. A new product is a new configurator: attach its materials, define its controls, write its formulas, add its Parts, check it in Preview, save. Most manufacturers get their first configurator working the same day they sign up, and adding the second is faster than the first because the catalog already exists.
That's the difference from software that ships a fixed product catalog: when your range changes — a new profile series, a new supplier, a new option customers keep asking for — you change it yourself, in minutes, without waiting for anyone.
When you outgrow the interface
For everything else there's the REST API. It's OAuth 2.0 authenticated, scoped per resource
(orders, contacts, materials, configurators, products, reports, files, …), and covers the same data the
app works with — so a website, an ERP, an accounting system or a bespoke internal tool can read and write your project
directly. Setting up an OAuth application is covered in OAuth.
Where to start
The shortest path from nothing to a working quote:
- Create a project — your workspace.
- Import your material catalog from an Excel file, with your real purchase prices.
- Build one configurator for the product you sell most often. Use Preview until the numbers match what you'd have calculated by hand.
- Define your statuses and create your first order from that configurator.
- Add a document template in Settings → Documents and generate the offer PDF.
- Then, when the basics are running: invite your team with roles, connect a warehouse and an automation, and publish the widget on your site.
Configo doesn't replace your expertise — the pricing rules are still yours, and so is the judgement about what to charge. What it removes is the hour per quote, the forgotten bracket, the price list that lives in three versions, and the month-end guess about whether the work was worth doing.
Every plan starts with a 14-day free trial, no card required. See Billing for what's included in each plan.