ウォレットのアドレスからBitcoin QRコードを作る
アドレスを貼り付け、必要なら金額を足して、どのBitcoinウォレットでも読み取れるコードをダウンロード。制作物に合わせてデザインを整え、印刷品質で書き出せます。
Google マップで開きます。座標でも構いません(37.4224, -122.0841)。
ビジネスの「クチコミを書く」フォームが開きます。プレイス ID か、それを含む Google マップのリンクを貼り付けてください。
UPI リンクにはチェックサムがありません。ID を打ち間違えると、問題なく読み取れるのに別人へ支払われるコードになります。決済アプリから ID を貼り付け、印刷前に自分宛てに 1 ルピー送って確認してください。
コピーしたまま貼り付けてください。KoloQR はペイロードを組み立てません。銀行が発行したものをそのまま符号化し、印刷前に検査します。
SVG・PNG・JPG • 最大2MB
Bitcoin QRコードとは?
Bitcoin QRコードとは、Bitcoinの支払いURI、つまりアドレスと、任意で金額をBIP-21形式で書いたものを格納したQRコードです。ウォレットアプリでスキャンすると受取先が入力されるので、42文字を打ち直す人はいなくなります。アドレスはパターンの中にあり、送る側が承認するまで取引は一切起きません。

BIP-21がパターンに入れるもの
支払いURIは小さく、きちんと定義された構造で、それぞれの部分が受け取る側のウォレットの動きを変えます。
- bitcoin: - スキームです。これがあるおかげで、スマホはコードをブラウザではなくウォレットアプリに渡します。
- アドレス - 資金の行き先です。新しいbech32アドレスはbc1で始まる42文字、古い形式は1または3で始まる26〜35文字です。
- ?amount=0.05 - 任意で、常にサトシではなく小数のBTCで書きます。ウォレットが金額をあらかじめ入力し、送る側は承認の前に変更できます。
必要なのはこれだけで、コードがネットワークに触れる部分は一切ありません。Bitcoin QRコードは「どこへ送金するか」を書いたテキストにすぎず、資金を動かすことも、そこから支払うこともできません。画面に表示しても紙に印刷しても、動作はまったく同じです。
bech32アドレスを大文字にしてパターンを半分に
bech32アドレス、つまりbc1で始まるものは大文字と小文字を区別しない仕様で、BIP-173はQRコードの中では特に大文字の形を使うことを推奨しています。理由はQRコードのデータの入れ方にあります。大文字と小文字が混じったテキストは1文字8ビットのバイトモードに入るしかありませんが、数字・大文字・少数の記号だけに限ったテキストは1文字5.5ビットの英数字モードが使えます。42文字のアドレスならおよそ3分の1少ないビット数で済み、たいていシンボルのバージョンが1つか2つ下がります。同じ正方形に入るモジュールが減り、1つずつが大きくなり、遠くからでも読め、印刷の質が悪くても生き残るコードになります。この節約は本物で、しかも無料です。BC1QAR0SRRR7XFKVY5L643LYDNW9RE59GTZZWF5MDQ は、標準を実装したどのウォレットにとっても小文字の形とまったく同じアドレスです。当てはまるのはbech32だけです。1または3で始まるレガシーアドレスはBase58Checkで、大文字小文字に意味があり、変えれば別の、しかも無効なアドレスになります。Ethereumはさらに踏み込んでいて、大文字小文字がチェックサムを担っているため、Ethereumのアドレスは決して大文字にしてはいけません。
QRコードを作成
Bitcoin QRコードが使われる場面
このコードは、42文字の文字列を人が書き写す事態をなくすために存在します。だからアドレスが画面の外に出る場所ならどこにでも現れます。
- 1
ウォレットから受取アドレスをコピーする
手で打たず、必ずコピーして貼り付けます。1文字違うだけで無効なアドレスになるか、まれに誰のものでもない有効なアドレスになります。
- 2
種類の一覧を開いてBitcoinを選ぶ
Bitcoinはその他の中、暗号資産グループにあります。アドレスを貼り付け、ウォレットに金額を先に入れておきたければBTCで金額を足します。
- 3
デザインは整えつつ、読み取りやすさを優先する
ブランドの制作物に入れるなら形と色を選びます。ここではコントラストが他のどの種類よりも重要です。1文字の読み違いが支払いの失敗になるからです。
- 4
スキャンして1文字ずつ確認する
書き出したファイルを実際のウォレットアプリでスキャンし、表示されたアドレスをコピー元と比べます。最初と最後の4文字だけでなく全部です。そのあとSVGかPDFで書き出します。

