🧭✨ Future Subscriptions (NEW)

✨ NEW TABLE - December 2025

🛠️ Partner API Alignment Migration

🧭 This table represents the post-migration state for subscriptions.

1️⃣ Migrate to this table by April 2026

2️⃣ Between April 2026 and July 2026, remove FUTURE__ prefix

Contains subscription records enriched with operator information for partner data processing. This model joins subscription data with corresponding operators to provide complete subscription lifecycle tracking including creation, activation, cancellation, and financial details. Includes operator matching filters to identify main and parent operator relationships.

SQL: FUTURE__subscriptions

Schema

Column NameData TypeDescription
Primary ID
idINTEGERPrimary key
Other IDs
plan_idINTEGERIdentifier for the subscription plan associated with this subscription
operator_idINTEGERIdentifier for the operator managing this subscription
customer_idINTEGERIdentifier for the customer who owns this subscription
currency_idINTEGERIdentifier for the currency used in subscription transactions
country_idINTEGERIdentifier for the country where the subscription is active
purchased_by_user_idINTEGERIdentifier for the user who initiated the subscription purchase
cancelled_by_user_idINTEGERIdentifier for the user who cancelled the subscription
Timestamps
created_atTIMESTAMP_NTZTimestamp when the subscription record was initially created
updated_atTIMESTAMP_NTZTimestamp when the subscription record was last modified
deleted_atTIMESTAMP_NTZTimestamp when the subscription was soft deleted
next_purchase_atTIMESTAMP_NTZScheduled timestamp for the next recurring purchase
pending_atTIMESTAMP_NTZTimestamp when the subscription entered pending state
active_atTIMESTAMP_NTZTimestamp when the subscription became active
cancelled_atTIMESTAMP_NTZTimestamp when the subscription was cancelled
end_atTIMESTAMP_NTZTimestamp when the subscription period ends or ended
operator_deleted_atTIMESTAMP_NTZTimestamp when the associated operator was soft deleted
Attributes
customer_typeVARCHARClassification of the customer type for this subscription
stateVARCHARCurrent state of the subscription lifecycle
discount_percentageNUMBERPercentage-based discount applied to the subscription
discount_absoluteNUMBERFixed amount discount applied to the subscription
original_amountNUMBERBase subscription amount before any discounts or adjustments
discount_amountNUMBERTotal monetary value of discounts applied
total_amountNUMBERCalculated total amount including all charges
final_amountNUMBERFinal amount charged to the customer after all calculations
total_unitsNUMBERTotal number of units included in the subscription
min_unitsNUMBERMinimum required units for the subscription
actual_unitsNUMBERActual units consumed or allocated
min_final_amountNUMBERMinimum allowable final amount for the subscription
max_final_amountNUMBERMaximum allowable final amount for the subscription
noteVARCHARAdditional notes or comments about the subscription
purchase_countINTEGERNumber of purchases made under this subscription
operator_is_main_operator_matchBOOLEANIndicates whether the subscription operator matches the main operator criteria
operator_is_parent_operator_matchBOOLEANIndicates whether the subscription operator matches the parent operator criteria

Changes from Last Version

Added columns (5)

Timestamps:

  • deleted_at (subscription deletion status)
  • operator_deleted_at (operator deletion status)

Filter Flags (Computed):

  • operator_is_main_operator_match (boolean)
  • operator_is_parent_operator_match (boolean)

Attributes:

  • purchase_count (number of purchases for this subscription)

Removed columns (0)

Renamed Columns (2)

  • subscription_id → id

Data inclusion criteria

This table works with FUTURE__operators table, requiring that operator_id is among the partner's FUTURE__operators.id records.

Data flow

Upstream tablesDownstream tables
FUTURE_operators---

Alignment

Partner API

subscriptions table

exclude rows where deleted_at and operator_deleted_at is not null

where deleted_at is null 
and operator_deleted_at is null