withBody(json_encode($payload), 'application/json') ->post($url); if ($res->status() == 200) return $res->json(); return null; } public function checkInvoiceStatus(string $invoiceId) { $url = $this->baseUrl . "/v2/invoices/{$invoiceId}"; $res = Http::withBasicAuth($this->key, "") ->get($url); if ($res->successful()) { return $res->json(); } Log::error("Xendit Check Invoice Failed", [ 'invoice_id' => $invoiceId, 'status' => $res->status(), 'body' => $res->body() ]); return null; } }