Skip to content

Commit 696e65b

Browse files
committed
fix IRN
1 parent 67e730c commit 696e65b

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

src/StripeDriver.php

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -217,14 +217,16 @@ public function handleManualRefund(Transaction $transaction): void
217217
*/
218218
public function handleIpn(Event $event, Order $order): void
219219
{
220+
$payment = $event->data['object'];
221+
220222
$transaction = Transaction::proxy()
221223
->newQuery()
222-
->where('key', $event->data['object']['id'])
223-
->firstOr(function () use ($order, $event): Transaction {
224+
->where('key', $payment['id'])
225+
->firstOr(function () use ($order, $payment): Transaction {
224226
return $this->pay(
225227
$order,
226-
$event->data['object']['amount'] / 100,
227-
['key' => $event->data['object']['id']]
228+
$payment['amount'] / 100,
229+
['key' => $payment['id']]
228230
);
229231
});
230232

@@ -236,21 +238,21 @@ public function handleIpn(Event $event, Order $order): void
236238
*/
237239
public function handleIrn(Event $event, Order $order): void
238240
{
239-
foreach ($event->data['object']['refunds']['data'] as $refund) {
240-
$transaction = $order->refunds->first(
241-
static function (Transaction $transaction) use ($refund): bool {
242-
return $transaction->key === $refund['id'];
243-
},
244-
function () use ($order, $refund): Transaction {
245-
return $this->refund(
246-
$order,
247-
$refund['amount'] / 100,
248-
['key' => $refund['id']]
249-
);
250-
}
251-
);
252-
253-
$transaction->markAsCompleted();
254-
}
241+
$refund = $event->data['object'];
242+
243+
$transaction = $order->refunds->first(
244+
static function (Transaction $transaction) use ($refund): bool {
245+
return $transaction->key === $refund['id'];
246+
},
247+
function () use ($order, $refund): Transaction {
248+
return $this->refund(
249+
$order,
250+
$refund['amount'] / 100,
251+
['key' => $refund['id']]
252+
);
253+
}
254+
);
255+
256+
$transaction->markAsCompleted();
255257
}
256258
}

0 commit comments

Comments
 (0)