Node SDK

Node.js server SDK

Typed resources, automatic transient retries, cursor pagination, idempotency, and webhook verification for Node.js 18+.

Release status

npm currently serves billerapi@0.1.0. The reviewed next release intent is 2.0.0; use the registry version until an exact-SHA publication receipt is attached.

Install and initialize

npm install billerapi

Resource map

AccessorUse it for
billerapi.billersCatalog search and retrieval
billerapi.linksLink tokens, status, exchange, and link retrieval
billerapi.billsList, detail, statements, create, and sync
billerapi.billImportsUpload, review, confirm, and cancel
billerapi.accountLinksSync and refresh status
billerapi.webhookEndpointsEndpoint lifecycle and secret rotation
billerapi.payPay tokens, payment methods, and payment attempts
billerapi.feedbackStructured integration feedback
billerapi.webhooksSignature verification and event construction

Let the SDK own transport behavior

The SDK retries network errors, 429s, and retryable 5xx responses. Mutation helpers preserve idempotency keys across transparent retries. Branch on typed errors and keep the request ID for support.

Migrating from 0.1.0 to 2.0.0

The tables below are generated from the one SDK deprecation record, so this page, its markdown and the standalone migration guide cannot disagree with each other.

Every entry describes the SDK artifact `billerapi`, not the REST API. The REST API keeps accepting and emitting the legacy money and date fields under its own published compatibility window; only the SDK's TypeScript surface performs the hard cutover.

SDK versionOn npmBill money and datesbillers.list pagination
0.1.0yeslegacy amount / currency / due_date onlypage-based (page / page_size)
1.0.0nolegacy amount / currency / due_date onlypage-based (page / page_size)
1.1.0nocanonical total_amount / due_date_iso added; legacy fields kept and marked @deprecatedpage-based (page / page_size)
2.0.0nocanonical total_amount / due_date_iso only on request and response typescursor-only (limit / cursor)
Removed symbol or behaviorDeprecated inRemoved inReplacement
Bill.amount, Bill.currency, Bill.due_date1.1.02.0.0Bill.total_amount.value, Bill.total_amount.currency, Bill.due_date_iso
SyncedBill.amount, SyncedBill.currency, SyncedBill.due_date1.1.02.0.0SyncedBill.total_amount.value, SyncedBill.total_amount.currency, SyncedBill.due_date_iso
CreateClientBillParams.amount_due, CreateClientBillParams.currency, CreateClientBillParams.due_date1.1.02.0.0CreateClientBillParams.total_amount, CreateClientBillParams.due_date_iso
BillImportReviewChanges.amount_due, BillImportReviewChanges.currency, BillImportReviewChanges.due_date1.1.02.0.0BillImportReviewChanges.total_amount, BillImportReviewChanges.due_date_iso
BillerListParams.page, BillerListParams.page_size1.1.02.0.0BillerListParams.limit, BillerListParams.cursor
webhooks.constructEvent1.0.02.0.0BillerAPI-Signature
BillerApi.request0.1.01.0.0/v1 audience-plane paths
webhookEndpoints.create, webhookEndpoints.list, webhookEndpoints.update0.1.01.0.0/v1/webhook-endpoints

There is exactly one upgrade to make: 1.0.0 and 1.1.0 were reviewed but never published, so the deprecated-in column is history rather than a window you can pin to.

Prefer raw HTTP? Every SDK call maps directly to the API reference.

Was this page helpful?