E00114使用Authorize.net中的接受JS创建带有付款随机数的订阅时,无效的OTS令牌 [英] E00114 Invalid OTS Token while creating subscription with payment nonce using accept JS in Authorize.net

查看:107
本文介绍了E00114使用Authorize.net中的接受JS创建带有付款随机数的订阅时,无效的OTS令牌的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用authorize.net的接受js和C#SDK构建应用程序.在这里,我正在使用accept js令牌通过authorize.net进行信用卡付款,并能够成功创建交易和客户资料.但是当我尝试创建具有客户资料ID和付款资料ID的订阅时,收到了"E00040 Record Not Found"错误响应.

I am building an application using accept js and C# SDK of authorize.net. here, i am using accept js token to make a credit card payment over authorize.net and able to create transaction and customer profile successfully. but when i tried to create a subscription with customer profile id and payment profile id, i got "E00040 Record Not Found" error response.

在创建交易后,我也尝试使用另一个令牌创建订阅,但收到"E00114 Invalid OTS Token"错误响应.

I also tried to create subscription with another token after creating transaction but getting "E00114 Invalid OTS Token" error response.

什么会导致authorize.net返回这些错误?

What would cause authorize.net to return an these errors?

期待您的快速回复.

推荐答案

我今天遇到了这个问题,尽管我在后端而不是C#上执行PHP.我呼吁他们的技术支持,这是我的发现:

I was having this problem today, although I was doing PHP on the backend instead of C#. I called into their tech support and here's what I found:

    不幸的是,至少到2018年8月,
  • 与生产沙箱相比,它们的生产终结点实际上在服务器资源上已超负荷运行.这可能会导致这种误导性的 Invalid OTS Token 错误,该错误也可能有多个其他原因.技术人员向我解释说,如果您在付款表上有一个提交按钮,该令牌会生成令牌,然后立即提交交易,则您应该添加某种睡眠调用(在PHP上,这是 sleep(5); ).我们尝试过并使其至少在4秒内工作,但只是间歇性地工作.他告诉我,如果在4到5秒钟的睡眠呼叫后呼叫失败,请在等待另外2秒钟之后再次尝试再次尝试该呼叫,然后再放弃并建议客户致电您的呼叫中心或使用您的其他支持渠道.
  • 在沙盒中,他们将不在乎您是否在交易中不使用cert.pem文件.在生产中并非如此-您需要确保已加载了该文件.如果您搜索官方的Authorize.Net文件,则可以从Github中删除该文件.
  • Their production endpoints are actually pretty overloaded on server resources compared to their sandbox unfortunately, at least as of Aug, 2018. This can lead to this misleading Invalid OTS Token error, which can also have several other causes. The tech explained to me that if you have a submit button on the payment form that generates the token and then immediately submits the transaction, that you should add some kind of sleep call (on PHP, that's sleep(5);, for instance). We tried and got it to work on 4 seconds, minimum, but only intermittently. He told me if it fails after a 4 or 5 second sleep call, to reattempt that call one more time after waiting another 2 seconds, before you give up and recommend the customer call your call center or use your other support channels.
  • In the sandbox, they won't care if you're not using the cert.pem file in your transactions. Not so in production -- you need to ensure you've got that loaded. You can get that file off of Github if you search on the official Authorize.Net files.

这篇关于E00114使用Authorize.net中的接受JS创建带有付款随机数的订阅时,无效的OTS令牌的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