Skip to content

Price Sync Scheduling

Automate daily price updates to keep your product pricing current with market rates.

What is Price Sync?

Price Sync is a lightweight update that refreshes product prices without re-syncing all product data. It:

  • Updates prices based on current TCGPlayer/Card Kingdom data
  • Applies your pricing configuration (markup, minimums, etc.)
  • Runs much faster than a full product sync
  • Can be scheduled to run automatically

Why use it? MTG card prices fluctuate daily. Automated price syncs keep your store competitive without manual work.

Manual Price Updates

Running a One-Time Price Update

  1. Go to the Sync tab
  2. Find the Update All Prices button (below the main sync button)
  3. Click Update All Prices
  4. Monitor real-time progress
  5. Review results when complete

What happens:

  • All synced products are updated with current pricing
  • No product data (title, description, images) is changed
  • Only price fields are modified
  • Duration: ~5-10 minutes for 1000 products (faster than full sync)

When to Use Manual Updates

  • After changing pricing configuration - Apply new markup to all products
  • Before a sale or event - Ensure prices are current
  • After major market shifts - Format ban/unban, tournament results
  • Testing pricing changes - Verify new pricing before scheduling

Automated Price Sync

Schedule price updates to run automatically at regular intervals.

Setting Up Automated Sync

  1. Go to Settings tab
  2. Scroll to Sync Settings/Schedule section
  3. Toggle Enable Automated Price Sync to ON
  4. Choose a frequency (see Frequency Options)
  5. Optionally set a custom cron expression
  6. Click Save Schedule

The next price sync will run at the scheduled time.

Frequency Options

Hourly:

  • Runs every hour on the hour
  • Best for: High-volume stores with rapidly changing prices
  • Cron: 0 * * * *

Every 6 Hours:

  • Runs 4 times per day (12 AM, 6 AM, 12 PM, 6 PM)
  • Best for: Active stores wanting multiple daily updates
  • Cron: 0 */6 * * *

Every 12 Hours:

  • Runs twice per day (12 AM, 12 PM)
  • Best for: Most stores needing regular updates
  • Cron: 0 */12 * * *

Daily:

  • Runs once per day at midnight
  • Best for: Smaller stores or stable inventory
  • Cron: 0 0 * * * (midnight UTC)

Custom:

Viewing Next/Last Run

After saving your schedule:

  • Next Run - When the next price sync will execute
  • Last Run - When the most recent price sync completed

Times are displayed in your local timezone.

Disabling Automated Sync

To stop automated price syncs:

  1. Go to SettingsSync Settings/Schedule
  2. Toggle Enable Automated Price Sync to OFF
  3. Click Save Schedule

Scheduled syncs will stop. You can still run manual price updates.

Custom Cron Expressions

Cron Syntax

Cron expressions define a schedule using 5 fields:

┌─── minute (0-59)
│ ┌─── hour (0-23)
│ │ ┌─── day of month (1-31)
│ │ │ ┌─── month (1-12)
│ │ │ │ ┌─── day of week (0-7, 0 and 7 = Sunday)
│ │ │ │ │
* * * * *

Common Examples

Every day at 3 AM:

0 3 * * *

Every Monday at 8 AM:

0 8 * * 1

Every weekday at 6 AM:

0 6 * * 1-5

Twice a week (Monday and Thursday at noon):

0 12 * * 1,4

First day of every month at midnight:

0 0 1 * *

Every 4 hours:

0 */4 * * *

Validation

LGS Ledger validates your cron expression when you save:

  • Valid expression - Saves successfully, shows next run time
  • Invalid expression - Error message with suggested fix

Tip: Use online cron validators like crontab.guru to test expressions.

Best Practices for Custom Schedules

  1. Consider your timezone - Cron runs in UTC; adjust for your local time
  2. Avoid peak hours - Schedule during low-traffic times (e.g., 2-4 AM)
  3. Don't over-schedule - Hourly syncs may be excessive for small stores
  4. Test first - Run a manual price update to verify it works before scheduling

