Choose Your Path

Overview

The Market Automation System lets you schedule recurring tasks that run automatically based on your market's schedule. Instead of manually opening and closing ordering, sending reminders, or performing routine maintenance, you can set up automations that handle these tasks for you—reliably and on time, every time.

What's New: This is our modern automation platform, completely redesigned from the ground up. It's more flexible, reliable, and easier to manage than ever before. You can set up multiple automations, choose from different schedule types, and track every execution with detailed history logs.

Key Features

  • Multiple Automation Types: Choose from pre-built templates for common tasks
  • Flexible Scheduling: Set up weekly, daily, or monthly recurring schedules
  • Timezone-Aware: All automations respect your market's timezone
  • Email Notifications: Get notified when automations run successfully or fail
  • Execution History: Track every run with detailed status and error information
  • Easy Management: Enable, disable, edit, or delete automations anytime

How It Works

Behind the scenes, our automation system uses:

  • BullMQ Job Queue: Reliable, Redis-backed task scheduling that ensures automations run even during high traffic
  • Background Workers: Dedicated processes that handle scheduled tasks without affecting your market's performance
  • Database Logging: Every execution is recorded with timestamps, status, and results

Getting Started

To access the automation system:

  1. Log in as a market administrator
  2. Navigate to your market's settings or admin dashboard
  3. Look for the "Automate Your Weekly Tasks" section
  4. You'll see your current automations and a button to create new ones
Administrator Access Required: Only market administrators can create and manage automations. Regular growers and customers cannot access this feature.

What You'll See

