
【日本IPでも決済NG】海外から日本のサイトには入れるのに、カード決済だけ失敗する理由
海外出張や駐在中、日本のECサイトや予約サイトを使おうとすると、少し不思議なことがあります。
サイトは普通に開く。
ログインもできる。
日本のVPNにも接続している。
カード決済では3Dセキュアが表示され、メールに届いた認証コードを入力すると本人認証も成功する。
ところが最後の最後で、
「カード決済だけ失敗する」
というケースです。
「日本IPになっている」
「本人認証も通った」
それなのに、なぜ決済だけ失敗するのでしょうか。
ポイントは、
日本IPであること
本人認証に成功すること
その取引が承認されること
は、同じ話ではないということです。
そしてもう一つ。
日本にいるときは普通に使えているのに、海外へ出た途端に同じカード・同じサービスで失敗するのであれば、普段と異なるNetwork環境も“差分”の一つとして考える余地があります。
「日本IPなら日本からのアクセス」は少し単純化しすぎている
海外から日本のサービスへアクセスするとき、一般的なVPNで日本Serverへ接続する方法があります。
経路は概念的にはこうなります。
Overseas
↓
Japan VPN
↓
Data Center
↓
Internet接続先のサービスから見れば、送信元IPのCountryは日本になることがあります。
ただし、
「Countryが日本」=「普段、自宅からアクセスしている状態と同じ」
ではありません。
IPアドレスにはCountry以外にも、
ASN / Network
Hosting / Data Center Networkか
VPN / Proxyとして知られているNetworkか
といった違いがあります。
さらにサービスや決済システムによっては、Network以外にもBrowser / Device情報、Cookie、Accountの利用履歴、過去のLogin状況、取引金額、加盟店、利用パターンなど、複数の情報をRisk判定の材料として利用する場合があります。
つまり、
「日本IPに変えたから、日本国内で普段使っている環境と同じになった」
とは限らないわけです。
3Dセキュアで本人確認できたのに、なぜ決済が落ちる?
ここが少し分かりにくいところです。
カード決済時に3Dセキュアが表示され、
「登録メールアドレスに認証コードを送信しました」
となることがあります。
メールを開き、One-Time Passwordを入力する。
そして認証に成功する。
ここまで進むと、
「本人確認できたのだから、もう決済も通るはず」
と思いたくなります。
しかし、概念的には次のように考えると分かりやすくなります。
購入操作
↓
3D Secure
↓
メールOTPなど
↓
Authentication Success
↓
Payment Authorization
↓
Approved / Declined重要なのは、
AuthenticationとAuthorizationは別
ということです。
「本人確認OK」と「この取引を承認する」は同じではない
3DセキュアでメールOTPを正しく入力できた。
これは、その認証Challengeに成功したということです。
しかし、それだけで、
「このカード取引を必ず承認する」
という意味にはなりません。
たとえば、
3D Secure
「本人確認できました」
↓
Authorization
「この取引は承認しません」という結果もあり得ます。
カード発行会社側では、認証とは別にカードの利用状態、利用限度額、金額、加盟店、過去の利用傾向、不正利用検知などを含めて取引を判断できます。
加盟店や決済事業者側にも、別のRisk Checkが存在する場合があります。
つまり、
3D Secure OK ≠ Payment OK
です。
では、自宅回線を使っても意味がない?
ここで、
「だったら自宅回線からアクセスしても決済が落ちることはあるのでは?」
と思うかもしれません。
その通りです。
たとえば日本にいて普段の自宅回線から決済しても承認されない取引なら、
Home
↓
Residential ISP
↓
3D Secure OK
↓
Authorization NGとなります。
海外からVPNで同じ自宅回線を経由したところで、
Overseas
↓
VPN
↓
Home
↓
Residential ISP
↓
3D Secure OK
↓
Authorization NGとなる可能性があります。
自宅回線は、決済承認そのものを変える仕組みではありません。
それでも「日本では通るのに、海外では落ちる」なら話が少し変わる
興味深いのはこちらです。
日本にいるときは、
同じカード
同じAccount
同じサービス
で普通に決済できている。
ところが海外へ行くと、急に失敗する。
この場合、
「カード自体が使えない」
だけでは説明しにくくなります。
もちろん原因がNetworkだと断定することはできません。
ただ、
普段の利用環境と何が変わったのか
という観点では、
Country、Public IP、ASN、Network Type、Device環境、Browser環境、利用場所、Access Patternなど、複数の差分が生まれています。
その中の一つが、
Internetへ出ているNetwork
です。
現地回線・日本VPN・自宅回線では、出口が違う
海外ホテルのWi-Fiや現地SIMなら、
Overseas
↓
Local ISP / Carrier
↓
Internetです。
一般的な日本VPNなら、
Overseas
↓
VPN
↓
Japan Data Center
↓
Internetになります。
自宅回線をExitにした場合は、
Overseas
↓
VPN
↓
Home
↓
Residential ISP
↓
Internetです。
いずれもInternetへ接続できます。
しかし、
接続先から見えるNetworkの性質は同じではありません。
「日本IP」でもData Center IPとResidential IPは別物
一般的なVPNでは、Internet ExitがData Centerになることが多くあります。
VPN
↓
Data Center Network
↓
Internet一方、自宅回線をExitとして使えば、
VPN
↓
Home
↓
Residential ISP
↓
Internetです。
GeoIP上はどちらも「Japan」と判定される可能性があります。
しかし、
Data Center Network
と、
家庭用ISPのResidential Network
では、Networkとしての性質が異なります。
サービス側がどの情報をRisk判定に利用しているかはサービスごとに異なりますが、
「同じ日本IPなら全部同じ」ではない
という点は押さえておいた方がよいでしょう。
日本SIMの海外Roamingでも、日本IPとは限らない
「日本のSIMを使ってRoamingすれば、日本からのアクセスになるのでは?」
という疑問もあります。
これも必ずしもそうではありません。
Roamingの構成によっては、
Phone
↓
Foreign Mobile Network
↓
Japanese Carrier
↓
Internetのように日本側Carrierを経由してInternetへ出る場合があります。
一方で、別のRouting構成によっては現地側からInternetへ出ることもあります。
そのため、
日本SIM + Roaming = 必ず日本IP
とは限りません。
また日本IPになったとしても、
Mobile CarrierのNetwork
と、
自宅のResidential ISP
は別のNetworkです。
途中でVPNを切り替えればよい、という話でもない
決済が失敗したあと、
「では別のVPNへ切り替えよう」
と考えるかもしれません。
しかし、
Foreign IP
↓
Login
↓
VPN ON
↓
Japan IP
↓
Paymentのように同じSessionの途中でNetworkが大きく変わることが、常に望ましいとは限りません。
サービスによっては、IP Address、Country、ASN、Sessionなどの変化をRisk Signalの一つとして利用する可能性があります。
そのため、決済が失敗するたびにNetworkを何度も切り替えて試行するより、まずカード会社や加盟店が示しているエラー内容を確認する方が重要です。
自宅回線を使うという考え方
もし、
日本では普段問題なく使えている
一方で、
海外からだけ不自然に失敗する
のであれば、普段とのNetwork差分を減らす方法の一つとして、自宅回線をInternet Exitにする構成があります。
Overseas
↓
VPN
↓
Home
↓
Residential ISP
↓
Internetこれは、
「自宅IPに偽装する」
という仕組みではありません。
TrafficそのものがVPNで自宅まで運ばれ、実際に自宅のISPからInternetへ出ています。
つまり、
実際の自宅回線がInternet Exitになる
ということです。
もちろん、これによってBrowser、GPS、Cookie、Device情報まで自宅にいる状態と同じになるわけではありません。
変わるのは主にNetwork経路とInternet Exitです。
自宅WireGuardでも実現できる
この構成自体は、特定の製品でなければ作れないものではありません。
自宅にWireGuard Serverを置いて、
Internet
↓
Home Public IP
↓
WireGuard Serverとすれば、自宅をExitとして利用できます。
Public IPv4があり、Router側で必要なInboundを設定できる環境なら、DIYも有力な選択肢です。
ただし家庭用回線では、
CGNAT、MAP-E、DS-Lite、IPv4 over IPv6、二重NAT、マンション側の上位Routerなどによって、IPv4 Inboundを自由に受けられない場合があります。
IPv6 Directという方法もある。ただし「Port Forward不要」と「Inbound不要」は別
IPv4でInboundできない場合、IPv6 Directを検討できる環境もあります。
ここでよくある誤解が、
「IPv6ならPort Forwardが不要だから、自宅VPNも簡単」
というものです。
IPv6ではIPv4 NATのPort Forwardを使わずに通信できる場合があります。
しかし、
「IPv6ならPort Forward不要」
と
「IPv6ならInboundを考えなくてよい」
は別の話です。
自宅ServerへIPv6 Directで接続するなら、少なくともServerにGlobal IPv6があるか、RouterやServer OSのFirewallで必要なInboundを許可できるか、ISP側から到達可能か、さらに接続元側にもIPv6 Connectivityがあるか、といった条件を確認する必要があります。
たとえば自宅側がIPv6対応でも、海外のHotel Wi-FiがIPv4 onlyなら、その環境からIPv6 Directでは接続できません。
このあたりは別の記事で詳しく整理しています。
関連記事:
「IPv6ならポート開放不要」は本当? 自宅WireGuardで見落としやすいIPv6 Firewallの話
IPv6 Directを検討している場合は、先にこちらを確認しておくと、「Port Forwardが不要になっただけなのか」「Internetから自宅まで実際に到達できるのか」を切り分けやすくなります。
HomeGrid VPNではHome側をOutbound型にする
自宅WireGuardやIPv6 Directのように、RemoteからHomeへ直接到達させる方法とは別の設計もあります。
HomeGrid VPNは、RemoteからHomeのPublic IPへDirect接続する構成ではありません。
HomeとRemote側がCloud Hubへ接続します。
HomeをInternet Exitとして使う場合は、
Remote
↓
Cloud Hub
↓
Home
↓
Residential ISP
↓
Internetとなります。
Home側はCloud HubへOutboundで接続するため、原則として、
IPv4 Port Forward、IPv6 Inbound Rule、DDNS、Remote → Home Public IPv4 Direct、Remote → Home Global IPv6 Directを前提にしません。
つまり、自宅回線側にInternet-facingなInbound Endpointを作ることを前提にしない設計です。
ここで重要なのは、
Cloud Hub ≠ Internet Exit
という点です。
HomeをExitとしている場合、Cloud HubはVPN経路上の構成要素ですが、Internetへの出口ではありません。
Remote
↓
Cloud Hub
↓
Home
↓
Residential ISP
↓
Internetと通信し、最終的にはHome側のResidential ISPからInternetへ出ます。
Home Exitにすると決済が通る、という話ではない
ここは誤解したくないところです。
HomeGrid VPNを使ったから、
カード決済が必ず成功する
ということではありません。
また、
Residential IPだからRisk判定を回避できる
という話でもありません。
自宅回線をExitにすることで変えられるのは、
Foreign Networkや、
Data Center Networkから直接Internetへ出ている状態を、
Home Residential Networkから出る状態へ変えることです。
カード会社や加盟店がその取引を承認するかどうかは、最後まで別の判断です。
重要なのは「日本IPにする」ことより、何が変わったのかを見ること
海外で決済が失敗すると、
「海外IPだからだ」
と考えがちです。
逆に日本VPNを使って失敗すると、
「VPNが悪い」
と考えたくなります。
しかし実際には、それほど単純ではありません。
まず確認したいのは、
日本にいるとき、そのカード・そのサービス・その取引は普通に使えているのか
ということです。
日本にいても同じように失敗するなら、Network以外の原因を疑う方が自然です。
一方、
日本では普通に使える。海外へ行ったときだけ失敗する。
のであれば、海外へ移動したことで増えたさまざまな差分の中に、Network環境も含まれています。
それだけで原因を特定することはできません。
ただ、
普段と同じ自宅回線をInternet Exitとして使う
というのは、その差分の一つを減らす考え方にはなります。
「日本IPなのに決済NG」は矛盾ではない
今回の話を整理すると、決済では大きく、
Network
「どんなNetworkから来ているか」
↓
Authentication
「利用者をどう確認するか」
↓
Authorization / Risk Check
「この取引を承認するか」という異なる判断があります。
だから、
日本IPになっている。
Loginもできる。
3Dセキュアのメール認証も成功する。
それでも、
最後のカード決済だけ失敗する。
ということは矛盾ではありません。
VPNで変えられるのは、その中でも主にNetwork側です。
そして同じ「日本IP」であっても、
日本のData Centerから出るのか
と、
普段使っている家庭用回線から実際に出るのか
ではNetworkの性質が異なります。
自宅回線Exitは決済承認を保証するものではありません。
ただ、日本国内では問題なく使えているのに海外へ出た途端に失敗するのであれば、普段と違うNetwork環境も差分の一つとして考えてみる余地はあるでしょう。