php - paypal, php - 将 paypal 支付集成到网站中

标签 php paypal payment

大家好。

我有一个预订网站。这里我需要集成一个paypal支付。

场景是这样的:X 进入网站,填写一个表格,其中包含很多详细信息(名称、期间、房间类型,等等……大约 20 个字段)。详细信息将发送到计算价格的脚本。

现在我需要的是让用户付费。我必须使用授权和捕获来执行此操作(当然是为了能够在时限内取消付款)。

首先尝试生成一个立即付款按钮。但是这种要求固定价格(我的是生成的)。

第二个是添加到购物车按钮。同样的事情。

经过一番研究后,我发现快速结帐是我所需要的(我想……不确定)。我使用了 https://www.paypal-labs.com/integrationwizard/ecpaypal/code.php 中的代码生成器.

问题是这个还需要一些运输细节和其他无用的东西。我也看不到我在哪里填写访客姓名/信用/任何...

我只想要一个简单的付款。无论如何我可以使用表格并将值发送到指定地址吗?或类似的东西?如您所知...任何普通 API。

最佳答案

我最近做了这个。您可以使用 PayPal 的 xclick 按钮将自定义数据(即价格和运费)发送到 PayPal。然后客户将通过 PayPal 付款并向您选择的服务器上的文件发送即时付款通知,然后使用 IPN 验证数据并按照您喜欢的方式处理订单。

<form action="https://secure.paypal.com/uk/cgi-bin/webscr" method="post" name="paypal" id="paypal">
    <!-- Prepopulate the PayPal checkout page with customer details, -->
    <input type="hidden" name="first_name" value="<?php echo Firstname?>">
    <input type="hidden" name="last_name" value="<?php echo Lastname?>">
    <input type="hidden" name="email" value="<?php echo Email?>">
    <input type="hidden" name="address1" value="<?php echo Address?>">
    <input type="hidden" name="address2" value="<?php echo Address2?>">
    <input type="hidden" name="city" value="<?php echo City?>">
    <input type="hidden" name="zip" value="<?php echo Postcode?>">
    <input type="hidden" name="day_phone_a" value="">
    <input type="hidden" name="day_phone_b" value="<?php echo Mobile?>">

    <!-- We don't need to use _ext-enter anymore to prepopulate pages -->
    <!-- cmd = _xclick will automatically pre populate pages -->
    <!-- More information: https://www.x.com/docs/DOC-1332 -->
    <input type="hidden" name="cmd" value="_xclick" />
    <input type="hidden" name="business" value="paypal@email.com" />
    <input type="hidden" name="cbt" value="Return to Your Business Name" />
    <input type="hidden" name="currency_code" value="GBP" />

    <!-- Allow the customer to enter the desired quantity -->
    <input type="hidden" name="quantity" value="1" />
    <input type="hidden" name="item_name" value="Name of Item" />

    <!-- Custom value you want to send and process back in the IPN -->
    <input type="hidden" name="custom" value="<?php echo session_id().?>" />

    <input type="hidden" name="shipping" value="<?php echo $shipping_price; ?>" />
    <input type="hidden" name="invoice" value="<?php echo $invoice_id ?>" />
    <input type="hidden" name="amount" value="<?php echo $total_order_price; ?>" />
    <input type="hidden" name="return" value="http://<?php echo $_SERVER['SERVER_NAME']?>/shop/paypal/thankyou"/>
    <input type="hidden" name="cancel_return" value="http://<?php echo $_SERVER['SERVER_NAME']?>/shop/paypal/cancelled" />

    <!-- Where to send the PayPal IPN to. -->
    <input type="hidden" name="notify_url" value="http://<?php echo $_SERVER['SERVER_NAME']?>/shop/paypal/process" />
</form>

一旦客户付款,PayPal 将通知您的脚本,之后您可以做任何您想做的事情来处理成功的付款。

在您的 PHP 文件中处理付款:Paypal Developers LINK

验证

* NEVER TRUST ANY USER SUBMITTED DATA *

对于所有 PayPal 交易,用户都可以编辑表单中的数据并提交不需要的或不正确的数据。您应该将所有变量(例如 ID、金额、运费等)保存在数据库中,并在从 PayPal 收到 IPN 请求时进行验证(以确保它们匹配)。

以与处理 SQL 数据相同的安全性对待 PayPal 交易,转义所有变量,从不信任任何用户提交的数据并始终验证您的数据。

关于php - paypal, php - 将 paypal 支付集成到网站中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7188401/

相关文章:

php - $wpdb 是空的,尽管它是全局的

javascript - 从服务器拉取消息并在客户端渲染

php - Paypal API 更新订单运输公司、订单状态和跟踪号码

javascript - Paypal Java脚本集成

java - 如何将高级变量从托管的 BuyNow Button 传递到 Paypal PDT 和 IPN

android - 授权和捕获在 paypal sdk for android 中可行吗?

php - Paypal 快速结帐部分付款

php - 预订系统-可用表

php - 支付宝整合,查询

PHP - 上传文件的哈希内容