with('postponedClaims')->firstOrFail(); $totalBill = $member->postponedClaims->sum('total_claim'); $config_duitku = [ 'merchant_code' => env('DUITKU_MERCHANT_CODE'), 'merchant_key' => env('DUITKU_MERCHANT_KEY'), ]; $paymentService = new Duitku($config_duitku); $invoice = (object) [ 'invoice_number' => 'INV'.Str::random(5, 5), ]; $user = (object) [ 'email' => $member->email, 'phone' => $member->phone, 'name' => $member->name, 'last_name' => $member->last_name ?? '', 'address' => collect([ 'line' => 'Alamat', 'city' => (object) [ 'name' => 'Tangerang Selatan' ] ]), 'postal_code' => '124123', ]; $paymentCreate = (object) [ 'transaction_id' => Str::random(10, 10) ]; $paymentMethod = (object) [ 'code' => 'BC', 'timeout' => 60 ]; $paymentService->applyInvoice($user, $invoice, $paymentCreate, $totalBill, $paymentMethod); $duitkuPayment = $paymentService->createPayment(); return redirect($duitkuPayment->paymentUrl); } }