0

I upgraded to CiviCRM 5.2.1 (on Joomla 3.8.8) and can now no longer add credit card purchases for our customers. I used to be able to log in the Joomla admin, search for the user in CiviCRM, and add an event registration to fill out the details and credit card info. But now the credit card info section is not appearing.

Upon investigating the help docs, I see there should be a "Submit Credit Card Event Registration" button there, which isn't (and I don't recall there ever being one). Searching through SE, I found an old post from a few years ago that the Payment Processor might be the issue so I created a dummy one, made it active and now that button appears. But it only works for the dummy processor and not the one we've been using for a few years now (PayPal) and it also doesn't show the credit card section. All of this works fine on the frontend of the website. We just can't register customers for them on the backend because the credit card processing section of the page is now gone.

First I go to the contact's event tab.

Event tab of a contact

Then I add a new event registration and get this:

Event registration

There's obviously a big open space there where the credit card block is missing. On the first screenshot you can see what it looks like when I just register a participant to an event without payment (the first row where Fee Level and Amount are empty). The second row show a previous purchase that worked fine. If I try to view/edit registrations that were successful before the update, the credit card info is there:

Edit registration

This shows this was working correctly until recently. So how can I get this feature back?

I should add that in 5.2.2 it seems I can get a step further, but I can't edit the full credit card number, only the last 4 digits.

Credit card part of registration modal

Why wouldn't I be able to add the full credit card number, expiration date, etc.?

  • Which paypal are you using? – Pradeep Nayak Jun 16 '18 at 18:19
  • I'm using "PayPal - Website Payments Standard". – severdia Jun 16 '18 at 19:36
0

As per my knowledge CiviCRM for version >= 4.6 never allowed to do offline credit card payment either for event registration or membership purchase or record of contribution for Paypal Standard payment processor or any other processor that is Website based gateway i.e payment information like credit or debit card not collected from CiviCRM forms. It does allow for payment processor like Paypal Express or Pro. Even i believe for Paypal standard CiviCRM doesn't show credit card section on online form. Adding paypal pro payment processor might be helpful.

Thanks

Pradeep

  • Add the PayPal Pro processor requires PayPal Pro, which has fees and monthly subscription. That's not an acceptable solution for us when we've been using the standard free version. If that's really true, was/is there an official notice that PayPal was being dropped from 5.2.x before it happened so it wasn't a surprise? – severdia Jun 17 '18 at 3:50
  • We have been able to use PayPal Standard for two years or so now on 4.7.x without a problem. The problem happened after going to 5.2. – severdia Jun 17 '18 at 17:23
0

I thought I would see how far i could get with dmaster test site. I added a new Payment Processor using PayPal - Website Payments Standard and a fake email.

I went to a contact, tried "Submit Credit Card Event Registration" and saw the credit card fields which suggests this is working with the latest code.

If that suggests tings are working fine, then have you tried just opening the payment processor settings and resaving?

  • I tried the same and the credit card section won't show for "PayPal - Website Payments Standard", but when I switch it to Dummy or Authorize, it works. – severdia Jun 17 '18 at 22:35
  • For most of CiviCRM's history back office paypal std payments have been blocked - because of how paypal std works - ie. it will attempt to pay under the logged in user. That's why other processors work & paypal std doesn't, I don't understand how you would have been able to process a paypal std payment on behalf of someone else. Doesn't it create accounts for you when you try to add a payment – user4278 Jun 18 '18 at 0:02
  • I did just notice in the PHP error log a bunch of errors like this: – severdia Jun 19 '18 at 3:40
  • [16-Jun-2018 11:38:41 America/Chicago] PHP Fatal error: Smarty error: [in CRM/Event/Form/EventFees.tpl line 27]: syntax error: expecting '=' after attribute name 'neq' (Smarty_Compiler.class.php, line 1558) in /home/xxxxxx/administrator/components/com_civicrm/civicrm/packages/Smarty/Smarty.class.php on line 1100 – severdia Jun 19 '18 at 3:40
  • Pradeep has submitted a fix and we will drop 5.2.2 soon – user4278 Jun 19 '18 at 6:23
0

Pradeep has submitted a fix and 5.2.2 will be released shortly

  • (although the fix may or may not fix this problem as the paypal std 'shouldn't work backoffice') – user4278 Jun 20 '18 at 2:41
  • The 5.2.2 release doesn't fix this issue. Why do you say that "PayPal Standard shouldn't work backoffice" ? – severdia Jun 21 '18 at 11:17
  • Paypal standard is not intended for backoffice data entry in general - it 'tries' to get the person doing the data entry to add the card to their account / sign up for an account etc & inexperienced or 'rushing' users can wind up with a paypal account with someone else's credit card attached. If you want to hack your install to permit paypal backoffice you should be able to (you will need to keep re-hacking after upgrades) Find the file CRM/Core/Payment/PaypalImpl.php And under the line protected function supportsBackOffice() { add return TRUE; – user4278 Jun 21 '18 at 21:40
  • Thanks, but this only enabled the "Submit Credit Card Event Registration" button, but the credit card portion of that page as well as the "Add Event Registration" modal are still missing. The section about Credit Card information only allows me to enter the last 4 digits, not the entire card. – severdia Jun 22 '18 at 2:59
  • @severdia - you're being advised that PayPal Standard is not intended to work on backoffice forms for various technical reasons so there won't be any support for that and it is not a bug. Arguably the 'bug' was that it did show up previously where it should not have done. I appreciate it is frustrating when something you have been using disappears, even if it was not intended to be there, but there are other payment processors that are supported for backoffice use and you would be better to use one of those instead of trying to hack in functionality that is deliberately disabled. – Aidan Jun 25 '18 at 11:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.