Turn this guide into your next task
Still applying? Save your progress. Already approved? Prepare an invoice using your actual service details, then track the payment in your account.
Free public tools. Saved records: 14-day trial, no card required; then $39/month or $390/year if you subscribe.
See how recurring ESA billing and payment tracking workFree ESA invoice template
A practical invoice baseline with state-aware checks. Print it, then verify the selected program’s current fields, documents and transaction path before submission.
Fields last verified July 2026 against official program documentation. Not legal advice.
The template
This is an editable ESA invoice starting point. Grey text shows what goes in each box; the callouts explain why the field may matter. The controlling program can add, remove or rename fields.
[Your legal business name]
[Business address] · [Phone / email] · [EIN]
INVOICE #[unique number]
Issued [invoice date]
Student (full name) [Student name]
Parent / account holder [Parent name]
Program [e.g. Arizona ESA / TEFA / FES-UA]
Service dates covered [May 5–30, 2026]
| Description + educational subject + service date | Qty/hrs | Rate | Total |
|---|---|---|---|
| [Service — name the subject, e.g. "Grade 2 reading & phonics tutoring", with each session date] | [8] | [$50] | [$400] |
| One expense category per invoice — don't mix e.g. curriculum with technology | |||
| Total due (must equal the sum of the lines) | [$400] | ||
Provider credential / license #: [where the service requires one — therapists and (in some states) tutors] · Payment via [ClassWallet / Odyssey / Step Up For Students]
Skip the blanks — the generator knows your state
The free invoice generator builds this template with your state’s exact required fields (Arizona’s invoice number and license rules, North Carolina’s 2.5% fee line, Florida’s per-category extras) and warns you before you submit something that’ll bounce.
Open the free invoice generator →What does an ESA invoice need? The direct answer
An ESA invoice needs enough detail for a reviewer to prove who supplied an eligible education expense, which student received it, what was delivered, when it was delivered, how the price was calculated, and which approval or credential applies. Put your legal business identity, a unique invoice number and issue date, the student and account holder, itemised service or product lines, dates, units, rates, totals, and any required provider credential on the face of the invoice. Then attach the category-specific evidence requested by the current program rules.
That is the useful cross-program answer; it is not a promise that one universal form will satisfy every state. Education agencies decide whether an expense is eligible, while a payment platform may collect and route the documents. A platform accepting the upload does not necessarily mean the agency has approved the expense. Always match the invoice to the program, category and payment path shown in the family’s current portal.
| Evidence block | Put this on the invoice | Question it answers |
|---|---|---|
| Vendor identity | Legal business name, address, contact details and any vendor or tax identifier the program requests. | Who is charging the ESA? |
| Document identity | A unique invoice number, issue date and, for a correction, an obvious revision label. | Which claim is this, and is it a duplicate? |
| Student and purchaser | The student’s full name, parent or account-holder name, and program name or identifier where required. | Whose education benefit is being used? |
| Delivery | Specific product or service, educational subject or purpose, and each service or fulfillment date. | What eligible expense was actually delivered? |
| Price calculation | Units or hours, unit rate, line total, permitted fee or discount, and a mathematically correct grand total. | How did the vendor reach the amount requested? |
| Eligibility support | License or credential when the category requires it; retain authorization, service logs or product evidence separately. | Why is this provider and expense eligible? |
Invoice, receipt, service log and authorization are not interchangeable
Many avoidable rejections begin with the right information on the wrong document. Treat the submission as a short evidence chain rather than a single PDF expected to do every job.
| Document | What it proves | What it does not prove by itself |
|---|---|---|
| Invoice | The vendor is requesting a specific amount for itemised products or services. | That the charge has already been paid or that every session occurred. |
| Receipt | A customer paid a stated amount using a stated payment method. | The student, educational purpose, service dates or credential if those are absent. |
| Service log | The dates, duration, subject and provider associated with delivered sessions. | The commercial amount due unless it is reconciled to an invoice. |
| Authorization or eligibility record | The program, student or provider met a prerequisite for the expense. | What was finally delivered or what remains payable. |
For direct vendor payment, label the invoice unpaid and do not also collect from the family unless the program explicitly instructs you to. For reimbursement, the family normally needs proof it already paid; the receipt and invoice should agree on vendor, items and amount. A mismatch can look like two different transactions even when the purchase was legitimate.
A five-minute pre-submission validation
- Identify the route. Confirm whether this is direct payment to the vendor, marketplace checkout or reimbursement to the family. Do not reuse instructions from a different route merely because the same platform name appears.
- Identify the category. Match the service or product to the program’s current eligible-expense label. Separate unrelated categories when the portal or rules require separate requests.
- Read every line as a reviewer. Replace generic wording such as “tutoring package” with the student-facing educational subject, unit, date and rate. A reviewer should not need to infer what was delivered.
- Recalculate independently. Multiply each unit by its rate, add the lines, account for any permitted fees or discounts, and compare the result with the uploaded amount.
- Match the supporting file. Check that names, dates, credentials and totals agree across the invoice, receipt, service log and portal fields. Open the final upload to confirm it is legible and complete.
Save the submitted file, submission date and confirmation or transaction identifier together. If a reviewer asks a question, answer the question directly and preserve the original rather than silently overwriting it. Issue a clearly named revision such as INV-1042-R1, note what changed, and link it back to the original in your records.
If the invoice has already been rejected
Do not guess and repeatedly upload near-identical files. Capture the exact rejection wording, classify it as missing information, eligibility, credential, duplicate, amount, timing or technical failure, then correct only what the decision requires. Use the ClassWallet rejected-invoice decision tree for the complete correct, clarify or appeal workflow.
What changes by payment platform
| Platform | Invoice quirk that gets providers rejected | Fees |
|---|---|---|
| ClassWallet | An ineligible line, wrong category or mixed-category order can affect review where the selected program applies category-level controls. | Vendor fees and fee treatment depend on the state program, transaction path and current vendor terms |
| Odyssey | Offering review and required descriptions vary by program and category; an approved business does not automatically approve every offering. | No upfront vendor fee to list; payouts run through a Stripe bank connection |
| Step Up For Students | Published reimbursement windows are not promises for provider payout; holds, missing information and scholarship-specific review can change timing. | Listing, transaction and payout terms depend on the current Step Up program, marketplace and provider agreement |
State-specific invoice requirements
The template above covers a common baseline. Your program and transaction path control the actual requirement—use the sourced state guide as a starting point:
Templates by provider type
A generic invoice is a starting point. These worked guides show the service descriptions, session details and supporting records that matter for two common provider workflows:
Six visual checks
The ESA invoice evidence workflow in six visuals
Use these as a sequence: verify the source, pass every eligibility layer, confirm the expense, assemble the packet, follow the transaction status, then match the deposit. Each visual summarizes a separate decision and the official program still controls.
ESA invoice template FAQ
Is there an official ESA invoice template?
Programs differ: some publish forms, checklists or portal prompts, while others describe the supporting documents they expect. Use the current source for the actual program and transaction. This template is a preparation aid covering common invoice elements, not an official form or a guarantee of approval.
What must an ESA invoice include?
At minimum: your legal business name and address, the student's full name, the parent/account-holder name, the invoice date and the dates of service, an itemised description naming the educational subject of each line, quantity/hours with unit price and total, and your credential or license where the service requires one. States add fields on top — Arizona requires a unique invoice number and (for therapists) a license number; North Carolina requires the 2.5% fee as its own line item if passed on.
Can I just send a receipt instead of an invoice?
No. A Square, PayPal, or point-of-sale receipt is not an itemised invoice and is a top rejection reason — it usually lacks the student name, the educational subject, and your credentials.
Does the same invoice work for ClassWallet, Odyssey and Step Up For Students?
The core fields overlap, but each rail reviews differently: ClassWallet orders must stick to ONE expense category (mixed categories can reject the whole order); Odyssey (e.g. Texas TEFA) pays against pre-approved marketplace listings and fulfillment confirmation; Step Up For Students enforces per-category documentation rules. Build the invoice for the rail you're paid through.
Why do ESA invoices get rejected?
Missing service dates, vague descriptions with no educational subject ("tutoring" instead of "Grade 3 reading"), no provider credential where one is required, totals that don't add up, receipts submitted instead of invoices, and mixed expense categories.
Primary sources and update policy
This guide separates agency eligibility decisions from payment-platform workflows and is maintained from current official material. Start with your state program’s eligible-expense and provider documents, then confirm the transaction route in the live portal. For platform mechanics, see ClassWallet’s official explanations of DirectPay and reimbursement. Florida providers should use the current Step Up For Students service-partner page. Requirements can change, so the official source and portal control if they conflict with this explanation.
How to become an ESA vendor → · Check an existing invoice for rejection risks → · Keep the audit-ready evidence →
From a blank template to a reviewable first invoice
The easiest way to lose time is to produce a polished PDF before checking who is paying and what the service record says. Start with the transaction, then fill the template.
- Identify the payment route. Record the state program, account or order reference and whether this is direct pay, family reimbursement or a marketplace order. Do not assume every state allows all three.
- Check the service evidence. For tutoring, use the session log template to confirm actual dates, subject, duration and which sessions are already billed.
- Separate issue date from service dates. An invoice prepared on September 6 can describe a September 3 session. Replacing both dates with “today” changes the meaning of the record.
- Check the arithmetic and identifiers. Use the correct student identity, provider details and a unique invoice number. A correctly calculated total does not prove the service is eligible.
- Keep the submitted version. Save the exact document you send through the authorized channel. Use the tracking register to record submission and payment separately.
Fictional example: a short follow-up lesson
A 60-minute lesson plus a 30-minute follow-up at $75 per hour totals $112.50. Each session gets its own line and date. The amount alone cannot tell a reviewer that the second session was half an hour; the description and quantity need to show it.
If a payer requests the rendering provider's credential or another category-specific document, keep that evidence with the invoice record. Do not insert invented identifiers to make an optional field look complete.
Keep your work through signup
The free invoice generator lets you prepare and print a draft without an account. When you choose “Save this invoice and continue,” it explicitly transfers the draft for signup and retains it for 72 hours. The account flow restores the provider, student and service lines so you can review them and continue into the submission workspace. Printing a free draft does not require this transfer.
A saved GetESAPaid invoice is your working record. It does not submit a claim, bypass a marketplace's document rules or guarantee that a program accepts the expense.
Product walkthrough
Prepare your first invoice
Add provider and student details, enter a completed service and save it into the submission workspace.
Recorded in the application with fictional records and synthetic narration. No real payments or program submissions are made.