← Protocols
Strike
Payments / Onramp·Bitcoin

Strike

01Description

Stripe-like REST API for Bitcoin Lightning and USD payments. Send, receive, and exchange BTC/USD; Lightning invoices settle instantly with low fees.

02Best for
  • 01Lightning invoicing
  • 02USD ↔ BTC programmatic exchange
  • 03instant low-fee payouts
  • 04creator tipping / streaming sats
  • 05cash-to-Bitcoin payment rails
03Install
  • # REST client; no official JS SDK — use fetch/axios
  • pnpm add axios
04Environment variables
VariableScopeDescription
STRIKE_API_KEYServerStrike API key from your developer dashboard.
STRIKE_WEBHOOK_SECRETServerSigning secret used to verify webhook payloads.
05Prompt snippet
Use Strike to issue Lightning invoices and move USD/BTC. All requests are REST against `https://api.strike.me/v1` with header `Authorization: Bearer {STRIKE_API_KEY}`. Create an invoice via `POST /invoices` `{ amount: { amount: '10.00', currency: 'USD' }, description, correlationId }`, then `POST /invoices/{invoiceId}/quote` to materialize a Lightning BOLT11 (`lnInvoice`) — render it as a QR. Subscribe to the `invoice.updated` webhook and verify the `X-Webhook-Signature` HMAC against `STRIKE_WEBHOOK_SECRET` before crediting the user. Send Lightning out via `POST /payment-quotes/lightning` then confirm the quote.
06Gotchas
  • Strike is custodial and KYC-gated for many products — your end-users may need Strike accounts depending on the flow; design for non-Strike-payer Lightning invoicing where possible.
  • API access is geographically restricted (US + select markets); reject out-of-region users early or you'll see opaque 4xx errors.
  • Lightning quotes expire fast (~60s); always re-quote before final confirmation or the BTC/USD price will move under you.
  • Lightning-network success depends on routing liquidity Strike manages — large invoices can fail; handle `payment.failed` and offer retry/on-chain fallback.
  • Webhook signatures are HMAC-SHA256 over the raw body — parse the request body as a buffer, not after JSON re-serialization, or signatures will mismatch.
  • Sandbox keys exist but feature parity with production is partial; some flows can only be exercised against the live API.
07Alternatives