where('created_at', '>', now()->subMonths(2)) ->where('gateway_type_id', 2) ->whereHas('gateway', function ($q) { $q->whereIn('gateway_key', ['d14dd26a37cecc30fdd65700bfb55b23','d14dd26a47cecc30fdd65700bfb67b34']); }) ->whereJsonContains('meta', ['state' => 'unauthorized']) ->cursor() ->each(function ($token) { try { $stripe = $token->gateway->driver($token->client)->init(); $pm = $stripe->getStripePaymentMethod($token->token); if($pm) { $meta = $token->meta; $meta->state = 'authorized'; $token->meta = $meta; $token->save(); } } catch (\Exception $e) { } }); Payment::where('status_id', 1) ->whereHas('company_gateway', function ($q) { $q->whereIn('gateway_key', ['d14dd26a47cecc30fdd65700bfb67b34', 'd14dd26a37cecc30fdd65700bfb55b23']); }) ->cursor() ->each(function ($p) { try { $stripe = $p->company_gateway->driver($p->client)->init(); } catch(\Exception $e) { return; } $pi = false; try { $pi = $stripe->getPaymentIntent($p->transaction_reference); } catch(\Exception $e) { } if(!$pi) { try { $pi = \Stripe\Charge::retrieve($p->transaction_reference, $stripe->stripe_connect_auth); } catch(\Exception $e) { return; } } if($pi && $pi->status == 'succeeded') { $p->status_id = Payment::STATUS_COMPLETED; $p->saveQuietly(); } else { if($pi) { nlog("{$p->id} did not complete {$p->transaction_reference}"); } else { nlog("did not find a payment intent {$p->transaction_reference}"); } } }); } } }