【发布时间】:2020-11-07 09:50:31
【问题描述】:
我有一个看似简单但显然不起作用的问题。我需要更新 Price 对象的价格,但以下内容不起作用。它给出了 unit_amount 未知的错误,尽管我们最初使用它来定义 Price 对象:
stripe.Price.modify(
"price_1Hkb5FHdAaIdH7ntvOhZOyFK",
unit_amount=10,
)
【问题讨论】:
标签: stripe-payments
我有一个看似简单但显然不起作用的问题。我需要更新 Price 对象的价格,但以下内容不起作用。它给出了 unit_amount 未知的错误,尽管我们最初使用它来定义 Price 对象:
stripe.Price.modify(
"price_1Hkb5FHdAaIdH7ntvOhZOyFK",
unit_amount=10,
)
【问题讨论】:
标签: stripe-payments
您不能在 API 中修改Price 的价格。这不被支持,因为the API 上没有相应的参数。
如果您想更改与Price 关联的金额,您可以创建一个新的Price 对象并开始使用它。例如,您也可以使旧的无效。
Stripe API 的另一个强大功能是lookup_key on Price (doc)。这使您可以在代码中为您的价格定义自定义别名。这样一来,您无需在代码中硬编码价格 ID price_123 并必须更新它以使用 price_abcd,您可以将旧查找键从旧价格转移到新价格,并让您的代码无缝开始使用新价格自动地。例如,您可以缓存与基于 webhook 的查找键关联的价格 ID,或者使用列表价格 API 和 lookup_keysparameter 快速找到与给定查找键关联的最新价格 ID!
【讨论】:
stripe.Price.list(lookup_keys=['gold','silver','premium'])
也许可以这样尝试:
stripe.Price.modify(
"price_1Hkb5FHdAaIdH7ntvOhZOyFK",
"unit_amount"=10,
)
【讨论】: