Stripeでcustomアカウント作成のために、Nuxt.jsとFirebaseで本人確認書類をアップロードする機能を作りたいのですがなかなか上手くできず困っております。
やりたいこと
①フロントでFirebase Storageに本人確認書類をアップロードし、そのURLをFirebas Firestore(informationsコレクション)に保存
②Firestoreに変更があったらCloud Functionsを発火して、本人確認書類をStripeに送る
上記のうち①は実装できましたが、②のところでFirestorageにアップした本人確認書類をStripeに送ることができません。
以下のコードのうち★マークのところで、no such file or directory
のエラーが表示されてしまいます。
何が問題なのか見当が付かないのでご教授いただければ幸いです。
よろしくお願い致します。
// functions/index.js exports.updateAccountInformation = functions .firestore.document('informations/{informationId}') .onUpdate((change, context) => { const fs = require('fs') const beforeData = change.before.data() const afterData = change.after.data() let stripeId if (afterData.stripeId) { stripeId = afterData.stripeId } else { stripeId = beforeData.stripeId } if ( beforeData.vertification_front !== afterData.vertification_front && afterData.vertification_front ) { // 本人確認(表)をアップロード stripe.files .create( { purpose: 'identity_document', file: { data: fs.readFileSync(afterData.vertification_front), // ★vertification_frontにはアップロードした画像URLが入っております name: 'front.jpg', type: 'application/octet-stream', }, }, { stripeAccount: stripeId, } ) .then((file) => { stripe.accounts.updatePerson(stripeId, afterData.personId, { verification: { document: { front: file.id, }, }, }) }) } if ( beforeData.vertification_back !== afterData.vertification_back && afterData.vertification_back ) { // 本人確認(裏)をアップロード stripe.files .create( { purpose: 'identity_document', file: { data: fs.readFileSync(afterData.vertification_back), name: 'back.jpg', type: 'application/octet-stream', }, }, { stripeAccount: stripeId, } ) .then((file) => { stripe.accounts.updatePerson(stripeId, afterData.personId, { verification: { document: { back: file.id, }, }, }) }) } //...その他の処理 })
参考URL
あなたの回答
tips
プレビュー