Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
In AC Gold, you could click a refund button on a transaction, it would reach out to the authorize.net (AN) gateway, and initiate a refund or partial refund for a transaction. That same button exists in AC9 (.0.7), but doesn't appear to work. We recently had to do a refund, and it failed. The status on the refund says: Gateway instance is null or could not be loaded. The error log for this time stamp says: --- Could not create provider instance: CommerceBuilder.Payments.Providers.AuthorizeNet.AuthorizeNet, CommerceBuilder.AuthorizeNet Exception: Value cannot be null. Parameter name: type Stack Trace: at System.Activator.CreateInstance(Type type, Boolean nonPublic) at System.Activator.CreateInstance(Type type) at CommerceBuilder.Payments.PaymentGateway.GetInstance() --- There's another error entry 15 seconds later with the exact same data: --- Could not create provider instance: CommerceBuilder.Payments.Providers.AuthorizeNet.AuthorizeNet, CommerceBuilder.AuthorizeNet Exception: Value cannot be null. Parameter name: type Stack Trace: at System.Activator.CreateInstance(Type type, Boolean nonPublic) at System.Activator.CreateInstance(Type type) at CommerceBuilder.Payments.PaymentGateway.GetInstance() --- Payments work fine, so we know the gateway is setup correctly. Please advise. Thanks, Charles Edited by user Thursday, March 2, 2023 5:34:38 PM(UTC)
| Reason: Not specified
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 2/17/2019(UTC) Posts: 909
Thanks: 3 times Was thanked: 15 time(s) in 15 post(s)
|
I'm also using 9.0.7, with some custom programming and Authorize.net, I can assure you that it is working for us, the only thing that I would think of is either custom programming getting in the way or a setup issue.
I know that you can turn on debugging mode in Configure Authorize.NET CIM plug in, but I'm not sure where the log files would be located.
Obviously, you're entering the proper currency amount without spaces?
Just a thought, -Ray
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
Odd, my reply didn't show up. Maybe I didn't click Post.
Anyhow, thanks for the reply. There is no custom coding in here.
Looking at the config for the authorize.net plugin, there's a "Debug Mode", but I'm hesitant to turn it on without someone telling me exactly what it does. I don't see anything there for logging.
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
|
|
|
|
Rank: Advanced Member
Groups: Administrators, Developers, Registered, HelpDesk, Authorized User, Admin, System Joined: 10/11/2018(UTC) Posts: 110
Thanks: 19 times Was thanked: 18 time(s) in 18 post(s)
|
There are two different AuthNet gateways in Gold i.e. AuthNet and AuthNetCIM but in AC9, we have ONLY AuthNetCIM gateway that provides the whole functionality. So we need to check few things here: - Do you have the only AuthNet gateway configured in Gold or both? - If it was only AuthNet, then have you installed and configured the AuthNetCIM gateway after upgrade in AC9? This should have been updated automatically on upgrade by the way. - Check the payment gateways page in admin /Admin/Payments/Gateways to see if the configured gateways are listed. Actually the difference in AuthNet and AuthNetCIM is the ClassId (i.e. ac_PaymentGateways.ClassId). For AuthNet it is CommerceBuilder.Payments.Providers.AuthorizeNet.AuthorizeNet, CommerceBuilder.AuthorizeNet and for AuthNetCIM it is CommerceBuilder.Payments.Providers.AuthorizeNetCIM.AuthNetCIMProvider, CommerceBuilder.AuthorizeNetCIM From the error, it appears to me that the AuthNetCIM is not configured and the old AuthNet class id is in database which is causing mismatch. On upgrade, we do fix the ClassId's being updated in AC9 but it seems that this case wasn't handled. If that is the case, you have two options: 1. Just update the AuthNet Name and ClassId in database. Name from Authorize.Net to Authorize.NET CIM (name change is optional) and ClassId from CommerceBuilder.Payments.Providers.AuthorizeNet.AuthorizeNet, CommerceBuilder.AuthorizeNet to CommerceBuilder.Payments.Providers.AuthorizeNetCIM.AuthNetCIMProvider, CommerceBuilder.AuthorizeNetCIM 2. Install/configure the AuthNetCIM plugin in AC9. Option #1 is best moving forward. Edited by user Friday, March 3, 2023 7:34:55 AM(UTC)
| Reason: Not specified
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
Hi Nadeem, thanks for the reply.
I don't know what was used in AC Gold.
I do know that the upgrade to AC9 carried over the Post Office settings, PayPal settings, but did NOT carry over Authorize.NET settings. I had to manually add that plugin and then configure it.
It works just fine for payments. It appears to be mis-configured somewhere because refunds do not.
In the ac_PaymentGateways table, there are entries for BOTH Authorize.NET CIM and Authorize.Net. Both appear to be configured with data.
Please advise how to proceed.
Thanks.
|
|
|
|
Rank: Advanced Member
Groups: Administrators, Developers, Registered, HelpDesk, Authorized User, Admin, System Joined: 10/11/2018(UTC) Posts: 110
Thanks: 19 times Was thanked: 18 time(s) in 18 post(s)
|
Is the order you are trying refund is placed using previous AuthNet gateway it is AuthNet CIM? You can check this from Order Payments tab in admin.
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
Originally Posted by: nadeem Is the order you are trying refund is placed using previous AuthNet gateway it is AuthNet CIM? You can check this from Order Payments tab in admin. It's the prior AuthNet gateway.
|
|
|
|
Rank: Advanced Member
Groups: Administrators, Developers, Registered, HelpDesk, Authorized User, Admin, System Joined: 10/11/2018(UTC) Posts: 110
Thanks: 19 times Was thanked: 18 time(s) in 18 post(s)
|
Quote:It's the prior AuthNet gateway. That's what I suspected. Since the old AuthNet gateway is no more available (in codes) that is why the Class ID is irrelevant now. The previous gateway will not work. You must have updated the ClassID to the one AuthNetCIM is using but I suspect it will give you the duplicate instance id error. Can you temporarily update the ClassId to CommerceBuilder.Payments.Providers.AuthorizeNetCIM.AuthNetCIMProvider, CommerceBuilder.AuthorizeNetCIM in database and do the refund? Edited by user Friday, March 3, 2023 10:38:38 AM(UTC)
| Reason: Not specified
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
Originally Posted by: nadeem Quote:It's the prior AuthNet gateway. That's what I suspected. Since the old AuthNet gateway is no more available (in codes) that is why the Class ID is irrelevant now. The previous gateway will not work. You must have updated the ClassID to the one AuthNetCIM is using but I suspect it will give you the duplicate instance id error. Can you temporarily update the ClassId to CommerceBuilder.Payments.Providers.AuthorizeNetCIM.AuthNetCIMProvider, CommerceBuilder.AuthorizeNetCIM in database and do the refund? We managed the refund outside of AC. I'm going to leave the DB alone and see if the next refund on a transaction post upgrade to AC9 works. Thanks, Charles
|
|
|
|
Rank: Advanced Member
Groups: Administrators, Developers, Registered, HelpDesk, Authorized User, Admin, System Joined: 10/11/2018(UTC) Posts: 110
Thanks: 19 times Was thanked: 18 time(s) in 18 post(s)
|
Quote:We managed the refund outside of AC.
I'm going to leave the DB alone and see if the next refund on a transaction post upgrade to AC9 works. Great. I am sure any post order operations will work without any issue going forward using the new AuthNetCIM configured. So you should be all good.
|
|
|
|
Rank: Advanced Member
Groups: Authorized User, Developers Joined: 7/1/2022(UTC) Posts: 71
Thanks: 5 times Was thanked: 1 time(s) in 1 post(s)
|
Originally Posted by: nadeem Quote:We managed the refund outside of AC.
I'm going to leave the DB alone and see if the next refund on a transaction post upgrade to AC9 works. Great. I am sure any post order operations will work without any issue going forward using the new AuthNetCIM configured. So you should be all good. Should I remove the old authornize.net entry from the table? I noticed in the payment configuration that it's selectable as a gateway for payments, and it clearly won't work if it's selected in error.
|
|
|
|
Rank: Advanced Member
Groups: Administrators, Developers, Registered, HelpDesk, Authorized User, Admin, System Joined: 10/11/2018(UTC) Posts: 110
Thanks: 19 times Was thanked: 18 time(s) in 18 post(s)
|
Quote:Should I remove the old authornize.net entry from the table? I noticed in the payment configuration that it's selectable as a gateway for payments, and it clearly won't work if it's selected in error. Yes, you can remove it if the new installed plugin is working fine and you are doing post order processing for old orders outside the AbleCommerce. If you leave the entry in the DB, it won't hurt because there shouldn't be any payment method assigned to the old gateway.
|
|
|
|
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.
Important Information:
The AbleCommerce Forums uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close