创建订阅后,PayPal无法捕获付款-React

时间:2019-07-02 10:02:14

标签: reactjs paypal paypal-sandbox

我们正在使用PayPal以便在我们的平台上启用订阅。 我在PayPal中设置了产品和计划,并使用“反应-智能-付款-按钮”包(https://github.com/erksch/react-smart-payment-buttons)集成了“ PayPal智能按钮”。

我成功创建了订阅,但是没有立即或根本没有捕获到第一笔款项。

当我使用PayPal订阅API来查看下一个计费周期的时间时,它会显示已经过去的时间戳。

例如,这是我从API获得的JSON的一部分:

"billing_info": {
        "outstanding_balance": {
            "currency_code": "USD",
            "value": "0.0"
        },
        "cycle_executions": [
            {
                "tenure_type": "REGULAR",
                "sequence": 1,
                "cycles_completed": 0,
                "cycles_remaining": 12,
                "current_pricing_scheme_version": 1
            }
        ],
        "next_billing_time": "2019-07-01T10:00:00Z",
        "failed_payments_count": 0
    },
    "auto_renewal": false,
    "create_time": "2019-07-01T15:34:02Z"
}

如您所见,next_billing_time值在create_time之前,这没有任何意义。

我已经做了什么: 用户批准订阅后,我将获得订单的ID和订阅。尝试使用PayPal Payments API和我获得的订单ID捕获付款时,出现了错误。 我检查了已创建订阅的状态,它显示为“活动”。

createSubscription(data, actions) {
    let plan_id = process.env.REACT_APP_PAY_PAL_BASIC_PLAN_ID;
    return actions.subscription.create({
        plan_id
    });
}

onApprove(data, actions) {
    const Http = new XMLHttpRequest();
    let url = process.env.REACT_APP_UPGRADE_USER_URL;
    Http.open("POST", url);
    Http.setRequestHeader("x-access-token", this.state.token);
    Http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
    Http.send(`plan=${this.state.plan}&subscriptionId=${data.subscriptionID}`);
}

如果有人可以帮助我解决这个问题,我会很高兴。

谢谢。

0 个答案:

没有答案
相关问题