CiviCRM Community Forums (archive)

*

News:

Have a question about CiviCRM?
Get it answered quickly at the new
CiviCRM Stack Exchange Q+A site

This forum was archived on 25 November 2017. Learn more.
How to get involved.
What to do if you think you've found a bug.



  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Support »
  • Using CiviCRM »
  • Using CiviEvent (Moderator: Yashodha Chaku) »
  • Event registration is not handled correctly for Authorize.net error 253.
Pages: [1]

Author Topic: Event registration is not handled correctly for Authorize.net error 253.  (Read 1504 times)

kumbhare

  • I’m new here
  • *
  • Posts: 11
  • Karma: 0
  • CiviCRM version: 4.4.4
  • CMS version: drupal 7.28
  • MySQL version: 5.6
  • PHP version: 5.5
Event registration is not handled correctly for Authorize.net error 253.
July 25, 2014, 09:30:42 am
Hi,
We often get this error (253) from Authorize.net while registering for an event and paying with a credit card. Authorize.net's response code tool (http://developer.authorize.net/tools/responsereasoncode/) suggests that it is not actually an error but the transaction is held with the merchant. 

In this case CiviEvent removes the participant record from the system when it gets this error. However the payment goes through.

Need your help in handling this (and any other similar errors, that are actually not errors) in civicrm. I.e. the registration should be completed, maybe with a payment pending option.

Thanks,
Alok

kumbhare

  • I’m new here
  • *
  • Posts: 11
  • Karma: 0
  • CiviCRM version: 4.4.4
  • CMS version: drupal 7.28
  • MySQL version: 5.6
  • PHP version: 5.5
Re: Event registration is not handled correctly for Authorize.net error 253.
July 25, 2014, 09:55:20 am
Is it a good idea to replace the following (in file /CRM/Core/Payment/AuthorizeNet.php, line 175):

Code: [Select]
// check for application errors
    // TODO:
    // AVS, CVV2, CAVV, and other verification results
    if ($response_fields[0] != self::AUTH_APPROVED) {
      $errormsg = $response_fields[2] . ' ' . $response_fields[3];
      return self::error($response_fields[1], $errormsg);
    }

With
Code: [Select]
// check for application errors
    // TODO:
    // AVS, CVV2, CAVV, and other verification results
    if ($response_fields[0] != self::AUTH_APPROVED
            && $response_fields[0] != self::AUTH_UNDER_REVIEW) {
      $errormsg = $response_fields[2] . ' ' . $response_fields[3];
      return self::error($response_fields[1], $errormsg);
    }

Where CONST AUTH_UNDER_REVIEW = 4.
From the http://developer.authorize.net/guides/AIM/wwhelp/wwhimpl/js/html/wwhelp.htm#href=4_TransResponse.6.4.html, I see that error 253 and few others falls under the under review category (4).

With this the registration should complete as usual, and we can manually cancel the registration if during review of the transaction we observe any issues.

I am a bit concerned if it will have any side effects.

Please let us know your experience in handling such errors.

Thanks,
Alok

Chris Burgess

  • Ask me questions
  • ****
  • Posts: 675
  • Karma: 59
Re: Event registration is not handled correctly for Authorize.net error 253.
July 25, 2014, 02:42:32 pm
What you probably want is for the payment processor to simply report to the user, "We are awaiting confirmation of your payment from the gateway", and neither complete nor cancel the registration.

When Authorize.NET sends an updated IPN on completion, that is when the registration should be marked as completed.

(Sounds like this isn't how it works currently - but that's what it ought to do.)
@xurizaemon ● www.fuzion.co.nz

kumbhare

  • I’m new here
  • *
  • Posts: 11
  • Karma: 0
  • CiviCRM version: 4.4.4
  • CMS version: drupal 7.28
  • MySQL version: 5.6
  • PHP version: 5.5
Re: Event registration is not handled correctly for Authorize.net error 253.
July 25, 2014, 04:05:01 pm
Thanks Chris,
this would be ideal. I think I can get the first part done i.e. report to the user as you mentioned without cancelling the registration.

But I am not sure how and when the updated IPN will be received and processed from Authorize.net. When we (finance chairs) approve the transaction manually in the Authorize.net console, I don't see an option to send or redirect to our civicrm url.

We need to go live before the end of this month and any workaround or temporary (but reliable) fix will be greatly appreciated.

Thanks,
Alok

Chris Burgess

  • Ask me questions
  • ****
  • Posts: 675
  • Karma: 59
Re: Event registration is not handled correctly for Authorize.net error 253.
July 25, 2014, 04:39:33 pm
I haven't worked with authorise but my colleague Eileen may have.

It might be that just making it NOT flag the result leaves the window open for IPN to work later. That would be fortunate :)

You could check your server logs to see whether IPN happens after you update it in authorise console.
@xurizaemon ● www.fuzion.co.nz

Pages: [1]
  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Support »
  • Using CiviCRM »
  • Using CiviEvent (Moderator: Yashodha Chaku) »
  • Event registration is not handled correctly for Authorize.net error 253.

This forum was archived on 2017-11-26.