> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sourcemedium.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# dim_subscriptions

> Subscription records with lifecycle, product, MRR, and reporting-currency fields.

```yaml theme={null}
version: 2

models:
  - name: dim_subscriptions
    description: >
      Subscription dimension with one row per subscription. Use it for current subscription status,
      product, cadence, price, MRR, and currency reconciliation.
    columns:
      - name: sm_store_id
        description: SourceMedium's unique store identifier.

      - name: platform
        description: Subscription platform. Observed values are `ReCharge` and `Medusa`.

      - name: subscription_id
        description: Platform identifier for the subscription.

      - name: subscription_line_id
        description: Alias of `subscription_id`. Kept for compatibility with line-oriented subscription models.

      - name: subscriber_id
        description: Identifier for the subscriber who owns the subscription.

      - name: customer_id
        description: Alias of `subscriber_id`.

      - name: address_id
        description: Platform address identifier associated with the subscription, when available.

      - name: reporting_timezone
        description: Workspace timezone used for subscription lifecycle dates.

      - name: subscription_status
        description: >
          Current subscription status from the subscription platform, stored in uppercase. Observed
          values are `ACTIVE`, `CANCELLED`, `EXPIRED`, and `PAUSED`. ReCharge uses `EXPIRED` for
          involuntary lapse; Medusa uses `PAUSED`.

      - name: cancellation_reason
        description: Cancellation reason supplied by the subscription platform, when available.

      - name: cancellation_comments
        description: Free-text cancellation comments supplied by the subscription platform, when available.

      - name: is_active
        description: Whether the subscription is currently active (`subscription_status = ACTIVE`).

      - name: cancel_type
        description: >
          How a non-active subscription left the active base. Observed values are `Active` for a
          voluntary cancel and `Passive` for expiry, max retries, and other non-active statuses.
          Null for active subscriptions.

      - name: is_dunning
        description: >
          Whether this active subscription currently belongs to a subscriber in dunning.

      - name: dunning_at
        description: >
          Date the subscription is currently in dunning, in the workspace reporting timezone. Null
          when the subscription is not currently in dunning.

      - name: dunning_entered_date
        description: >
          Date this active subscription entered dunning, based on the subscriber's latest failed
          charge. Used by the daily report's dunning time series.

      - name: is_return
        description: >
          Whether this subscription is a returning subscription at subscriber and product grain.

      - name: subscriber_status
        description: >
          Current status of the owning subscriber. Published values are `active`, `inactive`, and
          `dunning`.

      - name: subscription_quantity
        description: Quantity included in the subscription.

      - name: interval_days
        description: Delivery cadence expressed in days.

      - name: order_interval_unit
        description: >
          Unit for the subscription delivery cadence. Observed values are `day`, `week`, and
          `month`.

      - name: order_interval_frequency
        description: Number of `order_interval_unit` values between deliveries.

      - name: charge_interval_frequency
        description: >
          Number of `order_interval_unit` values between charges. For prepaid subscriptions this can
          be longer than the delivery interval and is what SourceMedium uses to calculate MRR.

      - name: subscription_interval
        description: Combined delivery cadence label, such as `30-day`.

      - name: product_id
        description: Platform identifier for the subscribed product.

      - name: variant_id
        description: Platform identifier for the subscribed product variant.

      - name: product_title
        description: Product title supplied by the subscription platform.

      - name: variant_title
        description: Variant title supplied by the subscription platform.

      - name: sku
        description: Stock keeping unit for the subscribed product variant.

      - name: is_prepaid
        description: Whether the subscription is billed once for multiple upcoming deliveries.

      - name: is_bundle_component
        description: >
          True when a ReCharge line is a bundle component. Bundle purchases currently appear as
          multiple subscriptions, so counts and MRR can be inflated until SourceMedium can collapse
          those components.

      - name: has_queued_charges
        description: Whether the subscription currently has queued charges. Not available for Medusa.

      - name: max_retries_reached
        description: >
          Whether the subscription has reached the platform's payment-retry limit. Not available for
          Medusa.

      - name: subscription_created_at
        description: UTC timestamp when the subscription was created.

      - name: subscription_created_at_local_datetime
        description: Subscription created timestamp converted to the workspace reporting timezone.

      - name: subscription_created_date
        description: Subscription start date in the workspace reporting timezone.

      - name: subscription_cancelled_at
        description: UTC timestamp when the platform recorded a cancellation, when present.

      - name: subscription_cancelled_date
        description: >
          Outflow date used for non-active subscriptions. Prefer the platform cancel timestamp,
          then the last settled charge date, then last updated, then created. Expired and passively
          cancelled subscriptions therefore have a date even when the customer did not cancel.
          Active subscriptions are null.

      - name: subscription_updated_at
        description: UTC timestamp when the subscription was last updated.

      - name: subscription_next_charge_scheduled_date
        description: Next scheduled charge date supplied by the subscription platform, when available.

      - name: subscription_price
        description: Subscription price in `subscription_currency_code`.

      - name: subscription_currency_code
        description: >
          Currency of the standard subscription price and MRR fields. Uses the workspace reporting
          currency when reporting-currency conversion is enabled.

      - name: subscription_mrr
        description: Monthly recurring revenue in `subscription_currency_code`.

      - name: subscription_original_currency_code
        description: Currency supplied by the subscription source.

      - name: subscription_converted_currency_code
        description: Workspace reporting currency selected for the subscription.

      - name: subscription_currency_conversion_currency_code
        description: >
          Currency that should describe subscription price and MRR after conversion is applied.

      - name: subscription_currency_conversion_effective_date
        description: Date used to select the exchange rate for this subscription.

      - name: subscription_currency_conversion_rate_applied
        description: Exchange rate used to convert subscription price and MRR.

      - name: subscription_currency_conversion_status
        description: >
          Whether the subscription was converted, already used the reporting currency, or could not
          be converted.

      - name: subscription_currency_mismatch_flag
        description: True when the source currency and conversion mapping do not agree.

      - name: subscription_currency_canonicalization_status
        description: >
          Whether standard subscription price and MRR were rewritten to reporting-currency values.

      - name: subscription_original_price
        description: Subscription price before currency conversion.

      - name: subscription_converted_price
        description: Subscription price converted to the workspace reporting currency.

      - name: subscription_original_mrr
        description: Monthly recurring revenue before currency conversion.

      - name: subscription_converted_mrr
        description: Monthly recurring revenue converted to the workspace reporting currency.

      - name: is_subscription_currency_canonicalized
        description: True when standard subscription price and MRR use reporting-currency values.

      - name: smcuuid
        description: Hashed store identifier.
```

<Info>
  Subscription price and MRR use the exchange rate from the subscription start date. See [Reporting Currency](/docs/help-center/core-concepts/data-definitions/reporting-currency) for reconciliation guidance.
</Info>

<Warning>
  Medusa subscription MRR describes recurring subscription value. Medusa does not provide subscription charge history, so this field is not collected charge revenue or realized subscriber LTV.
</Warning>

<Warning>
  A ReCharge bundle currently lands as multiple component subscriptions. Use `is_bundle_component` to identify those rows; counts and MRR can be inflated until SourceMedium can collapse the components.
</Warning>
