2026年7月16日
2026年7月16日
WooCommerceで暗号資産(仮想通貨)決済を導入する方法と注意点
WooCommerceに暗号資産(仮想通貨)決済を加えるには、WooCommerce本体には暗号資産を受け取る機能が無いため、暗号資産決済に対応したゲートウェイプラグインを追加し、決済サービス側のアカウントまたは自分で運用する決済サーバーと接続します。この記事では、導入方式の選び方、WooCommerce側の設定と動作テスト、注文が「保留中」のまま進まないときの確認点、そして日本で運用するときに押さえておくべき制度面の考え方までを順に解説します。
導入方式は大きく2種類ある
暗号資産決済プラグインは、どこで暗号資産を受け取り、誰が管理するかによって2つに分かれます。最初にどちらにするかを決めると、プラグイン選びと準備が進めやすくなります。
決済代行サービスを使う方式は、事業者が提供する決済画面(インボイス)に顧客を誘導し、入金の確認や為替レートの計算をサービス側が行う形です。サービスによっては受け取った暗号資産を法定通貨に換えて精算する機能があり、価格変動のリスクを店舗側が抱えずに済む場合があります。一方で、サービスの審査や利用規約、対応する国・通貨の制限があり、手数料もサービスごとに異なります。
自分で決済サーバーを運用する方式は、BTCPay Server のようなオープンソースの決済サーバーを自分で立て、WooCommerceと連携させる形です。仲介者を通さず自分のウォレットに直接入金されますが、サーバーの保守、ブロックチェーンとの同期、バックアップ、価格変動への対応はすべて自分で引き受けることになります。
どちらの方式でも、プラグインは WordPress.org の公式ディレクトリか、決済サービス提供元の公式サイトから入手します。暗号資産決済は偽物のプラグインや改ざんされた配布物が出回りやすい分野です。最終更新日、対応しているWooCommerceのバージョン、サポートフォーラムでの対応状況を確認してから選びます。
日本で運用するときの制度面の注意
日本では、暗号資産の売買や交換、他人のための暗号資産の管理などは資金決済法上の「暗号資産交換業」にあたり、登録が必要とされています。自分の商品の代金として暗号資産を受け取るだけなのか、顧客から預かったり法定通貨と交換したりする仕組みを自社で持つのかによって、法律上の位置づけが変わる可能性があります。
そのため、次のような点は導入前に整理しておくと安全です。
- 利用する決済サービスが、どの国のどのような登録・許認可のもとで運営されているか
- 返金や返品のとき、暗号資産で返すのか円で返すのか、その際のレートをどう決めるか
- 特定商取引法に基づく表記や利用規約に、暗号資産で支払う場合の条件を書き加える必要があるか
- 受け取った暗号資産の会計・税務上の扱い
この記事は技術的な導入手順の解説であり、法的な判断を示すものではありません。自社の取引形態が規制の対象になるかどうか、会計処理をどうするかは、弁護士や税理士などの専門家、または利用する決済サービスの窓口に確認してください。
WooCommerce側の設定手順
ここからは、ゲートウェイプラグインを導入してからの共通の流れです。プラグインによって画面の項目名は異なるため、具体的な入力内容はプラグインの公式ドキュメントに従ってください。
1. 事前にバックアップと検証環境を用意する
決済まわりの変更は、本番で試行錯誤すると実際の注文に影響します。サイトとデータベースのバックアップを取り、できればステージング環境で一通り試してから本番に反映します。
2. プラグインを有効化して決済設定に表示させる
プラグインを有効化すると、WooCommerceの設定の「決済」タブに新しい決済方法が追加されます。ここで有効化し、チェックアウト画面に表示される名前と説明文を設定します。説明文には「お支払い画面で表示される金額は一定時間のみ有効です」など、暗号資産決済特有の注意を短く書いておくと問い合わせが減ります。
3. 決済サービスまたは決済サーバーと接続する
決済代行サービスの場合は、サービス側の管理画面で発行したAPIキーやWebhook用のシークレットをプラグインの設定に入力します。自分で決済サーバーを運用する場合は、サーバー側でストアを作成し、WooCommerceとペアリングします。
ここで大切なのは、ウォレットの秘密鍵やリカバリーフレーズ(シードフレーズ)をWordPressに入力しないことです。WordPressは多数のプラグインが動く環境で、侵害されたときの被害が大きくなります。入金先の管理は、決済サービス側か、受け取り専用の公開鍵(拡張公開鍵)だけを渡す仕組みで行うのが一般的です。APIキーも、サイトの設定画面のスクリーンショットや、Gitで管理するファイルに残さないよう注意します。
4. 表示する条件を絞る(任意)
少額の注文では送金手数料の割合が大きくなるため、一定額以上の注文でだけ暗号資産決済を表示したい場合があります。WooCommerceの woocommerce_available_payment_gateways フィルターで、表示する決済方法を絞り込めます。
<?php
/**
* カート合計が5,000円未満のときは暗号資産決済を表示しない例。
* 'your_crypto_gateway_id' は、導入したプラグインのゲートウェイIDに置き換える。
*/
add_filter( 'woocommerce_available_payment_gateways', function ( $gateways ) {
if ( ! function_exists( 'WC' ) || ! WC()->cart ) {
return $gateways;
}
$min_total = 5000; // 円
if ( isset( $gateways['your_crypto_gateway_id'] )
&& (float) WC()->cart->get_total( 'edit' ) < $min_total ) {
unset( $gateways['your_crypto_gateway_id'] );
}
return $gateways;
} );
ゲートウェイIDは、「決済」タブでその決済方法の設定画面を開いたときのURL(section= の後ろ)で確認できることが多いほか、WP-CLIの wp wc payment_gateway list --user=1 --fields=id,title,enabled でも一覧できます。このコードはテーマの functions.php ではなく、子テーマか独自の小さなプラグインに置くと、テーマ更新で消えません。
5. テスト用ネットワークで決済を通す
多くの暗号資産決済サービスや決済サーバーには、テスト用のモードやテスト用ネットワーク(テストネット)が用意されています。実際の資産を動かさずに、次の流れを確認します。
- 商品をカートに入れ、暗号資産決済を選んで注文する
- 決済画面に正しい金額と有効期限が表示されるか確認する
- テスト用の資産で送金し、WooCommerceの注文ステータスが変わるか確認する
- 期限切れ、金額不足、送金しなかった場合に、注文がどのステータスになるか確認する
注文ステータスの変化は、決済サービスからサイトへの通知(WebhookやIPN)で行われます。テストで最も多い失敗は、この通知がサイトに届かないことです。
注文が「保留中」や「支払い待ち」のまま進まないとき
送金は完了しているのに注文が更新されない場合、ブロックチェーン上で必要な承認数にまだ達していないか、サイトが通知を受け取れていないかのどちらかであることがほとんどです。次の順に確認します。
- 決済サービス側の通知履歴:管理画面で、サイトへの通知が送信されたか、どのHTTPステータスが返ったかを見ます。403や401であれば、サイトの手前で通知がはじかれています。
- ステージング環境のBasic認証:認証をかけた環境では、外部からの通知も認証で止まります。テスト中だけ通知のURLを認証の対象外にするか、通知を受けられる環境でテストします。
- WAFやセキュリティプラグイン:海外のIPアドレスからのPOSTや、短時間の連続アクセスをブロックする設定に通知が引っかかることがあります。ブロックログに決済サービスのアクセスが残っていないか見ます。
- キャッシュ:通知を受けるURLがページキャッシュの対象になっていると、処理が実行されません。キャッシュの除外設定を確認します。
- WooCommerceのログ:「WooCommerce」→「ステータス」→「ログ」に、プラグインが記録したエラーが残っている場合があります。
運用で気をつけること
暗号資産は価格の変動が大きいため、決済画面で提示した金額には有効期限があります。期限を過ぎてから送金された場合や、送金額が足りない・多すぎる場合の扱いは、プラグインやサービスによって異なります。導入前に仕様を確認し、顧客向けの案内ページにも書いておきます。
返金はクレジットカードのように自動で戻せないことが多く、顧客の返金先アドレスの確認や、返金時点のレートの扱いを手作業で行う場面が出てきます。返金の手順を社内で決めておくと、問い合わせのたびに迷わずに済みます。
また、プラグインや決済サーバーの更新は、セキュリティの修正を含むことが多いため放置しないようにします。更新前にはバックアップを取り、テスト注文で動作を確かめてから本番に反映します。対応する通貨や仕様は変わることがあるため、記事の内容は2026年10月現在の一般的な状況として、最新の情報は各サービスの公式ドキュメントで確認してください。
まとめ
- WooCommerce本体だけでは暗号資産決済はできず、対応するゲートウェイプラグインと、決済代行サービスまたは自前の決済サーバーが必要です。
- 秘密鍵やリカバリーフレーズはWordPressに入力せず、APIキーも外部に残さないよう管理します。
- テスト用ネットワークで、正常な支払いだけでなく期限切れや金額不足の動きまで確認します。
- 注文が進まないときは、決済サービスからの通知が認証・WAF・キャッシュで止まっていないかを最初に疑います。
- 資金決済法や暗号資産交換業との関係、返金や会計処理は、取引形態によって判断が分かれるため専門家や決済サービスに確認します。