invoice_promise_set
Records the date a client promised to pay an issued invoice that still has money owed: promised_payment_date 'YYYY-MM-DD', the business's own date, today or later. clear true removes it. invoice_read then shows promise_status: pending until that business day ends, kept when paid in full by then, broken after it. A broken promise makes promise_follow_up the default purpose of invoice_message_prepare. Each change is kept in the invoice's activity as promise_set. Refuses a draft, a cancelled invoice and one with nothing owed (CONFLICT), and a past or malformed date (VALIDATION_ERROR). Nothing is sent. NEXT: invoice_read.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | The invoice the client promised to pay (invoice_list shows ids); its invoice_number works too. | |
| note | No | What the client said, kept in the invoice's activity (max 500). | |
| clear | No | true removes the promised date instead of setting one. | |
| invoice_number | No | Alias of id — the invoice's own number. | |
| expected_updated_at | No | Optional compare-and-set guard: the updated_at you last read. A mismatch returns CONFLICT and changes nothing. | |
| promised_payment_date | No | The business-local date the client promised to pay by, YYYY-MM-DD, today or later. Leave it out with clear true. |