BTC on Bitcoin
Accept BTC
on Bitcoin with an API.
Accept and send BTC on Bitcoin: a deposit address for every customer, deposits credited once they're final, and payouts your own team approves. The keys stay in hardware enclaves you can verify.
BTC on Bitcoin
The details.
| Network | Bitcoin |
| Type | The native coin of Bitcoin |
| Decimals | 8 (amounts in the API are whole numbers of the smallest unit) |
| Deposits | A deposit counts once it is 2 blocks deep and its block is still part of the chain. If a reorganization removes it, it's never credited. |
| Minimum withdrawal | 0.0005 BTC |
| Network fees | Fees come from the coins being sent. A payment still unconfirmed after 30 minutes is resent with a higher fee (replace-by-fee), from the same coins to the same recipient. |
| Addresses | Native SegWit (P2WPKH) addresses, starting with bc1q. |
| Asset id in the API | BTC |
For developers
Deposit addresses and payouts in a few lines.
import { Valtu, depositAddress } from "@valtu/wallet-kit"; const valtu = Valtu.fromEnv(); // A deposit address for one of your customers (idempotent). const wallet = await valtu.wallets.forCustomer("cus_42"); const address = depositAddress(wallet, "bitcoin"); // A payout of 0.0025 BTC: retries never send twice. const amount = await valtu.assets.toBaseUnits("BTC", "0.0025"); await valtu.transfers.create({ walletId: payoutWalletId, asset: "BTC", amount, to, externalId: "payout_981" });
Python: pip install valtu, same calls (valtu.wallets.for_customer, valtu.transfers.create). Full guide: integration.
Related
More on Valtu.
Start with a test workspace today.
Same dashboard, same API, free test coins. Go live when your team is ready.