KamoCRM

A customer pays part of a work order's invoice by card

FeatureSecurityService
Shipped
November 12, 2026 at 9:51 PM UTC
Author
Kamo
Commit
d07517a

The public invoice's /pay takes an optional amount. InvoiceCardPayments checks it against the balance read fresh: a positive amount in whole cents, from 1.00 (PART_MINIMUM) up to what is due — never the page's figures; a refused amount answers 400 INVALID_AMOUNT and opens nothing. A retail order's invoice is only ever paid whole (its card payment is the order's own payment, which moves the order to Paid), and a subscription invoice keeps the platform's whole-balance checkout. The public view says whether part payments are offered (payPartMinimum). BillingService still closes any open page before opening another, so one page per invoice holds. A part payment returns to ?paid=part.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing