How Opexlane works
Short answers about plans, minutes, calls, your data, and webhooks. Still stuck? support@opexlane.com
Most asked
Is there a free trial?
Yes, every new subscription starts with a 14-day free trial. During the trial you can buy a phone number, place test calls, and go live. Cancel during the trial and you won't be charged; when the trial ends, your plan bills until you cancel.
Do unused minutes roll over?
Plan minutes reset at the start of each billing cycle and don't roll over. Minute packs you buy separately are different: purchased top-up minutes roll over and never expire.
What happens when I hit my minute limit?
You'll see a warning in your dashboard at 80% of your minutes, and a stronger notice at 100%: at that point new callers hear that the business has reached its plan's minutes. If minute top-ups are available on your account, you can buy a pack from Settings → Billing to keep taking calls.
How do I pause or cancel my subscription?
In Settings → Billing: pause for 1, 2, or 3 months (billing stops immediately and resumes automatically on the date you pick), or cancel through the billing portal, which keeps service running through the end of the billing period. If a payment fails, your account gets a short grace period (currently 3 days) before it's suspended.
Getting started
What do I need to go live?
Two things: an active subscription or trial, and a passing readiness run in Test Lab(or a recorded owner override with a reason). The gate is enforced automatically: flipping the live switch without one isn't possible.
Billing and minutes
What are the plans?
Starter $69/mo · 200 minutes, Pro $119/mo · 1,000 minutes, Scale $229/mo · 2,000 minutes. Add-ons: extra phone line $15, SMS reminders $10, priority support $25, extended call history $10 per month. See the pricing page for details.
Calls
How do test calls work?
From your dashboard you can place a test call to hear your AI receptionist in action, up to 10 per day, to US or Canadian numbers only, and you need an active subscription or trial first. Test calls work before you go live.
What happens when I miss a call?
Turn on missed-call follow-up in Settings → Missed calls: Opexlane can text the caller back and/or place an AI callback, with quiet hours so nobody gets called at 3am. You set the delay and how many attempts it makes.
Your data
How do I get my data out?
Settings → Billing → Export your data downloads everything Opexlane holds for your business (calls, bookings, contacts, settings, and more) as a JSON file. Secrets and live credentials are redacted in the export.
How do I delete my account?
Settings → Billing → Danger zone, type DELETE to confirm. That cancels your Stripe subscription, revokes your Google calendar token, releases your Telnyx phone number and deletes your AI assistant, and removes your business data from our database and storage. This can't be undone.
Developers
Do you offer webhooks?
Yes. Add an endpoint in Settings → Integrations → Webhooks and we'll POST three events to it: call.completed, booking.created, and quota.exhausted.
Every delivery is a JSON envelope:
{
"id": "evt_…",
"type": "call.completed",
"created_at": "2026-09-29T12:00:00.000Z",
"business_id": "…",
"data": {
"call_id": "…",
"direction": "inbound",
"duration_secs": 137,
"from_number": "+1 617-555-1234"
}
}Deliveries carry three headers: X-Opexlane-Event (the event type), X-Opexlane-Delivery-Id, and X-Opexlane-Signature. The signature is t=<unix-seconds>,v1=<hex> where v1 is the HMAC-SHA256 of <timestamp>.<raw-body> keyed with your endpoint's secret. Verify it like this (Node):
import { createHmac, timingSafeEqual } from "node:crypto";
function verify(secret, signatureHeader, rawBody) {
const m = /^t=(\d+),v1=([0-9a-f]{64})$/.exec(signatureHeader ?? "");
if (!m) return false;
const [, ts, hex] = m;
// Reject replays older than 5 minutes:
if (Math.abs(Date.now() / 1000 - Number(ts)) > 300) return false;
const expected = createHmac("sha256", secret)
.update(`${ts}.${rawBody}`, "utf8").digest("hex");
const a = Buffer.from(hex, "utf8"), b = Buffer.from(expected, "utf8");
return a.length === b.length && timingSafeEqual(a, b);
}Your endpoint should answer 2xx within 10 seconds; anything else is logged as a failed delivery. The signing secret is shown once when you create the endpoint: store it then. A Test button sends a sample call.completed with "test": true so you can check your receiver end to end.
Support
How do I contact support?
Email support@opexlane.com. A human reads every message. Check the status page first if something looks down.