どのファイル形式をダウンロードすべき?
KoloQRはBitcoin QRコードを3つの形式で書き出します。どこで見られるかで選んでください。
- PNG レジの画面、配信のオーバーレイ、ウェブページなど、コードが固定サイズで表示される場所に向いています。
- SVG 寄付の掲示、請求書、印刷したカードに。印刷所が拡大しても輪郭が甘くなりません。
- PDF 印刷所への入稿や、請求書テンプレートへの配置に。印刷対応の品質のまま渡せます。
ここでの印刷品質は見た目の問題ではありません。リンク用のコードでモジュールが甘くても欠けても、失うのはページビュー1回です。支払い用のコードでは読み取れないか、最悪の場合、送る側にアドレスを手で打ち込ませることになります。ベクターで書き出し、大きく印刷し、コントラストは徹底してください。
QRコードを作成Bitcoin QRコードのベストプラクティス
支払い用のコードには、他のどのQRの種類にもない失敗の仕方があります。だから守るべき習慣も厳しくなります。
エンコードの前にbech32アドレスを大文字にする
すべて大文字のbc1アドレスは英数字エンコードの対象になり、大文字小文字が混じった場合よりおよそ3分の1少ないビット数で済みます。同じアドレス、粗いパターン、読み取り距離の向上です。
レガシーアドレスは決して大文字にしない
1または3で始まるアドレスはBase58Checkで、大文字小文字に意味があります。変えても同じアドレスにはなりません。無効なアドレスか、誰か他人のアドレスになります。
作成したらアドレス全体を確認する
書き出したファイルをウォレットでスキャンし、すべての文字を比べます。最初と最後の4文字だけ見るのは、アドレスをすり替えるマルウェアがまさに狙っている近道です。
静的なアドレスを印刷する前に一度考える
1つのアドレスを使い回すと、そこへのすべての支払いが公開台帳の上で結び付きます。あなたにとっても、支払う人全員にとってもプライバシーの損失です。店頭のレジは販売ごとに新しいアドレスを生成すべきです。
固定の金額には気をつける
BTCで書いた金額は印刷した瞬間に固定されますが、為替レートは固定されません。現地通貨で値付けするものには、アドレスだけを印刷して金額はレジ側に入れさせてください。
コードの横にネットワークを明記する
「Bitcoin(BTC)のみ」と書いておけば、暗号資産の支払いで最も高くつく間違いを防げます。違うネットワークに送られたコインは、たいてい取り戻せません。
モジュールは純粋な黒のままにする
コードの周りを飾るのは構いません。中は別です。コントラストのぎりぎりを攻める価値がない唯一の種類がこれで、読み違いの代償が、届かない支払いだからです。
余白(クワイエットゾーン)を守る
四辺にモジュール4個分の余白を、賑やかな掲示ならもっと多く。誤り訂正は壊れたモジュールを復元できますが、余白のないコードを見つけることはできません。
サイズは大きめに取る
読み取り距離の少なくとも10分の1、そこからもう1段大きく。BitcoinのURIは長いデータなので、最良の状態でもシンボルは密です。
公開するQRコードに秘密鍵やシードを入れない
受取アドレスは誰に見せても安全です。コードの中の秘密鍵やシードフレーズはウォレットそのもので、向けられたすべてのカメラに読み取られます。
Bitcoin QRコードが動かないときは
支払い用のコードは、お金が絡む前に知っておく価値のある壊れ方をします。次の4つでほぼすべての場合をカバーできます。
ウォレットにアドレスが無効だと表示される
- 原因
- たいていは大文字にしてしまったレガシーアドレスか、メールやPDFから余計な空白や改行ごとコピーしたアドレスです。Base58Checkは大文字小文字を区別し、融通が利きません。
- 対処法
- ウォレットからアドレスをコピーし直し、編集せずに貼り付け、大文字にする裏技はbc1で始まる場合にだけ使います。そのあと書き出したファイルを再スキャンして確認してください。
パターンが密すぎて読み取りにくい
- 原因
- 大文字と小文字が混じった42文字のbech32アドレスは1文字8ビットのバイトモードでエンコードされ、金額のパラメータがさらに増やします。この組み合わせでシンボルのバージョンが何段も上がります。
- 対処法
- bech32アドレスを大文字にして英数字モードに移し、必須でなければ金額のパラメータを外し、大きく印刷します。3つとも効果があり、最初の1つは無料です。
スマホがウォレットではなくブラウザを開く
- 原因
- そのスマホにbitcoin:スキームを扱うアプリが登録されていないため、OSが不明なリンクとして扱っています。
- 対処法
- ウォレットの入っていないスマホでは当然の動作です。あなたに支払う人は持っています。ウォレットのない端末で判断せず、ウォレットアプリでテストしてください。
届いた支払いの金額が違っていた
- 原因
- 印刷した金額のパラメータはBTC建てで、過去の為替レートで決めたものです。もう現地通貨での価格とは一致しません。
- 対処法
- 長く使うものにはアドレスだけを印刷し、金額は送る側かレジに入力させます。固定の金額は、取引ごとに作り直せる画面の上にあるべきものです。
問題がファイルにあるのか印刷にあるのか判断できない場合は、書き出した画像をQRコードスキャナーに読み込ませてください。パソコンでは読めて紙では読めないなら、原因はファイルより後の工程にあります。
Questions? Answered
Bitcoin QRコードは、支払いURI、つまりアドレスと、任意で金額をBIP-21形式で格納します。ウォレットアプリでスキャンすると受取先が入力されるので、42文字のアドレスを打ち直す人はいなくなります。
ウォレットから受取アドレスをコピーし、KoloQRの種類の一覧でBitcoinを選んで貼り付けます。先に入れておきたい金額があれば足して、PNGかSVGをダウンロードします。サーバーには何も送られません。
受取アドレスが入っているなら安全です。それは公開情報で、あなたに送金するためにしか使えません。公開するコードに秘密鍵やシードフレーズを入れてはいけません。それはウォレットそのものです。
bech32が大文字と小文字を区別しない仕様で、大文字のアドレスなら1文字8ビットではなく5.5ビットのQRの英数字エンコードが使えるからです。およそ3分の1少ないビット数になり、目に見えて粗く、読み取りやすいコードになります。
いいえ。bc1で始まるbech32アドレスだけです。1または3で始まるレガシーアドレスはBase58Checkで、大文字小文字に意味があります。Ethereumのアドレスも決して大文字にしてはいけません。あちらは大文字小文字がEIP-55のチェックサムを担っています。
取引ごとに作り直せる画面の上だけです。金額は印刷した瞬間にBTC建てで固定される一方、為替レートは動くので、印刷した金額は意図した価格から離れていきます。
機能はしますが、そのアドレスへのすべての支払いが互いに公開の形で結び付きます。寄付の掲示なら許容できる引き換えですが、店頭のレジでは取引ごとに新しいアドレスを生成してください。
送られません。スキャンで入るのは受取先と、あれば金額だけです。送る側は自分のウォレットで取引を確認して承認します。QRコードだけで資金が動くことはありません。
コード自体はただのテキストなので、オフラインでもスキャンできます。取引をネットワークに送るには接続が必要です。だからこそ、このコードはペーパーウォレットやコールドストレージの構成で使えます。
そのスマホにbitcoin:スキームを扱うアプリが登録されていないからです。ウォレットの入っていないスマホでは普通のことです。持っていない端末で判断せず、実際のウォレットアプリでテストしてください。
関連ページ
このページの続きになるページ - 同じ場面、同じ種類のコード、あるいは次に決めることについて。
PayPal QRコード
スキャンをPayPal.meのリンクへ送り、印刷したコードから支払いを受け取れます。
Pix QRコード
銀行が発行したPixのコピペ文字列を、デザインして印刷できるコードにします。
PromptPay QRコード
タイの銀行アプリが発行したPromptPayの文字列を、デザインして印刷できるコードにします。
小売店
棚札・店頭のガラス・レジのサインから、商品情報や在庫、レビューのリンクへ。
美容室・サロン
鏡前での次回予約、施術ごとのアフターケア、スタイリストごとのポートフォリオ。アセトンやカラー剤に耐える素材まで。
Ethereum QRコード
Ethereumアドレスを、どのウォレットでも読み取れるコードに。金額を付けることもできます。
KoloQRを選ぶ理由
- ウェブサイト、メニュー、Wi-Fi、PDF、名刺用のQRコードを作成
- 色・ロゴ・オリジナルの形をカスタマイズ
- 高品質なPNG・SVGファイルをダウンロード
- 印刷にもデジタルにも対応
