💡
2021/11 stripeでsubscriptionをcreate→ Cannot find module 'stripe'というエラー
stripe をfirebase cloud functionsにアップしようとしたら
'''
Cannot find module 'stripe'
'''
上記のようなエラーが出現!!
解決策
npm install stripe --save
上記をfunctionsディレクトリに移動して叩いたら解決しました。
ちなみにコードの中身。
'''
const functions = require("firebase-functions");
const stripe = require("stripe")("ここにシークレットキー");
exports.stripePaymentSubscriptionRequest = functions.https.onRequest(async (req, res) => {
try {
let customerId;
//リクエストされたメールのユーザーがいたら、customerListに格納
const customerList = await stripe.customers.list({
email: req.body.email,
limit: 1
});
//顧客がいるかどうかをチェックし、なければcustomerIdを新しく作成
if (customerList.data.length !== 0) {
customerId = customerList.data[0].id;
}
else {
const customer = await stripe.customers.create({
email: req.body.email
});
customerId = customer.data.id;
}
//カスタマーIDを作成
const ephemeralKey = await stripe.ephemeralKeys.create(
{ customer: customerId },
{ apiVersion: '2020-08-27' }
);
//リクエストされた料金をセット
const subscription = await stripe.subscriptions.create({
customer: customerId,
items: [
{price: parseInt(req.body.amount)},
],
});
res.status(200).send({
paymentIntent: subscription.client_secret,
ephemeralKey: ephemeralKey.secret,
customer: customerId,
success: true,
})
} catch (error) {
res.status(404).send({ success: false, error: error.message })
}
});
'''
Discussion