UNPKG

@sergdudko/stripe-js

Version:

Supercharge Your Stripe Integration with Enhanced Methods for stripe-js: Take Full Control of Customer Card Management Right from Your Frontend! Elevate Your Payment Processing Capabilities with Ease and Efficiency.

26 lines (25 loc) 1.13 kB
import { responseHandler } from "../utils/handlers.js"; import { stripeApiUrl, stripeApiVersion } from "../utils/constants.js"; /** * Set default customer payment method * * @param paymentMethodId - payment method id (see: https://stripe.com/docs/api/customers/object#payment_method_object-id) * @param customerId - customer id (see: https://stripe.com/docs/api/customers/object#customer_object-id) * @param ephemeralKey - customer ephemeral key * @returns */ export const setDefaultPaymentMethod = async function (paymentMethodId, customerId, ephemeralKey) { const stripeApiKey = this._apiKey; if (typeof stripeApiKey !== "string") throw new Error("Initialization failed."); // make request for payment method api return fetch(`${stripeApiUrl}/customers/${customerId}`, { body: `invoice_settings[default_payment_method]=${paymentMethodId}`, headers: { Authorization: `Bearer ${ephemeralKey}`, "Content-Type": "application/x-www-form-urlencoded", "Stripe-Version": stripeApiVersion, }, method: "POST", }).then(responseHandler); };