Billing error codes
Every public API error code emitted by Billing, with its HTTP status, its type and a page per code.
Error codes emitted by Billing. Each code links to its own page with the cause and the action to take.
| Code | Type | HTTP | Description |
|---|---|---|---|
customer_offer_benefit_invalid | invalid_request_error | 422 | The offer conditions are invalid. Review the indicated fields. |
customer_offer_billing_state_conflict | conflict_error | 409 | The billing state has changed or needs review. Check the operation before continuing. |
customer_offer_catalog_unavailable | service_unavailable_error | 503 | The billing catalog is not configured or cannot be verified; this is not a restriction on the customer plan. |
customer_offer_collection_not_restorable | invalid_request_error | 422 | The purchase cannot be collected or its balance safely restored. No debt is left for another invoice. |
customer_offer_combination_invalid | invalid_request_error | 422 | Extra trial days can only combine with a permanent plan discount or price. |
customer_offer_discount_conflict | conflict_error | 409 | An offer or discount already applies to the same product. Benefits do not stack automatically. |
customer_offer_forbidden | authorization_error | 403 | The operation does not satisfy the current conditions or permissions. |
customer_offer_gateway_unavailable | service_unavailable_error | 503 | The payment provider is unavailable. Check this operation before retrying. |
customer_offer_idempotency_conflict | idempotency_error | 409 | This attempt already belongs to different conditions. Keep the operation and check its status. |
customer_offer_invalid_terms | invalid_request_error | 422 | The offer conditions are invalid. Review the indicated fields. |
customer_offer_legacy_outcome_unknown | conflict_error | 409 | A previous billing operation is still awaiting verification. |
customer_offer_negotiated_price_invalid | invalid_request_error | 422 | Review the agreed net price, product, interval and number of billing cycles. |
customer_offer_not_eligible | invalid_request_error | 422 | This offer is incompatible with the company, product or current status. |
customer_offer_operation_in_progress | conflict_error | 409 | An operation is already in progress for this product. Check its status before continuing. |
customer_offer_payment_method_required | payment_required_error | 402 | This purchase needs a payment method. Add one and refresh the terms before confirming. |
customer_offer_phase_incompatible | conflict_error | 409 | The subscription has an incompatible scheduled change. It has not been overwritten. |
customer_offer_price_mapping_conflict | conflict_error | 409 | The billing state has changed or needs review. Check the operation before continuing. |
customer_offer_purchase_failed | payment_required_error | 402 | Payment failed and this purchase was verified as not applied. Check the operation before trying again. |
customer_offer_quote_changed | conflict_error | 409 | The conditions have changed. Refresh the quote before confirming. |
customer_offer_quote_expired | conflict_error | 409 | The quote has expired. Refresh it and review the conditions. |
customer_offer_quote_unavailable | service_unavailable_error | 503 | The amount cannot be verified. Confirmation is blocked. |
customer_offer_state_conflict | conflict_error | 409 | The billing state has changed or needs review. Check the operation before continuing. |
customer_offer_trial_baseline_changed | conflict_error | 409 | The trial has changed. Refresh the quote to see the current end date. |
customer_offer_trial_limit_exceeded | invalid_request_error | 422 | This extension would exceed the maximum 180 trial days. |
customer_offer_trial_not_eligible | invalid_request_error | 422 | You can only extend an active trial of the agreed plan. An expired trial cannot restart. |
customer_offer_unavailable | invalid_request_error | 422 | This offer is unavailable, expired or has no redemptions left. |
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.