Proformas error codes
Every public API error code emitted by Proformas, with its HTTP status, its type and a page per code.
Error codes emitted by Proformas. Each code links to its own page with the cause and the action to take.
| Code | Type | HTTP | Description |
|---|---|---|---|
invalid_expiry_date | invalid_request_error | 422 | The expiry date is earlier than the issue date, or more than 365 days after it. |
invalid_proforma_id | invalid_request_error | 400 | The pro forma reference received is not a valid identifier, usually because an internal value replaced the public id. |
invalid_proforma_number | invalid_request_error | 422 | The pro forma number does not follow the canonical numbering format of its series. |
invalid_proforma_status | invalid_request_error | 422 | The value sent as status is outside the catalogue draft, accepted, rejected, expired, invoiced, cancelled. |
invalid_proforma_uuid | invalid_request_error | 400 | The pro forma identifier in the path or in the payload is not a valid UUID. |
proforma_already_accepted | invalid_request_error | 422 | The customer already accepted the pro forma, and acceptance is registered once. |
proforma_already_rejected | invalid_request_error | 422 | The pro forma is already marked as rejected. |
proforma_cannot_be_accepted | invalid_request_error | 422 | Acceptance does not apply from the current state: an invoiced, cancelled or expired pro forma no longer admits it. |
proforma_cannot_be_rejected | invalid_request_error | 422 | Rejection does not apply from the current state: once invoiced, cancelled or expired, the pro forma is closed. |
proforma_cannot_be_sent | invalid_request_error | 422 | Sending by email does not apply to a pro forma in a terminal state: there is no live offer to deliver. |
proforma_invalid_status_transition | invalid_request_error | 422 | The target status is unreachable from the current one: a draft can be accepted, cancelled or expire; an accepted pro forma can be invoiced, rejected or expire; invoiced, cancelled and expired are terminal. |
proforma_not_convertible_in_current_state | invalid_request_error | 422 | Converting into an invoice requires the customer to have accepted the pro forma; from any other state there is no agreement to bill. |
proforma_not_deletable_in_current_state | invalid_request_error | 422 | Only a draft pro forma can be deleted. Once it has been accepted, rejected or invoiced, it is part of the commercial trail. |
proforma_not_draft | invalid_request_error | 422 | The operation only makes sense while the pro forma is a draft, and this one has already moved on. |
proforma_not_editable_in_current_state | invalid_request_error | 422 | Only a draft pro forma admits editing. Once it is accepted, rejected, expired, invoiced or cancelled, its content is settled. |
proforma_not_found | not_found_error | 404 | The identifier does not resolve to any pro forma of the authenticated company. |
proforma_requires_at_least_one_line | invalid_request_error | 422 | The pro forma has no lines, so there is no amount to put in front of the customer. |
public_link_expires_at_exceeds_max_days | invalid_request_error | 422 | The requested expiry for the public link goes beyond the maximum window your plan allows for shared documents. |
Related
Error codes by category
Find an error by the category that emits it.
Full reference table
All codes, HTTP statuses, types and descriptions in one reference.
Error model
Interpret the error envelope and handle errors by code.