request('GET', 'v1/payment-methods'))) ->setBillable($this); } /** * Get billing portal URL for the current user. * * @param string|null $returnUrl The URL to redirect to after the user has finished in the billing portal. * @param array $options Additional options for the billing portal. * @throws RequestRequiresClientIdException * @throws GuzzleException */ public function billingPortalUrl(?string $returnUrl = null, array $options = []): string { return $this->request('POST', 'v1/billing/portal', [ 'return_url' => $returnUrl, 'options' => $options, ])->data->url; } /** * Create a new setup intent. * * @param array $options Additional options for the setup intent. * @throws RequestRequiresClientIdException * @throws GuzzleException */ public function createSetupIntent(array $options = []): Result { return $this->request('POST', 'v1/payment-methods', [ 'options' => $options, ]); } }