Payments and deposits
RepairNode tracks money on a repair using a single deposit field. The payment status you see is calculated from that — not stored separately.
Most shops we talked to do not need a full ledger — they need to know how much was paid up front, how much is still owed, and whether the customer is paid in full. RepairNode models this with one simple field (the deposit) and a 3-state UI on top.
How payment status works
The repair record stores two money values:
- Final cost — what the customer is being charged.
- Deposit — what the customer has paid so far.
The balance is calculated as cost − deposit, and the payment status is inferred from the relationship between deposit and cost.
Three states
- Unpaid (red) — deposit is zero. Customer owes the full cost.
- Partial (amber) — deposit is greater than zero but less than cost. Customer owes the balance.
- Paid (green) — deposit equals or exceeds cost. Balance is zero (or negative if there was an overpayment).
Setting payment status
You can change the payment state in three places:
- 1In the new-repair formPick Unpaid, Partial, or Paid below the cost field. Partial reveals a deposit input; Paid auto-fills the deposit equal to the cost.
- 2In the repair detail action sheetTap the Payment quick action. A small bottom sheet asks for the new state and (for Partial) the deposit amount.
- 3By editing the repairOpen the form via Edit. The same payment selector is on the form.
Cost, deposit, and balance card
The repair detail screen shows a three-cell row: Cost, Deposit, Balance. The balance label is color-coded:
- Green when the balance is zero (paid in full).
- Red when there is money still owed.
- Amber when the deposit is greater than the cost (overpayment — show the customer they are owed change).
Payment badges on the list
The Repairs tab shows a payment badge inside each card's tag wrap row — red for Unpaid, amber for Partial, green for Paid. The filter sheet has a Payment chip row so you can show only unpaid or partial repairs at a glance.
Edge cases
- Warranty — turning the warranty switch on sets the cost to 0. Payment state collapses to Paid automatically because there is nothing to pay.
- Quote pending — hides the cost and deposit fields entirely. Payment state is shown as a neutral Pending quote badge until you remove the switch and enter a cost.
- Refunds — record a refund by reducing the deposit. The balance becomes a positive number again, which honestly reflects that the customer is now owed nothing.
- Order deposits — Parts Orders use the exact same model: a single deposit field with the payment state derived from it.