Overlabels

Reference

143 entries
EventSub Tags

All Buy Me A Coffee Events

available on every Buy Me a Coffee event type (donation, commission, extra, membership, recurring, wishlist).

Common Tags

  • [[[event.from_name]]] :: Name of the supporter
  • [[[event.source]]] :: Name of the platform ("Buy Me a Coffee") :: useful for reusing templates across donation services
  • [[[event.type]]] :: Normalized type: donation, commission, extra, membership, recurring, or wishlist
  • [[[event.support_type]]] :: Human-facing label for the type: Supporter, Commission, Extra, Membership, Subscription, or Wishlist
  • [[[event.transaction_id]]] :: Unique Buy Me a Coffee transaction ID (falls back to the payment-provider ID)
  • [[[event.amount]]] :: Amount as a string (e.g. "5")
  • [[[event.currency]]] :: Currency code (e.g. "USD")
  • [[[event.coffee_count]]] :: Number of coffees bought (e.g. "1")
  • [[[event.live_mode]]] :: "1" for a real event, "0" for a test fired from the Buy Me a Coffee dashboard
  • [[[event.url]]] :: Always empty :: Buy Me a Coffee does not send a supporter page URL, unlike Ko-fi

Message Tags

Buy Me a Coffee sends two different pieces of text and they are easy to mix up.

  • [[[event.message]]] :: Buy Me a Coffee's own generated description, e.g. "John bought you a coffee" :: this is boilerplate, not what the supporter wrote
  • [[[event.support_note]]] :: The note the supporter actually typed :: this is what fills [[[c:bmac:latest_donation_message]]]

Reach for event.support_note when you want to show what someone said. It is empty when the supporter left no note, and also when they marked the note private - Buy Me a Coffee sends note_hidden for that, and Overlabels honours it by returning nothing.

Flags

  • [[[event.is_recurring]]] :: "1" on recurring and membership events, otherwise "0"
  • [[[event.is_membership]]] :: "1" on membership events, otherwise "0"

Both are strings, and "0" is falsy under the conditional rules, so they work directly in a truthiness check: [[[if:event.is_membership]]].

Type-specific Tags

Each of these is filled only on its own event type and is an empty string on every other one.

  • [[[event.commission_name]]] :: Name of the commission (commission events)
  • [[[event.wishlist_title]]] :: Title of the wishlist item (wishlist events)
  • [[[event.extras_title]]] :: Title of the first extra purchased (extra events)

example:

<div class="bmac-alert">
  [[[event.from_name]]] sent [[[event.amount]]] [[[event.currency]]]

  [[[if:event.is_membership]]]
    <span class="badge">New member</span>
  [[[elseif:event.type = commission]]]
    <span class="badge">Commission: [[[event.commission_name]]]</span>
  [[[elseif:event.type = wishlist]]]
    <span class="badge">Wishlist: [[[event.wishlist_title]]]</span>
  [[[endif]]]

  [[[if:event.support_note]]]
    <p class="note">[[[event.support_note]]]</p>
  [[[endif]]]
</div>

note: Buy Me a Coffee is an Overlabels integration (not Twitch EventSub). Alerts fire through Buy Me a Coffee's webhook and are routed by event.type. Supporter email and shipping address are stripped before the event is stored, so there are no tags for them.