【发布时间】:2021-04-15 11:08:15
【问题描述】:
我正在尝试使用 PaymentIntents 获取客户付款,如果状态为 succeeded,请在使用 source_transaction 时创建转移到正确的条带连接帐户。
payment.id 在这种情况下是pi_1I7xsjL98Injb3kNT74IwMK8,我得到了错误No such charge: pi_1I7xsjL98Injb3kNT74IwMK8,这导致了resource_missing 错误。这是有道理的,因为我传递了一个 paymentIntents Id,但有没有办法在使用 paymentIntents 时使用source_transaction?
下面是我在代码中所做的示例!
return stripe.paymentIntents.create({
amount: data.amount,
currency: data.currency,
customer: stripeCustomerId,
payment_method: data.paymentMethodId,
off_session: false,
confirm: true,
confirmation_method: 'manual',
setup_future_usage: 'off_session',
// transfer_group: idempotencyKey
}, { idempotencyKey })
}).then(payment => {
if (payment.status == 'succeeded') {
let transferPromises = []
transferPromises.push(
stripe.transfers.create({
amount: Math.ceil(payment.amount_received * 0.9),
currency: 'usd',
destination: creator.data().stripeConnectId,
source_transaction: payment.id,
// transfer_group: idempotencyKey,
})
)
【问题讨论】:
-
如果你到达
then,那么它是成功的——它会在失败的情况下抛出。我没有看到 - 你也没有指出 - 你在哪里得到这个错误,但这可能与你如何使用(或不使用)Stripe-Account标头有关。您能否提供有关您在何处/如何获得错误的更多详细信息? -
你最终让它工作了吗?
标签: javascript firebase stripe-payments