Skip to content
Product · Developer

REST access to 11,000+ U.S. banks: transactions, statements and check images.

Build directly on the same data pipeline that powers Ledgersync. Bearer-token auth, JSON payloads, webhooks and cursor pagination.

Get started in sandbox

Get a working bank connection running in sandbox: create a client, connect the built-in test bank, and watch transactions land in your database with a webhook firing on every refresh.

Overview

The Ledgersync API is an Open Banking API that works alongside your existing aggregator or on its own. Connect to 11,000+ U.S. financial institutions and pull transactions, balances, PDF statements, check images and OCR results into your own product or internal tools.

Built with a strong focus on business banking and on our Mastercard and MX Open Banking partnerships, the Ledgersync API gives you original PDF statements from 2,500+ institutions and one consistent JSON format whatever the bank.

11,000+
U.S. financial institutions
2,500+
Banks with PDF statements
1
REST API for every source

Intelligent routing

Ledgersync uses Mastercard (Finicity), MX and our own connections, with PDF upload as a fallback.

Our platform routes each institution to the best data source server-side, so you don't choose or manage aggregators yourself. The connection ID shows which source answered.

Why developers choose the Ledgersync API

Everything your fintech, accounting product or internal tool needs in one REST API.

  • 11,000+ U.S. banks through Mastercard (Finicity), MX and Ledgersync's own connections, with a strong focus on business banking
  • Transactions and balances, up to 24 months of history depending on the bank
  • Original PDF bank statements from 2,500+ banks
  • Cancelled check images on Ledgersync's own bank connections (front of check)
  • Upload any bank statement PDF and get structured transactions back through a real OCR pass
  • On-demand refresh on every connection
  • Request new banks: Ledgersync implements them for you
  • Direct developer support from our team

Simple, transparent pricing

Month-to-month, no long-term commitment.

  • Transactional data: $2 per end user (up to 7 bank logins)
  • Statements: $20 per end user (up to 7 bank logins)
  • Minimum $1,000 per month

Vibe-code your integration

Drop the Ledgersync docs link into ChatGPT, Claude or your AI coding assistant and let it build your bank-data integration for you. No deep API expertise required.

  • AI reads the docs and writes the code
  • Test everything in sandbox first
  • Request production access when you're ready; we approve it and move you from sandbox to live

Ledgersync AI · MCP

Connect ChatGPT, Claude or GrokBot straight to the bank data in Ledgersync. Your AI reads the real transactions behind a question and takes the next step inside the conversation you're already having: sending a client a connect or fix link, checking a connection, or pulling statements.

Connect to AI tools such as: ChatGPT, Claude, GrokBot

  • Ask in plain English, get answers from real transactions
  • Client connect and fix links sent by the assistant
  • Works inside your Ledgersync account, with your permissions; anything that changes the books waits for your approval

https://docs.ledgersyncappv2.com/ai/start-here

Full documentation

Complete REST API reference, authentication, webhook events and example payloads in our developer docs:

https://docs.ledgersyncappv2.com/introduction

REST endpoints

One API for clients, connections, accounts, transactions, statements and checks.

Authenticate with a bearer token, send standard JSON, and paginate with cursors. Full reference in the developer docs.

MethodPathDescription
POST/v3/clientsCreate a client with your own external_id
POST/v3/clients/{id}/connectionsStart a bank connection; returns an operation_id and a widget_url
GET/v3/accounts?client_id=...Bank, card and loan accounts for a client
GETTransactions (see reference)Pending and posted transactions for an account
GETStatements (see reference)List statements and download the original PDF
GET/v3/accounts/{account_id}/checksList cancelled check images for an account (front of check; Ledgersync's own connections)
POST/v3/statements/extractUpload a PDF statement (up to 30 MB) and get structured transactions back as JSON
GET/v3/operations/{operation_id}Check the status and result of an async job
Code samples

Up and running in a few lines.

Copy-paste examples in cURL. The same requests work in any language with an HTTP client; no SDK required.

List accounts for a client (cURL, sandbox)bash
curl "https://api-sandbox.ledgersyncappv2.com/v3/accounts?client_id=cli_123" \
  -H "Authorization: Bearer $LEDGERSYNC_API_KEY"
Extract transactions from a PDF statement (cURL, sandbox)bash
curl https://api-sandbox.ledgersyncappv2.com/v3/statements/extract \
  -H "Authorization: Bearer $LEDGERSYNC_API_KEY" \
  -F "file=@./april-statement.pdf"
# Returns 202 with an operation_id. Poll GET /v3/operations/{operation_id} for the extracted transactions.
Download a check image (cURL, sandbox)bash
curl https://api-sandbox.ledgersyncappv2.com/v3/accounts/acc_123/checks/chk_7421/download \
  -H "Authorization: Bearer $LEDGERSYNC_API_KEY" \
  -o check-7421.jpg
Webhooks

Events when your connections change.

Subscribe to webhooks, rotate secrets and send test events from the API.

Connection active

Fires when a new bank connection is ready

Connection failed

Fires when a connection needs attention, such as client re-authentication

Connection refreshed

Fires when new data has been fetched

What you get

An Open Banking API built for accountants, fintechs and product teams.

  • REST + JSON

    Bearer-token auth, one error format, cursor-paginated lists

  • One API for your data

    Transactions, balances, statements, statement OCR and check images

  • Webhooks

    Subscriptions, secret rotation and test events

  • Sandbox and live keys

    Test against the built-in FinBank sandbox bank (no MFA) before you go live

  • Bank-request workflow

    Need a bank we don't yet support? Submit a request and we implement it

  • Direct developer support

    Email our team directly

Want to learn more? Schedule a call with our team to walk through implementation.

Ready to automate the data work?

Start your 30-day free trial. Credit card required at sign-up. You won't be charged until the trial ends, and you can cancel anytime.

30 days free · credit card required · cancel anytime