Business Central implementation case study

How Lab0 implements UAE e-invoicing for Business Central

Inside the ERP-side work: mapping Business Central, building the AL extension, handling the required invoice flows, and verifying the connection against PINT AE rules and an ASP environment.

Book a discovery callBring the next ERP in your onboarding queue.

Customer ERP

Business Central

  • Posted documents
  • Tax + posting setup
  • Inbound drafts

Implementation layer

Lab0 AI FDE

  • Discover + map
  • Build AL extension
  • Test + correct

Accredited network

ASP + PINT AE

  • Submit + receive
  • Validate + deliver
  • Report status
The ASP owns the accredited platform. Lab0 handles the customer-specific ERP implementation required to connect it.

One customer connection

The full ERP-side implementation

The work covered more than sending invoice data to an endpoint. It included the domain rules, Business Central extension, ASP interface, document lifecycle, inbound flow, operational behavior, and verification system.

For an ASP, this is the work between signing a customer and moving compliant invoices.

01ERP side

Discover

PINT AE rules, Business Central objects, tax treatment, and document decisions.

02ERP side

Build

AL data model, setup, page extensions, posting events, and background processing.

03ERP side

Integrate

Authentication, uploads, status handling, errors, and inbound documents.

04ERP side

Verify

XML rules, sandbox scenarios, negative cases, client behavior, and UAT criteria.

Value for the ASP

Add onboarding capacity without building an ERP team for every customer

The ASP platform may be standard. The customer environment is not. Posting setup, tax configuration, extensions, invoice flows, and operating constraints vary by tenant.

Lab0 works from the actual environment, builds the ERP-side connection, exercises representative flows, and corrects what fails.

Division of labor

ASP

Platform + customer

Accredited network product · Customer relationship · ASP interface

Lab0

ERP implementation

Instance discovery · Build + integration · Verification

Customer

Working connection

Grounded in its ERP · Inspectable behavior · Operational handoff

Implementation scope

What had to work

The per-tenant AL extension covers outbound, self-billing, deemed-supply, and inbound flows, plus the behavior required to operate them inside Business Central.

A connector can generate valid XML for one sample invoice and still fail as an implementation. The edge cases sit in corrections, changing setup, background jobs, inbound conversion, and rejected documents.

Outbound

  • 380 Tax invoice
  • 381 Tax credit note
  • 480 Commercial invoice
  • 81 Commercial credit note

Self-billing

  • 389 Self-billed invoice
  • 261 Self-billed credit note

Special flow

  • Deemed supply
  • Posting + queue behavior

Inbound

  • Supplier documents
  • Customer self-billing
  • Staging + conversion
Not sent
Submitted
Processing
Delivered
Accepted
Rejected / error
Document coverage and the submission lifecycle belong to the same implementation.

How the AI FDE operated

From rules to a working implementation loop

The AI FDE stayed inside the implementation cycle. It read the evidence, mapped the system, changed the implementation, exercised the flow, and corrected failures against the governing source or observed state.

01

Read

PINT AE rule

Establish the governing rules and inspect the real ERP behavior.

02

Map

BC object

Trace invoice data through records, posting setup, and extensions.

03

Build

AL extension

Implement setup, events, submissions, API paths, and background work.

04

Exercise

XML + status

Run representative flows and inspect what the system actually produced.

05

Correct

Verified change

Resolve failures against source evidence, then rerun the right layer.

Technical architecture

Inside the connection

Business Central remains the operational system. Filing is registered around its transactions, then handled through a separate submission lifecycle with explicit status and inbound paths.

01

BC transaction

02

Canonical data

03

PINT AE XML

04

ASP lifecycle

05

Status + inbound

Posting

Register filing work without making accounting depend on the network.

Queue

Send, refresh state, and keep terminal documents out of repeat polling.

Inbound staging

Keep the original payload even when accounting conversion fails.

The shipped behavior lives in AL. Test scaffolding inspects it; it does not define it.

Technical proof

Three details that separate an implementation from a demo

The difficult parts are often small enough to miss in a broad architecture diagram. They are also where apparently complete integrations break.

01 · Document history

Credit notes inherit what was filed

The implementation reads the original invoice type from stored submitted XML instead of recomputing it from configuration that may have changed later.

Filed history

Original invoice

Filed as 380

Stored in submitted XML

Credit note

Inherits 381

Uses what was filed, not today’s setup

02 · Content assertions

A passing validator can miss wrong content

Structural validation may prove an element exists without proving its value is right. The test system therefore asserts on business content emitted by AL.

Presence ≠ correctness

Schematron: pass
<ID> value exists </ID>

The element is present. Its value can still be wrong.

Content assertion
emitted value === scenario value

The implementation checks the business content that moved.

03 · System state

A 2xx response is not acceptance evidence

Business Central can ignore unknown or read-only fields while returning success. The harness reads records back and verifies the stored value.

Transport ≠ state

Write → 2xxRead row backAssert stored value

A successful response is only the start of the check.

Verification

Four levels, because no single test proves the flow

Structural validity, business content, ERP behavior, and live network state are checked separately. That makes failures easier to locate and harder to wave through.

01

Offline

Rules and XML

Catalogue examiner · shape checks · rule probes

02

BC sandbox

ERP behavior

Outbound · decision trees · queues · inbound

03

Client

Operational UX

Corrections · alerts · setup · uninstall

04

ASP UAT

Network state

Submission · delivery · validation · authority status

738

catalogue instances in the offline examiner design

7

commercial decision-tree cases in the sandbox plan

20

manual client behaviors defined for inspection

These figures describe the documented verification scope, not a blanket claim that every final UAT state has been observed.

What the ASP gets

Implementation capacity between the decisions

The human remains responsible for access, scope, and consequential architecture choices. The AI FDE supplies the execution capacity between those decisions: reading the system, changing the implementation, running the checks it can reach, and carrying corrected rules into the next customer.

Grounded in the actual ERP
Coordinated AL + integration work
Inspectable verification evidence
Reusable implementation context

Bring the next Business Central customer in your queue

Show us the ERP environment, the invoice flows, and the interface your ASP expects. We’ll map the implementation path and show you how a Lab0 AI FDE handles the work.