![](/img/trans.png)
[英]Using the Braintree drop-in UI to select the payment method for recurring billing — or: finding the payment method of a paymentMethodNonce
[英]How to implement recurring billing in PHP application using Braintree payment gateway?
我有一个Web应用程序,可以为客户提供一些服务。 我想集成Braintree付款网关。 我创建了一个页面,该页面获取客户的信用卡信息,并使用透明重定向方法在脑树安全库中创建新客户。
我不知道下一步该怎么做才能执行定期计费。 每个客户要向客户收取的金额都不尽相同,具体取决于客户的用户。 每个用户的计费周期也不同。 我不知道如何实施定期计费。
以下是我的信用卡页面代码:
<?php
require_once '../_environment.php';
if (isset($_SERVER['QUERY_STRING']) && $_SERVER['QUERY_STRING'] != "") {
$queryString = $_SERVER['QUERY_STRING'];
$result = Braintree_TransparentRedirect::confirm($queryString);
if ($result->success) {
//Do your stuff
} else {
foreach ($result->errors->deepAll() as $error) {
$errorFound = $error->message . "<br />";
}
echo $errorFound ;
exit;
}
}
$trData = Braintree_TransparentRedirect::createCustomerData(
array(
'redirectUrl' => 'https://www.example.com/creditcard.php',
)
);
?>
<form method="POST" action="<?php echo Braintree_TransparentRedirect::url(); ?>" autocomplete="off">
<table cellpadding="0" cellspacing="0" border="0" width="98%" align="left">
<tr><td align="right" style="color:#6593cf" width="40%">Customer Information</td><td align="left" colspan="2"><hr style="color:#6593cf;margin-right:30%;margin-left:2px"></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">First Name</td><td> </td><td><input type="text" name="customer[first_name]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Last Name</td><td> </td><td><input type="text" name="customer[last_name]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Company</td><td> </td><td><input type="text" name="customer[company]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Email</td><td> </td><td><input type="text" name="customer[email]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Phone</td><td> </td><td><input type="text" name="customer[phone]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right" style="color:#6593cf">Payment Information</td><td align="left" colspan="2"><hr style="color:#6593cf;margin-right:30%;margin-left:2px"></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Name on Card</td><td> </td><td><input type="text" name="customer[credit_card][cardholder_name]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Credit Card Number</td><td> </td><td><input type="text" name="customer[credit_card][number]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">Expiration date (mm/yy format)</td><td> </td><td><input type="text" name="customer[credit_card][expiration_date]" /></td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right">CVV</td><td> </td><td><input type="text" name="customer[credit_card][cvv]" /></td></tr>
<input type="hidden" name="tr_data" value="<?php echo htmlentities($trData) ?>" />
<tr><td colspan="3"> </td></tr>
<tr><td colspan="3"> </td></tr>
<tr><td align="right"><a href=""><b>Cancel</b></a></td><td style='width:30px;'></td><td align="left"><input type="submit" value="Submit" class="btnSize" name="submit"/></td></tr>
<tr><td colspan="3"> </td></tr>
</table>
您必须使用Braintree的特定api调用来进行重复计费。
Braintree_Subscription::create(array(
'paymentMethodToken' => $payment_method_token,
'planId' => $package_code,
'price' => $monthly_price
));
此“创建”用于定期结算。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.