CiviCRM 5.33.2, Drupal 7.78. Using example tokens found in the CiviCRM docs at "Tokens and mail merge/Checksum for Contribution Pages for Membership Renewals" to create an email to go out, I am struggling to claim a victory. The example I am using looks something like this in my email template...


...but the membership.id does not get picked up when the mail goes out. The contact.contact_id seems to grab the correct information, but the url ends with "&mid=" with no value filled in.

Help please!

1 Answer 1


My guess is that you're sending emails out using CiviMail or the "send mail to contacts" search action. This won't pick up the membership ID, because a contact can have multiple memberships and there's no way to know which to use.

I believe at present the only way (in CiviCRM core) to use the membership ID token is when using Scheduled Reminders (**Administer menu >> Communications >> Scheduled Reminders). There's ongoing work to use the new token processor in other areas of CiviCRM, which would allow using this token elsewhere.

If you only have one active membership per contact, you can install Fuzion Tokens, which has a "latest membership ID" token. This works for contacts because it eliminates the ambiguity of which membership is meant.

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.