A customer writes: "The AI gave me a bad answer, refund me." You have no policy, so you improvise. Next month a different customer asks the same thing and gets a different answer. The third one skips email and files a dispute with their bank. A refund and chargeback policy for AI products exists to stop this: one written rule, shown before payment, applied the same way every time.
This post is a template you can adapt, plus a decision table, an evidence checklist for disputes, and reply drafts. It is not legal advice. I'm not a lawyer, I haven't had it reviewed by one, and refund obligations vary by country, by what you sell and by who you sell to. Get a professional to review whatever you publish. Where I state something about a payment gateway, it comes from its own page, read on 2026-10-09, and I say how.
Why AI products need their own refund rules
Standard SaaS refund text assumes the product has a fixed cost to you. AI products differ in four ways:
- Variable cost per use. Every request costs you model money immediately, whether or not the customer was happy. See AI app gross margin per user for how big that can be.
- Outputs are probabilistic. A weak answer isn't always a defect. You need a line between "the product failed" (outage, error, charged twice) and "the output wasn't what I hoped".
- Credits and top-ups. Prepaid credits raise questions: do they expire, can unused ones be refunded, what if the customer already consumed half?
- Abuse potential. Someone can consume a month of usage and then ask for the money back. A policy that ignores this invites it. Pair the policy with usage limits; rate limiting a free tier shows one way.
The template
Copy this, replace the bracketed parts, and have it reviewed. Keep the language plain. A customer should be able to read it in under a minute.
REFUND POLICY for [PRODUCT NAME]
Last updated: [DATE]. Operated by [LEGAL NAME / BUSINESS NAME], [CITY, COUNTRY].
Contact for billing: [EMAIL]. We reply within [N] working days.
1. Subscriptions
You can cancel at any time from [WHERE]. Cancelling stops the next
renewal; access continues until the end of the paid period.
We refund the most recent charge in full if you ask within [7] days of
it AND your usage in that period is under [X requests / Y credits].
After that, we do not refund partial periods unless required by law
or by section 4.
2. Prepaid credits and top-ups
Unused credits can be refunded within [30] days of purchase.
Credits that have been used are not refundable.
Credits expire [N months] after purchase / do not expire. [CHOOSE ONE]
Bonus or promotional credits are not refundable.
3. Usage already processed
Requests that were processed and returned are considered delivered,
even if you are unhappy with the content of the output. AI outputs
can be incorrect or incomplete; see our [Terms / Limitations page].
4. When we will refund usage anyway
We will refund or re-credit usage if:
(a) the service returned an error or no result and we still charged you;
(b) you were charged more than once for the same thing;
(c) an outage or fault on our side prevented normal use for more
than [N hours] in a billing period; or
(d) we charged you after you cancelled correctly.
5. How to ask
Email [EMAIL] from the address on your account with the date, amount
and last four digits or reference of the payment. We will reply with a
decision within [N] working days. Approved refunds go back to the
original payment method. Banks and gateways need time to complete
them; your bank may take [5 to 7] working days to show the money.
6. Disputes with your bank
Please contact us first. If you file a chargeback, we will send the
payment processor the records we hold, including your account email,
login and usage history, and this policy. We may suspend the account
while a dispute is open.
7. Changes
We will post changes here with a new date. Changes apply to purchases
made after that date.
Notes on the bracketed choices:
- The usage threshold in section 1 is your protection against the consume-then-refund pattern. Set it from your cost numbers: a threshold that lets a customer burn through more than you collected defeats the purpose.
- Credit expiry is a legal and commercial question. Rules on expiring prepaid balances differ across jurisdictions, so check with a professional before you decide.
- Section 6 promises to send records. Only keep it if you really log what the sentence lists.
- "Required by law" is a deliberate escape hatch. Consumer rules may give customers rights your policy can't remove.
Decision table: common AI product refund requests
A policy is only useful if the support person can apply it in a minute. Here is one way to map situations to answers. These are suggested defaults for the template above, not rules you have to follow.
| Situation | Suggested default | Why |
|---|---|---|
| Charged twice for one order | Refund the duplicate, no questions | Clear billing error, cheapest to fix fast |
| Charged after cancelling correctly | Refund, check your cancellation flow | Your fault; a dispute is likely if refused |
| Asked within 7 days, little usage | Refund the latest charge | Matches section 1 and reduces disputes |
| Asked within 7 days, heavy usage | Decline or offer partial | You already paid for the model usage |
| "The answer was wrong" | Decline refund, offer help or a re-run credit | Output quality isn't a billing defect, but a goodwill credit often costs less than a dispute |
| API errors, no result delivered, still charged | Re-credit the usage or refund | Section 4(a) |
| Outage lasted longer than your threshold | Pro-rata credit | Section 4(c) |
| Unused prepaid credits within 30 days | Refund unused portion | Section 2 |
| Used credits, now wants money back | Decline | Usage delivered |
| Suspected abuse or account sharing | Decline, document, escalate | Don't reward the pattern |
| Student or hardship request | Your call, document it as an exception | Exceptions are fine if recorded as such |
The "wrong answer" row deserves a second look. If your product is sold on accuracy (for example it claims to extract invoice data correctly), a pattern of wrong outputs may be a product failure, and your marketing claims may matter legally. Don't overpromise on the pricing page.
What do gateways say about refunds?
From Razorpay's refund documentation, read on 2026-10-09 (I checked the page text directly; the page says the amount is refunded within 5-7 working days):
- A normal refund is returned within 5 to 7 working days.
- Refunds go back to the original payment method only ("source refunds").
- Normal refunds are not possible for payments older than 6 months; they move to a failed state.
- Instant refunds exist but I couldn't find a timeline on that page.
From Razorpay's pricing page, an earlier summarised read listed the standard refund processing fee as Rs 0 and Instant Refunds at Rs 7.99, Rs 11.99 and Rs 14.99 by amount band. When I re-fetched the page text on the same date for editing, those instant-refund figures did not appear in it (the page lists "Instant Refund" only as a product name), so treat them as unconfirmed and check the live pricing page. The page did not list a dispute or chargeback fee, and I could not find a dispute documentation page that loaded, so I'm not stating deadlines or fees for chargebacks. Look them up in your own dashboard and merchant agreement. Cashfree's pricing page, as summarised, did not state refund or chargeback fees either. I did not verify what happens to the original gateway fee when you refund, so check whether it is returned. That affects your margin on every refund. Our Cashfree vs Razorpay comparison and the Razorpay setup guide for Shopify stores cover other gateway differences.
If you sell recurring plans in India, the UPI Autopay basics post covers autopay limits, pre-debit notices and failed debits, which affect what you promise about renewals.
Practical consequence: tell customers "5 to 7 working days" in the policy, as the template does, so a refund that has been issued but not yet visible doesn't turn into a dispute.
Chargeback evidence checklist
A chargeback is a bank-run dispute, and processes differ by network and gateway, so treat this as a list of records worth having, not a guaranteed winning recipe. Disputes often have short response windows, so know your gateway's deadline before you need it.
Keep and be able to export:
- Customer identity: account email, name, signup date, billing country.
- Payment record: gateway payment ID, amount, date, last four digits or reference, 3-D Secure or OTP result if available.
- Proof of delivery: timestamps and counts of requests, credits consumed, files generated, API calls with response codes. For AI products, usage logs are your delivery evidence.
- Login and access history: dates, IP addresses, device information. Handle this under your privacy policy and local data law.
- Policy shown at checkout: a screenshot or stored copy of the refund policy and terms, with the date, and proof the customer accepted them (a checkbox event or timestamp).
- Communication: every support email, including any refund offer you made and any reply.
- Cancellation history: when they cancelled, or that they never did.
Build the export before you need it. A script that outputs these seven items for a given customer ID turns a bad afternoon into a ten-minute task.
Reply drafts
These are untested templates; adapt the tone to your brand.
Declining a refund politely:
Hi [NAME],
Thanks for writing. I checked your account: on [DATE] you
purchased [PLAN/CREDITS] and since then [N requests / Y credits] have
been processed. Under our refund policy (link), usage already
delivered isn't refundable, so I can't refund this charge.
What I can do: [re-credit N requests / a free month / help you fix the
prompt or setting that caused this]. If you think we charged you
incorrectly, reply with the payment reference and I'll check again.
[YOUR NAME]
Approving a refund:
Hi [NAME],
I've refunded [AMOUNT] to your original payment method. Your bank
usually shows it within 5 to 7 working days. Reference: [REFUND ID].
Your plan [has been cancelled / stays active until DATE].
[YOUR NAME]
Heading off a dispute:
Hi [NAME],
I see a dispute was opened for [AMOUNT] on [DATE]. Before it goes
further: if something went wrong, reply here and I'll fix it or refund
you directly, which is faster than the bank process. If the dispute
stays open, I'll submit our records to the payment processor, as the
policy describes.
[YOUR NAME]
Never threaten a customer or promise an outcome you don't control. Note that withdrawing a dispute is the customer's action with their bank, not something you can force.
Launch checklist
- Policy page live, linked in the footer and at checkout, dated.
- Checkout shows a one-line summary and a link, with an acceptance record stored.
- Usage logs retained long enough to answer a dispute (decide a retention period with your privacy obligations in mind).
- A single inbox for billing, a named person, a reply-time promise you can keep.
- A spreadsheet or tool where each refund and dispute is logged with reason and outcome. After a month, read it: the reasons will tell you what to fix in the product.
- A professional's review of the final text.
If refunds and disputes are eating more margin than you expected, the fix is usually upstream: a clearer product page, honest limits on what the AI does, usage caps, and a cancellation button that works.