The automation interface includes:

  • Timezone Card: Displays your market's current time and timezone settings
  • Create Automation Button: Opens the form to set up new automations
  • Automation List: Shows all your active and disabled automations with their schedules and last run status
  • Documentation Link: Quick access to this guide (you're reading it now!)

Available Automation Types

When you create an automation, you'll choose from pre-built templates designed for common market tasks. Each template defines what the automation does and what configuration options are available.

Open Ordering Window

Automatically enables ordering for customers at a scheduled time. Perfect for starting your weekly ordering cycle on the same day and time every week.

Use Case: Open ordering every Monday at 9:00 AM

Close Ordering Window

Automatically disables ordering at a scheduled time. Ideal for closing your ordering window before harvest day to give growers time to prepare.

Use Case: Close ordering every Friday at 5:00 PM

Customer Pickup Reminders

Automatically sends your market's configured pickup reminder email to all customers with open orders. Uses the same email template as the manual "Email Open Orders" button in your admin panel.

Use Case: Send pickup reminders every Friday at 10:00 AM

Grower Harvest Emails

Automatically sends harvest summary emails to your growers, letting them know what products have been ordered and need to be harvested. Same functionality as the manual "Send Harvest Emails" button.

Use Case: Send harvest emails every Friday at 6:00 PM

Enable New Products

Automatically enables the ability for growers to add new products to your market. Perfect for opening up product submissions at the start of your ordering cycle.

Use Case: Enable new products every Monday at 9:00 AM

Disable New Products

Automatically disables the ability for growers to add new products. Useful for locking down your product list before customers start ordering to prevent mid-week changes.

Use Case: Disable new products every Monday at 11:00 AM

Deactivate Zero Quantity Products

Automatically marks all products with quantities of zero or less as unavailable. Helps keep your market fresh by removing sold-out items from customer view. Same functionality as the manual "Deactivate Zero Quantity Products" button.

Use Case: Deactivate sold-out products every Saturday at 8:00 AM

Custom Templates: System Administrators can create new automation templates for specific market needs. Contact support if you have ideas for new automation types.

Creating an Automation

Follow these steps to set up your first automation:

Step 1: Verify Your Timezone

Before creating any automations, check that your market's timezone is correct. All scheduled times use this timezone.

Check the Timezone Card

At the top of the automation section, you'll see "Your Market's Timezone" with the current market time displayed. Verify this matches your actual location.

Update if Needed

If the timezone is wrong, select the correct one from the dropdown and click "Update Timezone". The page will refresh with the new timezone.

Why This Matters

If you're in California but your timezone is set to New York, your automations will run 3 hours earlier than you expect. Always double-check this first!

Step 2: Click "Create Automation"

Click the "Create Automation" button to open the creation form. You'll see fields for configuring your new automation.

Step 3: Select Automation Type

From the "Automation Type" dropdown, choose what you want to automate. Each option includes a description of what it does.

Template Details: After selecting a type, you'll see a detailed description of what the automation will do. Review this carefully to ensure it matches your needs.

Step 4: Configure the Schedule

Choose when the automation should run:

Day of Week

Select which day of the week this automation should run (Sunday through Saturday). For weekly automations, this determines the recurring day.

Time

Pick the exact time using the time picker. Times are in your market's timezone and use 24-hour format internally (but display in 12-hour format for convenience).

Step 5: Enable Email Notifications (Optional)

Check the box to receive email notifications after each automation runs. You'll get an email with:

  • Confirmation that the automation ran successfully
  • The exact time it executed
  • Any error messages if something went wrong
  • A link to your admin dashboard
Notification Frequency: If you enable notifications for a daily automation, you'll receive an email every day. Consider whether you need this level of detail before enabling notifications for frequent tasks.

Step 6: Customize Name and Description (Optional)

Expand the "Optional: Customize Name & Description" section if you want to personalize the automation's label. Otherwise, it will use the template's default name.

  • Custom Name: Give your automation a memorable name like "Monday Morning Opening" or "Friday Evening Close"
  • Custom Description: Add notes about why you set up this automation or any special considerations

Step 7: Create the Automation

Click "Create Automation" to save your new automation. You'll see it appear in your automation list with a status indicator showing whether it's enabled.

Schedule Types Explained

The automation system supports three types of recurring schedules. Choose the one that best fits your market's rhythm.

Weekly Schedule

Runs on the same day of the week at the same time every week. This is the most common schedule type for farmers markets.

Example: Weekly Ordering Cycle

  • Automation 1: Open ordering every Monday at 9:00 AM
  • Automation 2: Close ordering every Friday at 5:00 PM

This creates a predictable weekly pattern where customers can order Monday through Friday, giving growers the weekend to harvest and prepare for pickup.

Daily Schedule

Runs at the same time every day. Useful for tasks that need to happen regardless of the day of the week.

Example: Daily Reminders

  • Automation: Send daily update every day at 8:00 AM

Daily automations repeat every single day at the specified time. Be mindful of weekends and holidays when setting these up.

Monthly Schedule

Runs on the same day of the month at the same time every month. Perfect for monthly maintenance tasks or reports.

Example: Monthly Report

  • Automation: Generate monthly summary on the 1st of each month at 12:00 AM

Monthly automations handle edge cases automatically—if you schedule for day 31 but a month only has 30 days, the automation won't run that month.

Important Note: Custom cron expressions are supported in the database but not yet exposed in the user interface. For complex scheduling needs beyond weekly, daily, or monthly patterns, contact support.

Timezone Management

Timezones are critical to ensuring your automations run at the right time for your market and customers.

How Timezones Work

  • Every market has a configured timezone (like "America/New_York" or "America/Los_Angeles")
  • All automation times are stored in this timezone
  • The system handles daylight saving time changes automatically
  • When you view execution history, times are displayed in your market's timezone

Changing Your Timezone

If you need to update your market's timezone:

  1. Look for the "Your Market's Timezone" card at the top of the automation section
  2. Review the current market time to see if it's correct
  3. Use the timezone dropdown to select a new timezone
  4. Click "Update Timezone" to save the change
  5. The page will reload and all future automation runs will use the new timezone
Existing Automations: When you change timezones, existing automations keep their configured times. For example, if you had "9:00 AM Eastern" and switch to Pacific, the automation will now run at "9:00 AM Pacific"—three hours later than before. You may need to update your automation times after changing timezones.

Daylight Saving Time

The system automatically handles daylight saving time transitions. Your "9:00 AM" automation will always run at 9:00 AM in your local timezone, whether it's standard time or daylight time.

Example: Spring Forward

When daylight saving time begins in March, clocks "spring forward" by one hour. Your 9:00 AM automation will still run at 9:00 AM local time—the system handles the adjustment automatically.

Managing Your Automations

Once you've created automations, you can easily manage them through the automation list. Each automation shows its schedule, status, and last run information.

Automation Card Details

Each automation in your list displays:

  • Name and Description: What this automation does
  • Schedule: When it runs (e.g., "Runs every Monday at 9:00 AM")
  • Notification Status: Whether email notifications are enabled or disabled
  • Status Badge: Current state (Enabled, Disabled, Last run success/failed)
  • Last Run Time: When the automation last executed and whether it succeeded

Action Buttons

Each automation has three action buttons:

⏸️ Pause / ▶️ Play

Toggle the automation on or off. When paused, the automation won't run on its scheduled time. When enabled, it resumes automatically.

Use Case: Temporarily disable an automation during holidays or seasonal breaks without deleting it.

✏️ Edit

Modify the automation's settings. You can change the schedule, enable/disable notifications, or update the name and description.

Use Case: Adjust your ordering window times for summer vs. winter schedules.

🗑️ Delete

Permanently remove the automation. You'll be asked to confirm before deletion. This action cannot be undone, but you can always create a new automation later.

Use Case: Remove automations you no longer need.

Editing an Automation

When you click the Edit button:

  1. The create automation form opens with the current settings pre-filled
  2. Make your desired changes to schedule, notifications, or name
  3. Click "Update Automation" to save your changes
  4. The automation list refreshes with your updated settings
Schedule Changes Take Effect Immediately: If you update an automation's schedule, the new schedule applies to the next scheduled run. There's no delay or grace period.

Email Notifications

Stay informed about your market's automations with email notifications. When enabled, you'll receive emails after each automation execution.

What's Included in Notifications

âś… Success Notifications

When an automation runs successfully, you'll receive:

  • Confirmation that the task completed
  • The automation name and type
  • Exact execution time
  • Link to your admin dashboard

❌ Failure Notifications

If an automation fails, you'll get:

  • Alert that the automation failed
  • Error message explaining what went wrong
  • Execution time and automation details
  • Link to check execution history

Who Receives Notifications

Email notifications are sent to all market administrators. This ensures that if one admin is unavailable, others can still monitor automation status and respond to issues.

Managing Notification Preferences

You can enable or disable notifications for each automation independently:

  • When Creating: Check or uncheck "Send me email notifications" during setup
  • When Editing: Update the notification checkbox and save your changes
  • Best Practice: Enable notifications for critical automations (like opening ordering) but disable for less important ones to reduce email volume
Email Volume Consideration: If you have a daily automation with notifications enabled, you'll receive 365 emails per year. Consider whether you need this level of monitoring before enabling notifications for frequent tasks.

Execution History

Every time an automation runs, the system creates a detailed execution record. This history helps you verify automations are working correctly and troubleshoot any issues.

Viewing Execution History

Execution history is displayed directly on each automation card in your list. You'll see:

  • Last Executed At: The most recent time this automation ran
  • Last Execution Status: Whether it succeeded, failed, or hasn't run yet
  • Status Badges: Color-coded indicators (green for success, red for failure, gray for disabled)

Understanding Status Indicators

Success

The automation completed successfully without errors

Failed

The automation encountered an error and couldn't complete

Disabled

The automation is turned off and won't run on schedule

Not Yet Run

This automation hasn't executed yet—it's waiting for its scheduled time

Detailed Execution Records

Behind the scenes, the system maintains complete execution records in the database, including:

  • Scheduled time vs. actual execution time
  • Whether the automation was triggered by schedule, manual action, or retry
  • Complete error messages for failed executions
  • Results and output from successful runs
  • Retry attempts and their outcomes

Troubleshooting

If your automations aren't working as expected, use this guide to diagnose and fix common issues.

Common Issues and Solutions

Automation Didn't Run at Scheduled Time

Check these items:

  • Verify the automation is enabled (not paused)
  • Confirm your timezone is set correctly
  • Check the schedule day and time are what you intended
  • Look for error messages in the execution history
  • Ensure the background worker processes are running (contact support if unsure)

Automation Runs at Wrong Time

Most common cause: Timezone mismatch

  • Check your market's current time display
  • Verify the timezone matches your actual location
  • Update timezone if needed and adjust automation schedules
  • Remember: The system uses market timezone, not your personal device timezone

Status Shows "Failed"

Troubleshooting steps:

  • Enable email notifications to receive detailed error information
  • Check if the automation template is still active
  • Verify you have proper permissions
  • Look for system maintenance or downtime notices
  • Contact support with the specific error message if it persists

Not Receiving Email Notifications

Possible reasons:

  • Verify notifications are enabled for that specific automation
  • Check your spam/junk folder
  • Confirm your email address is correct in your user profile
  • Ensure you're listed as a market administrator

Can't Create New Automation

Check permissions and templates:

  • Verify you're logged in as a market administrator
  • Ensure automation templates are available and enabled
  • Try refreshing the page
  • Check browser console for error messages
  • Contact support if the issue persists

Automation List Empty or Not Loading

Loading issues:

  • Refresh the page to retry loading
  • Check your internet connection
  • Try a different browser
  • Clear browser cache and cookies
  • Contact support if the problem continues

Behind-the-Scenes Technical Details

For technically-minded users, here's how the system works:

  • BullMQ Worker: Background processes check for due automations every minute
  • Execution Window: Each automation has a 60-minute window to execute after its scheduled time
  • Retry Logic: Failed automations can be retried up to 3 times with configurable delays
  • Redis Queue: Scheduled tasks are stored in Redis for reliability and performance
  • Database Logging: All executions are logged to the automationExecution table
Need Help? If you're experiencing persistent issues with automations, contact support with details about when the problem started, which automations are affected, and any error messages you've received. Our team can check the system logs and help resolve the issue quickly.

Frequently Asked Questions

How many automations can I create?

There's no hard limit on the number of automations you can create. However, we recommend keeping your automations organized and purposeful. Most markets only need 2-4 automations for routine tasks like opening and closing ordering windows.

Can I have multiple automations that run at the same time?

Yes! If you schedule multiple automations for the same day and time, they'll all run. The system processes them in the order they were created. However, be mindful that simultaneous automations might interact in unexpected ways (for example, one opening ordering while another closes it).

What happens if an automation fails?

When an automation fails, it's marked with a "Failed" status and the error is logged. If you have email notifications enabled, you'll receive an alert with the error message. The system can automatically retry failed automations up to 3 times. If all retries fail, you'll need to investigate and potentially run the task manually.

Can I manually trigger an automation outside its schedule?

Not directly through the automation interface. Automations run only on their scheduled times. However, you can use manual override buttons (like "Open Ordering Now" or "Close Ordering Now") on your market settings page to achieve the same result without waiting for the automation.

What if I need different schedules for different weeks?

The current system supports recurring schedules (weekly, daily, monthly). For one-time changes or irregular schedules, you can either: (1) Temporarily disable the automation and use manual controls, or (2) Edit the automation schedule as needed throughout the month. We're exploring more flexible scheduling options for future updates.

How do I handle holidays or special closures?

For planned holidays, disable your automations a few days in advance and use manual controls during the holiday period. When you're ready to resume, re-enable the automations. Some markets create separate automations for holiday weeks with different schedules, then swap which ones are enabled as needed.

Can I see automation history from more than the last run?

Currently, the market admin interface shows only the most recent execution status. However, all executions are logged in the database. System Administrators can access comprehensive execution history. If you need detailed history for your market, contact support.

Do automations account for daylight saving time?

Yes! The system automatically handles daylight saving time transitions. Your automations will always run at the local time you specified, regardless of whether it's standard time or daylight time. You don't need to manually adjust schedules twice a year.

Can growers or customers see my automations?

No, automations are only visible to market administrators. Growers and customers can see the effects of automations (like ordering being open or closed), but they cannot view or modify the automation schedule itself.

What's the difference between pausing and deleting an automation?

Pausing (disabling) an automation keeps all its settings but prevents it from running on schedule. You can re-enable it anytime without reconfiguring. Deleting permanently removes the automation—you'd need to create it from scratch if you want it back. Use pause for temporary situations (like holidays) and delete only when you're certain you won't need that automation again.

Can I copy an automation to create a similar one?

Not yet, but this is a planned feature. Currently, you'll need to create each automation manually. If you need multiple similar automations (like opening on different days), use the Edit function to quickly adjust times rather than creating from scratch each time.

Will customers be notified when automations run?

The automation system itself doesn't send customer notifications. However, when an automation opens or closes ordering, customers will see the status change when they visit your market. Consider setting up separate customer communication (like weekly reminder emails) to keep shoppers informed about your ordering schedule.

Ready to Automate Your Market?

Start saving time and creating consistency by setting up automations for your routine market tasks. If you need help or have questions, we're here to support you.