E-commerce support

Order status, subscriptions and policy answers, inside the chat

Connect your store and billing tools and PepoChat answers 'where is my order?' with the live status from Shopify or WooCommerce, tells a subscriber which plan they are on and when it renews from Stripe, and files a ticket in your helpdesk when a person needs to step in. Shipping, returns and exchange questions are answered from your own policy pages.

It suits stores whose inbox is mostly the same five questions, run by a team that would rather read a ticket with the order number already in it than open another dashboard.

Every feature on the free plan · no credit card

Rendered from the widget's own markup with sample data; the conversations are the ones the agent is built for.

How it works

How a store sets it up

  1. 1

    Import your store pages and policies

    Add your site by sitemap or crawl so product pages, shipping information, the returns policy and the FAQ become the knowledge base. A whole-site import counts as one source. If a policy lives in a PDF or a Google Doc, upload it or sync it from Drive.

  2. 2

    Connect Shopify or WooCommerce

    For Shopify, create an app in the Dev Dashboard with the read_orders scope and paste the client ID and secret under Integrations. For WooCommerce, create a read-only REST API key. Test the order lookup with a real order number, then enable it.

  3. 3

    Connect Stripe for subscriptions

    Create a restricted key with read access to customers and subscriptions, and write access to subscriptions only if you want the agent to cancel at period end. Enable the actions you want; the cancel action can stay off.

  4. 4

    Pick a helpdesk for what needs a person

    Zendesk, Freshdesk, Zoho Desk, HubSpot and Salesforce each create a ticket or case with a subject and the details, and all but HubSpot can check an existing one by number. The agent reports the ticket number back in the chat.

  5. 5

    Write the greeting and the rules

    Set a greeting such as 'I can check orders, explain returns and look up your subscription' and three suggested questions. Under Never do this, add lines like 'Never promise a delivery date that is not in the order status'.

  6. 6

    Install and test

    Paste the script tag into your theme before the closing body tag, or install the WordPress plugin on a WooCommerce store. Open the Test the agent drawer and ask about a real order: test chats are free, but order lookups and ticket creation run for real.

Plans

What each plan gives a store

CapabilityFreeStarterGrowth
AI replies a month200, then conversations go to your inbox2,000, then $10 per 1,00010,000, then $10 per 1,000
Shopify, WooCommerce and Stripe actionsIncludedIncludedIncluded
Helpdesk tickets (Zendesk, Freshdesk, Zoho Desk, HubSpot, Salesforce)IncludedIncludedIncluded
Knowledge sources5 (a whole-store crawl counts as one)UnlimitedUnlimited
Knowledge base text20 MB200 MB1 GB
Team members13, extra seats $15 a month10, extra seats $15 a month
Actions per workspace, integrations and custom combined202020
New-lead emails to the teamNot includedIncludedIncluded
"Powered by PepoChat" on the widgetShownShownRemoved

Prices in US dollars; yearly plans cost ten months' price. Overage on paid plans is billed on the next invoice.

Where is my order, answered from the store

The agent asks for the order number, looks it up, and answers in plain language. With Shopify, it reads the order's name, creation date, payment status and fulfillment status, and confirms the returned order matches the number the visitor gave. With WooCommerce it reports status, dates, total, currency and payment method, and can also find up to three recent orders by the email they were placed with when the visitor has no number to hand.

Only the fields listed on the action reach the agent. Everything else in the store's reply, including other customers' data, never gets to the model, and the agent summarizes rather than pasting raw API output. If the store says not found, it asks the visitor to double-check; on any other error it offers a person.

Shopify's read_orders scope covers the last 60 days of orders, which is where almost every 'where is my order' lands. Older orders go to your team through a ticket.

Subscriptions and billing without opening Stripe

Stripe gives the agent three actions that it chains on its own: find the customer by email, check the subscription, and, only on an explicit request that the visitor confirms, cancel at the end of the paid period. The status check reports the plan name, amount, interval, status, renewal date and whether the subscription is already set to cancel. A visitor asking 'when does my plan renew?' gets the date without a ticket. When a customer has several subscriptions, only the most recent is read.

