Merge pull request #11623 from ptibogxiv/patch-207

FIX round for application fee in stripe
This commit is contained in:
Laurent Destailleur 2019-08-10 01:25:07 +02:00 committed by GitHub
commit 46a5c05b75
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -319,14 +319,14 @@ class Stripe extends CommonObject
if (! in_array($currency_code, $arrayzerounitcurrency)) $stripeamount = $amount * 100; if (! in_array($currency_code, $arrayzerounitcurrency)) $stripeamount = $amount * 100;
else $stripeamount = $amount; else $stripeamount = $amount;
$fee = round($amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE); $fee = $amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE;
if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) {
$fee = round($conf->global->STRIPE_APPLICATION_FEE_MAXIMAL); $fee = $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL;
} elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { } elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) {
$fee = round($conf->global->STRIPE_APPLICATION_FEE_MINIMAL); $fee = $conf->global->STRIPE_APPLICATION_FEE_MINIMAL;
} }
if (! in_array($currency_code, $arrayzerounitcurrency)) $stripefee = $fee * 100; if (! in_array($currency, $arrayzerounitcurrency)) $stripefee = round($fee * 100);
else $stripefee = $fee; else $stripefee = round($fee);
$paymentintent = null; $paymentintent = null;
@ -708,15 +708,14 @@ class Stripe extends CommonObject
$charge = \Stripe\Charge::create($paymentarray, array("idempotency_key" => "$description")); $charge = \Stripe\Charge::create($paymentarray, array("idempotency_key" => "$description"));
} }
} else { } else {
$fee = round($amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE); $fee = $amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE;
if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) {
$fee = round($conf->global->STRIPE_APPLICATION_FEE_MAXIMAL); $fee = $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL;
} } elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) {
elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { $fee = $conf->global->STRIPE_APPLICATION_FEE_MINIMAL;
$fee = round($conf->global->STRIPE_APPLICATION_FEE_MINIMAL); }
} if (! in_array($currency, $arrayzerounitcurrency)) $stripefee = round($fee * 100);
if (! in_array($currency, $arrayzerounitcurrency)) $stripefee = $fee * 100; else $stripefee = round($fee);
else $stripefee = $fee;
$paymentarray = array( $paymentarray = array(
"amount" => "$stripeamount", "amount" => "$stripeamount",