instead of rental data in local storage, using stripe metadata

This commit is contained in:
jackiettran
2025-08-28 17:41:47 -04:00
parent 38346bec27
commit 0f04182768
6 changed files with 197 additions and 56 deletions

View File

@@ -1,9 +1,14 @@
const stripe = require("stripe")(process.env.STRIPE_SECRET_KEY);
class StripeService {
static async createCheckoutSession({ item_name, total, return_url }) {
static async createCheckoutSession({
item_name,
total,
return_url,
metadata = {},
}) {
try {
const session = await stripe.checkout.sessions.create({
const sessionConfig = {
line_items: [
{
price_data: {
@@ -18,12 +23,15 @@ class StripeService {
],
mode: "payment",
ui_mode: "embedded",
return_url: return_url, //"https://example.com/checkout/return?session_id={CHECKOUT_SESSION_ID}"
});
return_url: return_url,
metadata: metadata,
};
const session = await stripe.checkout.sessions.create(sessionConfig);
return session;
} catch (error) {
console.error("Error creating connected account:", error);
console.error("Error creating checkout session:", error);
throw error;
}
}