Brevo Integration: Events and Contact Attributes Reference

The Brevo integration keeps your contact records in sync with loyalty data through contact attributes (always-on profile data) and track events (fired when specific actions happen). Both can be used in Brevo’s automation workflows to send targeted emails based on loyalty activity.

Contact Attributes

Contact attributes are updated directly on the Brevo contact record automatically when data changes. Attributes of type Date (such as LOYALTY_BIRTHDAY) must be created manually in Brevo before the first sync. Go to Contacts → Settings → Contact Attributes to add them. Other attributes are created automatically on first sync.

AttributeTypeWhen UpdatedDescription
LOYALTY_POINTS_BALANCENumberEvery points transactionThe customer’s current points balance.
LOYALTY_POINTS_LAST_UPDATEDText (ISO 8601)Every points transactionTimestamp of the most recent points change.
LOYALTY_REFERRAL_CODETextEvery points transactionThe customer’s unique referral code. Only present if the referral module is active.
LOYALTY_BIRTHDAYDate (YYYY-MM-DD)When customer saves their birthdayThe customer’s birthday. Use as the trigger date for a Brevo anniversary automation.
FIRSTNAMETextEvery points transactionCustomer’s first name, synced from WordPress.
LASTNAMETextEvery points transactionCustomer’s last name, synced from WordPress.

Track Events

Track events are sent to the Brevo Marketing Automation API and can be used as triggers or conditions in Brevo automation workflows.

Points Updated

Fired on every points transaction: earning, spending, expiring, and manual adjustments.

PropertyTypeDescription
deltaIntegerPoints change. Positive for earned, negative for spent or expired.
balance_afterIntegerPoints balance after the transaction.
reason_titleStringHuman-readable reason for the change. See the full list below.
sourceStringMachine-readable source type.
awarded_atISO 8601 datetimeTimestamp of the transaction.

All possible reason_title values:

reason_titleWhen it fires
Order purchaseCustomer earns points for placing an order.
Order discountCustomer redeems points for a discount on an order.
Order cancelledPoints are reversed when an order is cancelled.
Order refundedPoints are reversed when an order is refunded.
Product reviewCustomer earns points for leaving a product review.
Friend referralCustomer earns points for referring a friend.
Manual adjustmentAn admin manually adds or removes points.
Registration bonusCustomer earns points for creating an account.
Birthday bonusPoints awarded on the customer’s birthday.
Imported pointsPoints added via CSV import.
Points expiredPoints removed due to inactivity expiry.

Rank Achieved

Fired when a customer reaches a new rank tier.

PropertyTypeDescription
rank_idIntegerID of the new rank.
rank_nameStringDisplay name of the new rank.
rank_milestoneIntegerPoints threshold for the new rank.
previous_rank_nameStringName of the previous rank. Not present on first rank.
achieved_atISO 8601 datetimeTimestamp when the rank was achieved.
coupon_codeStringThe coupon code issued as a rank reward. Only present when a coupon is configured for this rank.
coupon_codesArrayAll coupon codes issued when the rank has multiple rewards configured. Only present when more than one coupon is issued.

Using Events in Brevo Automations

In Brevo, go to Automations and create a new workflow. Choose Specific event as the entry point and enter the event name (Points Updated or Rank Achieved). Add conditions on event properties to filter by activity. For example, filter on reason_title = Order purchase to send a points earned confirmation after every purchase, or reason_title = Points expired to send a re-engagement email when points expire.

For date-based birthday emails, use the Anniversary date trigger on the LOYALTY_BIRTHDAY contact attribute instead. This approach sends annually on the stored date regardless of other events.

Browse our plugins

Lightweight WooCommerce plugins built for speed. No bloat, no frameworks -- just clean code that works.

View all plugins
Stay in the loop

Get notified when we launch new plugins. No spam, just product updates.