こういう使い方は特殊なのか?
自分が公開しているWebサービスp4matchではポイントを買ってもらい、そのポイントを使ってイベント(大会)参加の申し込みを行う形をとっています。
このポイントとは1000円チャージしたら1000ポイント、5000円チャージしたら5000ポイント
というようにSUICA等の電子マネーと同じように扱うものです。
そのポイント購入にあたってOmiseの導入に取り組み始めたのですが
- ページに複数の購入ボタンが設置できない
- 指定のスクリプトを複数置いても決済ボタンは1つしか作られない
- 一度設置したボタンの購入金額を変更することが出来ない
- 決済ボタンが自動生成されるもので事後変更等動作が保証できかねる
この仕様って通常の決済は1商品1ページで決済ボタンも1つが当たり前ってことなのでしょうか?
でもチャージ金額のボタンを押したらそれぞれの決済ページに遷移するというのは避けたい(そのページで決済を終了にしたい)
参考記事
@Hi_Noguchisさんの
Omise.jsのdata-amount値を可変にする
過程
1はどうしても解決できなかったので
参考記事によりボタンは一つで2.の対応で問題が解決できると思い、金額をラジオボタンで選んでもらい、その時上記の対応を行いました。
しかし一度この対応後にラジオボタンの再選択(再設置し直し)すると決済ボタンは表示されなくなってしまいました。
(jQueryのキャッシュの関係なのかな?)
対応策
- ラジオボタンでの選択時には何も行わず、”選択したポイントをチャージする”というボタンを用意する
- ”選択したポイントをチャージする”ボタンを押した時にダイアログを作成
- ダイアログオープン時に決済ボタン作成
- ダイアログを閉じる時にページリロード
強引ですがこれで金額選択ができる決済ページが出来ました。
つぶやき
決済サービスはなにが正解?
まだしっかり収益が出ていないサービスなので固定出費は避けたいので使用料は決済手数料(さらに安い)というサービスで探してみると
- PayPal
- お客さんがID作らないといけない?
- SPIKE
- 手数料が独特でいいかもと思ったのですが売上10万超えると高くなったり、JCB対応には月額費が発生と考えることが増えたので次
- STRIPE
- 導入しやすそうで検索にもよく出てくるのでこれでいいと思ったのにこれがJCB未対応ということで断念
- Omise
- ちゃんとJCB対応している。導入が簡単て書いてあった!(が、今苦労してます^^;)
- PAY.jp
- こちらを選ばない理由は特にないのですが、今の所サービスが日本だけということくらいか
Omise情報ほんと少ないですね。
まだ導入途中なので導入終了したらあらためてまとめてみたいと思います。
このサービスなら苦労無いのにとかあったらぜひコメントください