关于 Paypal 和经典 API
Posted
技术标签:
【中文标题】关于 Paypal 和经典 API【英文标题】:Concerning Paypal and classic API 【发布时间】:2016-11-22 14:32:27 【问题描述】:我有几个关于 PayPal 和 Classic API 的问题。在过去的几天里,我一直在阅读和试验 1. 使用变量和 html 发布表单的单一 PayPal 付款。 2. 同上,但用于定期/订阅付款。尽管我几乎成功地完成了我想要完成的大部分工作,但我仍然有几个问题和灰色地带我想揭穿。
这里是:
是否可以使用经典 API、HTML 表单、PayPal 变量并向 PayPal/Sandbox 发布请求并且仅使用信用卡信息,而无需登录 PayPal 或拥有 PayPal 帐户? 我从来没有成功过,并且在您点击付款按钮后,PayPal 总是会阻止,返回安全码错误消息或错误的卡/帐号等。 如果是,我如何以及在哪里可以找到 HTML/MVC-C# 的真实代码示例或演示?
付款后,我收到一个无效的响应,没有任何反应,然后,我收到第二个 IPN 响应,这个响应已经过验证等。我真的需要回复 PayPal/Sandbox 吗?告诉他们一切都好?如果是的话,我可以看到某处的信息或代码示例/演示吗?我的观点是因为我在 IPN 上收到了很多点击,我想确保我得到正确的响应,确保我没有双重订阅等。
某处是否有好的 MVC 或 C# IPN 代码示例?我可以阅读和分析/处理大多数可能的场景/错误/响应代码以及如何处理它们?不是复制和粘贴,而是可以适应我的代码的可靠的东西。
李>我已经成功地通过 PayPal 帐户获得了对我的 IPN 的响应,我不得不使用此指令以某种方式破解安全协议 --> ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;//SecurityProtocolType .Tls1.2; 而且我还必须使用 ngrok 来提供“有效”返回 URL。我的问题是,我是否需要在进行 PROD 时删除该指令?
非常感谢您,
市场。
【问题讨论】:
【参考方案1】:是的,但这是该问题被否决的原因之一。您需要注册 Payments Pro 才能使用信用卡(或者您也可以使用 REST API),然后您将使用这些特定的 API 来处理信用卡。问题是,根据您最终使用的 Pro 版本或您是否决定使用 REST,API 会有所不同,因此目前很难有人告诉您该使用什么。
是的,您需要 POST 回 PayPal 以验证数据是否确实来自他们。通过这种方式,您可以丢弃任何潜在黑客向您的 IPN 侦听器发布垃圾的任何数据或其他类似情况。
只要您的 IPN 脚本完成并从您的服务器成功返回 200 响应,那么 PayPal 将只发送一个 IPN。如果你得到倍数,你一定是失败了,在这种情况下,你需要troubleshoot that accordingly。
-
是的,PayPal 提供了大量的示例代码。这是您的问题可能被否决的另一个原因。看来您还没有花时间自己研究这些东西。转至http://developer.paypal.com,在查看 API 后,您会发现它们提供了SDKs for different languages。每个都带有示例,他们的 GitHub 存储库也包含示例。
当然,通过快速的 Google 搜索,您还可以找到大量教程和示例。
在开发者网站中,您还可以找到 Integration Wizard,它可以让您选择 C#,选择您想要的支付集成,它会为您构建所有内容,以便您了解它是如何工作的。
然后,在处理这些示例或尝试实际代码时,如果您有特定的问题/疑问,您会来到这里并使用您尝试过的代码示例发布该特定问题。那么这里的人会很乐意提供帮助。
-
由于 SSLv3 中的安全漏洞,TLS 1.2 现在是几乎所有 Web 服务的标准要求。如果你有“破解”任何东西(也许是配置文件之外的东西),那么你可能在做一些不必要的事情。它只需要确保服务器上的软件堆栈不仅支持 TLS 1.2 HTTP 请求,而且默认使用它。
【讨论】:
答案 1. 我提到了Classic API的使用。但是好的,我想我必须在合适的时候去申请 PRO 帐户。我不想在我的网站上托管任何财务数据,也不想要任何 SSL 许可证。回答否 2. 好的,谢谢... 回答 3. 我去了 Github、Payapl dev、wizard 等获取代码示例,我找到了一个功能性的 IPN,但很难找到你需要的一切......一些代码示例已经用完了日期,甚至不起作用..只想找到一个完整的 IPN 示例...答案 4。我必须用 Ngrok 添加这一行代码...否则 IE 不会返回 IPN 响应... 我可以再问一个简单的问题吗?我阅读了至少 10 篇关于设置 Paypal page_style=your_style_name 变量的帖子,但是当我预览标题徽标图像时它似乎可以工作,但是当我在我的网站上尝试它时,我什么也没看到,我试图硬编码隐藏字段,删除缓存,重建ans等等,但我根本看不到我的标志!!我什至没有背景颜色,只有贝宝标题中的图像。这是我的隐藏: 我什至将其设置为主要或贝宝默认设置为主要但没有任何效果!看不到我的标志 在 PayPal 配置文件中设置自定义页面样式会更容易。您可以从那里设置颜色、横幅图像、徽标图像等,然后无论您使用哪种类型的 PayPal 结账,它都会发挥作用。 使用 Pro 时,您将需要 SSL。使用 Pro 无法解决这个问题,因为您直接通过您的站点处理卡片,因此需要对其进行加密。不过,对于大多数托管公司来说,这些费用仅为 70 美元/年。 是的。这正是我所做的。我在我的贝宝沙盒帐户(企业帐户)中配置了我的自定义页面样式,并且在预览中可以看到我的徽标(我尝试将其设置为主要而不是主要,甚至添加高级 var page_style=mystylename)。问题是当我在我的网站上运行我的页面时,它没有显示图像徽标标题?!为什么?我在我的 html paypal 变量旁边添加了隐藏的 page_style 的自定义按钮,但它也不起作用......我阅读了几次说明并按照字母的所有内容进行操作,但它没有显示徽标。我只在贝宝沙盒预览中看到它..以上是关于关于 Paypal 和经典 API的主要内容,如果未能解决你的问题,请参考以下文章
PayPal Adaptive Payments REST API 还是经典?
关于无法从开发者沙箱触发 Paypal REST API webhook 事件
我不断收到关于 paypal php 自适应支付 API 支付的错误“您的支付无法完成......”