Everything you need to know about invoicing as a freelancer — which platforms to use, how to set up payment terms, when to send invoices, and what to do if a client doesn't pay.
8 mins
Invoicing might be the easiest part of setting up your freelance business — surprisingly!
What Are Invoices?
Invoices are simply how you request payment from your clients. They also serve as a receipt on their end.
🚨 My Warnings on Payment Platforms
Do not use PayPal. Their refund policy is very loose. Even if you have "no refunds" explicitly stated in your contract, clients can request a refund through PayPal if they know the rules — and PayPal may honor it regardless of what your contract says. This happened to me once. I never got the money back after months of back and forth.
PayPal can also hold money in your account, suspend your account without warning, and is not FDIC insured — meaning they're under no legal obligation to protect your money.
Same goes for Venmo (a PayPal subsidiary) and Zelle — neither is designed for business payments, neither offers seller protection, and neither is FDIC insured as a standalone payment service. Keep these for splitting dinner, not paying invoices.
How to Invoice Your Clients
There are a lot of ways to do this, but I recommend picking one platform and sticking with it across all your clients. It keeps things consistent and way easier to track.
My top recommendation is to invoice through QuickBooks or your business bank account directly. If you're using a CRM like Moxie or HoneyBook, invoicing is built right in — which makes it even easier since your contracts, proposals, and invoices all live in one place.
Here are platforms you can invoice through (⭐️ = my favorites):
→ ⭐️ Novo — business banking with invoicing built in; this is what I use → ⭐️ QuickBooks — the gold standard for freelance bookkeeping and invoicing; worth it if you want everything in one place → ⭐️ Moxie — all-in-one freelance business platform; invoicing is included alongside contracts, proposals, and project management → Stripe — great if you're already using Stripe as your payment processor → Wave — updated their pricing model in 2024; basic invoicing is still free on the Starter plan, but some features (like automatic bank transaction imports) now require the Pro plan ($16/month). Still a solid free option for simple invoicing needs → HoneyBook — CRM with invoicing built in; great if you want client management and invoicing together → Dubsado — similar to HoneyBook; invoicing included with subscription → Bonsai — contracts and invoicing together; good free option → FreshBooks — solid but on the pricier side for new freelancers
Payment Processors
In addition to an invoicing platform, you'll need a way for clients to actually pay you — especially if you want to accept credit cards.
Almost all payment processors charge a fee. It's basically unavoidable if you want to accept direct card payments. The only way to avoid fees entirely is getting paid via ACH (bank transfer).
My advice: don't try to avoid the fees. Here's why — you need to make it as easy and convenient as possible for clients to pay you. The easier it is, the faster you get paid. If you make it complicated, they may pay late, or not at all, and you'll spend more time and stress chasing them down than the fee was worth.
You can factor those fees into your rates. Just don't ever charge clients for processing fees as a separate line item — that's illegal in most states. Processing fees are also fully tax deductible as a business expense.
My recommendation: Stripe
Stripe currently charges 2.9% + $0.30 per domestic card transaction and 0.8% (capped at $5) for ACH bank transfers. There are no monthly fees — you only pay when you process a transaction. Always check stripe.com/pricing for the most current rates since these can change.
Stripe has strict security, transfers to your bank account in 2–3 business days, and accepts both credit cards and ACH transfers. It's my go-to.
If you work with international clients: Consider Wise for cross-border payments. Wise uses the real mid-market exchange rate with low, transparent fees — significantly cheaper than PayPal or traditional banks for international transfers. You can receive payments in multiple currencies and withdraw to your local bank account. It doesn't replace Stripe for domestic clients, but it's the go-to for working with clients outside the U.S.
Some clients will want to use their own systems like Bill, Coupa, or similar remittance platforms. Don't fight it — they're not going to change their entire accounts payable process for you. What I do: create the invoice in my own system (Novo), download it as a PDF, and upload it to their system as an attachment. That way I can track everything in one place. Once they pay, I mark it as paid in my system and match it to the transaction in my banking app.
Some clients may also issue a PO (Purchase Order). This is actually useful — it gives you a sense of how much budget they've allocated for you. It's not a guarantee, but it's a good signal of what you might earn long-term.
When Should I Send Invoices?
This depends on the client. When you first start working together — either on your discovery call, in a follow-up email after signing the contract, or in your onboarding questionnaire — ask if they have a preferred invoicing process.
If they do, follow it. If they're a small business or a first-time freelancer client with no established process, you can set the terms. Here's how I handle it:
For larger companies or small one-off projects (single blog posts, articles, etc.): It's usually fine to invoice upon delivery of the final product. Just make sure your contract clearly outlines the deliverable, the amount, and the payment window.
For larger projects, ongoing work, or smaller businesses: I recommend charging at least 20% upfront. This protects you if a client disappears before paying. It's rare — but it happens. Clients who pay something upfront are also significantly less likely to ghost you later. If a client refuses to pay anything upfront, ask why. It's a yellow flag. Proceed with caution.
Payment Terms (NET)
The timeframe you should expect to get paid is called NET. Here's what the terms mean:
→ Net 7 — pay within 7 days → Net 15 — pay within 15 days → Net 30 — pay within 30 days → Net 60 — pay within 60 days → Net 90 — pay within 90 days
These include weekends, not just business days.
For large corporations or clients with established pay schedules, I'll accept up to Net 90 — especially for smaller projects. Most clients with 10+ employees pay in 30–60 days. Solopreneurs and small businesses usually pay in 5–14 days.
One important note on Net 90: if you have a client on Net 90 terms, plan accordingly. That money isn't available for three months. Factor this into your cash flow so you're not caught short while waiting on a large payment.
I establish payment terms during the discovery or kickoff call and make sure they're clearly outlined in the contract.
If a client hasn't paid within 5 days after the due date, I charge a 5% late fee per day. I've only had to use this once. It's all written into my contract. (Check your state's late fee laws — there's a link in the Contracts lesson.)
Set Up Automatic Reminders
Most invoicing tools (Novo does this automatically) will handle payment reminders for you. If yours doesn't, you can set up scheduled sends through Gmail or your CRM. I send three reminders per invoice:
→ Upcoming payment — sent 7–14 days before the due date, with the invoice attached → Payment due — sent the day the invoice is due → Payment past due — sent only if they haven't paid on time; lets them know a late fee will be applied
If you're sending these manually, make sure to cancel the "past due" email if they pay on time.
For larger companies with their own billing cycles, I simplify: send one invoice and follow up on day 31 if I haven't heard anything.
My Invoicing Process
- Finish the deliverable and send it to the client
- Create and send the invoice immediately after — don't wait or you'll forget
- Wait for your payment term to pass
- If an invoice becomes overdue, send a reminder
- If you used your own contract with late fees, let them know when fees will kick in and how much
- If you're not using your own contract, follow up every few days. Send directly to AP (Accounts Payable) if possible and CC your editor or main point of contact
What to Do If a Client Doesn't Pay
A lot of newer freelancers freeze when this happens. Here's a simple protocol:
Step 1: Send a polite but firm reminder. Give them the benefit of the doubt — the invoice may have gotten lost or landed in spam. Resend it with a short, professional note.
Step 2: Escalate within their organization. If your contact isn't responding, find their AP (Accounts Payable) department or billing contact and reach out directly. CC your original contact.
Step 3: Send a formal demand letter. If you're still getting no response, send a written demand that states the amount owed, the work completed, the original due date, and a deadline to pay before you take further action. You can write this yourself — it doesn't require a lawyer.
Step 4: Consider small claims court. For smaller amounts, small claims court doesn't require an attorney and is relatively straightforward. Weigh the cost and time against what you're owed — for very small amounts, it may not be worth it. For larger amounts, it absolutely can be.
Having a solid contract makes all of this much easier — which is exactly why the contracts lesson comes before this one.
I have email templates you can use right here:
Freelancer Email Templates