This commit is contained in:
adueck 2022-10-12 23:46:03 +05:00
parent ba87ebd45e
commit 4d2d3991d6
1 changed files with 27 additions and 23 deletions

View File

@ -21,30 +21,34 @@ paymentRouter.use((req, res, next) => {
paymentRouter.post("/create-checkout-session", async (req, res, next) => { paymentRouter.post("/create-checkout-session", async (req, res, next) => {
console.log("creating checkout session"); console.log("creating checkout session");
console.log("lookup key:", req.body.lookup_key); console.log("lookup key:", req.body.lookup_key);
const prices = await stripe.prices.list({ try {
lookup_keys: [req.body.lookup_key], const prices = await stripe.prices.list({
expand: ['data.product'], lookup_keys: [req.body.lookup_key],
}); expand: ['data.product'],
console.log(prices); });
const session = await stripe.checkout.sessions.create({ console.log(prices);
billing_address_collection: 'auto', const session = await stripe.checkout.sessions.create({
line_items: [ billing_address_collection: 'auto',
{ line_items: [
price: prices.data[0].id, {
// For metered billing, do not pass quantity price: prices.data[0].id,
quantity: 1, // For metered billing, do not pass quantity
quantity: 1,
},
], },
mode: 'subscription', ],
success_url: `/success`, mode: 'subscription',
cancel_url: `/cancel`, success_url: `/success`,
}); cancel_url: `/cancel`,
console.log("session", session); });
if (!session.url) { if (!session.url) {
return next("error creating session url"); return next("error creating session url");
}
res.redirect(303, session.url);
} catch (err) {
console.log(err);
return next("error connection to Stripe");
} }
res.redirect(303, session.url);
}); });
paymentRouter.post('/create-portal-session', async (req, res, next) => { paymentRouter.post('/create-portal-session', async (req, res, next) => {