我正在开发一个在我的网站上接受付款功能的过程,我已经使用paypal按钮和IPN(一个PHP监听器在付款完成后将数据处理到数据库,这个实际上这个) https://github.com/paypal/ipn-code-samples/blob/master/paypal_ipn.php,正确定制)。
我从未接触过PayPal API,我想知道我是否遗漏了某些东西......我对这种开发有点新意,我想确保我做得对,不要错过任何明显的事情。损害付款的安全性或其他......我已经在Sandbox中测试了一切,一切都按预期工作,但我关注API,我看到很多人使用它......
那么,我错过了什么吗?
谢谢!
答案 0 :(得分:0)
您所做的事情是准确无误的,只要符合您的需求,它就会很好。
如果您没有使用托管按钮,则存在一个潜在的安全风险。您是否选择在PayPal"保存此按钮?当你创建按钮?如果是这样,您应该看到按钮的HTML中包含hosted_button_id。在这种情况下,它受到保护。
如果按钮代码包含item_name,amount等内容的各个参数,那么该代码可以由浏览器中的人员调整,然后按钮可以以不同的价格提交,例如。
如果价格与您的数据库不匹配,您可以在IPN脚本中检查此类内容并设置自动退款,但我通常会尽量避免这种情况。
我更喜欢使用Express Checkout API。如果您对使用PHP使用IPN感到很自在,那么使用此PayPal PHP SDK集成Express Checkout应该会很自在。
您需要使用的三个电话是SetExpressCheckout,GetExpressCheckoutDetails和DoExpressCheckoutPayment。
This documentation将涵盖一般步骤以及这些调用发挥作用的位置,并且该库将使每个调用对您来说非常简单。
快速结账将消除用户对代码所做的任何可能的调整(因为他们无法获得与HTML不同的代码),并且它还具有PayPal标准所没有的更多高级功能和选项。最重要的是,有能力强迫客人结账"体验,以便非PayPal帐户持有人可以轻松地使用信用卡结账,而不会产生任何混淆。
他们也可以使用PayPal Standard,但根据浏览器中设置的Cookie,可能会使访客结帐选项难以找到。快速结账在任何时候都非常突出,通常会提高结账转换率。