The modules
What each part of the platform does: Balance Twin, calculator, forecasting, certificates, supplier portal, verifier access and more.
- Balance Twin — model your plant
- Sankey & analysis lenses
- Calculator — engine-certified figures
- Forecasting — plan cost & scenarios
- Certificates — hold & surrender
- Company & EORI (declarant)
- Compliance calendar
- Reports — the official XML
- Supplier portal
- Data sources & ingest
- Verification (verifier dashboard)
- Customs / ERP import
- Sub-suppliers (precursor chain)
- Give your verifier access
- Auditor workspace (for verifiers)
- Pre-filing check, evidence and sign-off
- Correct a filed declaration (amendment)
- Watchdog
- Readiness check (administrators)
- Settings (administrators)
- Team and roles
- Regulatory — the live rulebook
Balance Twin — model your plant
The guided editor where you assemble your production as a process graph.
The Balance Twin turns your plant into a simple diagram: inputs (precursors, fuels, electricity), your production steps, and the finished CBAM good. You pick a ready-made template by sector and production route — the structure comes pre-wired, you fill quantities. The engine computes every balance and figure.
- Open Model your plant (/twin) and press “New plant model”: give it a name and the CN code of your good, then “Create and open the editor”. Answering an EU buyer's invitation? Open their link — the same editor opens in the supplier portal.
- Pick your sector, then the route that matches the equipment on your site (each route says when to choose it).
- Work through “To do” — the fields still needed. Click one, enter the value in “Edit selection” in the unit shown, then Save.
- Amber means “please confirm”, not “wrong”. When the to-do list is empty the readiness panel turns green.
- Open “Reports & submit”: submit for review (a frozen, version-pinned snapshot), and download the PDF report, the registry XML and the audit bundle.
- Many lines at once? Use “⊞ Table editor” for fast bulk entry; both editors save the same plant.
- Typical emission factors can be tapped in where offered; they are marked as defaults — replace them with your measured values when you have them.
- Next period, Carry-forward copies the structure, clears the quantities and flags factors to re-confirm.
Note: Balances are computed by the engine; the diagram never invents a figure. Sector guides: see “Plant models by sector”.
Sankey & analysis lenses
See where mass, energy, carbon or cost flows through your plant.
On a saved plant, switch from Process graph to Sankey to see your flows as ribbons whose width shows magnitude. Toggle the lens — Mass (t), Energy (GJ), Carbon (tCO₂e) or Cost (€) — to answer 'where does most of my carbon (or cost) actually come from?'.
The Cost lens weights ribbons by the live CBAM certificate price from the Regulatory module (the same single price source the forecast uses); if that price is unavailable it shows an indicative rate, clearly labelled.
Note: The Sankey is a display encoding for insight — your certified emission totals still come only from the engine. It needs flows with quantities and a non-cyclic graph to draw.
Calculator — engine-certified figures
Enter a good and get certified emissions, liability and certificates.
The Calculator posts your goods to the engine and returns exactly what the official export will contain: embedded emissions, the CBAM liability in EUR, and the number of certificates required.
- Enter the CN code, mass (tonnes) and country of origin.
- Add your verified Specific Embedded Emissions (SEE) if you have one; leave it blank to use the official EU default (with the required mark-up applied automatically).
- Enter any carbon price already paid abroad — the engine deducts it (CPE).
Forecasting — plan cost & scenarios
Project your CBAM certificate cost year by year, computed by the engine, and stress-test the price.
Forecasting turns your import portfolio into a year-by-year budget. Every figure is computed by the calculation engine for each product and each year: the default-value mark-up, the free allocation phase-out, the official benchmark and that year's price. Your browser computes nothing.
- Portfolio: each line is a CN code, a country of origin and the tonnes you import per year. Click Import my plants / suppliers to bring in engine SEE from the Balance Twin and your suppliers, then enter the tonnes.
- Actual SEE: leave it empty and the engine uses the OFFICIAL default for that CN code and country, with the yearly mark-up. Enter a figure only from supplier or plant data.
- Price path: pick a published scenario; the first year uses the published certificate price. Under Assumptions you can enter your own prices, a discount rate for the NPV and a yearly supplier SEE reduction (actual data only).
- Budget shows the cost, certificates and free allocation adjustment for every year; By product shows each product's own engine figures.
- Price scenarios compares the published paths side by side — your sensitivity analysis.
- Levers & risks compares your plan with official references only: every product on official defaults, and suppliers exactly at the EU benchmark. No investment or ROI is invented.
- The certificate treasury card plans purchases on the engine's certificate count (after the free allocation adjustment), never on embedded emissions.
Forward prices are assumptions, not certified figures. An admin can edit the scenarios (labels, years, prices) in the scenario editor with no code change. A forecast is never stored as a calculation and never reaches a declaration.
Certificates — hold & surrender
Track the certificates you must hold each quarter and surrender each year.
This module tracks your certificate position against the obligation: a minimum you must hold through the year, and the annual surrender that settles your liability.
The quarterly minimum-holding percentage and prices come from the Regulatory module, so the whole app shares one source. Check the Regulatory page for the current configured figures and their EU sources.
Company & EORI (declarant)
Who files, the EORI on every report, and delegation to a representative.
Record your authorised-declarant status, your EORI number and country here — they appear on every report and declaration. If a customs broker or consultancy files for you, set up delegation so their submission is linked to your account.
Switch on four-eyes if a second person must approve every filing: the person who assembles the declaration then cannot approve it.
Compliance calendar
Every deadline in one place, so nothing is missed.
The calendar surfaces the dates that matter — declaration, surrender, quarterly holding checkpoints — driven by the current regulatory snapshot so it stays correct as rules change.
Reports — the official XML
Export the QReport XML validated against the EU schema.
When your data is ready, Reports generates the official CBAM declaration as XML (validated against the EU schema) for upload to the CBAM Registry. The figures in the file are exactly what the engine certified on screen.
Supplier portal
Collect verified emissions data from your suppliers.
Invite suppliers to submit their emissions data directly, so your precursors carry verified values instead of defaults. Better upstream data usually lowers your liability.
Data sources & ingest
Bring supplier files, invoices and integrations into the platform.
Data Sources connects the platform to where your evidence lives — file uploads, supplier submissions, and enterprise connectors. Ingest reads documents (including OCR on invoices and declarations) and extracts CBAM-relevant fields.
- Cleaner upstream data means fewer defaults, and defaults carry a mark-up — so good data usually lowers your liability.
- Always confirm extracted values (CN code, mass, country) before they feed a calculation.
Verification (verifier dashboard)
Where a verifier reviews and signs off supplier emissions data.
The verifier dashboard lets an accredited reviewer examine supplier emissions declarations for your tenant and mark them reviewed. Verified data is what lowers your liability versus defaults, so this sign-off matters.
Note: Verification never changes a figure — it confirms the evidence behind it. The engine remains the only source of the numbers.
Customs / ERP import
Turn a customs declaration or ERP export into engine-calculated lines.
Upload an import-declaration or ERP export (.xlsx, .xls or CSV — any sheet, title rows skipped). You see a preview of exactly what was read, can map columns by hand, and only then the engine calculates every row.
- Columns: CN code, quantity (tonnes; kg is converted), country of origin (ISO code or name); optionally supplier SEE, carbon price paid, category and description.
- An unrecognised country or unit is reported as a row error — the importer never guesses an input.
- Calculated batches reach the annual declaration only when you add them there.
Sub-suppliers (precursor chain)
When your supplier's precursors come from another plant.
A supplier can request data for one of its precursors from its own supplier. When that sub-supplier answers through the portal, its engine figure is linked into the precursor and the parent plant is recalculated — all the way up the chain. Nobody copies a number by hand.
Note: A link is checked on every save: same account, matching CN heading, no loops, and an upstream figure above zero. If a verified plant changes because of a link, it goes back to review.
Give your verifier access
Invite an accredited verifier to review your data read-only.
Invite your accredited verifier by email. Once they accept with their own login, they see your supplier data, plant models, frozen period snapshots and evidence — read-only — and can download audit bundles. You can revoke access at any time and see everything they opened.
Auditor workspace (for verifiers)
Every client who gave you access, in one place.
Open a client to review their submissions and evidence and to record your outcome. The audit bundle contains the report, the registry XML, the engine data, the frozen snapshot and the uploaded files, plus a reproducibility check: today's engine must give the same figures from the frozen plant.
Note: Your actions are logged for the client. You never edit their figures.
Pre-filing check, evidence and sign-off
What must be clear before a declaration can be filed.
Before filing, the declaration runs one deterministic list of checks. Red findings block filing until fixed. Amber findings need a named person to acknowledge them with a reason. The checks include an independent recalculation of every line, a comparison with the previous period, imports against plant production, and documents reused for different goods.
- Attach evidence (invoices, verification reports, mill certificates) to the line it supports; each file is fingerprinted and frozen once filed.
- Clear red findings and acknowledge amber ones.
- Approve: the approval covers exactly what you saw — any later change voids it. With four-eyes switched on, the preparer cannot approve.
- File.
Correct a filed declaration (amendment)
Add a missing batch or fix a line after filing — the original filing stays on record.
A filed declaration is never rewritten. To correct it, open an amendment: the filed version is archived exactly as filed (lines, figures, evidence, approval) in a tamper-evident version record, and the declaration re-opens as the next version.
- Declare & certificates → “Correct this declaration”, and say why (the reason is kept with the amendment).
- Add the missing calculation or remove a wrong one, then Re-assemble — the banner shows the change in certificates against the filed version and every line added, removed or changed.
- Run the pre-filing check again and approve (four-eyes applies to the amendment too).
- File the amendment with the registry reference of the correction.
- Documents filed with an earlier version cannot be deleted; you can add new ones to the amendment.
- “Cancel amendment” restores the filed declaration exactly as it was.
- Corrections follow Art. 19 of Reg (EU) 2023/956 — your competent authority sets the deadline.
Watchdog
Keeps checking your declarations after you file.
Every night and right after changes, the Watchdog re-runs filed figures with today's rules, compares documents with the figures they support (reading scans with OCR where available) and watches open findings. It only reports — it never changes a figure, files or sends anything.
- Dismissing an alert needs a written reason; it is recorded.
- An alert resolves itself when the issue is gone.
- An optional AI explanation never contains a number.
Readiness check (administrators)
Is this installation ready for production?
The Readiness check (/setup) shows what this installation needs. Required: the database is connected and an encryption key for secrets at rest is set (generate it once and keep it forever — it decrypts stored personal data). Optional: an AI provider, and automatic updates of prices, the regulatory snapshot and default values.
- Production must run with sign-in enforced; /health reports auth: enforced or DISABLED-INSECURE.
- Mail (SMTP) is needed for supplier invitations, reminders and verifier invitations.
Settings (administrators)
Company profile, CBAM configuration, notifications, integrations and AI.
Settings (/settings) holds the company profile used on reports, the CBAM configuration, data-quality preferences, notifications, integrations and export. The AI provider, model and key are set under AI settings (/ai-settings); the AI only explains and guides — it never produces a figure.
Settings that apply to the whole installation — the AI provider and key, notifications, the official reference data — can be changed only by the platform administrator (the addresses in SUPER_ADMIN_EMAILS). People in your account are managed under Team.
Team and roles
Add colleagues to your account and decide what each one may do.
Team (/team) lists everyone in your account. An admin adds a colleague by e-mail and picks a role; the colleague signs in with that address (a link and a code, no password) and lands in your account.
Roles: an admin manages the team and can do everything; a declarant prepares calculations, plant models and declarations; a viewer can look at everything but change nothing; a verifier is read-only and can record review outcomes.
Read-only roles are enforced on the server for every action, not only hidden in the screen. Changing someone's role, disabling or removing them signs them out at once. Nobody can change their own access, and the last admin of an account always stays.
An e-mail address belongs to one account. An address that already has its own account can't be added to another one; use a different address.
New people: someone who signs up with a new address confirms it and then waits — the platform administrator approves or rejects the request under Access requests on the Team page, and they get an e-mail when it is approved. Colleagues an admin adds here, and auditors a client invites, get in at once. An admin who adds a person with a waiting request takes them into this account straight away.
Regulatory — the live rulebook
The single, source-cited snapshot every figure is based on.
The Regulatory module holds the timestamped, source-cited snapshot of CBAM parameters the whole app reads from: phase-in factors, holding obligation, de-minimis, default-value mark-up, deadlines and the current certificate price.
It shows how current the data is. When you want to check 'what rule is the app using', this is the authoritative place to look.