簡體   English   中英

條紋-更新默認卡

[英]Stripe - Update default card

我試圖允許用戶在添加默認付款方式后對其進行更新。 我在Firebase功能中得到此Error: No such source: card_1EhmibFZW9pBNLO2aveVfEm6

這使我相信我需要傳遞default_source一個src_XXX... id而不是card_XXX... id。 有人對此有想法嗎?

Firebase功能:

// Update Stripe default card based on user choice
exports.updateDefaultSource = functions.firestore
  .document("users/{userId}")
  .onUpdate(async (change, context) => {
    const newValue = change.after.data();
    const previousValue = change.before.data();
    console.log("previousValue.default_source: "+previousValue.default_source)
    console.log("newValue.default_source: "+newValue.default_source)
    if (
      previousValue.default_source &&
      newValue.default_source !== previousValue.default_source
    ) {
      // this triggers on every update to profile (more overhead), can we reduce this?
      try {
        console.log("newValue.default_source: "+newValue.default_source)
        const response = await stripe.customers.update(
          previousValue.customer_id,
          { default_source: newValue.default_source },
          (err, customer) => {
            console.log(err);
          }
        );
        return console.log("Response from Stripe update: " + response);
      } catch (error) {
        console.log(error);
        await change.ref.set(
          { error: userFacingMessage(error) },
          { merge: true }
        );
        return reportError(error, { user: context.params.userId });
      }
    }
  });

將第二張卡添加到帳戶后,Firebase功能將記錄日志: 在此處輸入圖片說明

看來此錯誤已解決,但不是100%知道如何解決,但我想這與Redux和/或Redux Persist沒有將所有內容加載到商店有關。

@hmunoz回答了我的主要問題,有關default_source是否接受card_123類型,它是否這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM