diff --git a/app/PaymentDrivers/StripePaymentDriver.php b/app/PaymentDrivers/StripePaymentDriver.php index 7ac9ab9d0411..aa37045de57f 100644 --- a/app/PaymentDrivers/StripePaymentDriver.php +++ b/app/PaymentDrivers/StripePaymentDriver.php @@ -525,10 +525,13 @@ class StripePaymentDriver extends BaseDriver foreach ($request->data as $transaction) { $payment = Payment::query() - ->where('transaction_reference', $transaction['id']) + ->where('transaction_reference', $transaction['payment_intent']) ->where('company_id', $request->getCompany()->id) + ->where(function ($query) use ($transaction) { + $query->where('transaction_reference', $transaction['payment_intent']) + ->orWhere('transaction_reference', $transaction['id']); + }) ->first(); - if ($payment) { $payment->status_id = Payment::STATUS_COMPLETED; $payment->save(); @@ -546,10 +549,13 @@ class StripePaymentDriver extends BaseDriver if ($charge->captured) { $payment = Payment::query() - ->where('transaction_reference', $transaction['id']) + ->where('transaction_reference', $transaction['payment_intent']) ->where('company_id', $request->getCompany()->id) + ->where(function ($query) use ($transaction) { + $query->where('transaction_reference', $transaction['payment_intent']) + ->orWhere('transaction_reference', $transaction['id']); + }) ->first(); - if ($payment) { $payment->status_id = Payment::STATUS_COMPLETED; $payment->save();