Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
UseBitcoinを支える技術 - 普通のWebに、何を⾜すとBitcoin決済サイトになるのか
Search
moti
April 27, 2026
Programming
2
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
UseBitcoinを支える技術 - 普通のWebに、何を⾜すとBitcoin決済サイトになるのか
UseBitcoinを支える技術
普通のWebに、何を⾜すとBitcoin決済サイトになるのか
moti
April 27, 2026
Other Decks in Programming
See All in Programming
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
180
Domain-Driven Transformation
hschwentner
2
2.3k
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
1.1k
AWSに止められる覚悟してますか?
morizo_1984
2
540
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
R8 の設定見直しでアプリサイズ削減
andpad
0
220
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
S3 TablesのIcebergデータに、AIエージェントからアクセスしてみた / 20261016developersio2026joetsu-accessing-iceberg-in-s3tables-via-agent
kasacchiful
PRO
0
170
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
180
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
180
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
0
510
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
830
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
440
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
630
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How to Ace a Technical Interview
jacobian
280
24k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
540
Transcript
UseBitcoinを⽀える技術 普通のWebに、何を⾜すとBitcoin決済サイトになるのか 2026.04.25 @mot_xx 10 min
このLTは ”久しぶりに会ったWebエン ジニアの友⼈” に説明するつもりで話 します 実装イメージと判断材料を最短で伝える。技術選定の理由やハマりどころを、 リアルな経験として共有します。
このLTのゴール UseBitcoin.jpの技術スタックを理解し、BTC決済のWebサービ スの実装をはじめることができる 01 UseBitcoinを⽀える 技術の基本 UseBitcoinを⽀える技 術の全体像を掴む 02 Bitcoin特有の
技術スタックを知る ⾃分でBTC決済Web サービスを実装する⾜ がかりとする 03 ビットコイン決済サービスの リアルを共有 実際の経験とハマりど ころを話す
moti
UseBitcoin.jp とは? サービス概要 ‧Bitcoin決済対応ECサイト ‧ユーザーアカウントなし ‧商品:プリペイドカード
全体ざっくりアーキ図 WebアプリとBTCPay は⾃社運⽤環境で管理 ユーザー Webブラウザ Webアプリ ビットコインEC BTCPay Server 決済管理
Bitcoin 決済インフラ AWS BTCノード LNノード グローバルインフラ BTCノード LNノード React Rust PostgreSQL
UseBitcoin.jp の技術スタック フロントエンド React + TypeScript React TypeScript Tailwind バックエンド
Rust Rust axum データ管理 データ永続化 PostgreSQL bitcoind LND インフラ/構成管理 AWS + Cloudflare AWS Cloudflare Workers Nix (devenv) S3 sqlx Bitcoin決済 Bitcoin + Lightning bitcoind LND BTCPay Server
普通のWeb技術に"これ"を⾜しただけ 普通のWeb構成 既存のECサイト技術 React + TypeScript / Rust PostgreSQL AWS
(ECS Fargate/EC2/RDS), Cloudflare 追加したもの Bitcoin決済レイヤー BTCPay Server(⾃社サーバー内) Bitcoin / Lightning ノード RTL(ノード管理ソフトウェア) ⾜したのは"Bitcoin決済レイヤー"だけ。Webアプリの8割は既存技術で構築可能
BTCPay Serverとは 決済UI‧Webhook通知‧ウォレット管理を担う セルフホスト型のBitcoin/Lightning Network決済サーバー
アーキテクチャ概要 ECサイトとBTCPayServerスタックの連携構成 BTCPayServer管理領域 顧客 購入者 マーチャント 店舗管理者 ECサイト プラグイン /
API連携 BTCPayServer 決済エンジン PostgreSQL 設定・請求DB NBXplorer ブロックチェーン監視 Lightning Node ライトニング決済 Bitcoin Core フルノード Bitcoin ネットワーク (P2P) ECサイト BTCPayスタック ビットコイン層 BTCPay Serverとは
なぜBTCPay Serverを選んだか • 仮説検証用のプロダクトを素早く完成させるため ◦ サービス管理画面・WebAPIの両対応で、用途に応じて使い分け可能 ◦ セルフカストディで、セキュリティを自分でコントロールできる (OpenNodeなどカストディ型サービスとの比較) ◦
最小コストでビットコイン環境が構築でき、仮説検証に応じてpivotしやすい
ハマりどころ1: 売上を得るためにLNノード運⽤が常に必要 - チャネルリバランス - まず、チャネルの説明
・EC売上分のビットコインを受け取り続けると残高が増え、チャネルバランスが偏り、最終的にEC売 上を受け取ることができなくなる。リバランスが必要 ・チャネル開設時、最初にリバランスしないと、EC売上を受け取ることができない - Inbound Capacityはチャネル上の相手の残高 - Outbound Capcityはチャネル上の自分の残高 参考:LNにおけるInbound
Capacityの獲得方法8選 https://bitcoin-research.jp/ln-inbound-capacity-8-methods/ ハマりどころ1: 売上を得るためにLNノード運⽤が常に必要 - チャネルリバランス -
ハマりどころ2: LNノードのバックアップが難しい ウォレットのシードをバックアップ LNウォレットのシードをバックアップ Static Channel Backup (SCB) の取得‧外部保管 ノードとチャネルの情報を持つデータを取得、別の場所にバックアップしておく
同期的なレプリケーション 可⽤性を⾼める場合は必要。⾮同期レプリケーションは避ける。
まとめ 01 普通のWeb + BTCPay Server + Bitcoin/Ligntning ノードで作れる 既存のWeb技術スタックにBitcoin決済レイヤーを追加
02 ハマりどころはLNの残⾼リバランス運⽤ Lightning NetworkのInbound Capacity管理が課題 03 8割はWeb開発のベーシックな技術 2割がビットコイン固有 ⼤半は⼀般的なWeb開発スキルで対応可能 意外と普通のWebエンジニアの延⻑で作れる 既存のWeb開発スキルにBitcoinの知識を⾜すだけで実現可能
Thank you for your attention! Q&A - ご質問があればお気軽にどうぞ usebitcoin.jp https://usebitcoin.jp
BTCPay Server Docs docs.btcpayserver.org
Appendix: オンチェーン vs Lightning ⽐較 評価軸 オンチェーン (On-chain) Lightning Network
速度 遅い (10分〜1時間) 即時 (秒単位) ⼿数料 ⾼い (数百 sats) 安い (1〜 sat) 確実性 確実(ブロック確認後) ルートが無かったら失敗 運⽤難易度 シンプル 複雑(LNノード管理必要) ユースケース ⼤額決済‧保存 ⾼頻度‧⼩額決済