Skip to content

Data-Flow Diagram

How customer and personal data enters, is stored, processed, and leaves the platform — with the protection applied at each stage.

flowchart LR
    subgraph sources[Data sources]
        ERP[ERP / Billing systems<br/>Stripe, Zoho, QB, NetSuite, Oracle]
        UP[User uploads<br/>contracts, documents]
        WH[Webhooks<br/>invoice/bill events]
    end

    subgraph ingest[Ingestion — TLS 1.2+]
        API[FastAPI API]
        SYNC[erp_sync / workers]
    end

    subgraph process[Processing]
        MATCH[Canonical matching<br/>entity mappings]
        APW[AP workflow<br/>coding, tax, posting]
        LLM[LLM extraction<br/>OpenAI / Gemini]
    end

    subgraph rest[Storage at rest]
        PG[(PostgreSQL — AES-256<br/>RLS by organization_id)]
        CRED[(Integration credentials<br/>AES-256-GCM encrypted)]
        AUD[(Audit / revision logs<br/>>= 180 days)]
    end

    subgraph out[Outbound]
        POST[Post bills/invoices<br/>back to ERP]
        EXPORT[Customer export<br/>reports / audit logs]
        DEL[Deletion on<br/>end of engagement]
    end

    ERP -->|TLS| SYNC
    UP -->|TLS| API
    WH -->|TLS, signature/token| API
    API --> MATCH & APW
    SYNC --> MATCH
    APW --> LLM
    MATCH & APW --> PG
    API --> CRED
    API & SYNC & APW --> AUD
    APW -->|TLS, encrypted creds| POST
    PG --> EXPORT
    PG --> DEL

    classDef store fill:#def,stroke:#36b
    class PG,CRED,AUD store

Data categories & handling

Stage Data Protection
In transit All customer/PII/credential data HTTPS / TLS 1.2+
At rest (records) Invoices, bills, payments, bank txns, master data AES-256 (managed PostgreSQL) + RLS isolation
At rest (secrets) ERP/billing API keys, OAuth tokens AES-256-GCM application-layer encryption
Processing PII in identifiable form (reconciliation) RLS need-to-know; not pseudonymized (by design)
Audit Change/activity logs Retained ≥ 180 days; exportable to customer
End of life All customer data incl. PII Deleted on termination / request; ages out of backups

Roles

Revzio acts as data processor; the customer is the data controller. Personal data is processed only on the customer's documented instructions. See Data Privacy & Protection Policy.