1

我一直在制作一个酒店预订软件,它可以计算给定日期和规格的酒店住宿价格。我正在寻找使用 Paypal 接受付款,但浏览了他们的网站后,找不到似乎与此兼容的解决方案。

由于价格是动态的,它不像普通的单价产品,Paypal 似乎处理得最好。我需要一种方法,我可以将费用发送到 Paypal,让 Paypal 向客户收费,然后让 Paypal 向网站发送确认付款已正确处理,此时预订完成。

我认为 Paypal 能够处理这样的动态定价项目。谁能指出我应该看的方向?

4

2 回答 2

2

我刚刚在我当前的网站 bpremium.com 中完成了这个过程,基本上我为支付过程构建了一个 webservice api,它可以通过 javascript 发送命令,直到它到达最后阶段,这是你构建发送到 paypal 的表单的地方.

为了记录付款,您为通知 url 设置了另一个 web 服务,这将捕获所有 $_POST 数据并将其处理到您的数据库中。

<form id="form-payment-paypal" action="https://www.paypal.com/cgi-bin/webscr">
<input type="hidden" name="cmd" value="_xclick" />
<input type="hidden" name="bn" value="PP-BuyNowBF" />
<input type="hidden" name="charset" value="utf-8" />
<input type="hidden" name="business" value="YOUR_ACCOUNT_EMAIL_ADDRESS" />
<input type="hidden" name="item_name" value="THE PRODUCT NAME" />
<input type="hidden" name="item_number" value="YOUR_RECOGNISABLE_SALE_ID?>" />
<input type="hidden" name="currency_code" value="EUR" />
<input type="hidden" name="lc" value="THE LANGUAGE CODE: es_ES, en_GB, etc" />
<input type="hidden" name="amount" value="<?=$amount+($amount*0.04)?>" />
<input type="hidden" name="return" value="/payment/complete/" />
<input type="hidden" name="notify_url" value="/webservice/payment/notify/paypal/" />

<p class="ac span300">
    <input  type="submit" class="form-style-bt" value="PAY" />
</p>
</form>

这基本上是我们使用的,你可以看到我们把 $amount + $amount*0.04 因为你需要在我所在的西班牙加上 4% 的附加费。也许那是你的代码不同。

我认为其余部分是不言自明的。

在 /webservice/ url 上,您需要将所有内容记录到数据库中,它会向您发送成功或失败的信息,但这不是对您网站的调用,您不会看到此页面,这是一个“反向通道”调用你的网站,所以它不是你的登陆页面,很简单,url paypal 将所有原始数据发送到,你应该记录它,处理它,也许发送电子邮件等。

然后,如果用户返回您的网站,您将进入 /payment/complete 页面,因此该页面可以显示结果,无论一切正常还是失败。

希望能帮助到你。

于 2012-07-09T22:50:59.557 回答
0

Paypal 的直接集成可以处理这样的定价。我想他们的一些涉及较少的解决方案也会如此,但我知道 DI 确实如此。

编辑:

ExpressCheckout 似乎也:

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_r_SetExpressCheckout

于 2012-06-14T14:27:51.377 回答