Documentation

Error code reference

Every stable error_code BillerAPI returns, with its HTTP status, category, and a dedicated page (problem / cause / fix / example). Each error response also links here via its docs_url. The list is additive-only — codes are never removed or renamed.

General

CodeStatusTypeSummary
INTERNAL_ERROR500api_errorAn unexpected error occurred on our end.
VALIDATION_ERROR400invalid_requestOne or more request fields are invalid.
NOT_FOUND404invalid_requestThe requested resource does not exist.
CONFLICT409invalid_requestThe request conflicts with the current resource state.
INVALID_CURSOR400invalid_requestThe pagination cursor is malformed or stale.
IDEMPOTENCY_KEY_MISMATCH409invalid_requestThe Idempotency-Key was reused with a different body.
RATE_LIMITED429rate_limitYou have exceeded the allowed request rate.
SERVICE_UNAVAILABLE503upstreamAn upstream dependency is temporarily unavailable.

Authentication

CodeStatusTypeSummary
UNAUTHORIZED401authAuthentication failed or is missing.
FORBIDDEN403authAuthenticated, but not authorized for this resource.
CLIENT_ID_MISMATCH403authThe supplied client_id does not match your session.
NEEDS_RESIGNIN401authNo authenticated client context was resolved.

Bills & statements

CodeStatusTypeSummary
BILL_NOT_FOUND404invalid_requestNo bill exists with that id.
ACCOUNT_LINK_NOT_FOUND404invalid_requestThe account link does not exist.
STATEMENT_NOT_EXTRACTED425invalid_requestThe statement has not been extracted yet.
EXTRACTION_FAILED503upstreamStatement extraction failed upstream.
EXTRACTION_UNSUPPORTED_FOR_BILLER422invalid_requestThis biller does not support statement extraction.
STATEMENT_TOO_LARGE413upstreamThe statement exceeds the size limit.

Links & Connect

CodeStatusTypeSummary
LINK_NOT_FOUND404invalid_requestNo link exists with that id.
LINK_TOKEN_NOT_FOUND404invalid_requestThe link token is unknown or expired.
BACKGROUND_NOT_ELIGIBLE409invalid_requestThe link token cannot be backgrounded now.
UPDATE_BILLER_MISMATCH409invalid_requestThe update token targets a different biller.
INVALID_UPDATE_REASON400invalid_requestThe update reason is not a recognized value.
LINK_UPDATE_FORBIDDEN403authThe update token belongs to a different client.
REDIRECT_URI_NOT_REGISTERED400invalid_requestThe redirect_uri is not in your registered allowlist.

Billers

CodeStatusTypeSummary
BILLER_NOT_FOUND404invalid_requestNo biller exists with that id.
BILLER_UNSUPPORTED422invalid_requestThis biller cannot be automated.

Payments

CodeStatusTypeSummary
PAYMENT_EXECUTION_NOT_AVAILABLE501upstreamPayment execution is not yet available.

Feedback

CodeStatusTypeSummary
FEEDBACK_RUN_NOT_FOUND404invalid_requestThe referenced resource does not exist.
FEEDBACK_RUN_NOT_OWNED403authThe referenced resource belongs to another client.
FEEDBACK_RUN_EXPIRED410invalid_requestThe feedback window has closed.
FEEDBACK_INVALID_CATEGORY422invalid_requestThe category is not valid for this resource type.
FEEDBACK_INVALID_SIGNAL400invalid_requestThe signal is not valid for the resource_type.
FEEDBACK_ALREADY_SUBMITTED409invalid_requestFeedback was already submitted for this resource.
FEEDBACK_RATE_LIMITED429rate_limitToo many feedback submissions.

Messaging

CodeStatusTypeSummary
MESSAGING_CONSENT_NOT_GRANTED403invalid_requestThe customer has not granted messaging consent.
MESSAGING_LIVE_ACCESS_REQUIRED403authMessaging requires production (live) access.
MESSAGING_CONTENT_FLAGGED422invalid_requestThe message content was flagged.
MESSAGING_RATE_LIMITED429rate_limitMessaging rate limit exceeded.
MESSAGING_SUPPRESSED200invalid_requestThe recipient is suppressed; message not sent.
MESSAGING_AUP_NOT_ACCEPTED428invalid_requestThe messaging Acceptable Use Policy is not accepted.
MESSAGING_AUP_REACCEPT_REQUIRED412invalid_requestThe messaging AUP must be re-accepted.
MESSAGING_INVALID_PAYLOAD400invalid_requestThe message payload is malformed.
MESSAGING_INVALID_CATEGORY400invalid_requestThe message category is not recognized.
MESSAGING_PERSIST_FAILED503upstreamA transient error prevented recording the message.
MESSAGING_INTERNAL_ERROR500upstreamAn unexpected messaging error occurred.
MESSAGING_NOT_FOUND404invalid_requestThe referenced message or thread does not exist.

Related

Was this page helpful?