Most work starts small and deliberately so — a scoped piece of analysis that either de-risks the decision or tells you the problem is bigger than you thought.
Weeks · 1–2 specialists
A specific question answered properly: can we meet this mandate, what does this format actually require, why is this document being rejected, is this specification change going to hurt us.
Up to a year · 4–5 specialists
Building the thing. Mandate rollouts, any-to-any format engines, validation stacks, national syntax support — delivered as a team working alongside yours rather than over the wall.
Continuous · sized to your release cadence
The work that never finishes. Specifications get re-issued, code lists move, mandates shift. We track the changes that affect you and keep the artefacts current.
Generic examples built from public standards, in the same form as the real thing. Client work stays confidential — these exist so you know exactly what you're buying.
Every business term traced to source and target, with cardinality, constraints and a recommendation wherever the two models disagree.
Structural mismatch — not a 1:1 move. The target nests allowance and charge under a single element discriminated by ChargeIndicator. Split on the indicator and preserve document order. This is the row that breaks naïve converters, so it is stated with a recommendation rather than left to the implementer.
Format and version migrations delivered as reviewable, testable transforms — one entry point for every document type in scope.
<!-- Identity first. Only the deltas are declared. -->
<xsl:template match="@*|node()"><xsl:copy>…</xsl:copy></xsl:template>
<xsl:template match="cbc:UBLVersionID">2.4</xsl:template>Rules written to be read by the person who has to fix the invoice, not just executed. Each carries an identifier, a severity and a message that names the field.
An exempt VAT breakdown (BG-23) with category code 'E' shall carry an exemption reason code (BT-121) or reason text (BT-120).
The message names the business term, so a finance user can fix it without an engineer.
The primary deliverable of a scoped engagement — sponsor-readable at the top, buildable further down.
Free. One market or one problem. We tell you whether this is a week of work or a programme — including when the answer is "you don't need us for this".
Scope, deliverables, assumptions and an effort estimate in hours. No open-ended statements of work.
Working in your tooling and your repositories where possible. Progress visible weekly, not at the end.
Artefacts, evidence and a walkthrough with the people who will maintain it. You should not need us to operate what we built.
We bill by the hour at a published rate we'll give you on the first call, against a written estimate agreed before work starts. No retainer minimums, no charge for the scoping conversation, and no surprise on the invoice — we tell you when an estimate is going to be exceeded before it is, not afterwards.
Fixed-fee is available where the scope genuinely permits it. For work that depends on a specification we haven't seen yet, we'll say so rather than pad an estimate to cover the unknown.
Thirty minutes, no cost, no obligation. Bring the market or the problem — you'll leave knowing roughly what it takes.