Skip to Content
OLaunch TestFlight - Odoo User-testing made easy

Odoo user testing
Done .

Acceptance testing that runs inside the client's own QA/Test instance. Testers do the real job on their real/sample data. Track testing, go-live readiness and see progress and feedback live.

Odoo 16, 17, 18, 19 & 20 · Client module installs in the client's database · Testers need nothing but their Odoo login
acme.odoo.com / odoo / sales · the client's own database
Sales Invoicing Inventory Purchase
S00042 · Deco Addict
Sales order · confirmed by Marta B. just now
Office Chair 3.00 $ 351.00
Desk Lamp 2.00 $ 96.00
Delivery 1.00 $ 25.00
Create Invoice Send by Email
TestFlight Opportunity to order
2 of 6 done Recording · 04:12
Open Sales › Quotations
Create a quotation for Deco Addict
Add 3 units of Office Chair
Hint: Order lines → product Office Chair
Confirm the order
Create the invoice from that order
Register the payment
Submit Screenshot Note

TestFlight, explained.

How it works

Acceptance testing before go-live with evidence for sign-off.

See feedback, screenshots, screenrecording and tester notes and the test plan report all in one place.

01
The partner authors scenarios
Create a basic user test yourself or have an AI agent author more complex test scenarios. Watch the test cases auto-play to validate your test plan before assigning users.
02
The tester does the actual work
Use your existing QA/UAT/Test Odoo instance and users see their assigned tests in a side-panel. Each step ticks the moment they do it in Odoo. Screenshots, notes, a screen recording and optional narration come along with it for sign-off and review.
03
The manager reviews and relaunches
Results land in your TestFlight Portal: per-step outcomes, the exact records matched, and a recording you can see where things went right or wrong. Launch a re-test when you have a new configuration or new users to test with.
Four ways partners use it
01
For go-live
Test the core workflows and get go-live readiness and sign-off.
Go-live sign-off
02
For upgrades
Test customisations and core workflows for upgrade readiness and sign-off.
Upgrade sign-off
03
For features
Run your customisation as a TestFlight and record it. Send the video to the client for sign-off, or assign the test so they run it themselves.
Client approval
04
For staff onboarding
Help your clients create staff onboarding training scenarios for new and existing staff.
Staff training
Build TestFlight scenarios with
Build with AI
Use your own AI agent to build them.
TestFlight Studio
Build a scenario step by step in TestFlight Studio.
Scenario Library
Start from our library of ready-made scenarios.
Implementation partners
Author scenarios, run UAT projects across clients, read results, iterate before go-live.
Client-side testers
Zero setup: they log in and start testing. Guided step by step inside the Odoo they already use.
Client-side managers
Enrol colleagues and watch team progress from the “My Testing” portal page.
AI agents & developers
Full REST API, machine-readable docs, published agent skill.
Scenario engine

Four ways to watch real work.

The client module observes what the tester does in Odoo. Steps compose from four detectors, so any business process can be described without a test script.

Screen opened
Menu and view navigation. The tester actually landed on Sales › Quotations.
Record created or updated
Including which fields changed, so “the tester just confirmed this order” is distinguishable from “it was already confirmed”.
Button / RPC action
The real button press behind the scenes: Confirm, Register Payment, Validate.
HTTP route
Page routes cover portal pages, Barcode, Shop Floor and other non-standard screens.
Never interferes
Observation cannot break or slow the tester's real business operations. Runs survive page reloads and multi-tab work.
Pre-flight verification
Test plans are validated before a user starts testing.
Same-record chaining
A step can capture the exact record the tester touched and require later steps to act on that same record “invoice the order you just created”.
Setup block
Each test scenario can define a setup set that automatically creates the test records the user will need to perform the current test plan. Even long multi-step processes start with their data.
Assign testers in the portal
Enrol testers by name and email, by CSV, or straight from the users already in the client's database, then assign scenarios per tester. Each assignment hands them a pending run in their panel.
Upgrades, updates and staff training
Use TestFlight to help onboard new users, train on new features/workflows, pre go-live training and acceptance testing. Once testing takes minutes to set up, it works for training too.
Tester experience

Zero setup for the client’s people.

They log in to the Odoo they already use, open the panel, and are guided step by step.

Sales Orders To Invoice Products Reporting Configuration MB
Quotations / S00042
1 / 1
Confirm Send by Email Preview Cancel Action Quotation
Quotation Quotation Sent Sales Order
S00042
Customer Deco Addict
Invoice Address Deco Addict
Delivery Address Deco Addict
Expiration 10/07/2026
Pricelist Public Pricelist (AUD)
Payment Terms 30 Days
Order Lines Optional Products Other Info
Product Quantity Unit Price Taxes Subtotal
Office Chair 3.00 117.00 GST 10% $ 351.00
Delivery 1.00 25.00 GST 10% $ 25.00
Add a productAdd a sectionAdd a note
Office Chair $ 351.00
3.00 Units × $ 117.00 · GST 10%
Delivery $ 25.00
1.00 Units × $ 25.00 · GST 10%
Add a product
Untaxed Amount:$ 472.00
GST 10%:$ 47.20
Total:$ 519.20
Testflight
Quote to paid invoice
Confirm a quotation, invoice it and register the payment.
Sales / User Invoicing / Billing
Running · recording 04:12 3 of 4 done
Screenshot Record
Open Sales › Quotations Sales / Quotations
Create a quotation for Deco Addict sale.order · S00042
Add 3 units of Office Chair sale.order.line · 3 created
4 Confirm the order Waits for Confirm on S00042 Press Confirm at the top of the quotation. The step ticks when the state changes to Sales Order.
Finish test flight
Auto Play

