【发布时间】:2022-01-05 05:56:55
【问题描述】:
我正在尝试授权付款并稍后获取资金。基本上,我想保留客户卡上的资金。然后处理订单,最后在订单准备好时捕获金额。我按照贝宝指南这样做:https://developer.paypal.com/docs/business/checkout/add-capabilities/authorization/ 但是,无论我尝试过什么,我总是最终“捕获”全部金额而不是暂停。 我正在使用 react-paypal-button-v2 作为贝宝按钮 这是我的代码:
import { PayPalButton } from "react-paypal-button-v2";
const addPayPalScript = () => {
const script = document.createElement("script");
script.type = "text/javascript";
script.src =
"https://www.paypal.com/sdk/js?client-id=YOUR_CLIENT_ID&intent=authorize";
//script.src = "https://www.paypal.com/sdk/js";
script.async = true;
script.onload = () => {
setSdkReady(true);
};
document.body.appendChild(script);
};
useEffect(() => {
if (!window.paypal) {
addPayPalScript();
setSdkReady(true);
} else {
setSdkReady(true);
}
}
}, []);
return {!sdkReady ? (
<Loader />
) : (
<PayPalButton
amount={100}
onSuccess={successPaymentHandler}
/>
)}
我还尝试了以下方法:
const addPayPalScript = () => {
const script = document.createElement("script");
script.type = "text/javascript";
script.src =
"https://www.paypal.com/sdk/js";
script.async = true;
script.onload = () => {
setSdkReady(true);
};
document.body.appendChild(script);
};
const initialOptions = {
clientId:
MyPaypalID,
intent: "authorize",
};
return {!sdkReady ? (
<Loader />
) : (
<PayPalButton
amount={100}
onSuccess={successPaymentHandler}
options={initialOptions}
/>
)}
【问题讨论】:
标签: reactjs paypal payment-gateway paypal-sandbox payment