Free tool

B2B Invoice Generator

Raise an invoice another company's AP team will book on the first pass: legal entity, tax IDs, their PO number, payment terms, service period and remit-to details, checked before you send it. Export the PDF and the journal entry that goes with it.

Build the invoice

For the invoices that do not come out of your billing system: a new entity not yet set up in the ERP, a one-off or milestone bill, an intercompany recharge, a pro forma for a customer's procurement team, or a credit memo against something already sent. The sample below is already filled in, so you can see what it produces before you type anything.

From: your entity

The name your customer’s AP team should reply to.

PNG or JPEG, up to 2 MB. It stays in this tab and is not saved to your profile file.

Bill to: your customer
The references their AP team matches on

You set the sequence, for example HLL-2026-0412. The tool cannot see the last number you issued.

The service period tells your customer which month to accrue the cost in.

Terms and currency

The due date is worked out from the invoice date in calendar days, and printed.

One currency per invoice, printed as its ISO code beside every amount. Nothing is converted.

Line items

Each line takes a tax rate you enter. The tool does not decide whether tax applies.

Used only by the journal entry export, so it posts to the right accounts.

  1. Line 1

  2. Line 2

  3. Line 3

Remit to

Where you want to be paid. It is printed on the invoice and never sent to us.

“Our bank details will not change by email. Confirm any change by phone with your AR contact.”

USD 37,360.00Preview and export

Runs entirely in your browser. Nothing you enter is sent to us or stored.

Total due November 14, 2026

USD 37,360.00

Will it clear their AP?

1 of 10 checks need a look. Advice only: nothing here stops you exporting.

  • Needs a look: Bill to a legal entity

    “Castellan Foods” reads like a brand rather than a legal entity. If the entity that raised the PO has a registered name, use it.

Sample invoice. Every company, account and number in it is fictional.

Harbor Line Logistics, Inc.

1450 W Fulton Street, Suite 300

Chicago, IL 60607

United States

EIN 12-3456789

Dana Ruiz, Accounts Receivable

ar@harborline.example.com

Invoice

Invoice number
HLL-2026-0412
Date
September 30, 2026
Due date
November 14, 2026
Terms
Net 45
Customer PO
4500018822
Vendor number
V-20417
Service period
September 1, 2026 to September 30, 2026
Currency
USD

Bill to

Castellan Foods

Attn: Accounts Payable

200 Market Avenue

Columbus, OH 43215

United States

AP: invoices@castellanfoods.example.com

Ship to / service location

Castellan Foods Distribution Center

4100 Alum Creek Drive

Columbus, OH 43207

DescriptionQtyUnitUnit priceTaxAmount (USD)
Full truckload, Chicago to Columbus14load2,450.0034,300.00
Pallet storage, Columbus DC320pallet-week6.756.25%2,160.00
Liftgate delivery9stop85.00765.00
Subtotal
USD 37,225.00
Tax at 6.25% on 2,160.00
USD 135.00
Total due
USD 37,360.00

Remit to

Bank
First Harbor Bank
Account name
Harbor Line Logistics, Inc.
Routing number
123456789
Account number
000123456789

Our bank details will not change by email. Confirm any change by phone with your AR contact.

Related reading

What happens to an invoice after it is sent, and what it takes to collect on it without a person chasing it by hand.

What a B2B invoice has to carry

A consumer receipt proves someone paid. A business invoice has a harder job: it has to survive another company's accounts payable process, which is built to reject anything it cannot match. Most late payments between companies start as an invoice that was queried, not one that was refused.

Your customer's AP team matches your invoice against a vendor record. If the name on the invoice is your trading brand and the vendor record holds your registered entity, the invoice goes to a queue while someone works out whether you are the same company. Use the legal name, the registered address and the tax ID that match the W-9 or the vendor onboarding form you gave them.

The same applies in the other direction. Bill the legal entity that raised the purchase order, not the division or the person who signed it off. In a group with several entities, the wrong one on the invoice means it is booked in the wrong ledger or not booked at all.

The references they match on

In most mid-sized and larger companies, AP matches an invoice against a purchase order and, for goods, a receiving record. This is the three-way match. An invoice with no PO number cannot be matched automatically, so it is routed to a person, who emails the requester, who is on leave.

