Invoice payment status
Invoices track collection state separately from their lifecycle status. This page covers the payment_status field, and the deprecated paid boolean it replaces.
Payment status
Every invoice exposes a payment_status field, giving a more precise view of collection state than a simple paid/unpaid flag:
Desk shows this status on the invoice screen. It updates automatically once the customer pays through the invoice’s payment link, or it can be set manually as shown below.

Deprecated: the paid boolean
Invoices also still expose a paid boolean, which only distinguishes paid from unpaid. It continues to work for backwards compatibility, but it can’t represent a partial or over-payment. Use payment_status instead.