Oracle Fusion registration bot

Python bot that fills in Oracle Fusion registration screens from spreadsheets, with declarative flows written in JSON.

Year
2026
Role
Product Builder: product, architecture, testing and release

Context

Repetitive registrations in Oracle Fusion take time when typed in screen by screen. This bot reads the data from a CSV or an Excel spreadsheet and runs the registrations automatically.

What I built

  • A bot that attaches to a Chrome or Edge tab the person has already signed in to, and never logs in on its own.
  • CSV and XLSX reading, with the file validated before the browser is even opened.
  • A declarative engine: each registration is described as a JSON flow, checked against a schema, instead of code written for every screen.
  • A visual flow designer and a report at the end of every run.

Technical decisions

  • No password in the bot. The person signs in to Oracle once, in a dedicated browser profile, and the bot reuses that session. No stored credentials.
  • Fields found by label, never by fixed identifier. Oracle ADF screens change identifiers easily; the visible label is stable.
  • Waits built for ADF. The bot waits until the screen is truly ready (loading overlay gone, network idle, page no longer changing) instead of using fixed pauses.
  • Errors handled per record. Oracle error messages are captured and handled record by record, so one bad record does not bring the whole batch down.

Results

  • Around 300 automated tests, run against HTML screens that imitate ADF, with no access to Oracle needed.
  • New registrations become JSON flows, not new code.
~300
automated tests, with no dependency on Oracle

Stack

  • Python
  • Playwright
  • Chrome DevTools Protocol
  • Oracle Fusion (ADF Faces)
  • JSON Schema