はじめに
おしゃべり猫型ロボット「ミーア」を開発中。
![](https://mia-cat.com/wp-content/uploads/2024/05/mia-ogp-2.png)
6月1日リリースに向けて、本体購入の決済をHPに設定中。
WordPress(WooCommerce)+Stripeの組み合わせで、Stripeの本番決済をテストしたところ、思わぬ落とし穴に遭遇したので共有。
クレジット入力画面が表示されない!?
WooCommerce + Stripeの連携設定は、下記記事に分かりやすく書かれているので割愛。記事を参考に設定を進めていき、無事テストモードでの検証が終わったので、そのまま本番環境の設定を進めていった。
https://tcd-theme.com/2022/06/woocommerce-stripe.html
ちなみにテストモードだと、下記のように、Stripeがあらかじめ用意しているテストカード番号を入力することで決済テストできる。
![](https://kazulog.fun/wp-content/uploads/2024/05/image-58.png)
本番決済をテストしようと思い、とりあえず、配送無料、購入金額1円の最小単位にして、自分のクレジットカードで決済できるか試みたところ、、
![](https://kazulog.fun/wp-content/uploads/2024/05/image-59-1024x304.png)
「あれ!?クレジット画面入力欄が表示されていない?」
![](https://kazulog.fun/wp-content/uploads/2024/05/image-60.png)
枠は表示されているが、実際のクレジット番号やCVCなどの記入欄が表示されていない。
これは、枠をクリックして、次の画面に遷移したら入力フィールドが表示されるのかな?と思ったがそうではなさそう。
Stripeの本番利用の権限がまだ降りていないのか、本番環境移行の設定(秘密鍵・公開鍵・webhookの設定など)が間違っていたのかなど確認したが特に問題はなかった。
最低購入金額として50円が必要
ということで、console.logを見たところ、StripeへのAPI通信の部分で400エラーが大量に吐かれていた。
![](https://kazulog.fun/wp-content/uploads/2024/05/image-61-1024x613.png)
エラーのリンクをクリックしたところ、下記メッセージが。
{
"error": {
"code": "amount_too_small",
"doc_url": "https://stripe.com/docs/error-codes/amount-too-small",
"message": "Amount must be at least ¥50 jpy",
"param": "deferred_intent.payment_method_types",
"request_log_url": "https://dashboard.stripe.com/logs/req_z7SjHMagmZfhA9?t=1716859713",
"type": "invalid_request_error"
}
}
円の場合、最低金額は50円必要なの?
最低金額に関しては、Stripeのドキュメントを見たが、50円と明記しているところは調べた限りなさそう。該当しそうな説明は下記リンクの「請求しきい値」の欄。
![](https://d37ugbyn3rpeym.cloudfront.net/docs/og-image/billing.subscriptions.usage-based-legacy.ogimage.png)
とりあえず、販売価格を50円に変更して、再度トライしたところ
![](https://kazulog.fun/wp-content/uploads/2024/05/image-62-1024x333.png)
無事表示された!
![](https://kazulog.fun/wp-content/uploads/2024/05/image-63.png)
そのまま決済も無事完了!
![](https://kazulog.fun/wp-content/uploads/2024/05/image-64-1024x639.png)
Stripeの管理画面にも売上計上された。
![](https://kazulog.fun/wp-content/uploads/2024/05/image-65.png)
メールも届いている。
![](https://kazulog.fun/wp-content/uploads/2024/05/image-66.png)
結論
にしても、エラーのUI分かりづらすぎるな。というかそもそも画面上にエラー吐いていない。
50円以下の商品を売る人はそうそういないだろうから、というのもあるかもしれないが。
何はともあれ、無事本番決済もテストできたので、6/1のリリースに向けて進められそうである。