订阅后条纹收费,从订阅中获取元数据

jal*_*nga 6 python django stripe-payments

创建订阅时,我设置了一些元数据来标识我在数据库上的订单。当我收到 webhook 时charge.succeeded,订阅的元数据不会在此事件中传递,我无法识别与此付款相关的订单。如何在与订阅相关的每个 webhook 上发送元数据。

koo*_*jah 6

订阅的元数据存在于订阅而不是费用对象上。费用与特定发票(如果有)相关联,该发票本身又与订阅(如果有)相关联。

根本不可能在订阅上设置元数据以将其移植到相应的费用。

相反,您可以使用API检索费用,并使用展开功能一次性获取关联的发票和订阅。

在 PHP 中,它看起来像这样:

$charge = \Stripe\Charge::retrieve(
  array(
    "id" => "ch_1CP95G2eZvKYlo2C4pcS2pxm",
    "expand" => array("invoice.subscription")
  )
);
Run Code Online (Sandbox Code Playgroud)

然后,您可以直接在代码中访问订阅的元数据。