Monitoring Scheduled Syncs

Checking Sync Status

To verify scheduled syncs are running:

  1. Go to Sync tab → Sync History
  2. Filter by Price Updates job type
  3. Review recent price update jobs
  4. Check timestamps match your schedule

Expected pattern:

  • Jobs appear at regular intervals matching your schedule
  • Status shows Completed
  • Updated counts reflect price changes

Viewing Results

Each automated price sync appears in Sync History:

  • Job type - "Price Update"
  • Status - Completed (or Failed if error)
  • Results - Updated count (how many products had price changes)
  • Duration - Time to complete

Example: "Updated 847 products in 4 minutes 23 seconds"

Troubleshooting Missed Schedules

If scheduled syncs aren't running:

  1. Verify Enable Automated Price Sync is ON
  2. Check Next Run time - is it in the future?
  3. Review Sync History for error messages
  4. Ensure worker process is running (server-side)
  5. Contact support if schedule consistently fails

Price Sync vs. Product Sync

Price Sync (This Feature)

What it updates:

  • Product prices (all variants)
  • Condition variant prices (if enabled)
  • Compare-at prices (if configured)

What it doesn't update:

  • Product titles
  • Descriptions
  • Images
  • Metafields
  • Inventory quantities
  • Variants (Normal/Foil)

Duration: 5-10 minutes for 1000 products

Full Product Sync

What it updates:

  • Everything (prices, titles, images, metafields, variants, etc.)

Duration: 30-60 minutes for 1000 products

When to Use Which

Use Price Sync:

  • Daily/regular price updates
  • After changing pricing configuration
  • When only prices need updating
  • For automated schedules

Use Product Sync:

  • Adding new sets
  • Updating product data (new images, metafield changes)
  • Fixing incorrect product information
  • Adding/removing condition variants

Best Practices

Frequency Recommendations

High-volume stores (>2000 products):

  • Every 12 hours or Daily
  • Avoid hourly (unnecessary API load)

Medium stores (500-2000 products):

  • Daily or Every 6 hours
  • Balance freshness with API usage

Small stores (<500 products):

  • Daily or even weekly
  • Less frequent updates acceptable

Timing Recommendations

Best times to schedule:

  • Early morning (2-4 AM) - Before store traffic
  • Late evening (10 PM-12 AM) - After peak hours
  • Weekdays - More stable pricing than weekends

Avoid:

  • Peak traffic hours (12 PM-6 PM)
  • During major events or sales
  • Right before known market volatility (tournament results)

After Major Changes

When changing pricing configuration significantly:

  1. Disable automated sync temporarily
  2. Run a manual price update
  3. Review results in Sync History
  4. Verify a few products manually in Shopify
  5. Re-enable automated sync if satisfied

Monitoring and Maintenance

Weekly checks:

  • Review last 7 days of price syncs in Sync History
  • Verify all scheduled syncs completed successfully
  • Note any patterns of failures

Monthly reviews:

  • Evaluate if schedule frequency is appropriate
  • Adjust based on how often prices actually change
  • Consider market conditions (volatile formats vs. stable)

Common Questions

Do price syncs count toward my Shopify API limits? Yes, but they use fewer API calls than full syncs. LGS Ledger has built-in rate limiting to stay within Shopify's limits.

Will price syncs overwrite manual price changes? Yes. Automated syncs apply your pricing configuration to all products. Avoid manual pricing if using automated syncs.

Can I schedule different frequencies for different sets? Not currently. Scheduled price syncs update all synced products. Per-set scheduling is planned for future releases.

What if pricing data is unavailable? LGS Ledger uses the last known price or falls back to your global minimum price.

How do I pause scheduled syncs temporarily? Toggle Enable Automated Price Sync to OFF in Settings. Toggle back ON when ready.

Do I get notified when a scheduled sync completes? Not currently. Check Sync History to verify completion. Email notifications are planned for future releases.


Previous: Sync History ← | Next: Multi-Store Management

Built with ❤️ for Local Game Stores