Vereinfachte serverseitige Stripe-Workflows in Next.js
Euen Bitte beachten Sie: Diese Bibliothek befindet sich derzeit in der Beta und sollte mit Vorsicht in der Produktion verwendet werden!
yarn add next-stripe@beta
Erstellen Sie eine [...nextstripe].js Catch-All-Route in pages/api/stripe -Verzeichnis Ihres Projekts.
Euen Bitte beachten Sie: Es wird empfohlen, mit dieser Bibliothek einen eingeschränkten Schlüssel mit begrenztem API -Zugriff zu verwenden. Diese Schlüssel können erstellt und mit dem erforderlichen Zugriff im Stripe -Dashboard konfiguriert werden.
import NextStripe from 'next-stripe'
export default NextStripe ( {
stripe_key : process . env . STRIPE_RESTRICTED_KEY
} ) next-stripe/client Exports Helper-Funktionen, um die nächsten API-Routen aufzurufen.
Streifen -API -Dokumente
import { createCheckoutSession } from 'next-stripe/client'
const session = await createCheckoutSession ( {
success_url : window . location . href ,
cancel_url : window . location . href ,
line_items : [ { price : 'price_id' , quantity : 1 } ] ,
payment_method_types : [ 'card' ] ,
mode : 'payment'
} )Streifen -API -Dokumente
import { createPaymentIntent } from 'next-stripe/client'
const paymentIntent = await createPaymentIntent ( {
amount : 1000 ,
currency : 'usd'
} ) Streifen -API -Dokumente
import { confirmPaymentIntent } from 'next-stripe/client'
const paymentIntent = await confirmPaymentIntent ( 'pi_id' , {
payment_method : 'pm_id'
} ) Streifen -API -Dokumente
import { retrievePaymentIntent } from 'next-stripe/client'
const paymentIntent = await retrievePaymentIntent ( 'pi_id' ) Streifen -API -Dokumente
import { updatePaymentIntent } from 'next-stripe/client'
const paymentIntent = await updatePaymentIntent ( 'pi_id' , {
amount : 1000 ,
currency : 'usd'
} )Streifen -API -Dokumente
import { createBillingPortalSession } from 'next-stripe/client'
const session = await createBillingPortalSession ( {
customer : 'cus_id' ,
return_url : window . location . href
} )