我可以使用BlueSnap销售PayPal产品,并在当天晚些时候收取额外费用吗?

时间:2017-09-19 09:18:05

标签: paypal payment-gateway payment 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}
}

没有明显的潜在附加费点,所以我不确定这是否可行 - 有什么限制?我阅读了这份文档,无法得到清晰的图片。 https://developers.bluesnap.com/v8976-JSON/docs/create-paypal-transaction

我很感激任何帮助!

1 个答案:

答案 0 :(得分: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"
    }
}

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"
    }
}

请注意,您选择收取58美元,因此您没有使用最高70美元的最高金额。没问题,购物者在PayPal中没有你认为收费70美元的记录 - 只需58美元。此外,购物者不必重新批准购买,或再次登录PayPal。虽然不是强制性的,但我建议您告诉购物者您返回网站时计划收取的金额 - 如果它适用于您网站的流量。

我希望我帮忙!