Navigation

Bill Sync

Trigger and monitor bill synchronization for linked accounts. When a sync is triggered, BillerAPI fetches the latest bill data from the biller and updates your records.

Related guide: Link a Biller Account

The Sync Record object

Attributes

FieldTypeDescription
id*stringUnique sync record identifier
account_link_id*stringThe account link that was synced
status*stringSync status: PENDING, IN_PROGRESS, COMPLETED, FAILED
bills_foundintegerNumber of bills discovered during sync
bills_updatedintegerNumber of bills updated during sync
errorstringError message if sync failed
started_atstringISO 8601 timestamp when sync started
completed_atstringISO 8601 timestamp when sync completed
created_atstringISO 8601 timestamp when the record was created
Example Sync Record object
JSON
{
  "id": "sync_abc123",
  "account_link_id": "al_xyz789",
  "status": "COMPLETED",
  "bills_found": 3,
  "bills_updated": 1,
  "error": null,
  "started_at": "2026-04-01T12:00:00Z",
  "completed_at": "2026-04-01T12:00:05Z",
  "created_at": "2026-04-01T12:00:00Z"
}
POST/bills/sync/trigger

Trigger a bill sync for a linked account. Returns immediately with a sync record. The sync runs asynchronously in the background.

Request Body

FieldTypeDescription
account_link_id*stringThe account link to sync bills for
forcebooleanForce a full re-sync even if recently synced (default: false)
Response — 202 Accepted
{
  "id": "sync_abc123",
  "account_link_id": "al_xyz789",
  "status": "PENDING",
  "created_at": "2026-04-01T12:00:00Z"
}
curl -X POST https://sandbox.api.billerapi.com/bills/sync/trigger \
  -H "X-Client-ID: your_client_id" \
  -H "X-Client-Secret: your_client_secret" \
  -H "Content-Type: application/json" \
  -d '{
    "account_link_id": "al_xyz789",
    "force": false
  }'
GET/bills/sync

Get sync status and history for an account link.

Query Parameters

FieldTypeDescription
account_link_id*stringFilter by account link ID
sincestringISO 8601 timestamp to filter syncs created after this date
limitintegerMaximum number of sync records to return (default: 20, max: 100)
include_deletedbooleanInclude deleted sync records (default: false)
Response
{
  "syncs": [SyncRecord],
  "total": 5
}
curl "https://sandbox.api.billerapi.com/bills/sync?account_link_id=al_xyz789&limit=10" \
  -H "X-Client-ID: your_client_id" \
  -H "X-Client-Secret: your_client_secret"