
前回の開発ログ「HashPort直リンクのJPYC決済|PCは即支払い、スマホの直リンクに苦戦中」の続報です。スマホからの起動導線について HashPort 株式会社へ正式に問い合わせていたところ、公式の回答をいただきました。結論から言うと、スマホで HashPort アプリを直接開く「直リンク(起動)」は実装できました。残っているのは、支払いのあとに手動でブラウザへ戻る一手間だけ。そこも「戻れば即完了」で吸収できています。この記事では、いただいた回答と、それを踏まえて私たちがどう作り込んだかを、正直な進捗として共有します。
HashPort からの公式回答
問い合わせに対し、現時点の対応状況として次の回答をいただきました。
- 加盟店向けの決済 SDK・API は外部提供していない
- 金額を指定した決済リクエスト(ディープリンク/動的QR)の外部提供はなく、外部からの接続手段は WalletConnect v2 経由の接続・署名
- 決済完了後にブラウザへ自動で戻る仕組み(WalletConnect の redirect)は非対応で、手動で戻る操作が必要
要するに、「支払いが終わったら自動でECサイトに戻る」を、こちら(CIH)のコードだけで実現することはできない、ということです。これは私たちの実装の不具合ではなく、ウォレット側が現状その機能を持っていないための制約でした。原因の切り分けができたことで、どこを作り込み、どこは待つべきかがはっきりしました。
できたこと:スマホでもアプリを直接起動
前回つまずいていたスマホの起動は解決しました。仕組みはこうです。決済画面で「HashPortで支払う」を押すと、ブラウザ側で WalletConnect の接続情報を生成し、それをアプリを直接開くリンク(ディープリンク)に載せて HashPort アプリを起動します。アプリ側で接続を承認し、表示された金額の JPYC / USDC に署名すれば送金が実行される、という流れです。PC では従来どおり、決済画面に表示される QR を HashPort アプリで読み取れば、接続 → 署名 → 送金まで一気に進みます。ガス代は CIH GAS SYSTEM が肩代わりする「ガスレス」方式なので、お客様がガス用トークンを用意する必要はありません。
残る一手間と、その解決
残るのは、署名の承認が終わったあと、ウォレットアプリからブラウザへ「手動で戻る」操作です。ここは HashPort が redirect に非対応のため、アプリ側から自動でブラウザへ戻すことができません。そこで私たちは、戻ってきたときに待たせない作りにしました。決済画面を離れている間もサーバー側で着金(リレイヤーの送金完了)を一定間隔で監視し、ブラウザに戻ってきたこと=画面が再表示されたことを検知した瞬間に、その結果を反映して「完了」画面へ自動で切り替えます。お客様は「戻る」を1回タップするだけで、待ち時間なく完了に到達します。つまり「戻る操作は残るが、戻れば一瞬で完了」という形に収めました。
実際の流れ(スマホ)
①決済画面で金額を確認 → ②「HashPortで支払う」→ アプリが起動 → ③アプリで接続を承認し、表示額の JPYC / USDC に署名 → ④ブラウザに戻ると自動で「完了」。この間、ガス代の用意や複雑な設定は不要です。
まとめと今後
スマホの JPYC 決済は実用段階に入りました。PC は接続で即支払い、スマホはアプリ直起動 → 支払い → 戻れば即完了。唯一の手動ステップである「アプリからブラウザへ戻る」は、HashPort 側の今後のアップデート(自動復帰への対応)を待ちつつ、こちらからも要望を続けます。「決済はガスレス・ガス代は CIH 負担」という基本は変わりません。改善が入りしだい、この開発ログで随時アップデートしていきます。
関連記事(開発ログ):
- HashPort直リンクのJPYC決済の開発ログ|PCは即支払い、スマホの直リンクに苦戦中
- WelcartとWooCommerce、JPYC決済プラグインはどちらが簡単?|開発ログ:Welcartが”ひと手間”になる理由
本記事は開発時点の状況にもとづく進捗共有です。対応状況は今後変わる場合があります。「JPYC」はJPYC株式会社の登録商標です。本サービスはJPYC株式会社が提供するものではありません。