我想在付款之前使用仅限授权的交易来检查用户是否在其卡中有足够的资金。如果他们这样做,将创建一个真正的交易;如果不是,它将返回显示“资金不足”的错误。
有办法做到这一点吗?我上网了,我没有找到任何有用的东西。此外,这是否意味着我的用户必须通过我的网站上的两个付款流程来完成这两笔交易?或者我可以自动制作所有内容,以便用户只能看到一个交易吗?
感谢您的帮助! :)
代码看起来像这样:
if (authorisation transaction succeeds) {
// Create a legitimate automatic transaction
} else {
echo "Please add sufficient funds to your card";
}
答案 0 :(得分:0)
Create Charge API是同步的,这意味着您要么返回error表示付款失败,要么Charge object返回表示付款成功。
首先运行授权只需要您传递capture: false
作为参数,表明您希望将资金存入卡中并在以后捕获这些资金(最多7天)。您将获得与直接创建收费完全相同的行为,并且银行可能因资金不足而拒绝收费,但出于各种其他原因而未提供任何详细信息。最后,这只是尝试创建费用并捕获错误。
如果您仍想使用此flow,那么一旦您收到费用对象,您只需使用Capture Charge API即可有效捕获费用。