E-commerce intent classification

Know what your customer means, instantly.

A fine-tuned API that reads support tickets and returns the intent — WISMO, returns, exchanges, and six more — in under 10 milliseconds. Built for developers, priced for startups.

rapidapi.com · ecomintent / classify
Ticket text
"hi where is my order #8834 it's been 8 days"
Response · 7ms
WISMO
94% confidence · 7ms · $0.001 / 1k calls
99.9%
Accuracy on e-commerce benchmark*
<10ms
P95 inference latency
15×
Cheaper than GPT-4o mini
9
E-commerce intent classes
* Measured on held-out Bitext test set. Estimated 87–93% on production tickets. Full methodology →
How it works

One call. One intent. Immediate action.

No training required, no labeling, no ML expertise. Send a ticket, get back a label your automation rules can act on.

01
Send the ticket text

POST the raw customer message to /classify. No preprocessing, no tokenizing. The raw text is enough.

02
Get back an intent label

The API returns an intent label, a confidence score, and the full probability distribution across all nine classes. Results arrive in under 10ms.

03
Automate on the label

Route to the right agent queue, trigger a macro reply, set ticket priority, or write the intent as a tag in Gorgias. The label is your decision variable.

# Python — classify a support ticket import requests response = requests.post( "https://ecomintent-e-commerce-intent-classifie.p.rapidapi.com/classify", headers={ "X-RapidAPI-Key": "your_rapidapi_key", "X-RapidAPI-Host": "ecomintent-e-commerce-intent-classifie.p.rapidapi.com" }, json={"text": "hi where is my order it's been 8 days"} ) result = response.json() # → { "intent": "WISMO", "confidence": 0.94, "latency_ms": 7 } # Route in Gorgias, Zendesk, or your own helpdesk if result["intent"] == "WISMO": apply_tag(ticket_id, "ei-wismo") route_to_queue("fulfillment")
Intent taxonomy

Nine classes that cover 95% of support volume.

Designed from real e-commerce ticket data. Not generic NLP labels — the exact categories your support team already uses.

WISMO
Order tracking
"where is my package it's been a week"
RETURN_REQUEST
Return for refund
"I need to send this back, doesn't fit"
EXCHANGE_REQUEST
Swap for different variant
"can I get a large instead of medium"
CANCEL_ORDER
Cancel before shipment
"please cancel order #4492 now"
DAMAGED_ITEM
Broken or wrong item
"the screen was cracked when I opened it"
BILLING_DISPUTE
Charge or payment issue
"you charged me twice for the same order"
PRODUCT_QUESTION
Specs and compatibility
"does this work with the 2023 MacBook?"
ACCOUNT_ISSUE
Login and access
"I can't log in, forgot my password"
OTHER
Out of scope
Greetings, feedback, ambiguous messages
Comparison

Built for this job. Not retrofitted.

General-purpose LLMs handle intent classification passably. A model fine-tuned on 46,000 e-commerce examples handles it precisely — at a fraction of the cost.

Metric
EcomIntent
GPT-4o mini
Forethought
Accuracy (e-commerce)
99.9%*
~84%
85–92%
P95 latency
<10ms
~450ms
~300ms
Cost per 1k calls
$0.001
$0.015
$30K+/yr flat
Self-serve API
Yes
Yes
No — sales call
E-commerce taxonomy
Purpose-built
Generic
Generic
Onboarding time
5 minutes
5 minutes
30–90 days
Pricing

Pay for what you call. Nothing else.

No seat licenses. No annual commitments. Scales from your first prototype to production traffic.

Free
$0
500 calls / month
  • All 9 intent classes
  • Full confidence scores
  • Batch endpoint
  • No credit card required
Pro
$99/mo
500,000 calls / month
  • Everything in Starter
  • $0.001 overage per call
  • Priority support
  • Usage analytics
Enterprise
$299/mo
Unlimited calls
  • Everything in Pro
  • Custom taxonomy option
  • SLA guarantee
  • Dedicated support
FAQ

Common questions.

Send a POST request with the ticket text to /classify and get back the intent label and confidence score in under 10ms. EcomIntent covers the 9 intents that make up the vast majority of e-commerce support volume: WISMO, returns, exchanges, cancellations, damaged items, billing disputes, product questions, account issues, and other.

Yes — significantly. EcomIntent costs approximately $0.001 per 1,000 calls. GPT-4o mini costs $0.015 per 1,000 calls zero-shot, or $0.045 with few-shot examples. That's 15–45× more expensive for a task a purpose-built fine-tuned model handles more accurately anyway. EcomIntent also responds in under 10ms vs. GPT-4o mini's 300–600ms.

The EcomIntent Gorgias plugin (available in the Gorgias App Store) receives new ticket webhooks, classifies the ticket text, and applies an intent tag — ei-wismo, ei-return, ei-exchange, etc. — directly in Gorgias. You then build Gorgias automation rules on top of those tags to route tickets, trigger macros, or set priority. Setup takes under 5 minutes.

On the Bitext e-commerce benchmark (held-out test split), EcomIntent achieves 99.9% accuracy. On real-world production tickets — which are messier, shorter, and more varied than benchmark data — estimated accuracy is 87–93%. We're transparent about this distinction in the full model card. We recommend testing against a sample of your own ticket history before committing.

If the model's top confidence score falls below the threshold you set (default 0.70), EcomIntent returns OTHER instead of a low-confidence guess. This means ambiguous tickets — greetings, vague messages, multi-intent edge cases — are flagged for human review rather than mislabeled. You can tune the threshold per your use case.

Yes. EcomIntent is a standard REST API — one POST request, one JSON response. No model hosting, no GPU setup, no labeling, no fine-tuning required. If you can make an HTTP request, you can use EcomIntent. The Gorgias plugin requires no code at all — just install, enter your API key, and it starts tagging tickets automatically.

Yes. EcomIntent is a generic REST API that works with any helpdesk platform that can make HTTP requests or receive webhooks. Direct integrations exist for Gorgias (App Store plugin) and Shopify Inbox. For Zendesk, Freshdesk, or custom systems, you call the API from your own webhook handler and use the returned intent label in your routing logic.