Low*_*ack 3 payment paypal payment-gateway bluesnap
我使用BlueSnap API使用PayPal销售产品.在我的网站上,我将购物者发送到PayPal,而他们没有填写任何运送详细信息 - 一旦他们登录到PayPal,我就会从他们的BlueSnap帐户中获取这些详细信息.
但问题是我不知道购物者在将它们发送到PayPal之前的位置,因此可能需要在产品价格之上添加运费和税收问题.
有没有办法让我将购物者送到PayPal一定金额 - 比方说50美元 - 后来根据运费细节增加了7美元的附加费而没有购物者重新批准这笔交易?
我通常使用此Payment API调用:
{
"amount": 50,
"softDescriptor": "My SD",
"currency": "USD",
"paypalTransaction": {
"cancelUrl": "http://www.cancelURL.com",
"returnUrl": "http://www.returnURL.com"
},
"transactionFraudInfo": {"fraudSessionId": 1234}
}
Run Code Online (Sandbox Code Playgroud)
没有明显的潜在附加费点,所以我不确定这是否可行 - 有什么限制?我阅读了这份文档,无法得到清晰的图片.https://developers.bluesnap.com/v8976-JSON/docs/create-paypal-transaction
我很感激任何帮助!
小智 6
BlueSnap有一些流程来处理PayPal购买 - 从您所描述的内容来看,分步PayPal流程似乎适合您.当您通过API发送请求时,只需发送此(POST):
{
"merchantTransactionId": "mysurchagetransaction",
"softDescriptor": "SOFTDESC",
"amount": "50.00",
"currency": "USD",
"payerInfo": {
"firstName": "John",
"lastName": "Doe"
},
"paypalTransaction": {
"transactionType": "AUTH_ONLY",
"returnUrl": "http://www.returnURL.com",
"cancelUrl": "http://www.cancelURL.com",
"maxAmount": "70.00"
}
}
Run Code Online (Sandbox Code Playgroud)
70美元是您的限额 - 您可以比金额高出40%,否则BlueSnap将不允许交易.我们的想法是,此时,您希望以50美元的价格将购物者发送到PayPal - 但是一旦您知道他们来自哪里,您可能会收到潜在的附加费,最高可能达到70美元.对此API调用的响应将包括订单ID(保留以供日后使用!),以及通常的PayPal重定向链接.您的购物者将被重定向到那里,批准50美元,然后再次重定向到您的returnURL(您的网站).
当购物者返回时,您将获得一个BlueSnap购物者ID - 并且它将从PayPal获取所有运送数据.要查看数据,您可以通常的方式检索购物者:https://developers.bluesnap.com/v8976-JSON/docs/retrieve-vaulted-shopper.
现在是第二步,建议在几个小时内完成(PayPal有一个时间窗口).您考虑购物者的运费地址税/运费附加费,然后您发送此捕获资金API调用(PUT):
{
"amount": "58.00",
"currency": "USD",
"paypalTransaction": {
"orderId": "4006145",
"transactionType": "CAPTURE"
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,您选择收取58美元,因此您没有使用最高70美元的最高金额.这没关系,购物者在PayPal中没有你认为收费的70美元的记录 - 只需58美元.此外,购物者无需重新批准购买,也无需再次登录PayPal.虽然不是强制性的,但我建议您告诉购物者您返回网站时计划收取的金额 - 如果它适用于您网站的流量.
我希望我帮忙!
| 归档时间: |
|
| 查看次数: |
43 次 |
| 最近记录: |