Iter Labs
All work

Client work · RPA

ERP automation with no API

Client: a mid-size engineering company in Brazil · System: a construction-industry ERP

01

Problem

The client's back office keyed hundreds of invoices by hand — twice per record — into a construction-industry ERP. The ERP has no usable API for this work.

Three constraints ruled out standard tooling: the ERP sits behind SSO with 2FA; every bot has to share a single licensed session; and a wrong entry lands directly in the company's books.

02

Approach

  1. Playwright attaches to the user's already-logged-in browser via CDP. No stored credentials, no session cloning — SSO and 2FA stay with the human.

    github.com/giuseppeferretti/cdp-attach-kit
  2. A schema-driven CRUD engine describes each screen as data: 88 screen schemas across 12 ERP modules and 5 distinct UI paradigms, with atomic create → validate → delete rollback on every write.

  3. The bot fleet is serialized by an orchestrator using slot leases and fencing tokens, so concurrent jobs never fight over the single licensed session.

    github.com/giuseppeferretti/rpa-maestro
  4. A natural-language command bridge lets operators trigger and steer batches in plain language, at ~$0.01 per operation.

03

Results

records completed in one unattended batch
295/300
records completed in one unattended batch
receivable titles created
312
receivable titles created
bulk deletions at ~4s per record
347
bulk deletions at ~4s per record
session conflicts
0
session conflicts

Published with the client's written authorization; identifying details withheld.

Want results like these?

A 20-minute call is enough to tell whether your process can be automated — and what it would take.