【发布时间】:2015-03-27 15:59:23
【问题描述】:
我想向客户显示按比例收费,以便他们知道升级到其他计划时需要支付多少费用。有没有办法从 Braintree 那里获得这笔费用?
谢谢
【问题讨论】:
我想向客户显示按比例收费,以便他们知道升级到其他计划时需要支付多少费用。有没有办法从 Braintree 那里获得这笔费用?
谢谢
【问题讨论】:
我创建了一种方法来计算在收费前向客户显示的比例。不包括折扣的附加组件。
protected function getProrate($mainSubscription, $currentPlan, $upgradePlan)
{
// Original monthly subscription price = $30
$currentMonthPrice = $currentPlan->price;
// New monthly subscription price = $50
$newMonthPrice = $upgradePlan->price;
// Number of days left in the billing cycle = 27
$nbrDaysLeftBillCycle = Carbon::today()->diffInDays(Carbon::instance(
$mainSubscription->braintreeSubscription->billingPeriodEndDate), false);
// Total number of days in the billing cycle = 30 (billingPeriodEndDate - billingPeriodStartDate)
$billingPeriodStartDate = Carbon::instance($mainSubscription->billingPeriodStartDate);
$nextBillingDate = Carbon::instance($mainSubscription->nextBillingDate);
$nbrDaysTotalBillCycle = $billingPeriodStartDate->diffInDays($nextBillingDate);
// ($50 – $30) x (27 / 30) = $18
$estimated = ($newMonthPrice - $currentMonthPrice) * ($nbrDaysLeftBillCycle / $nbrDaysTotalBillCycle);
return $estimated;
}
【讨论】:
我在布伦特里工作。如果您还有更多此类问题,请get in touch with our support team。
不,除了执行升级或模拟 Braintree 沙盒环境中的情况(在许多情况下不可行)之外,没有办法从 Braintree 获得这笔费用。
【讨论】: