Jump to…
Recording manual payments
Not every dollar comes through Stripe. You take checks, you take cash, you take Zelle, you take the occasional wire. The Payments section on every project lets you log every one of those against the right invoice so your job totals, your Collected total on the dashboard, and your cost numbers in Costs & Materials all reflect reality — not just the slice of revenue that happened to flow through cards.
This works the same whether you have Stripe Connect set up, run invoicing through HighLevel, or have no payment processor at all.
When to use this
You used a manual payment whenever the homeowner paid you and the money did not arrive through BidCraft's Pay button. That covers:
- Check dropped off at the job site or mailed in
- Cash handed over at the deposit signing
- Zelle sent to your business account
- Wire transfer from the homeowner's bank
- Manual ACH the homeowner set up directly with you
- Anything else — Venmo, CashApp, money order, etc.
You don't need to log Stripe payments — those show up automatically. Manual recording is only for payments that BidCraft didn't process.
How to record a payment
[!steps]
- Open the project and tap the Payments chip.
- Find the invoice you're recording a payment against (deposit, progress, final).
- Click Record payment.
- Enter the amount, pick the method, set the date the funds actually arrived, and add a reference number if you have one.
- (Optional) Add a short note — "dropped off in person Saturday" or "Zelle confirmation #ABC123".
- Leave Email a receipt to the client ticked if you want them to get a confirmation. Add an address only if it should go somewhere other than the client's email on file.
- Click Record.
The invoice flips to Paid the moment your recorded payments cover the full amount. If the deposit is the only milestone you've sent and you've now covered it, the whole project advances to Paid automatically — same as if Stripe had collected the money.
Partial payments work too
If a homeowner pays half the deposit by check now and you'll collect the other half on installation day, log the first half as soon as you receive it. The invoice stays in Outstanding and the row shows "X collected · Y due" so you don't lose track. Log the second half when it arrives and the invoice flips to Paid.
Overpayments and credits
If you record more than the invoice amount (homeowner rounded up, or paid the deposit and a chunk of progress in one check), BidCraft accepts it. The header tile shows the overage so you know there's a credit applied. You can manually credit the next milestone by reducing the next Send by the overage amount, or leave it as a balance you reconcile in person.
Picking the right payment date
The payment date is the date you actually received the money, not the date you got around to logging it. Backdate it freely — picking last Tuesday because the check came in last Tuesday is correct even if you're logging it Friday. This matters because:
- The cost variance numbers in Costs & Materials use payment dates to bucket cash inflows
- The Collected total on the dashboard for "this month" uses payment dates
- The project's audit trail reads more naturally when dates match the real world
Reference numbers help future-you
Whenever a method has a paper trail, log the reference number. Check #1234 is the most common one — if a dispute ever comes up six months later, "Check #1234 dated 4/12" is a much better answer than "manual check, I think." Same logic for Zelle confirmations, wire references, money order numbers.
For cash, leave the reference blank. There's nothing to reference.
Emailing a receipt
A check doesn't come with a confirmation email. Ticking Email a receipt to the client when you record the payment sends one — amount, method, date, and the milestone it went against — so the homeowner has something in writing without you writing it.
Whether that box starts ticked is up to you: it follows the Payment receipts setting under Settings → Proposal Settings → Invoices & receipts, and you can change it on any individual payment. You can also add a custom note there — a thank-you line, your warranty terms, your license number — that prints at the bottom of every receipt you send.
If the email can't go out (no address on file, or a typo), the payment is still recorded. You'll get a warning about the receipt, not an error about the payment — the money is in the ledger either way.
Forgot to tick the box, or the client says it never arrived? Every completed payment row has an Email receipt action (Resend receipt once one has gone out, showing the address and date of the last one). Click it, confirm or change the address, send. Handy when the receipt needs to go to a spouse or a bookkeeper instead of the person who signed.
Voiding a payment
Made a typo? Logged the wrong amount, wrong invoice, or wrong method? Each manual payment row has a Void action.
Void adds an offsetting reversal entry to the ledger (it does not delete the original — the audit trail stays intact). The invoice balance recomputes automatically. If the void drops the invoice below paid-in-full, the status reverts to Outstanding.
[!tip] Void is for corrections — wrong amount, wrong invoice, wrong method. If the homeowner actually disputed a payment and demanded it back, void the entry AND issue a refund through your bank or whatever channel the original money came through. BidCraft has no way to actually return cash to a checkbook.
The project status does NOT auto-revert when you void. If a void drops a paid project back to outstanding, you'll see it in the Payments section — adjust the project status yourself if needed. This is intentional — we'd rather you make the call than have a typo silently downgrade a project the homeowner actually paid.
Stripe payments cannot be voided here
If you collected a payment through BidCraft's Pay button (Stripe Connect), you'll see it in the same payment history list — but with no Void button. To reverse a Stripe payment, use Issue refund on the invoice row instead, which sends the money back through Stripe to the homeowner's original payment method.
Void is reserved for off-platform entries you typed in by hand.
Where recorded payments show up
| Surface | What you see |
|---|---|
| Project → Payments | The exact entries you logged, with method badge (Check / Cash / Zelle / etc.) + reference + date |
| Payments header tiles | Reflects in the Invoiced, Collected, and Outstanding tiles |
| Costs & Materials | Factored into the actuals vs predicted variance |
| Dashboard "Collected this period" | Counts manual entries the same as Stripe entries |
There's no separate "manual revenue" filter to learn — once an entry is in the ledger, every revenue-aware view of BidCraft picks it up.
Next steps
- Sending invoices without Stripe — set up plain-mode invoicing for the projects you want to bill by hand
- Deposits and milestone invoices — how the deposit + milestone flow works for Stripe-collected payments
- Refunds and disputes — when something goes wrong with a Stripe-collected payment
Email andy@businessupai.com and a real person on the BidCraft Tile team will get back to you. If you're signed in, you can also ask Biddy from any page in the app.