Billers

Billers

Search and retrieve billers in the BillerAPI network. Use these endpoints to discover available billers, search by email domain, or retrieve details for a specific biller.

Related guide: Link a Biller Account

The Biller object

A Biller is a company in the BillerAPI network that a user can link to retrieve statements — a utility, lender, telecom, or government agency. Discover billers, then use the biller ID to start a link session.

Attributes

id*stringUnique biller identifier
name*stringDisplay name of the biller
type*stringBiller category: UTILITY, FINANCIAL, GOVERNMENT, TELECOM, INSURANCE
status*stringACTIVE, INACTIVE, or MAINTENANCE
credentials_required*booleanWhether the biller requires user credentials to link
mfa_required*booleanWhether multi-factor authentication is needed
descriptionstringHuman-readable description of the biller
logo_urlstringURL to the biller logo image
website_urlstringBiller website URL
capability_readinessobjectReadiness and evidence keyed by LOGIN, ACCOUNT_DISCOVERY, RETRIEVE_BILL, RETRIEVE_OBSERVED_PAYMENT, and PAY_BILL
ready_for_connectbooleanWhether login and account discovery are currently ready
ready_for_billsbooleanWhether connect and bill retrieval are currently ready
ready_for_paybooleanWhether connect, bill retrieval, payment integration, and the platform payment-execution gate are currently ready
blocking_reasonstring | nullPrimary machine-readable reason the next journey is blocked
next_actionstring | nullMachine-readable action that can advance readiness
The Biller object
{
  "id": "sb_utility",
  "name": "Sandbox Utility",
  "type": "UTILITY",
  "status": "ACTIVE",
  "credentials_required": true,
  "mfa_required": false,
  "description": "Simulated electric utility biller",
  "capability_readiness": {
    "LOGIN": {
      "capability": "LOGIN",
      "state": "healthy",
      "ready": true,
      "blocking_reason": null,
      "next_action": null,
      "artifact_version": "7",
      "verified_artifact_version": "7",
      "verified_at": "2026-07-11T12:00:00.000Z"
    }
  },
  "ready_for_connect": true,
  "ready_for_bills": true,
  "ready_for_pay": false,
  "blocking_reason": "pay_not_approved",
  "next_action": "approve_pay_capability"
}

The capability readiness object

Each entry explains whether one capability can currently serve traffic and the evidence behind that decision. Use the top-level journey booleans for gating; use blocking_reason and next_action to explain or remediate a blocked journey. ready_for_pay is false while the platform payment-execution compliance gate is disabled, even when the biller integration itself is proven.

Attributes

capability*stringLOGIN, ACCOUNT_DISCOVERY, RETRIEVE_BILL, RETRIEVE_OBSERVED_PAYMENT, or PAY_BILL
state*stringmissing, pending, awaiting_credentials, awaiting_mfa, unproven, human_review, healthy, degraded, failed, stale, or unknown
ready*booleanWhether current evidence permits this capability to serve traffic
evidencestringexact_artifact_replay, stale_artifact_replay, verification_task, recording_task, configuration, or none
blocking_reasonstring | nullMachine-readable reason this capability is not ready
next_actionstring | nullMachine-readable action that can advance this capability
artifact_versionstring | nullCurrent automation artifact version used for readiness
digeststring | nullDigest of the automation artifact used as evidence
verified_artifact_versionstring | nullArtifact version most recently verified
verification_task_idstring | nullTask that produced the verification evidence
recording_task_updated_atstring | nullISO 8601 timestamp of the current recording task state
verification_task_updated_atstring | nullISO 8601 timestamp of the current verification task state
verified_atstring | nullISO 8601 timestamp of the latest verification
state_sincestring | nullISO 8601 timestamp when the current state began
last_success_atstring | nullISO 8601 timestamp of the latest successful run
last_failure_atstring | nullISO 8601 timestamp of the latest failed run
updated_atstring | nullISO 8601 timestamp when readiness was last updated
Capability readiness
{
  "capability": "RETRIEVE_BILL",
  "state": "stale",
  "ready": false,
  "blocking_reason": "artifact_proof_stale",
  "next_action": "verify_current_artifact",
  "artifact_version": "8",
  "verified_artifact_version": "7",
  "verified_at": "2026-07-10T18:42:00.000Z"
}
GET/v1/billers

List billers with optional filtering and pagination.

Query parameters

search_termstringFilter billers by name
statusstringFilter by status: ACTIVE, INACTIVE
typestringFilter by type: UTILITY, FINANCIAL, etc.
limitintegerResults per page (default: 100, max: 500)
cursorstringOpaque pagination cursor from a prior response’s next_cursor. Omit for the first page.
Sample uses your_client_id · sign in to auto-fill your sandbox key
curl https://sandbox.api.billerapi.com/v1/billers \
  -H "Authorization: Bearer $BILLERAPI_API_KEY"
Response
{
  "billers": [Biller],
  "total_count": 5,
  "has_more": false,
  "next_cursor": "",
  "success": true,
  "message": "Billers retrieved successfully"
}
GET/v1/billers/{id}

Retrieve a specific biller by ID.

Path parameters

id*stringThe biller ID
Sample uses your_client_id · sign in to auto-fill your sandbox key
curl https://sandbox.api.billerapi.com/v1/billers/sb_utility \
  -H "Authorization: Bearer $BILLERAPI_API_KEY"
GET/v1/billers/search/by-email

Search for billers associated with an email address. Useful for discovering which billers a user might have based on their email domain.

Query parameters

email*stringEmail address to search for biller matches
Sample uses your_client_id · sign in to auto-fill your sandbox key
curl "https://sandbox.api.billerapi.com/v1/billers/search/by-email?email=user@example.com" \
  -H "Authorization: Bearer $BILLERAPI_API_KEY"
Was this page helpful?