mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-06-23 20:00:33 -04:00
Merge branch 'master' of github.com:invoiceninja/invoiceninja
This commit is contained in:
commit
d6f2859d3d
@ -222,18 +222,21 @@ class StripePaymentDriver extends BasePaymentDriver
|
|||||||
// Need to use Stripe's new Payment Intent API.
|
// Need to use Stripe's new Payment Intent API.
|
||||||
$this->prepareStripeAPI();
|
$this->prepareStripeAPI();
|
||||||
|
|
||||||
|
// Get information about the currency we're using.
|
||||||
|
$currency = Cache::get('currencies')->where('code', strtoupper($data['currency']))->first();
|
||||||
|
|
||||||
if ( ! empty($data['payment_intent'])) {
|
if ( ! empty($data['payment_intent'])) {
|
||||||
// Find the existing payment intent.
|
// Find the existing payment intent.
|
||||||
$intent = PaymentIntent::retrieve($data['payment_intent']);
|
$intent = PaymentIntent::retrieve($data['payment_intent']);
|
||||||
|
|
||||||
if ( ! $intent->amount == $data['amount'] * 100) {
|
if ( ! $intent->amount == $data['amount'] * pow(10, $currency['precision'])) {
|
||||||
// Make sure that the provided payment intent matches the invoice amount.
|
// Make sure that the provided payment intent matches the invoice amount.
|
||||||
throw new Exception('Incorrect PaymentIntent amount.');
|
throw new Exception('Incorrect PaymentIntent amount.');
|
||||||
}
|
}
|
||||||
$intent->confirm();
|
$intent->confirm();
|
||||||
} elseif ( ! empty($data['token']) || ! empty($data['payment_method'])) {
|
} elseif ( ! empty($data['token']) || ! empty($data['payment_method'])) {
|
||||||
$params = [
|
$params = [
|
||||||
'amount' => $data['amount'] * 100,
|
'amount' => $data['amount'] * pow(10, $currency['precision']),
|
||||||
'currency' => $data['currency'],
|
'currency' => $data['currency'],
|
||||||
'confirmation_method' => 'manual',
|
'confirmation_method' => 'manual',
|
||||||
'confirm' => true,
|
'confirm' => true,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user