[Stripe] クレジットカード決済処理

### フォーム画面
index.php

	<form action="/charge.php" method="post">
		<script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
			data-key="pk_test_*"
			data-amount="100"
			data-name="この商品の料金は100円です"
			data-locale="auto"
			data-allow-remember-me="false"
			data-label="購入する"
			data-currency="jpy"
			>
		</script>
	</form>

購入ボタン押下

stripeクレジットカードのテスト情報
https://stripe.com/docs/testing

stripeタグ属性
https://stripe.com/docs/legacy-checkout#integration-simple-options

### stripe-php
Github: stripe-php

$ composer require stripe/stripe-php
$ ls
composer.json composer.lock index.php vendor

### charged.php

require_once('vendor/autoload.php');

// シークレットキー
\Stripe\Stripe::setApiKey('pk_test_*');

$chargeId = null;

try {
	$token = $_POST['stripeToken'];
	$charge = \Stripe\Charge::create(array(
		'amount' => 100,
		'currency' => 'jpy',
		'description' => 'test',
		'source' => $token,
		'capture' => false,
	));
	$chargeId = $charge['id'];

	// アプリケーション側のDB更新

	// 売上確定
	$charge->capture();

	header("Location: /complete.html");
	exit;
}  catch(Exception $e){
	if($chargeId !== null){
		// 例外が発生すればオーソリを取り消す
		\Stripe\Refund::create(array(
			'charge' => $chargeId,
		));
	}

	header("Location: /error.html");
	exit;
}

complete.php

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Complete</title>
</head>
<body>
	
</body>
</html>

あーこれ、上手くいきそうやな。
ちょっと実運用に近いフォームにカスタマイズしたい。