Module · Collect
CFDI 4.0 invoicing for bus tickets, with no manual data entry
Passengers invoice themselves from your website using their ticket number, or your box office does it for them. Boleti stamps the invoice, emails the PDF and XML, and keeps it linked to the sale.

The problem
Invoicing tickets by hand eats up your day
A passenger asks for an invoice at the counter and the line stops. Someone copies their tax details into another system, types the amount by hand and hopes it matches the ticket. At month end, your accountant asks for the XML files and nobody knows where they are. CFDI invoicing for your bus tickets shouldn't be a separate job.
Invoices typed in at the counter
Your staff stop selling to copy the tax ID, legal name and amount into another system while the line grows and the bus is about to leave.
Invoices that don't match tickets
The wrong amount gets invoiced, a ticket is invoiced twice, or the ticket is cancelled and the invoice stays valid. Nobody notices until month end.
Your accountant asking for XML
Every month someone has to dig loose files out of emails and folders to know what was invoiced, to whom and from which sale.
What you can do
Everything you need to invoice your tickets
Invoicing portal with your brand
An Invoice my ticket link appears in the footer of your sales website. Passengers get their invoice without calling you, and can combine several tickets into one.
CFDI 4.0 stamping with PDF and XML
Boleti stamps the electronic invoice, breaks out VAT according to your fare and emails the passenger a PDF with your brand plus the XML file.
Every invoice tied to its ticket
You see which ticket produced each invoice. An invoiced ticket can't be cancelled or repriced while its invoice is valid, so your sales and invoices always match.
From the box office, too
If a passenger asks at the counter, you invoice straight from the ticket and print it on the spot. Tax details of returning customers stay saved.
Your tax details, entered once
You load your tax ID, tax regime, postal code and SAT seals in Settings. From then on every invoice is issued in your company's name, with no retyping.
How it works
How invoicing works in Boleti
Step 1
We turn on invoicing for your company
You ask us to turn it on and load your tax details and SAT seals. We stay with you until your company is ready to stamp real invoices.
Step 2
The passenger opens Invoice my ticket
On your sales website they enter the ticket number, their name and the total they paid. If all three match, their ticket is ready to invoice.
Step 3
They enter their tax details
Tax ID, name or legal name, tax regime, postal code and CFDI use. If they traveled on several tickets, they combine them into one invoice.
Step 4
They receive their stamped CFDI
The PDF and XML arrive by email and can be downloaded right there. You see the invoice under Issued invoices, next to the ticket it came from.
Plans
Included in every plan
CFDI 4.0 invoicing comes with every plan, starting with Ruta. Each invoice uses one stamp, which you buy in packs from your account. The self-service portal for passengers comes with your sales website, from Línea up.
- Ruta Included
- Línea Included
- Flotilla Included
- Central Included
Included in every plan
30 days free, no card needed
Compare all plansFrequently asked questions
Questions about invoicing
What do I need to turn on invoicing?
Your tax details (tax ID or RFC, legal name, tax regime and postal code) and your SAT digital seals, the CSD: the .cer file, the .key file and its password. You ask us to turn it on, load them in Settings, and we stay with you until your first real invoice. If you don't have your seals yet, your accountant can request them from the SAT.
Can my passengers invoice on their own?
Yes, if you sell through your Boleti website. An Invoice my ticket link appears in the footer: the passenger enters the ticket number, their name and the total paid, adds their tax details and gets the PDF and XML by email. They can combine up to 10 tickets into one invoice. You decide whether web invoicing stays on.
What happens if an invoiced ticket gets cancelled?
Boleti won't let anyone cancel or reprice a ticket while its invoice is valid, so your sales and invoices always match. First the invoice is cancelled from Issued invoices, choosing the reason the SAT requires, and then you can change the ticket as usual.
How do I get the invoices to my accountant?
Issued invoices lists every invoice with its status, whether it came from the box office or the website, and the ticket that produced it. For each one you download the PDF and XML, or resend it by email whenever needed. Your accountant has everything in one place, with no digging through emails.
How long does a passenger have to request an invoice?
On the website, until the last day of the month they bought the ticket. At the box office, your staff can invoice it until the 10th of the following month, and you can adjust that deadline in Settings. A ticket paid with a deposit is invoiced once it is fully paid, so the invoice shows the real total.
Also useful
Features that go hand in hand with invoicing
Card and OXXO payments
Cash, card terminal, bank transfer, online card and OXXO cash payments
See Card and OXXO paymentsCash and collections
Cash-ups that add up, deposits with photos and expenses with receipts
See Cash and collectionsBox office with seat map
Counter sales with no double-booked seats and every payment logged
See Box office with seat map
Is this your line?
See the solution for Bus linesSell, collect and run your intercity bus line in one systemStart today
Let your passengers invoice themselves
Try Boleti free for 30 days, no credit card. We help you load your routes and fares, and whenever you want to invoice, we turn on the module with your tax details.
That's why Boleti is the best bus ticketing system in Mexico.
No card and no lock-in