Skip to main content

Promotion Archival & Lifecycle

How to access on Fynd Platform

Introduction

Promotions on the Fynd Platform follow an automatic lifecycle that archives expired or stale promotions and cleans up associated caches. This keeps the active promotion list performant and manageable while preserving historical data.

The promotion archival process differs slightly from coupon archival in its timing thresholds and cache cleanup behaviour.


Promotion Lifecycle Stages

  ┌────────┐     ┌────────┐     ┌──────────┐
│ DRAFT │────▶│ REVIEW │────▶│ APPROVED │
└────────┘ └────────┘ └──────────┘
│ │ │
│ │ │ (expires)
│ │ ▼
│ │ ┌──────────┐
│ ├─────────▶│ REJECTED │
│ │ └──────────┘
│ │ │
│ (30 days) │ (30 days) │ (30 days)
▼ ▼ ▼
┌──────────────────────────────────────┐
│ ARCHIVED │
└──────────────────────────────────────┘

│ (1 year)

┌──────────────────────────────────────┐
│ EXPORTED & DELETED │
└──────────────────────────────────────┘

Archival Rules

Promotions are automatically archived based on their status and age:

Approved, Review, and Rejected Promotions (Expired)

  • Condition: Both the scheduled start date and end date are more than 30 days in the past.
  • Trigger: Automatic background job runs periodically.
  • What happens: The promotion is moved from the active collection to the archived collection.

Draft Promotions (Stale)

  • Condition: The promotion was last modified more than 30 days ago.
  • Trigger: Same automatic background job.
  • What happens: The promotion is moved to the archived collection.
StatusArchival TriggerThreshold
ApprovedBoth start and end dates have passed30 days after both dates
ReviewBoth start and end dates have passed30 days after both dates
RejectedBoth start and end dates have passed30 days after both dates
DraftLast modified date30 days of inactivity
info

The archival threshold for promotions (30 days for all statuses) is configurable per application. The default is 30 days, but it can be customised through the admin cart configuration setting promotion_archive_after_days.


What Happens During Archival

When a promotion is archived:

  1. Data is preserved — The full promotion document is moved to the archived collection.
  2. Promo keys are cleared — Cached promotion-item mapping keys are removed.
  3. Promotion count is updated — The cached promotion count for the application is decremented.
  4. Item-promotion cache is cleaned — If the promotion was approved and had been processed, the system triggers a cache deletion event to remove item-promotion mappings from the preprocessed cache. This is an additional cleanup step that doesn't apply to coupons.
  5. The promotion is removed from the active listing.

Active Deactivation (Separate Process)

In addition to archival, a separate background job runs to deactivate expired promotions:

  • Condition: The promotion's end date has passed (regardless of how recently).
  • What happens:
    1. Promotion-item cache keys are removed from the preprocessed cache.
    2. The promotion is removed from the active collection.
  • Purpose: Ensures expired promotions stop applying to customer carts immediately, without waiting for the 30-day archival window.
important

Active deactivation is separate from archival. It ensures that expired promotions stop being applied to carts in real-time, while archival handles the longer-term cleanup and data management.


Viewing Archived Promotions

You can view archived promotions by filtering the promotion list:

  1. In the platform sidebar, expand your sales channel under SALES CHANNEL, click Marketing, then click Offers. Select the Promotions tab.

  2. Use the Status filter and select Archived to view all archived promotions.

Promotion listing page with status filter set to Archived

Figure 1: Promotion listing page with status filter set to Archived

Archived promotions are displayed with an Archived badge and are read-only in the listing view.


Restoring an Archived Promotion

An archived promotion can be restored by recreating it with the same identifier:

  1. The promotion is moved back from the archived collection to the active collection.
  2. The promotion count cache is updated.
  3. Item-promotion cache mappings may be rebuilt on the next cart calculation.
  4. The promotion becomes available in the active listing.
caution

After restoration, update the schedule (start and end dates) to make the promotion active again. The original dates will have passed.


Permanent Deletion

Promotions that have been in the archived state for more than 1 year are permanently deleted:

  1. The archived promotion data is exported to an encrypted, compressed file.
  2. The file is uploaded to secure cloud storage.
  3. After successful upload, the promotion is deleted from the archived collection.
  4. If the upload fails, the promotion remains in the archived collection.

Differences from Coupon Archival

AspectCoupon ArchivalPromotion Archival
Approved — archival threshold1 day after end date30 days after both start and end dates
Draft/Review/Rejected — threshold30 days after last modification30 days after last modification
Configurable thresholdNoYes — per-application via promotion_archive_after_days
Cache cleanup on archivalCount cache onlyCount cache + item-promotion preprocessed cache
Active deactivationNot applicableSeparate process removes expired promotions from cache immediately

Summary

StageDurationData StatusUser Access
ActiveWhile validIn active collectionFull CRUD
DeactivatedImmediately after expiryRemoved from active, cache cleanedNot applicable
ArchivedUp to 1 yearIn archived collectionView and restore
DeletedAfter 1 year in archiveExported to cloud storageNot accessible from platform


Was this section helpful?