Skip to content

FlowPSA with FlowRMM

Connect the support request to the computer work.

FlowRMM lets your team reach and fix enrolled computers remotely. FlowPSA organizes the support requests, time, and billing. Used together, the work done on a computer is saved on the request it belongs to. For example: a remote session on acme-wks-01 shows up on the Acme Corp request it fixed.

FlowRMM owns

  • Endpoint enrollment, inventory, and telemetry
  • Remote Console sessions in the browser
  • Named actions: request, plan, approve, execute, verify
  • Endpoint MCP for agents

Does not own: Tickets, time, agreements, or invoices.

FlowPSA owns

  • Tickets, tasks, work orders, changes, projects, problems
  • Customer communication and the client portal
  • Time, agreements, SLA clocks, and draft invoices
  • PSA MCP for agents

Does not own: Remote control transport or endpoint execution.

Shared database

Technical detail: same database, separate sections.

Both apps use one Postgres database, each in its own section (schema). FlowRMM keeps its tables in public. FlowPSA migrates its own flowpsa schema and reads FlowRMM clients, sites, and devices through views. In the recommended setup, FlowPSA runs with its own identity that can only read FlowRMM's views.

FlowRMM

schema public

Connects your team to computers

  • Endpoints and inventory
  • Remote Console sessions
  • Approved actions + verify
  • Endpoint MCP

FlowPSA

schema flowpsa

Organizes requests, time, and billing

  • Tickets, tasks, changes
  • Time and timesheets
  • Agreements and SLAs
  • Draft invoices + PSA MCP

One Postgres

tenant_idclient_idsite_iddevice_id

The same customer, site, and computer records in both apps. No nightly copying, no mapping spreadsheet.

The loop

From an alert to a posted invoice.

Every step follows the same order FlowRMM uses for any action: request, plan, approve, do the work, check it, close it. FlowPSA adds the billing at the end.

  1. 01

    Escalate

    A FlowRMM alert becomes a support request through the built-in flow_psa adapter. Each message carries an event ID, so a resend lands on the same request instead of making a new one.

    POST /api/v1/rmm/ensure-work-item
  2. 02

    Link

    The request points at the company, site, and computer using the IDs FlowRMM already uses. No mapping table. No guessing which computer is meant.

    client_id · site_id · device_id
  3. 03

    Remote

    Open FlowRMM from the request, on the right computer. When the session ends, its link and record are added to the request history under the technician's name.

    session.attached
  4. 04

    Act

    The fix runs in FlowRMM under its own approval rules. The approved action and its check result become the proof on the request.

    action.verified · exit 0
  5. 05

    Resolve

    The checks required before closing (the resolution gate) see the proof from the computer. A named person reviews it, and FlowPSA can report the result back to FlowRMM once that connection is set up.

    resolution_gate.passed
  6. 06

    Bill

    Time logged on the work is applied to the customer agreement and becomes a draft invoice, which a second person reviews before posting.

    invoice.draft → approval

Optional

FlowRMM does not need FlowPSA. Remote Console and actions keep working if PSA is off, or if your escalations still go to another PSA. RMM-only teams never see a PSA charge.

Two AI connections, one AI app

MCP lets compatible AI apps work with each product. Point the same AI at FlowRMM for endpoints and at FlowPSA for tickets and time. The connections stay independent, and so do their permissions.

Separate permissions

Both apps use your Microsoft Entra tenant with separate app registrations. An RMM admin does not quietly become a PSA admin, and PSA billing roles do not reach endpoints.

Learn about FlowRMM Remote Console

Already on FlowRMM Business? Add the support and billing side.

FlowPSA is an add-on to FlowRMM Business: another $0.50 per endpoint on the same count, for $1.50 combined, starting at $150/month.