Skip to Content
ProBillingPayments & refunds

Payments & refunds

A payment is anything that reduces an invoice’s balance — cash, check, ACH, credit card, or refund. They all show up on the invoice’s payment history so you have one clean record per invoice.

Where payments come from

Three sources flow into the same ledger:

SourceWhen it lands
ManualYou record it in the Record payment dialog — saved immediately
Client pays onlineStripe processes the card or bank charge, then confirms it cleared
Auto-payA recurring schedule charges the client’s saved payment method

Refunds reverse the first two.

Recording an offline payment

The most common case — the client mailed a check or paid cash.

  1. Open the invoice from the Invoices list.
  2. Click Record payment.
  3. Fill in the dialog:
    • Amount — defaults to the remaining balance. Type a smaller number for a partial payment.
    • Method — Cash, Check, Wire, or Other.
    • Date — defaults to today.
    • Reference — optional (check number, wire confirmation, etc.).
    • Notes — internal only.
  4. Click Record.

The dialog closes. The invoice’s balance updates. The status flips:

BeforeIf you paid the full balanceIf you paid part
Sent, Viewed, or OverduePaidPartially paid
Partially paidPaidStays Partially paid

[Screenshot: Record payment dialog]

The new payment shows in the drawer’s Payments section, with your name attached.

What you can’t record by hand

Credit cards and ACH have to go through Stripe — the client (or auto-pay) initiates them, not you. The dialog blocks those methods.

The Other method exists for edge cases (you applied a customer credit, you wrote off the balance), but for write-offs use Cancel on the invoice instead.

When a client pays online

When the client pays through their portal:

  1. The client clicks Pay now in the invoice email or in the portal.
  2. They enter card or bank details on the secure payment form.
  3. Stripe processes the charge.
  4. Assure Pro updates the invoice’s balance right away.
  5. A few seconds later (for cards) or 1–3 business days (for ACH), Stripe confirms the payment cleared. The invoice flips to Paid.
  6. If the charge is declined or the bank rejects it, the payment is marked failed and the balance is restored.

The invoice’s Activity log shows each step as it happens.

Partial payments

When the amount paid is less than the balance, the invoice goes to Partially paid. Whether it shows up in Awaiting or Overdue depends on the due date:

  • Partially paid with a due date in the future → counted in Awaiting
  • Partially paid past due → counted in Overdue

The remaining balance is the client’s responsibility. They see the reduced amount in their portal and on future reminder emails.

Issuing a refund

To reverse a payment:

  1. Open the invoice.
  2. In the Payments section, find the payment to refund.
  3. Click Refund.
  4. Fill the dialog:
    • Amount — defaults to the full payment. Type a smaller amount for a partial refund.
    • Reason — Duplicate, Fraudulent, Requested by customer, Service not rendered, or Other.
    • Notes — internal.
  5. Click Refund.

What happens next depends on how the original payment was made:

Original methodWhat happens
Card or ACH through StripeStripe issues the refund. The client sees it back on their card in 5–10 business days, or on ACH in 5–7.
Cash, Check, Wire, or OtherAssure Pro records a refund entry but doesn’t move any money — you settle externally.

The refund creates a separate entry in the Payments section, shown as a negative amount. The invoice’s balance increases by the refund. If the full payment is refunded, the invoice goes back to Sent or Overdue depending on the due date.

[Screenshot: Refund dialog with reason picker]

How refund reasons map

Stripe natively accepts only Duplicate, Fraudulent, and Requested by customer. The other two — Service not rendered and Other — are forwarded to Stripe as “requested by customer” but kept in full detail on your side for audit.

Stripe processing fees

When Stripe processes a payment, it deducts a fee:

MethodFee
Card2.9% + $0.30
ACH$0 (covered by Stripe on your tier)

The fee shows on the payment entry and in the activity log. The invoice’s balance is calculated from the gross amount — the fee comes out of your payout, not the client’s invoice.

When you issue a refund, Stripe does not return the processing fee. A $100 charge refunded in full nets you -$2.90 - $0.30 = -$3.20. Plan for this when issuing courtesy refunds.

What you’ll see on each payment

Every payment row shows:

  • Amount (positive for payment, negative for refund)
  • Method — Card, ACH, Cash, Check, Wire, or Other
  • Status — Pending, Completed, Failed, or Refunded
  • Paid by — the firm user, the client contact, or System (auto-pay)
  • Created and completed dates

You can’t edit a payment after it’s recorded. To correct a mistake, refund it and record a new one.

The activity timeline

The invoice drawer’s Activity section shows every state change:

May 22, 4:12 PM Payment $1,500 recorded — Check #4521 by Jane Chen May 22, 4:11 PM Invoice viewed by client by Patel Family May 14, 9:00 AM Invoice sent to client (email) by Jane Chen May 14, 8:55 AM Invoice created by Jane Chen

Auto-pay events show as Auto-Pay or System. Online payments show as Stripe. Manual events show your name.

Catching up on past invoices when a client saves a card

When a client adds their first payment method, Assure Pro can offer to charge them for any recent unpaid invoices in one click.

  • Window — the last 90 days
  • Eligible invoicesSent, Viewed, Partially paid, or Overdue invoices linked to engagements with auto-pay turned on
  • What the client sees — “We have N unpaid invoices on file — pay them all now?” with one confirmation

The resulting payments land in the timeline labeled “Back-fill” — they look like any other online payment.

Permissions

ActionPermission
Record a manual paymentEdit billing
Issue a refundEdit billing (Stripe refunds also need admin access on the firm’s Stripe-connected account)
View Stripe receiptsView billing
Edit a payment after the factNot supported — refund and re-record

Next

Last updated on