Skip to main content

Not sure if this has been addressed before, but what is the point of using $Flow.CurrentDate versus TODAY() in a flow when $Flow.CurrentDate shows the UTC date and not the actual date of the users in the.

 

For example, when using TODAY() in a flow, it shows 2/22/2023 but when using $Flow.CurrentDate, it shows 2/23/2023

 

Any way around this or is it just better to use TODAY()?

3 Antworten
  1. 20. Apr., 07:24

    Difference Between $Flow.CurrentDate and TODAY() in Flow

    1. $Flow.CurrentDate

    • Represents the current date based on the system context.
    • In Scheduled Flows, it runs under the Automated Process user, which typically uses UTC timezone.
    • Because of this, the value may not match the business/user’s local date.

    Example:

    If current time is:

    • 22 Feb, 11:30 PM (IST)

    Then:

    • UTC time becomes 23 Feb

    So:

    • $Flow.CurrentDate = 23 Feb
    • Actual user expectation = 22 Feb

    2. TODAY()

    • Returns the current date based on the user/org timezone context.
    • It reflects the business-relevant date, not system UTC.
    • More suitable for user-facing logic and business processes.

    3. Key Difference

    Aspect$Flow.CurrentDateTODAY()

    Timezone | System (UTC) | User/Org timezone 

    Accuracy for users | May differ | Matches expectation 

    Usage | System/internal logic | Business/user logic

    4. Recommendation

    For scenarios like:

    • Payment reminders
    • Due date checks
    • Customer communication

    Use TODAY(), because these depend on the actual business date, not UTC.

    5. How to Use TODAY() in Flow

    Since TODAY() cannot be directly used in Get Records:

    1. Create a Formula Resource
      • Data Type: Date
      • Formula: 

          TODAY()

    1. Use this resource in conditions:
    Payment_Due_Date__c = {!TodayDate}
0/9000