Advanced workflow: date-based campaigns and time-based events

In this article, you will learn how to create workflows that react to time, not just specific events. This allows you to automate campaigns such as:

  • Birthdays

  • Reactivations due to inactivity

  • Promotional windows

  • Temporary bonuses

  • Rules that change according to the time of year

This is where Omniwallet starts to behave like a real business rules engine, not just a points system.

Workflow Objective

Execute actions only if a specific temporal condition is met.

Real examples:

  • Apply a bonus only during a campaign

  • Give extra points if the customer purchases on their birthday

  • Penalize or modify benefits if X days have passed without a purchase

Key concepts we will use

Before diving into steps, let's clarify important concepts:

Common date fields

Depending on the trigger, we can work with:

  • created_at (transaction date)

  • customer.created_at (customer signup)

  • customer.birthday (birthday)

  • Calculated dates within the workflow

Step 1 – Create the workflow

  1. Go to Workflows

  2. Create a new one

  3. Suggested name:
    “Date Conditional Bonus”

Step 2 – Select trigger

We will use one of these two, depending on the case:

Option A – Added Points

Ideal for campaigns linked to purchases.

Option B – Customer Created

Ideal for welcome or seniority actions.

For this article, we will use:
👉 Added Points

Step 3 – Date Operations

Add a new step:

🧩 Date Operations

This block allows:

  • Compare dates

  • Add or subtract days

  • Extract day, month, or year

  • Normalize dates for comparisons

Example 1 – Bonus only in a time window

Practical case

Apply extra points only during a campaign (e.g., Black Friday).

How to set it up

  1. Add Condition

  2. Value 1: created_at

  3. Operator: Greater than or equal to

  4. Value 2: 2025-11-24

Add a second requirement:

  • created_at2025-11-30

➡️ Only if both conditions are met, the workflow continues.

Example 2 – Birthday bonus

Practical case

Give a special multiplier if the purchase is made on the customer's birthday.

Key steps

  1. Use Date Operations

  2. Extract:

    • Day of created_at

    • Day of customer.birthday

  3. Compare both values

If they match:

  • Action: Multiply points

  • Example: x2

💡 Tip:
Do not compare the year, only day and month.

Example 3 – Reactivation due to inactivity

Practical case

Give extra points if the customer has not purchased in over 60 days.

How to do it

  1. Use Transaction Query

  2. Get the last purchase date

  3. Use Date Operations:

    • Current date – last purchase

  4. Condition:

    • Difference ≥ 60 days

If met:

  • Add extra points

  • Or apply special multiplier

Common error control

❌ Compare dates as text
❌ Not normalizing formats
❌ Using fixed dates when they should be dynamic

✔ Always use date blocks
✔ Test with real data
✔ Review the calculation result before the action

Real use cases

This type of workflow is ideal for:

  • Seasonal campaigns

  • Automatic actions without manual intervention

  • Reactivation of dormant customers

  • VIP programs based on seniority

  • Well-controlled “surprise” bonuses

Best practices

✔ Always document the time window
✔ Use clear names in workflows
✔ Test before activating
✔ Deactivate expired workflows

Was this article helpful?

Frequently Asked Questions

Find answers to the most common questions about this topic

To create a date-based workflow, access the Workflows section, select 'Create New', and choose an appropriate trigger, such as 'Points Added' or 'Customer Created'. Then, use the 'Date Operations' block to compare and manage specific dates.
You can automate campaigns such as birthdays, reactivations due to inactivity, promotional windows, and temporary bonuses. This allows you to offer specific incentives at key moments.
Avoid comparing dates as text, not normalizing formats, and using fixed dates instead of dynamic ones. Make sure to use date blocks and test with real data to avoid errors.
Always document the time window, use clear names in the workflows, and conduct tests before activating any workflow. It is also advisable to deactivate workflows that are no longer in use.

Loyalty Master

Tu asistente experto en fidelización

¡Hola! Soy Loyalty Master, tu asistente experto en programas de fidelización.

Puedo ayudarte con:

  • Dudas sobre Omniwallet y sus funcionalidades
  • Configuración de tu programa de puntos
  • Estrategias de fidelización
  • Integraciones y aspectos técnicos

¿En qué puedo ayudarte hoy?

🇬🇧 View in English?