2016年2月12日金曜日

webpayの使い方(PHP)

webpayの使い方メモ。
pythonではいじってみたけど、PHPはやってないのでやってみた。

まずformからカード情報を登録。CheckoutHelperが楽。
<form action="/hoge.php" method="post"> <script src="https://checkout.webpay.jp/v3/" class="webpay-button" data-key="public_key" data-lang="ja"></script> </form>
これでhoge.phpにpostでwebpay-tokenの変数名で送信される。
最初、jQueryから出力するようにしたけど、なぜかポップアップ(?)が出てこなかった。Javascriptの外に置いたら出てきたのでまあそうやって使うようにしましょう。


必要なものを揃えます。
ライブラリより
"Composer環境下でcomposer.jsonに以下の通りに記述して利用"
???Composerて?
ふむふむ。ライブラリ管理だと。
使い方は?

curl -sS https://getcomposer.org/installer | php
( sudo -s mv composer.phar /usr/local/bin/composer ) //path通った場所に移す or もしくは使う場所に移す
composer.json の作成 @ PHPファイルと同じdirectory(?)
./composer.phar install

かな。これでvendorフォルダが作成されたのでOKぽい。
とりあえずライブラリは入った。
参考:Composer導入をまじめに考える


続いて顧客登録。自分はこの処理にformから飛ばします。
<? php
require "vendor/autoload.php";
use WebPay\WebPay; $webpay = new WebPay('private_key'); $response = $webpay->customer->create(array("card"=>"tok_SampleCardToken"));
?>
返り値はこの場合、$responseに格納。例えばidは$response->idで取り出す。
馴染みのない言語だと、値の取り出し一つでも一苦労 (~_~)
ちなみに->は「アロー演算子」というらしいです。
参考:PHP】アロー演算子 -> と ダブルアロー =>


最後に支払い(顧客idから)
<? php
require "vendor/autoload.php"; use WebPay\WebPay; $webpay = new WebPay('private_key'); $response = $webpay->charge->create(array( "amount"=>400, "currency"=>"jpy", "customer"=>"customer_id" ));
?>
登録・支払いの参考:APIドキュメント

これでOKかな。
jQuery-Ajaxとの併用方法を探さないかんけど。

0 件のコメント:

コメントを投稿