I upgraded to CiviCRM 4.6.4 on Joomla 3.4.2 after a year on older versions. I've cloned a previously working but expired event. Registration from the back-end works fine but from the front-end gives this error:

Fatal error: Call to undefined method CRM_Core_Payment_Form::setPaymentFieldsByProcessor() in /home/***/www/www/administrator/components/com_civicrm/civicrm/CRM/Event/Form/Registration.php on line 388

If I make it an unpaid event (Configure Fees with Paid Event = No), I get a different error:

Fatal error: Call to undefined method CRM_Core_Payment_Form::buildPaymentForm() in /home/***/www/www/administrator/components/com_civicrm/civicrm/CRM/Core/Payment/ProcessorForm.php on line 114

Advice please!

  • Did you clear caches?
    – Laryn
    Commented Jul 2, 2015 at 23:24
  • Do you get the same error with a freshly created (non-clone) event?
    – Coleman
    Commented Jul 3, 2015 at 0:23
  • Yes to both questions Commented Jul 3, 2015 at 20:33
  • I'm seeing the same fatal error in relation to trying to show a contribution page using 4.6.4 on a new Wordpress install.
    – Graham
    Commented Jul 3, 2015 at 20:42

1 Answer 1


I solved it. There seems to be a conflict in this version (Civicrm 4.6.4) with the following extensions:

  • GoCardless
  • Smart Debit
  • UK Direct Debit

When I disabled all three, the problem went away. One of these extensions must be using the same method call.

  • 1
    setPaymentFieldsByProcessor() and buildPaymentForm() were added to CRM/Core/Payment/Form.php in Civi 4.6. This file is overridden in UK Direct Debit: uk.co.vedaconsulting.payment.ukdirectdebit/CRM/Core/Payment/Form.php so if the version of the extension pre-dates 4.6, that explains the errors. I believe Veda are working on a 4.6 version.
    – davejenx
    Commented Jul 8, 2015 at 12:58
  • We had the same problem, and there is a 4.6 version available from Veda that solves this problem - contact Rajesh
    – Andy Clark
    Commented Aug 6, 2015 at 15:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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