Self-Service Automation
Most customer service volume isn’t complex — it’s repeat asks. “Change my address.” “Update my phone number.” “Reset my password.” “Tell me the status of my order.” Omniflow handles these end-to-end without a human in the loop, and does it with the security and compliance posture an enterprise needs.
What you can automate
| Category | Example flows |
|---|---|
| Personal data | Update address, phone, email, marketing preferences. |
| Account state | Password reset, MFA reset, paperless billing toggle. |
| Transactional lookups | Order status, shipment tracking, account balance, statement download. |
| Subscription management | Plan change, pause/resume, cancellation with retention flow. |
| Appointments | Book, reschedule, cancel; respect availability windows. |
| Document delivery | Send invoice, send statement, send terms via email. |
If the request follows a deterministic policy and the data lives in a system Omniflow can call, it’s a candidate for self-service.
Anatomy of a self-service flow
Customer: "I need to update my phone number."
│
â–Ľ
Intent detected
│
â–Ľ
Identity verification (see below)
│
â–Ľ
Customer provides new value through the chat
│
â–Ľ
Agent calls update_phone(customer_id, new_phone)
│
â–Ľ
System of record updates; webhook confirms
│
â–Ľ
Agent confirms back to customer + audit log writtenIdentity verification
The agent never trusts the channel alone. Before any change, identity is verified at a level that matches the risk of the change:
| Risk | Verification |
|---|---|
| Low (read-only lookup, marketing prefs) | Authenticated session token from the host portal, or email + DOB. |
| Medium (address, phone, email change) | One-time passcode (OTP) to a known channel + a knowledge-based question. |
| High (banking instruction, beneficiary change) | Step-up to a secure form or transfer to a human; do not handle in chat. |
Step-up rules live under Settings → Compliance → Step-up policy.
Don’t process high-risk changes in a chatbot turn. Use the secure-form handoff so the sensitive field never lands in the chat transcript or the agent’s context window.
Secure operations — what Omniflow guarantees
| Property | How it’s enforced |
|---|---|
| PII redaction in logs | Configurable PII patterns (national IDs, payment data) are masked on the way into traces, transcripts, and exports. |
| Encrypted secrets | API keys, OAuth tokens, integration credentials live in tenant_oauth_connections encrypted at rest with a workspace-scoped key. |
| Role-scoped tools | Each agent is bound to specific tools; tools are scoped to specific endpoints; endpoints are scoped to specific objects via your IAM. |
| Mutating-tool audit trail | Every POST / PUT / DELETE tool call writes a row to api_key_audit / tool audit with caller, args, response, and latency. |
| Idempotency | Mutating tools accept an Idempotency-Key; replays don’t double-apply. |
| Rate limits per tool | Per-agent and per-tool limits stop a misbehaving conversation from hammering a system of record. |
| Confirmation step | Critical changes require an explicit “yes” from the customer (“To confirm, I’ll change your number to +1-555-0100. Should I proceed?”). |
Compliance posture
| Concern | Coverage |
|---|---|
| GDPR / Right to Access | Every action by or about a contact is in the activity log; export via API. |
| GDPR / Right to Erasure | Workspace-level erasure: contact, conversations, transcripts, traces, scorecards. |
| PCI | Payment data must not be captured in chat — use the secure form path and let your PCI-scope environment handle it. |
| Audit trail | Immutable, queryable, exportable. See Activity Logs & Traces. |
| Region-locked data | Workspace data stays in its configured region; embeddings, transcripts, audio. |
| Retention policy | Per-workspace retention windows: audio (default 90 days), transcripts (indefinite), traces (90 days). All configurable under Settings → Data Retention. |
See Security & Compliance for full details.
Set it up
Connect the system of record
Self-service tools need to read and write to your system of record. Connect:
- A CRM or customer profile API (Salesforce, HubSpot, custom).
- Order / billing system (Shopify, your billing API).
- Account state (your auth provider, your customer portal).
See CRM integrations and Custom API & Webhooks.
Define the tool
Each self-service action is an agent tool. Example for “update phone”:
{
"name": "update_customer_phone",
"description": "Update the customer's primary phone number. Requires verified identity.",
"method": "POST",
"url": "https://your-portal.example/api/v1/customers/{id}/phone",
"input_schema": {
"type": "object",
"properties": {
"id": { "type": "string", "description": "Verified customer ID" },
"phone": { "type": "string", "pattern": "^\\+[0-9]{10,15}$" }
},
"required": ["id", "phone"]
},
"auth": "secret:portal_api_key",
"rate_limit": "10/minute",
"requires_step_up": "medium",
"idempotency": true
}Add identity verification
Pick a verification step appropriate to the risk. For medium-risk changes, configure an OTP flow:
Tool: send_otp(customer_id, channel="sms"|"email")
Tool: verify_otp(customer_id, code) → returns verified_session_tokenThe agent isn’t allowed to call mutating tools without a verified session token within the same conversation.
Add a confirmation step
In the agent’s prompt:
Before any update_* tool call, repeat the change back to the
customer in plain language and ask them to confirm explicitly.
Wait for "yes" or equivalent before calling the tool.Test the unhappy paths
In Training, build scenarios for:
- Customer changes their mind mid-flow → verify the agent doesn’t call the tool.
- OTP fails 3 times → verify fallback to live agent.
- Tool returns an error → verify the agent reports it cleanly, doesn’t retry forever.
Reporting
Self-service has its own metrics:
| Metric | What it tells you |
|---|---|
| Containment rate | % of conversations resolved without a human. |
| Self-service completion rate | % of started flows that completed (vs. abandoned). |
| Step-up rate | % that escalated to form or human. Track per intent. |
| First-time-right | % that didn’t require a follow-up call within 7 days. |
| Customer-confirmed satisfaction | Post-flow CSAT. |
These live in Reports & Trends. The combination of high containment + high first-time-right + high CSAT is the signal you want.
Open in Omniflow
Related
| If you want to… | Go to |
|---|---|
| Hand off when a request is too complex | Escalation & Handoff |
| Build a self-service tool | Tools & Actions |
| Read the security posture in detail | Security & Compliance |
| Audit what the agent did | Activity Logs & Traces |