Considering that an ARB silent post will only try to connect for 2 seconds and only once without any retry, how then can you every reliably integrate a site to ARB? I have been using it for six months and I am stumped. For whatever reason silent posts fail to do their job - maybe we go down or Authorize.net or somone in between and the post is not received. How then can we recover?
In my case I keep up with an end of term on each user. They are billed monthly. When the silent post comes through I bump their EOT +30 days. If the silent post is not received, the EOT does not change and they get locked out of the system. What if they DID get charged and the post failed? Obviously our customers are little upset when they get locked out and they did get charged after all. Even with an average of only 300 users a month this seems to happen quite frequently. (No log on our system of Authorize.net ever trying to connect but that is a different topic). Is there anything we can do PROGRAMMATICALLY to validate that the user's payment did go through and reset their EOT appropriately?
I have called support twice about this issue and both times I got an answer of how to do this in the Authorize.net Merchant Console. Yeah, I get that. I know how to do everything manually but I am looking for an automatic solution. Surely I am not the only one who wants my system to accurately reflect what has or has not been been billed? Anyone find a workaround? I have started coding a full AIM+CIM solution so I can do all the batch processing myself each night but I really hate to do this over one seemingly insurmountable issue. Any help would be appreciated!
โ02-07-2013 02:04 PM
Nothing other then using the Transaction Details API to get a settled batch and go thru each one to see if the transaction accpeted.
โ02-08-2013 04:34 AM
Thanks. That was my conclusion as well. I wrote a script to do that last night and I am now trying to decide if I want to use the silent post at all. Seems I could accomplish everything with the transaction API. In any case, thank you for your suggestion.
โ02-08-2013 07:14 AM
The obvious solution I would think (if Authorize.net is reading this post) would be to have a setting in the account where you can choose to be posted anywhere from 1-3 times for each transaction. The second and third times would be spaced an hour apart, so it wouldn't be immediate but it would ensure that the post gets through unless the site is down. Or Authorize.net could just detect if it gets through, and if not, wait a random amount of time and try again. The current system is obviously not reliable, which is a HUGE problem with ARB.
โ02-09-2013 12:39 PM
Yeah, some type of auto-retry for the Silent Post would ensure that information is not missed if either side has any downtime.
Like sites using hte silent post feature can return a 200 to let Authorize.Net know that they got the post. Otherwise, Authorize can retry the post. If you look at how Shopify does their webhooks, they will retry many times but spacing out the interval frequency later. So they may retry 1 minute later, 5 minutes, 30 mins, 1 hour,.....etc.
โ02-11-2013 11:27 AM