当我使用费用时,这很容易,只需创建一个费用而不收取资金,然后就可以授权资金(当然,如果有足够的钱)。
但是在切换到PaymentIntent之后,在创建PaymentIntent时没有产生任何费用,因此没有募集资金。如果卡上有足够的资金,当我致电paymentIntent.confirm()
时,会立即创建并收取费用。如果不是,则抛出CardException。
我需要一种授权资金的方法,或者检查卡上是否有足够资金的一种方法,但是我称之前为确认。
有什么办法吗?
答案 0 :(得分:0)
我设法通过将capture_method
的PaymentIntent设置为手动来做到这一点。默认是自动的,因此请确认并创建并捕获相关费用。但是,如果将其设置为手动,则会在确认费用后创建(如果余额尚可),我们需要调用paymentIntent.capture()进行实际付款。
所以流程是
capture_method
设置为手动的情况下创建PaymentIntent paymentIntent.confirm()
授权资金paymentIntent.capture()
进行付款如果卡上没有足够的资金,则在第二步将抛出CardException。