Skip to main content
The Smartbills React SDK provides two packages:
  • @smartbills/react-hooks-sdk — React Query hooks for data fetching and mutations
  • @smartbills/react-sdk — Pre-built React components (Receipt, Bank, etc.)
Both packages build on top of @smartbills/sdk and @tanstack/react-query.

Installation

For pre-built components:

Quick Start

Provider Setup

Using Hooks

Configuration

SmartbillsProvider Props

useSmartbills Hook

Access the provider context from any child component:

Query Keys

Use queryKeys for custom query invalidation or cache manipulation:

Hooks Reference

All list hooks use useInfiniteQuery for automatic pagination. All mutation hooks use useMutation with proper cache invalidation.

Expenses

Example: Upload Expenses

Example: Bulk Actions

Presigned Upload

Expense Reports

Example: Report Lifecycle

Report Expense Management

Report Payments

Expense Jobs

Approbations (Approvals)

Bills

Vendors

Vendor Connections

Users & Profile

Businesses

Business Users

Invitations

Notifications

Categories

Employees

Departments

Reporting & Analytics

Email Accounts

Email Forwarding

Authorized Senders

Integrations & Apps

Billing & Subscription

Workflows

Attachments (Vault)

Additional Domains

Hooks also exist for: Receipts, Transactions, Customers, Products, Taxes, Locations, Tables, Payment Methods, Loyalty, Memberships, Connect, Checkout.

React SDK Components

The @smartbills/react-sdk package provides pre-built components:

SmartbillsElements Provider

Receipt Components

Error Handling

Pagination Helper

The getNextPageParam utility is automatically used by infinite query hooks to determine the next page.
Use React Query DevTools — Install @tanstack/react-query-devtools to inspect queries and cache.
Optimistic Updates — Mutation hooks automatically invalidate related queries on success, keeping the UI in sync.
Use TypeScript — All hooks are fully typed, providing autocomplete for parameters and return values.