How GoBTC Pay Works

GoBTC Pay is a Bitcoin payment protocol for spending BTC at the point of sale on Bitcoin's base layer, with no fee for the customer. The shop sees the payment accepted straight away, the payment settles natively on Bitcoin afterwards, and nobody hands over custody of their coins.

This page explains the mechanism end to end. If you just want to take your first payment, go to Getting Started instead.

Layer 1
Where payments settle
~1 sec
App payment to paid
~12 h
Average on-chain settlement
0.2%
Merchant acquiring fee

Why GoMining can run this

When a customer pays at a GoBTC merchant, the transaction goes to GoMining's dedicated mining pool, which prioritises it for the next block. GoMining mines the blocks itself, so it can prioritise GoBTC transactions for inclusion and recover the network fee through its own pool.

Payment companies that rely on third-party pools have no control over confirmation times and pay full network fees on every transaction.

GoMining is among the top-10 Bitcoin miners by hashrate, serves about 5 million users, and runs data centres across three continents.

There are no payment channels, no fiat conversion at checkout, and no wrapped tokens.

The three parties

PartyWhat they holdWhat they do
You (the payer)One key, in your device's secure enclaveSign the authorization for each payment
GoMiningOne co-signing keyVerify the confirmation, mark the payment paid, mine the settlement block
Independent regulated custodianOne offline recovery keyRelease the recovery key under the Conditional Recovery rules

Funds sit at a 2-of-3 multisig address on Bitcoin Layer 1. Any two of the three keys are required to authorise a transaction, so no single party, including GoMining, can move funds alone.

If you lose your device, the regulated custodian provides a recovery path. If GoMining is unavailable, you and the custodian can still recover and move your Bitcoin.

A payment, step by step

The merchant raises a charge

The POS terminal or payment link states an amount. The customer scans a QR code, or opens the link, in the GoBTC Pay app.

The customer signs a new running total

This is the key idea, called cumulative pre-authorization. Instead of signing a fixed spending limit, the customer signs a growing running total with each payment. Every new payment is signed for the previous total plus the new amount:

new total = previous total + this payment

Each signed total must be strictly larger than the last. This gives GoMining an upper bound it cannot exceed, and makes rollback and double-spend impossible inside the instant-payment subsystem: the wallet refuses to sign a total that is smaller than, or inconsistent with, the previous one.

GoMining verifies and marks the payment paid

GoMining checks the confirmation, and the payment becomes paid in about a second (see Payment Lifecycle). You hand over the goods. From your side, the sale is complete.

Settlement is batched and mined

The customer's latest authorized amount settles in its own compact Bitcoin transaction, grouped with other users' transactions into a block GoMining mines itself. GoMining produces about two blocks per day, so on-chain settlement follows on average every 12 hours.

Because every settlement transaction is a standard, independently valid Bitcoin transaction, GoMining absorbs and amortizes the on-chain fee across the whole batch, which is why customers pay no network fee.

If GoMining's mining is briefly unavailable, the pending transactions can be sent to the public Bitcoin network instead, where any miner can record them. Settlement is never stuck indefinitely.

Change returns to your own address

Each settlement spends the selected multisig UTXOs in full. Any residual value above the authorized amount, plus the network fee, returns as a change output to the same multisig address, so it stays self-custodied and immediately available.

Note

An incoming multisig UTXO becomes spendable only after it is confirmed on the Bitcoin main chain, which protects against chain reorganizations.

Where the money lands

Two settlement modes decide the on-chain destination:

  • Operator-settled. Each settlement pays the full cumulative amount to a GoMining-controlled output, and your payout is reconciled afterward as a commercial settlement. This keeps the on-chain output count minimal. Between settlement and payout, you hold unsecured operator credit.
  • Direct-to-merchant (default). The settlement transaction pays your cumulative amount directly to a single-signature (P2WPKH) address derived from your own xpub, whose private key only you hold, giving Layer 1 finality and no post-settlement counterparty exposure. The trade-off is one on-chain output per merchant.

The full comparison, including how the service fee is collected in each mode, is in Settlement Modes.

What it costs, and who gets paid

  • Customers pay nothing. No transaction fees and no spreads.
  • Merchants pay 0.2%, so on a $100 sale the merchant keeps $99.80.

On third-party transactions GoMining keeps none of the fee. It splits in two:

ShareRecipient
0.1%The miners in the GoBTC pool that confirm the transaction
0.1%The wallet provider that initiated the payment

How it compares to Lightning

Because GoMining mines the blocks, GoBTC transactions are confirmed directly on Bitcoin's base layer. There are no payment channels to open, no inbound liquidity to manage, and no off-chain state for merchants or wallets to maintain.

Payments settle natively on Bitcoin. Lightning and GoBTC can coexist.

Your exit path

Conditional Recovery lets you regain sole control of your funds if GoMining ever becomes unresponsive, refuses to co-sign, or shuts down, without its cooperation.

The offline Recovery Key is released to you under whichever comes first:

  1. The operator confirms on-chain settlement of any pending state, or
  2. A configured safety delay elapses after your recovery request.

You can then spend with your User Key plus the Recovery Key directly on Bitcoin.

This also bounds what GoMining can do. Funds at the 2-of-3 multisig need two keys to move and GoMining holds only one, so it cannot spend or confiscate your BTC outright, and the time-based fallback means it cannot block recovery indefinitely.

The remaining trusts are operational: the custody provider honoring its release policy, and, in operator-settled mode, GoMining's solvency during the credit window.

Who can integrate

Any wallet provider, whether hardware (Ledger, Trezor), software (Trust Wallet, MetaMask), or custodial (banks, exchanges, fintech apps), can integrate the GoBTC SDK.

The protocol supports both custodial integrations, where the institution holds customer BTC, and non-custodial ones, where the user holds their own keys. The connecting wallet earns 0.1% on every transaction it initiates, and GoMining runs the reference implementation and the settlement pool.

Where to go next

Source

The protocol is specified in full in the white paper (BTC Instant v1.3.0). Sections 5 (POS flow), 6 (settlement), and 7 (recovery) cover the material on this page.