BitcoinDatabase.com
All posts
Engineering

How to Get Bitcoin Transaction Notifications Without Running a Node

Get real-time Bitcoin transaction notifications with a webhook API: subscribe an address, set a confirmation threshold, and receive a callback the moment it is paid. No node, no polling.

By the BitcoinDatabase team

July 2026 · 8 min read

The short answer

To get Bitcoin transaction notifications without running a node, use a webhook API: register the addresses or transactions you care about, and the service posts a JSON payload to your endpoint the moment they see activity or reach a confirmation depth you set. It is push instead of poll, so your app reacts in seconds without you syncing Bitcoin Core or watching the mempool yourself. You choose the confirmation threshold per address to balance speed against settlement risk.

Why polling the chain does not scale

The naive way to know when a Bitcoin address receives money is to ask, over and over: query the address every few seconds and diff the result. That works for one address in a demo and falls apart in production. Poll too slowly and your users wait; poll too fast and you burn rate limit and money checking addresses that did nothing. Multiply that by thousands of customer deposit addresses and you have built a busy, expensive loop that still misses events between polls.

Webhooks flip the model. Instead of your app asking the chain what changed, the chain tells your app. You subscribe an address once, and when a transaction touches it, a service that already tracks the chain tip sends you a callback. You do the work only when there is work to do.

How Bitcoin webhooks work

A Bitcoin webhook API watches the chain on your behalf and fires an HTTP request to a URL you own when a subscribed event happens. The flow is simple:

  • Subscribe. Register an address, an extended public key, or a transaction ID, along with the confirmation depth that matters for your use case.
  • Wait for the event. The service tracks each new block and the mempool, matching activity against your subscriptions.
  • Receive the callback. When the event fires, you get a signed JSON payload describing the transaction, the amount, and the current confirmation count.
  • Acknowledge and act. Your endpoint returns a 200, credits the deposit or updates the order, and the job is done.

Because the provider already keeps the chain fully indexed, you never run Bitcoin Core, never manage disk, and never write mempool-watching code. Our Bitcoin webhook API works exactly this way, and the same indexed data is queryable over the REST API if you ever need to backfill.

How do I get notified when a Bitcoin address receives a payment?

Register that address with a webhook API and set a confirmation threshold, and you will receive an HTTP callback the moment a transaction pays it. For fast user feedback you can fire at zero confirmations, when the transaction first appears in the mempool, then send a second notification once it reaches the depth you consider settled. This two-step pattern gives users an instant "payment detected" while your accounting waits for finality.

How many confirmations should I wait for?

It depends on the value and your risk tolerance, not a fixed rule. Many services treat one confirmation as enough for small amounts, three as a comfortable middle ground, and six as the traditional standard for large settlements. Zero-conf, a transaction seen in the mempool but not yet mined, is useful for instant UX but can be replaced or dropped, so treat it as a signal rather than settled money. A good webhook API lets you set the threshold per subscription so a five-dollar payment and a fifty-thousand-dollar payment can follow different rules.

Confirmation thresholds at a glance

Threshold Typical use Trade-off
0 (mempool) Instant "payment detected" UX Can be replaced or dropped
1 Small, low-risk amounts Rarely, a shallow reorg
3 Everyday settlement About 30 minutes
6 Large or high-value transfers About an hour

Webhook vs WebSocket vs polling

Webhooks are one of three ways to learn about on-chain activity, and each fits a different app. Polling is the simplest to start but the least efficient at scale. A WebSocket keeps a live connection open and is great for a dashboard that is already on screen. A webhook is best for server-to-server events that must be handled even when no user is watching, like crediting a deposit at 3am.

Method How it works Best when
Polling Your app asks the API on a timer A handful of addresses, quick prototype
WebSocket A live connection streams events A dashboard open in the browser
Webhook The API posts events to your server Deposits, payments, unattended backends

For payment and deposit flows the webhook wins because your backend needs to act whether or not anyone is looking at a screen. Many teams run a webhook for settlement and a WebSocket for the live view, both reading from the same indexed chain.

What a webhook payload looks like

A callback is just an HTTP POST with a JSON body describing what happened. A typical incoming-payment payload carries the address, the transaction ID, the amount, and the current confirmation count, so your handler has everything it needs to act without a second lookup:

POST /your/webhook/endpoint
{
  "event": "address.payment",
  "address": "bc1qxy2k...l0wdv8",
  "txid": "9b0fc92c...e3a1",
  "amount_btc": 0.25,
  "confirmations": 1,
  "detected_at": "2026-07-14T09:12:03Z"
}

Your endpoint reads the fields, verifies the signature on the request, checks it has not already processed that txid, and then credits the deposit or advances the order. Return a 200 and you are done; return anything else and the provider retries.

Making delivery reliable

Webhooks are only useful if you can trust them, so a production setup needs three things. First, verify the payload signature so you know the callback really came from the provider and not a spoofed request. Second, make your handler idempotent, because networks retry and you may receive the same event twice; keying on the transaction ID prevents double-crediting a deposit. Third, keep a reconciliation path: if your endpoint was down when an event fired, you should be able to query the same event history over REST and catch up. A webhook you can replay is a webhook you can depend on.

Who uses this

Payment processors credit customer deposits the moment they confirm. Exchanges watch thousands of deposit addresses at once and gate withdrawals on confirmation depth. Wallet apps show "incoming transaction" the instant it hits the mempool. Monitoring tools alert a treasury team when a cold-storage address moves. All of them share the same need: react to on-chain events in real time without operating node infrastructure. If you are choosing between providers, our guide to the best Bitcoin API for developers covers how the webhook, data and node categories fit together.

The bottom line

You do not need to run a node to know what is happening to your Bitcoin addresses. A webhook API turns the chain into push notifications: subscribe the addresses you care about, pick a confirmation threshold, verify and de-duplicate the callbacks, and let the provider handle the indexing. Your app reacts in seconds and your infrastructure stays simple. This is informational on-chain data only and not financial or investment advice.

Query Console
btc
try:

Hit Run to query the fully-indexed Bitcoin blockchain.

BTC

30-day trend

informational on-chain data · not financial advice

REST API · SQL · dashboards, one indexed dataset. Querying the indexed Bitcoin blockchain ...

Query the Bitcoin blockchain yourself

Pull balances, UTXOs, transactions, on-chain metrics and fund flows from the fully indexed Bitcoin blockchain by REST API, SQL and dashboards. Indexed since 2009, new blocks within seconds, no node to run.

Query the whole Bitcoin blockchain

BitcoinDatabase indexes the public Bitcoin blockchain block by block and returns balances, UTXOs, transactions, on-chain metrics and fund flows by REST API, SQL and dashboards, with no node to run.

REST + SQL + dashboards · indexed since 2009 · new blocks within seconds

Informational on-chain data only · not financial, investment or legal advice · AML features are compliance tooling to support your own review.