solarOSsolarOS Docs

Record and collect payments

Record a manual payment against an invoice, collect one online through Stripe, and track every payment in one list.

A payment settles some or all of an invoice's balance. Record one by hand for a check, cash, wire transfer, or other offline method, or collect a card or bank payment live once Stripe is connected.

Before you start

You need the Owner, Admin, or Operations Manager role to record or collect a payment.

Record a manual payment

  1. Open the invoice and click Record Payment.
  2. Choose the Payment Method: Check, Cash, Wire Transfer, or Other. Check adds a Reference # field for the check number.
  3. Enter the Amount, or click Pay full amount to fill in the remaining balance.
  4. Set the Date Received and add Notes if you want.
  5. Click Record Payment.

As you type the amount, a line at the bottom shows what the invoice will become:

Record Payment drawer for a partial payment, showing the Invoice will be marked as Partially Paid preview

Collect an online payment

Collect Payment, next to Record Payment, charges a card or US bank account live through Stripe, and can reuse a card the customer already has on file. It stays greyed out with the tooltip "Finish Stripe setup to collect card or bank payments" until your organization has finished connecting Stripe.

  1. Open the invoice and click Collect Payment.

  2. Confirm the Amount (defaults to the full balance due) and choose Payment Method: Credit/Debit Card or Bank Transfer (ACH). Optionally check Save card for future payments.

  3. Click Continue, then choose Card or Bank on the next step.

    Collect Payment dialog with the amount, payment method choices, the Save card for future payments checkbox, and Continue button

  4. Enter the card details and click Pay. On a test-mode Stripe account, Stripe's own test card 4242 4242 4242 4242, any future expiry, any CVC, and any ZIP work.

    Card entry form with a test card number, expiration, and security code filled in

The dialog shows "Payment Submitted" once Stripe accepts the charge; the invoice and Payments list update within seconds.

What the customer sees paying online

Once Stripe is connected, a sent invoice includes a payment link in the email solarOS sends the customer. Opening it needs no solarOS sign-in: the customer reaches a plain payment page showing the amount due, who it's paying, Card or Bank options, and a Pay button, secured by Stripe. After paying, they see a "Payment received" confirmation with the amount and a note that a receipt will be emailed.

Public pay page showing the invoice amount, Card and Bank options, and a Pay button, secured by Stripe

Payment received confirmation after paying online

A bank payment instead shows Payment submitted. Bank payments can take several business days, and the invoice isn't marked paid until the payment clears. The customer may be asked to Verify bank account first. Reopening the link doesn't charge them twice, and after a failed attempt they're asked to choose a method again.

Revisiting that same link once the invoice is paid shows "Unable to take payment: this invoice is no longer payable (it may already be paid, voided, or written off)" instead of the payment form.

Check it worked

A partial payment moves the invoice to Partially Paid; a payment that covers the full balance moves it to Paid. The invoice's Payments table lists every payment against it, and Accounting → Payments lists every payment across the organization:

Invoice Payments table showing a succeeded card payment and the Total Paid row

Payments list with the newest payments at the top, showing dates, customers, invoice numbers, Card, Financing, Wire Transfer, Cash, and Check methods, amounts, and Succeeded status

Filter this list by Status, Method, or date, or click Export CSV for the full list.

Refunds

There's no refund button in solarOS. Your team issues refunds from the Stripe dashboard; solarOS only reflects the result, updating the payment to Refunded or Partially Refunded once Stripe reports it.

Common problems

  • Collect Payment is greyed out. Stripe isn't connected, or hasn't finished onboarding. Finish connecting Stripe, or use Record Payment for an offline payment instead.
  • A payment doesn't move the invoice all the way to Paid. Check the invoice's Amount Due; a payment smaller than the balance leaves it Partially Paid by design.
  • A customer's payment link says the invoice is no longer payable. The invoice has already been paid, voided, or written off. Check its status and, if it still owes a balance, use Record Payment or Collect Payment yourself.
Was this page helpful?

On this page