I was wondering whether it was possible to use CiviCRM webform to create a booking form that would allow someone to:

  • register for multiple upcoming events
  • pay a single 'booking fee'
  • edit their booking, without having to pay the 'booking fee' again

So far I've managed to:

It's possible to allow them to select from multiple upcoming events, using the 'Event registration' tab in CiviCRM webform.

I can enforce a single 'fee' for the registration using the 'Contribution' tab > 'Contribution amount' field > with a default set to 10 and disabling the field.

I can enable the Stripe payment processor.

I can use simple logic in hook_form_alter to reduce the 'contribution amount' to 0 if the same contact ID already has a completed contribution against the contribution page associated with the event.

However now the form does not submit because the total cost is '0' - and it seems to require there to be some sort of payment.

So what's left:

  • Is there a simpler way to achieve this?
  • Is there a way to configure the webform to still submit, and skip the payment processing, if the total cost is 0? Is this issue specific to the Stripe payment processor?


Your Answer

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

Browse other questions tagged or ask your own question.