- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
什么会导致客户选择的运输选项(以及一些相关字段)未在 IPN 中返回?
我们使用加密的“购物车上传”命令与即时更新 API 相结合,以根据客户地址 (explained here) 提供动态送货选项。在某些(并非所有)情况下,IPN 中不会返回 shipping_option_name 和一些相关值。此外,当我们查看交易详情时,用户选择的运输选项的名称无法从 PayPal 界面获得。
请注意,这仅在某些情况下会发生,我们无法在这些失败中找到共同的原因。
14 年 1 月 29 日更新 - 我们注意到,所有交易对手状态为“未注册”的交易都记录了运输选项名称,大约 25% 的交易交易对手状态为其他(例如,已确认、未确认、已验证等)的交易。
我们已经设置了日志记录来跟踪传出的即时更新数据和传入的 IPN 数据。如果 IPN 中缺少 shipping_option_name,则以下字段也会丢失:
我在下面粘贴了两个非常相似的交易的即时更新响应和 PayPal IPN。两次交易都购买相同的产品,具有相同的运费,并且客户居住在相同的州。第一笔交易成功返回了 IPN 中的运输选项名称,第二笔交易没有。敏感值已替换为 XX。请注意,两个事务之间的即时更新响应是相同的,但第二个事务的 IPN 中缺少一些值。
第一笔交易 - 成功记录运输选项名称
------------
OUR INSTANT UPDATE RESPONSE
-----------
METHOD=CallbackResponse
&L_SHIPPINGOPTIONLABEL0=Ground
&L_SHIPPINGOPTIONAMOUNT0=16.95
&L_TAXAMT0=0
&L_SHIPPINGOPTIONISDEFAULT0=true
&L_SHIPPINGOPTIONLABEL1=3-Day
&L_SHIPPINGOPTIONAMOUNT1=45
&L_TAXAMT1=0
&L_SHIPPINGOPTIONISDEFAULT1=false
&L_SHIPPINGOPTIONLABEL2=2-Day
&L_SHIPPINGOPTIONAMOUNT2=60
&L_TAXAMT2=0
&L_SHIPPINGOPTIONISDEFAULT2=false
&L_SHIPPINGOPTIONLABEL3=Next Day - Standard (Afternoon)
&L_SHIPPINGOPTIONAMOUNT3=85
&L_TAXAMT3=0
&L_SHIPPINGOPTIONISDEFAULT3=false
&L_SHIPPINGOPTIONLABEL4=Next Day - Priority (Morning)
&L_SHIPPINGOPTIONAMOUNT4=100
&L_TAXAMT4=0
&L_SHIPPINGOPTIONISDEFAULT4=false
------------
IPN DATA FROM PAYPAL
-----------
[p] => store/paypal-checkout-response
[Shipping_calculation_mode] => Callback
[mc_gross] => 132.15
[protection_eligibility] => Eligible
[address_status] => confirmed
[item_number1] => 18827
[payer_id] => XX
[tax] => 0.00
[address_street] => XX
[payment_date] => 09:00:47 Jan 23, 2014 PST
[payment_status] => Completed
[charset] => windows-1252
[shipping_option_name] => Ground
[address_zip] => XX
[mc_shipping] => 16.95
[mc_handling] => 0.00
[first_name] => XX
[mc_fee] => 4.13
[address_country_code] => US
[address_name] => XX
[notify_version] => 3.7
[insurance_option_selected] => 0
[custom] => XX
[payer_status] => unverified
[business] => XX
[address_country] => United States
[shipping_option_amount] => 16.95
[num_cart_items] => 1
[mc_handling1] => 0.00
[address_city] => XX
[verify_sign] => XX
[payer_email] => XX
[mc_shipping1] => 0.00
[tax1] => 0.00
[txn_id] => XX
[payment_type] => instant
[last_name] => XX
[address_state] => MO
[item_name1] => End Caps
[receiver_email] => XX
[payment_fee] => 4.13
[quantity1] => 1
[insurance_amount] => 0.00
[receiver_id] => XX
[txn_type] => cart
[mc_gross_1] => 115.20
[mc_currency] => USD
[residence_country] => US
[receipt_id] => XX
[transaction_subject] => XX
[payment_gross] => 132.15
[shipping_is_default] => 1
[ipn_track_id] => XX
第二笔交易 - IPN 未记录或返回运输选项名称
------------
OUR INSTANT UPDATE RESPONSE
-----------
METHOD=CallbackResponse
&L_SHIPPINGOPTIONLABEL0=Ground
&L_SHIPPINGOPTIONAMOUNT0=16.95
&L_TAXAMT0=0
&L_SHIPPINGOPTIONISDEFAULT0=true
&L_SHIPPINGOPTIONLABEL1=3-Day
&L_SHIPPINGOPTIONAMOUNT1=45
&L_TAXAMT1=0
&L_SHIPPINGOPTIONISDEFAULT1=false
&L_SHIPPINGOPTIONLABEL2=2-Day
&L_SHIPPINGOPTIONAMOUNT2=60
&L_TAXAMT2=0
&L_SHIPPINGOPTIONISDEFAULT2=false
&L_SHIPPINGOPTIONLABEL3=Next Day - Standard (Afternoon)
&L_SHIPPINGOPTIONAMOUNT3=85
&L_TAXAMT3=0
&L_SHIPPINGOPTIONISDEFAULT3=false
&L_SHIPPINGOPTIONLABEL4=Next Day - Priority (Morning)
&L_SHIPPINGOPTIONAMOUNT4=100
&L_TAXAMT4=0
&L_SHIPPINGOPTIONISDEFAULT4=false
------------
IPN DATA FROM PAYPAL
-----------
[p] => store/paypal-checkout-response
[mc_gross] => 132.15
[protection_eligibility] => Eligible
[address_status] => confirmed
[item_number1] => 18827
[payer_id] => XX
[tax] => 0.00
[address_street] => XX
[payment_date] => 07:11:37 Jan 23, 2014 PST
[payment_status] => Completed
[charset] => windows-1252
[address_zip] => XX
[mc_shipping] => 16.95
[mc_handling] => 0.00
[first_name] => XX
[mc_fee] => 4.13
[address_country_code] => US
[address_name] => XX
[notify_version] => 3.7
[custom] => XX
[payer_status] => verified
[business] => XX
[address_country] => United States
[num_cart_items] => 1
[mc_handling1] => 0.00
[address_city] => XX
[verify_sign] => XX
[payer_email] => XX
[mc_shipping1] => 0.00
[tax1] => 0.00
[txn_id] => XX
[payment_type] => instant
[last_name] => XX
[address_state] => MO
[item_name1] => End Caps
[receiver_email] => XX
[payment_fee] => 4.13
[quantity1] => 1
[receiver_id] => XX
[txn_type] => cart
[mc_gross_1] => 115.20
[mc_currency] => USD
[residence_country] => US
[transaction_subject] => XX
[payment_gross] => 132.15
[ipn_track_id] => XX
如有任何帮助,我们将不胜感激!
最佳答案
这一切都归结为 DoExpressCheckoutPayment 请求。您需要确保在最后一次通话中传递有关运输和地址的所有详细信息,否则它不会包含在交易详细信息中,这意味着它不会在 IPN 中可用。
关于paypal - IPN 中缺少运输选项名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21340773/
我在尝试使用 PayPal 的 IPN 模拟器时得到这个答案(“很抱歉,我们无法发送 IPN”)。 我知道我可能会以各种方式做错事,但我想我现在已经涵盖了所有这些方式。当我自己发送带有虚拟事务数据的
在 PayPal(沙盒)中,我定义了一个日语用户,名字和姓氏都带有日语字符。 但是,我收到的 IPN 通知是用 charset=windows-1252 编码的。事实上,这是从 Paypal 收到的
在 PayPal(沙盒)中,我定义了一个日语用户,名字和姓氏都带有日语字符。 但是,我收到的 IPN 通知是用 charset=windows-1252 编码的。事实上,这是从 Paypal 收到的
我已将 PayPal 集成到我的网站中,并使 IPN 系统成功运行。我现在遇到的问题是,除非 PayPal 电子邮件与他们在我网站上注册时使用的电子邮件相同,否则我不知道这个人是谁。 我想将自己的数据
我正在尝试在网站上使用 Paypal IPN。 付款有效并标记为“已完成”。 返回网址有效。 发送一封电子邮件通知付款已完成 但是 paypal 似乎不与 IPN 脚本对话。用 Wireshark 检
我正在使用 Micah Carrick 的 PHP Paypal IPN 集成类并且在 paypal.class.php 中有如下代码: function __construct() {
根据这个paypal document在我们使用 IPN 将消息发送回 Paypal 之后,我们返回:- 如果消息有效,PayPal 将发送一个单字消息,VERIFIED;否则,它将发送另一个单字消息
我遇到了 paypal IPN 的问题,当我使用 paypal 立即购买按钮时它总是无效,但是它与 IPN 模拟器完美配合。 我知道在 stackoverflow 上有很多关于此的问题和答案可以提供帮
我在使用“旧”PayPal IPN 代码时遇到问题。当我使用 PayPal IPN 模拟器时,我收到消息 IPN was sent and the handshake was verified. 但在
我刚刚将我的服务器移动到一个新主机,显然更改了我的 paypal ipn 页面的 DNS。 出于某种原因,paypal 大约每 30 秒一次又一次地访问我的页面,并进行相同的交易。 当然,它经过验证,
如果我从这里发送 IPN https://developer.paypal.com/developer/ipnSimulator/它工作正常。 如果我使用 PayPal 沙盒帐户和 PayPal 标准
我的 IPN URL 是 http://:85/它有一个自定义端口。这个 url 工作正常,但 paypal 总是在它的模拟器上给我错误,而不是在付款时调用我的 IPN。 什么会导致这个问题? 最佳答
如何在本地机器上使用即时支付通知模拟器? IPN 处理程序 URL 中将提供什么?我无法访问我们的路由器。 谢谢 最佳答案 您不能在本地主机上测试 IPN,因为 IPN 是关于 PayPal 服务器向
我有一个网站,其中使用 IPN 内置了一个简单的售票处。在过去的一个月里它一直在工作,我没有管它。我在同一个虚拟主机上的另一个支付网站上工作,这是我第一次指定“notification_url”。我注
我已经设置了订阅模块,但不确定 PayPal 发回我的 ipn.php 文件的内容。 想象一下: 我的网站 -> PayPal 支付(订阅) -> 支付成功 -> 流程 -> ipn.php ipn.
我已经在开发人员中设置了测试帐户 Business 和 Personal 以试用沙盒模式。 我在我的网站上设置了付款按钮。我单击按钮并转到 Paypal 。测试用户个人账户用于支付。当我查看 Payp
更新:(2/29/12) 好的,所以我在完全不同的服务器和托管公司上为不同的客户端再次遇到了同样的问题。 同样,只有 mail() 的脚本才能正确发送电子邮件,没有任何问题。然后我添加了与下面的代码类
我正在我的项目中实现 ipnlistner。我在我的 Paypal 帐户中设置了 ipn url。但我没有收到对该 url 的所有事务 ipn 响应。但是当我在我的帐户中检查 ipn 历史记录时,它显
我在 Paypal 沙盒环境中有“卖家账户”,我配置了用于监听来自 Paypal API 的 IPN 消息的 URL。我的 Web 服务器使用带有端口转发的动态 DNS。但是我在付款时无法从 Payp
我在用 Java 编写 IPN 接收器时想知道这个问题,它将用于自动处理 IPN,因为实际的软件是在 Java 中运行的。 IPN 处理器是我项目中的一个类,用于加快处理速度,避免在中间使用 PHP。
我是一名优秀的程序员,十分优秀!