44 lines
1015 B
JavaScript
44 lines
1015 B
JavaScript
const path = require("path");
|
|
|
|
require("dotenv").config({
|
|
path: path.resolve(process.cwd(), `.env.${process.env.NODE_ENV || "development"}`)
|
|
});
|
|
|
|
const stripe = require("stripe")(process.env.STRIPE_SECRET_KEY);
|
|
|
|
const processor = async (req, res) => {
|
|
const { amount, stripe_acct_id } = req.body;
|
|
|
|
try {
|
|
await stripe.paymentIntents
|
|
.create(
|
|
{
|
|
payment_method_types: ["card"],
|
|
amount: amount,
|
|
currency: "cad",
|
|
application_fee_amount: 50
|
|
},
|
|
{
|
|
stripeAccount: stripe_acct_id
|
|
}
|
|
)
|
|
.then(function (paymentIntent) {
|
|
try {
|
|
return res.send({
|
|
clientSecret: paymentIntent.client_secret
|
|
});
|
|
} catch (err) {
|
|
return res.status(500).send({
|
|
error: err.message
|
|
});
|
|
}
|
|
});
|
|
} catch (error) {
|
|
console.log("error", error);
|
|
res.status(400).send(error);
|
|
}
|
|
};
|
|
|
|
exports.payment = processor;
|
|
exports.mobile_payment = processor;
|