Use as an automatic demo.

A scenario can carry an autoplay script. The panel drives the tester's own session at human pace with a guided pointer and captions. The clicks are real, so the watching engine still ticks each step.

Playing · step 4 of 6
Pressing “Confirm” on S00042
Caption shown to the tester while the pointer moves
½× human paceinstant
Open Sales › Quotations
Create quotation · Deco Addict
Add 3 × Office Chair
Confirm the order
OLaunch portal

Run UAT across every client from one place.

Projects, scenarios, testers and iteration live in the partner portal. Team access is scoped per member: TestFlight role (none, read-only user, or manager) and project scope (all projects or a chosen list).

Projects

Assign a project to a client, with project level settings.

  • Create scenarios from an authored document, an uploaded .json or .zip, or a reusable template
  • Shared global templates plus partner-private templates
  • Drag to reorder. That is the order testers see
Testers

Enrol by name and email (a portal account is created, welcome email optional), by CSV bulk upload, or in one click from users already known from the client's databases.

  • Per-tester scenario visibility: all scenarios, or assigned only
  • Per-scenario assignment
  • Client-manager access to the whole team's runs
  • Client managers can enrol their own colleagues
Progress & iteration

Assignment creates a pending run per tester. The latest run per tester per scenario decides pass, fail or untested.

  • Relaunch with written feedback: per scenario, per tester, or bulk across a project
  • Each relaunch hands the tester a fresh pending run carrying the feedback
  • Previous submissions move into an inspectable history
  • Tester-facing “My Testing” page: their scenarios, results and pending feedback
TestFlight › Acme Pty Ltd · Go-live UAT › Run 14 Search projects, articles, slides… ⌘K DK
Run review
Invoice to payment
Marta B. · submitted 18 Aug, 09:42 · 6 of 6 steps ticked
Passed Relaunch with feedback
Steps ticked
6 / 6
Duration
06:31
Screenshots
4
Tester notes
2
Result
Passed
Screen recording
run recording · 06:31
01 02 03 04 05 06
Steps · records matched
#StepRecord
Open Sales › Quotations 09:38:04
Create quotation sale.order · S00042
Add 3 × Office Chair sale.order.line · 3 created
Confirm the order state: draft → sale
Create the invoice account.move · INV/2026/0117
Register the payment account.payment · P00311
TestFlight Studio

Author scenarios from inside the client's Odoo.

Consultants and trusted client users can be granted a scenario author right per project.

  • Publish straight into a portal project: create new scenarios or update existing ones
  • Take an editable copy of any scenario the panel already shows, or start from an uploaded plan document
  • Drag steps into order and write each one in the words the tester will read
  • Every step is a form: pick the record, the changed fields, the button or the page it should watch for
TestFlight Studio Draft · local
Quote to paid invoice
Create the quotation
record · sale.order
Edit
Confirm the order
record · action_confirm
Edit
Register the payment
screen · Invoicing
Edit
Publish to olaunch.com Download
REST API & AI agents

Docs that cannot drift.

The API’s documentation and a full OpenAPI 3.1 document.

api/v1/testflight
# Your key, your role, your projects. Nothing more.
curl https://www.olaunch.com/api/v1/testflight/me \
  -H "Authorization: Bearer $OLAUNCH_API_KEY"
/projects /scenarios /templates /testers /runs /relaunch /schemas
Auth & scope
Personal OLaunch API keys, created in portal Settings → API Keys.
Published agent skill
UAT an AI agent can drive end to end.

A skill served at /api/v1/testflight/skill teaches assistants the whole workflow: create projects, author scenarios, assign testers, relaunch with feedback, and read results.

No model runs inside the product.
Public, versioned JSON Schema
An online validation endpoint, so editors, CI pipelines and agents can check a scenario before publishing.
Scenario format

One JSON document per scenario.

Name, description, audience groups, setup block, steps, autoplay. Four detectors compose into arbitrary business journeys of up to 200 steps, with optional steps supported.

invoice-to-payment.json
{
  "name": "Invoice to payment",
  "description": "Finance confirms an order, invoices it and banks the payment.",
  "audience_groups": ["account.group_account_invoice"],
  "setup": [
    { "find_or_create": "res.partner", "values": { "name": "Deco Addict" } }
  ],
  "steps": [
    { "detector": "screen_opened", "menu": "Sales / Quotations" },
    { "detector": "record_created", "model": "sale.order", "capture": "order" },
    { "detector": "client_action", "name": "action_confirm", "on": "order" },
    { "detector": "record_created", "model": "account.move",
      "conditions": { "invoice_origin": "{{ order.name }}" } },
    { "detector": "http_route", "route": "/my/invoices", "optional": true }
  ],
  "autoplay": { "steps": [ { "verb": "open_menu", "menu": "Sales / Quotations" } ] }
}
Ten example scenarios ship with the client module
CRM pipeline to quote Invoice to payment Inventory adjustment Customer return and refund Bank matching Portal customer view Shop Floor vs Barcode and more
Three ways in
Author the document by hand, upload a .json or .zip, or start from a template: shared global templates plus your own partner-private set.
Media, security & residency

Evidence held where the client needs it held.

Media never touches our servers
Screenshots and recordings upload directly from the tester's browser to a regional cloud bucket, not through olaunch.com.
Region per scenario
Every scenario has a data-residency region, with project and partner defaults.

Become an OLaunch partner.

Sign up and run a practice conversion within minutes.