I would like to send an particular email confirmation for certain events. Is it possible to select a particular model for these events, or must absolutely change the existing model?

  • In addition to the answers below I checked if CiviRules has option for Condition = Event Name - but no such luck, not on the version I have anyway.
    – petednz - fuzion
    Commented Jun 20, 2016 at 19:57
  • Ah that would have been awesome! Commented Jun 21, 2016 at 12:04
  • 1
    @petednz-fuzion @KarinG-SemperIT regarding CiviRules, you could make the rule trigger on Participant added/changed, add a Field value comparison, select Participant as entity, Event as field, and use the event_id as the value to compare to. That and Email Api, allows you to send specific email templates per each event. Happy to add this as an answer if you think is useful.
    – Andrei
    Commented Jun 21, 2016 at 22:11
  • nice one andrei - why not add as an answer
    – petednz - fuzion
    Commented Jun 22, 2016 at 0:21
  • Very Cool @Andrei! Commented Jun 22, 2016 at 12:03

3 Answers 3


Two options!

Use the text in the Event Config -> Online Registration -> Confirmation Email -> this is Event specific and this text/note will be pasted ahead of the receipt Email - so ahead of what is generated by the message template.

Or - if you want to go into more detail:

You can get into the message-template and add some if logic - that would essentially change the message based on {$event.event_xxx}

  • So, I think that the best way is to define specifics events type and update email templates. In that case, I presume that theses changes must be applyied for each civicrm updates.
    – olivier
    Commented Jun 21, 2016 at 7:04
  • Yes... count on that. Message templates will be overridden during upgrade if there are new bits for them - so best to keep copies eg templ.4.7.8 mytempl.4.7.8 and templ.4.7.9 and then run diffs to track edits - and re-apply them. Commented Jun 21, 2016 at 12:04

Another option would be to use the fantastic CiviRules and E-mail API extensions (developed by CiviCoop), see links for more info.

After installing and enabling both extensions, create a new rule like this:

Trigger: Event Participant is added or Event Participant is changed, this will vary depending on your registration workflow, ie if you use the Participant Approval feature

Condition: Field value comparison

Comparison criteria:

  • Entity: Participant
  • Field: Event
  • Operator: is equal to (for a specific event)
  • Compare value: 123 (Event Id)

enter image description here

Action: Send e-mail, select your Message template and you're done

If you use the Participant Approval feature you could add a second Field value comparison condition to check for Participant status.

  • Hi, is there a way to insert a token of {event.title}, {event.location} etc on the email template triggered by the CiviRule? This would enable to have one rule for a number of events? When I tried it (with {event.title}) it comes up empty (... thank youf registering for ....). Thx A.
    – ArisK
    Commented Feb 13, 2020 at 15:47

Well there is only one message template for event confirmation following a online registration. So if you change it, it will apply on every event unless you add some smarty code in it.

Another method is to disable the confirmation email for this event and use schedule reminders instead.

  • administer -> communication -> schedule reminder
  • entity => Activity - Event registration - Completed
  • create a schedule reminder that start 0 hour after Activity Date Time
  • don't forget to enable cron job : Administer -> System settings -> Schedule Jobs and set Send Scheduled Reminders to every time cron job run

As it is an automatic process, i recommend to do some tests before activate it widely.

EDIT This will not work because you can't specify which event will trigger the reminder.

  • Just noticed that you could not restrict the events in the reminder so i guess the answer by @KarinG covers the proper solutions.
    – samuelsov
    Commented Jun 20, 2016 at 17:34

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.