---
schema_version: "1"
id: a49195796c4a4581d92e0236138ce58a69ec4f5a033df6e7ed589bd2ee85ade0
title: Expire Fixed Non-Qualifying Points by Using Aggregated Expiration Ledgers
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/expire_aggregated_fixed_non_qualifying_points_dpe.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.expire_aggregated_fixed_non_qualifying_points_dpe.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 9c87b7f93ee792e3a42d42fda21827b6231d0e7a1f900f27522bf4baa9ddfa5a
description: Use the Expire Fixed Non-Qualifying Points Using Aggregated Expiration Ledgers Data Processing Engine definition to expire members’ fixed-type, non-qualifying points. Run the definition to expire member points regardless of whether you’re consolidating member points in real time or in batches.
products:
  - Loyalty Management
release: "264"
---
# Expire Fixed Non-Qualifying Points by Using Aggregated Expiration Ledgers

Use the Expire Fixed Non-Qualifying Points Using Aggregated Expiration Ledgers Data Processing Engine definition to expire members’ fixed-type, non-qualifying points. Run the definition to expire member points regardless of whether you’re consolidating member points in real time or in batches.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Lightning Experience in&nbsp;<strong>Enterprise</strong>,&nbsp;<strong>Performance</strong>, <strong>Developer</strong>, and&nbsp;<strong>Unlimited</strong>&nbsp;Editions that have Loyalty Management enabled</td></tr></tbody></table>

The definition uses the expiration date of the Loyalty Aggregated Point Expiration Ledger records to determine the number of fixed-model, non-qualifying points to expire. An input variable in the definition lets you specify the loyalty program that you require to expire points for. The definition aggregates expirable points whose expiration date is between the last run date and the current run date.

After calculating the number of points to expire from the members' point balances, the results are written back to these objects:

 
| Object | Writeback Result |
| --- | --- |
| Loyalty Aggregated Point Expiration Ledger | Changes the status of the records that the current run expires points to Inactive. |
| Transaction Journal | Creates a unique record for each member whose points are expiring. |
| Loyalty Ledger | Creates Expiry type records to expire points from members' point balances. The records are associated with the members’ Transaction Journal records. |
| Loyalty Member Currency | Updates members' point balances after deducting the expired points. |

## Input Variables

 
| Input Variable Name | Description |
| --- | --- |
| Loyalty Program Name | The name of the loyalty program for which the Data Processing Engine definition is run. |
| Last Run Date | The date when this Data Processing Engine definition was last run. This date helps determine the number of points that must be expired by a run. This date is updated in the Last Points Aggregation Date field of the Loyalty Member Currency records. |

## Nodes

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d26638e190">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d26638e193">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d26638e196">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">
              <ul>
                <li>Loyalty Aggregated Point Expiration Ledger</li>

                <li>Loyalty Member Currency</li>

                <li>Loyalty Program</li>

                <li>Loyalty Program Currency</li>

              </ul>
            </td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Data Source</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Objects used as data sources to expire fixed-model non-qualifying points for
              members.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Add Loyalty Program Name to Program Currency</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Join</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Adds the loyalty program name to the loyalty program currencies.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Add Loyalty Program Details to Aggregated Point Expiration Ledgers</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Join</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Adds the name and ID of the loyalty program, and the currency type and
              expiration model of the loyalty program currency to the aggregated point expiration
              ledgers.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Filter Active Aggregated Point Expiration Ledgers</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Filter</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Filters active aggregated point expiration ledgers with fixed model
              non-qualifying points for the loyalty program.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Add Loyalty Member Currency Details to Active Aggregated Ledgers</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Join</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Adds the ID, last expiration process run date, points to expire, points
              balance, total points expired, and total points redeemed of the loyalty member
              currency to the active aggregated point expiration ledgers.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Get Active Aggregated Point Expiration Ledgers with Points to Expire</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Identifies active aggregated point expiration ledgers that contain points to be
              considered for expiration.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Update Last Run Date</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Validates if the last run date is a future date and corrects it by setting any
              future date to the current date.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Compare Points Expiry Date With Updated Run Date</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Validates if the points expiry date is earlier than the updated last run
              date.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Filter Active Aggregated Point Expiration Ledgers with Points Yet to
              Expire</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Filter</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Filters active aggregated point expiration ledgers that contain points whose
              expiration date is on or before the run date.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Calculate Points to Expire from Aggregated Ledgers and Update Status</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Calculates the number of points that must be expired from the aggregated point
              expiration ledgers and updates their status to Inactive.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Update Loyalty Aggregated Point Expiration Ledgers</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Writeback Object</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Updates the status of existing aggregated point expiration ledgers, for which
              points have expired, to Inactive.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Aggregate Points to Calculating Points for Expiry</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Group and Aggregate</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Aggregates the total ledger points, the points that must be expired, the points
              that have already expired, and the total points redeemed. These aggregated points
              help determine the number of points that must be expired.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Calculate Total Points That Can be Expired</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Calculates the total number of points that can be expired.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Calculate Total Expired Points</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Calculates the total number of points that have already expired. This node also
              determines other values that must be updated by a run.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Calculate Points to Expire</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Formula</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Calculates the total number of points that must be expired by a run.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Check Whether More Than Zero Points are to Expire</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Filter</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Checks whether one or more points must be expired by a run.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Create Loyalty Ledgers</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Writeback Object</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Creates loyalty ledgers to expire member’s fixed model non-qualifying
              points.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Create Transaction Journals</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Writeback Object</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Creates transaction journals to expire member’s fixed model non-qualifying
              points.</td>

          </tr>
          <tr class="">
            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e190 ">Update Loyalty Member Currency</td>

            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e193 ">Writeback Object</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d26638e196 ">Updates loyalty member currencies with the total number of points that have
              expired and the total number of points that must be expired later based on their
              expiration date. The last expiration process run date is also updated.</td>

          </tr>
        </tbody>
      </table>