Cancelling never happens on a first mention. The action's instructions require a clear request and a confirmation, the subscription stays active until the period ends, and you can leave the cancel action disabled altogether and keep only the read-only ones.

There is no refund, upgrade or payment-method action, by design: action execution is at-least-once, so a rare retry could run a write twice. Refund requests are answered from your policy and handed to your team with a ticket.

Policies, returns and the handoff

Returns, exchanges, shipping zones and delivery times are answered from your own pages. Import the policy pages, and write a Q&A pair for anything customers phrase differently from your policy text, such as 'Do you ship to Canada?'. The agent quotes what it can read, so a short, plainly written policy page is worth more than a marketing banner.

When a case needs a person, a damaged item, a wrong size, a refund, the agent collects what the helpdesk needs and creates the ticket, then tells the visitor the number. The conversation also turns escalated in your inbox, and every member gets an email with the last three messages.

During a sale, set Team availability to business hours so the agent tells shoppers when the team is back instead of promising a quick reply at midnight, and set lead capture to ask before a handoff so an email address is collected before the conversation leaves the agent.

What it does not do for a store

  • Order lookups report status, not tracking. Shopify returns the order's payment and fulfillment status; neither store action returns a carrier or a tracking link, and the agent cannot change an address or edit an order.
  • Stripe actions are find customer, check subscription status and cancel at period end. No refunds, upgrades, downgrades or payment-method changes, and refunds or payments should not be wired as custom actions.
  • Order and subscription lookups are not gated by email verification. Anyone who types an order number or a billing email can hear what the action's readable fields say, so keep those fields minimal; on WooCommerce you can keep only the lookup by email, which matches the billing address exactly.
  • The Test button on an action performs the real operation. Testing cancel at period end schedules a real cancellation, so use a test customer.
  • Shopify's read_orders scope covers the last 60 days; read_all_orders needs a Shopify-approved access request.
  • The voice assistant, if you enable it, runs on Vapi with its own configuration and no access to the chat agent's knowledge base or store actions.

E-commerce and order support: questions teams ask

Can it tell a customer where their package is?
It can tell them the order's current payment and fulfillment status from Shopify, or the status, dates and total from WooCommerce, by order number. It does not return a carrier tracking link; put your shipping times on a policy page so the agent can set expectations, and let a ticket handle anything stuck.
Do customers have to prove it is their order?
No. Lookups are not gated by the chat's email verification; the agent collects the order number or billing email like any other input. The response fields on each action limit what can be heard, and WooCommerce stores that care can enable only the lookup by email, which returns orders whose billing email matches exactly.
Can the agent process a refund or a return?
No. Stripe actions stop at cancelling at period end, and refunds or payments should never be connected as actions because a retry could run a write twice. The agent explains your returns policy from your content and files a ticket with the details so your team can act.
Which helpdesks can it create tickets in?
Zendesk, Freshdesk, Zoho Desk, HubSpot and Salesforce. Each creates a ticket or case with a subject and the details, and the agent reports the number back. Zendesk, Freshdesk, Zoho Desk and Salesforce can also check an existing ticket or case by number.
Does it work with a WooCommerce store on WordPress?
Yes. Install the PepoCloud AI Support Agent plugin, paste your Organization ID, and create a read-only WooCommerce REST API key for the integration. The plugin can hide the widget on paths like /checkout and clears common page caches when you save.
What happens on Black Friday when replies run out?
On Starter and Growth, replies beyond the allowance keep flowing at $10 per 1,000. On Free, new conversations go to your inbox with a friendly message once the 200 monthly replies are used, and the agent resumes on the first of the next month.
Does the agent read my product catalog?
It reads the product pages you import, so descriptions, sizes and materials that appear on the page are answerable. Spreadsheets and price lists work best with the labels repeated on every line, because long files are split into passages of about 1,000 characters.

Still unsure? Email [email protected] or talk to us.

“Where is my order?” handled in chat

Paste one script tag, point the agent at your content, and the first conversation resolves itself. Every feature is on the free plan.

Claims on this page were checked against the product documentation on October 27, 2026.