The invoice number matters for a different reason. AP systems check for duplicates on the combination of vendor, invoice number and amount. Reuse a number, or resend a corrected invoice under the old number without saying it replaces the first, and it will be held as a possible duplicate. Corrections go out as a credit memo against the original, followed by a new invoice under a new number.

Dates and terms

Three dates, each doing a different job:

DateWhat it does
Invoice dateThe date the payment terms run from
Service periodThe month your customer's cost belongs to
Due dateInvoice date plus the terms, printed, never left to be worked out

Printing the due date removes an argument. Printing the service period helps your customer accrue the cost in the right month, which on a month-end close is often the difference between an invoice processed this week and one held for the next period.

For early-payment discounts, 2/10 Net 30 means the customer may take 2 percent off if they pay within 10 days, and otherwise owes the full amount in 30. This tool takes the discount off the subtotal and leaves the tax in full unless you tell it otherwise, and prints the amount and the date, because practice varies.

Tax

This tool does not decide whether a sale is taxable, at what rate, or in which jurisdiction. You enter the rate on each line and the tool does the arithmetic, rounding tax line by line so the printed lines always add to the printed total. Tax treatment depends on what you sold, where it was delivered, and whether the customer gave you an exemption or resale certificate, and those are questions for your tax team or adviser.

Remit-to details, and the fraud they attract

Invoices carrying bank details are the raw material of payment redirection fraud: a lookalike email tells your customer your bank account has changed, and the next payment goes to someone else. Your customer's AP team loses the money and you lose the receivable. A line on every invoice saying your bank details will not change by email, and naming who to call if they appear to, gives their AP team a reason to stop and check. The tool prints one by default.

A worked example

The sample invoice the tool opens with. Every company in it is fictional.

Harbor Line Logistics, Inc. bills Castellan Foods for September freight and storage under Castellan's purchase order 4500018822, on Net 45 terms. The storage line carries a 6.25 percent tax rate, entered by the user.

LineQtyUnitUnit priceAmountGL account
Full truckload, Chicago to Columbus14load$2,450.00$34,300.004010 Freight revenue
Pallet storage, Columbus DC320pallet-week$6.75$2,160.004020 Storage revenue
Liftgate delivery9stop$85.00$765.004010 Freight revenue
Subtotal$37,225.00
Tax, storage line only, 6.25%$135.002200 Sales tax payable
Total due$37,360.00

Invoice HLL-2026-0412, dated September 30, 2026, service period September 1 to 30, 2026, due November 14, 2026.

The journal entry the tool exports with it (the customer and invoice number travel in their own columns of the CSV):

AccountDebitCredit
1200 Accounts receivable37,360.00
4010 Freight revenue35,065.00
4020 Storage revenue2,160.00
2200 Sales tax payable135.00
Total37,360.0037,360.00

What the readiness check catches in the sample: it bills "Castellan Foods," the brand on the delivery paperwork, rather than "Castellan Foods Corp.," the entity that raised the PO. That is one line to fix, and the most common reason an invoice sits in an AP exception queue instead of a payment run.

The invoice was the easy part

Raising an invoice takes ten minutes. Getting paid for it takes the next sixty days. Someone watches the bank for the deposit, finds the remittance in an inbox or a customer portal, matches one payment against the eleven invoices it covers, parks the short pay in unapplied cash, and sends the reminder on day forty-six, when they remember.

Adopt's agents run that part. They pull deposit detail from your bank portals and Stripe, read the remittance wherever it landed, apply cash against open invoices in NetSuite or QuickBooks, and tie the aging to the general ledger. The chase is drafted for you, and it waits for a named person on your team to approve it before anything reaches a customer.

Your ERP stays the system of record for the invoice and its paid status. Adopt never moves money.

Free tier: connected accounts, monthly statements, cash forecasting and receivables chasing. $299 per month adds full-service accounting with a dedicated accountant and tax expert behind the agents.

What this tool does not do

This tool creates one invoice at a time. It does not send the invoice, track whether it was opened, take payment, or remind anyone when it falls due. It keeps no record of the invoice numbers you have issued, so preventing a duplicate number is up to you. It does not determine tax treatment, convert currencies, or produce a structured e-invoice for countries that require one. It is built for billing between businesses.

Questions

Stop chasing invoices
from a spreadsheet.

Every invoice you send starts a receivable someone has to watch. Adopt's agents apply the cash, tie the aging to the ledger and draft the chase, and your team approves what goes out.