---
title: "List Loyalty Card Transactions"
method: GET
path: "/v1/loyalties/members/{memberId}/transactions"
tags: ["Loyalties"]
---

# List Loyalty Card Transactions

`GET /v1/loyalties/members/{memberId}/transactions`

Retrieve transaction data related to point movements for a specific loyalty card.

## Query parameters

- `limit` integer
- `order` 'id' | '-id'
- `filters` ParameterFiltersListMemberTransactions
  - `junction` 'and' | 'or' — Logical Operator Between Filters. Filter by conditions set on the `junction` parameter indicating how the `conditions` should be accounted for in the query. An `AND` is an all-inclusive logical operator, meaning the `AND` operator displays a record if **ALL** the conditions separated by AND are TRUE, while an `OR` operator displays a record if **ANY** of the conditions separated by OR is TRUE.
  - `created_at` object
    - `conditions` FilterConditionsDateTime — Data filters used to narrow down the data records to be returned in the result.
      - `$after` string, date-time — Value is after this date. The value for this parameter is shown in the ISO 8601 format.
      - `$before` string, date-time — Value is before this date. The value for this parameter is shown in the ISO 8601 format.
      - `$has_value` string — Value is NOT null. The value for this parameter is an empty string.
      - `$is_unknown` string — Value is null. The value for this parameter is an empty string.
      - `$more_than` integer — Value is more days ago before the current date and time, e.g. more than `10` days ago.
      - `$less_than` integer — Value is less days before the current date and time, e.g. less than `10` days ago.
  - `id` object
    - `conditions` FilterConditionsString — Data filters used to narrow down the data records to be returned in the result.
      - `$in` string[] — Array of resource values that should be included in the results (multiple values).
      - `$not_in` string[] — Array of resource values that should be included in the results (multiple values).
      - `$is` string — Value is exactly this value (single value).
      - `$is_not` string — Results omit this value (single value).
      - `$has_value` string — Value is NOT null. The value for this parameter is an empty string.
      - `$is_unknown` string — Value is null. The value for this parameter is an empty string.
      - `$starts_with` string — Value starts with the specified string.
      - `$ends_with` string — Value ends with the specified string.
      - `$contains` string — Value includes the specified string.
      - `$not_contain` string — Value does NOT include the specified string.
- `starting_after_id` string

## Response `200`

Returns a dictionary of loyalty card transaction objects.

- LoyaltiesMembersTransactionsListResponseBody — Response body schema for **GET** `v1/loyalties/{campaignId}/members/{memberId}/transactions` and `/loyalties/members/{memberId}/transactions`.
  - `object` 'list', required — The type of the object represented by JSON.
  - `data_ref` 'data', required — Identifies the name of the attribute that contains the array of transaction objects.
  - `data` LoyaltyCardTransaction[], required — A dictionary that contains an array of transactions. Each entry in the array is a separate transaction object.
    - `id` string, required — Unique transaction ID.
    - `source_id` string, nullable, required — The merchant's transaction ID if it is different from the Voucherify transaction ID. It is really useful in case of an integration between multiple systems. It can be a transaction ID from a CRM system, database or 3rd-party service. In case of a redemption, this value is null.
    - `voucher_id` string, required — Unique voucher ID.
    - `campaign_id` string, required — Unqiue campaign ID of the voucher's parent campaign if it is part of campaign that generates bulk codes.
    - `source` string, nullable, required — The channel through which the transaction took place, whether through the API or the Dashboard. In case of a redemption, this value is null.
    - `reason` string, nullable, required — Reason why the transaction occurred. In case of a redemption, this value is null.
    - `related_transaction_id` string, nullable, required — The related transaction ID on the receiving card.
    - `created_at` string, date-time, required — Timestamp representing the date and time when the transaction was created. The value is shown in the ISO 8601 format.
    - `details` object, required — Contains the detailed information about the transaction.
      - `balance` VoucherBalance — Contains information on how the balance was affected by the transaction.
        - `type` 'loyalty_card' | 'gift_voucher' — The type of voucher whose balance is being adjusted due to the transaction.
        - `total` integer, required — The number of all points or credits accumulated on the card as affected by add or subtract operations.
        - `object` 'balance', required — The type of the object represented by the JSON.
        - `amount` integer — Credits added or subtracted on a gift card.
        - `points` integer — Points added or subtracted in the transaction of a loyalty card.
        - `balance` integer, required — The available points or credits on the card after the transaction as affected by redemption or rollback.
        - `operation_type` 'MANUAL' | 'AUTOMATIC' — The type of the operation being performed. The operation type is `AUTOMATIC` if it is an automatic redemption.
        - `related_object` object, required — Defines the resource that is being modified with the values that are returned in the balance object.
          - `id` string, required — Identifies the voucher that is being modified. The ID is assigned by the Voucherify API.
          - `type` 'voucher', required — The object being modified, i.e. voucher.
      - `order` object — Contains information about the original order.
        - `id` string, required — Unique order ID.
        - `source_id` string, required — The merchant's order ID if it is different from the Voucherify order ID. It is really useful in case of integration between multiple systems. It can be an order ID from CRM, database or 3rd party service.
      - `event` object — Contains information about the event that triggers the point accrual.
        - `id` string, required — Unique event ID.
        - `type` string, required — Type of event.
      - `earning_rule` object — Contains information about the earning rule.
        - `id` string, required — Unique identifier of an earning rule, assigned by Voucherify.
        - `source` object, required — Contains the custom earning rule name.
          - `banner` string, required — Name of the earning rule. This is displayed as a header for the earning rule in the Dashboard.
      - `segment` object — Contains information about the segment.
        - `id` string, required
        - `name` string, required
      - `loyalty_tier` object — Contains information about the loyalty tier that is mapped for the earning rule and used in the transaction.
        - `id` string, required — Unique identifier of the loyalty tier, assigned by Voucherify.
        - `name` string, required — User-defined name of the loyalty tier.
      - `redemption` object — Contains information about the original redemption.
        - `id` string, required — Unique redemption ID.
      - `rollback` object — Contains information about the redemption rollback.
        - `id` string, required — Unique redemption rollback ID.
      - `custom_event` object — Contains information about the custom event that triggers the point accrual.
        - `id` string, required — Unique event ID.
        - `type` string, required — Type of custom event.
      - `event_schema` object — Contains information about the custom event metadata schema.
        - `id` string, required — Unique metadata schema ID.
        - `name` string, required — Type of custom event.
      - `holder_loyalty_tier` object — Loyalty tier of the loyalty card holder at the moment when the transaction occurred. The loyalty tier is the tier in which the holder was before the loyalty point balance changed.
        - `id` string, required — Unique identifier of the loyalty tier, assigned by Voucherify.
        - `name` string, required — User-defined name of the loyalty tier.
      - `pending_points` LoyaltyPendingPoints — Contains details about the pending point entry.
        - `id` string, required — Unique identifier of the pending point entry, assigned by Voucherify.
        - `voucher_id` string, required — Unique identifier of the loyalty card, assigned by Voucherify.
        - `campaign_id` string, required — Unique campaign identifier, assigned by Voucherify.
        - `customer_id` string, required — Unique customer identifier, assigned by Voucherify.
        - `order_id` string, required — Unique order identifier, assigned by Voucherify.
        - `points` integer, required — Number of points in the pending state.
        - `activates_at` string, date, required — Date when the pending points are activated and added to the customer's loyalty card.
        - `details` LoyaltyPendingPointsDetails, required — Details about how the pending points were earned.
          - `loyalty_tier` object — The loyalty tier that is mapped for the earning rule and used in the pending point transaction.
            - `id` string, required — Unique identifier of the loyalty tier, assigned by Voucherify.
            - `name` string, required — User-defined name of the loyalty tier.
          - `holder_loyalty_tier` object — Loyalty tier of the loyalty card holder at the moment when the transaction occurred. The loyalty tier is the tier in which the holder was at the moment pending points were created.
            - `id` string, required — Unique identifier of the loyalty tier, assigned by Voucherify.
            - `name` string, required — User-defined name of the loyalty tier.
          - `event` object, required — Details about the event that created pending points.
            - `id` string — Unique event identifier, assigned by Voucherify.
            - `type` 'customer.order.paid' — Type of the event that triggered the creation of pending points.
            - `group_id` string — Unique identifier of the request that triggered the event, assigned by Voucherify.
            - `entity_id` string — Unique identifier of the entity that triggered the event, assigned by Voucherify. For pending points, it is the `customer_id` of the customer who paid for the order.
            - `created_at` string, date-time — Timestamp representing the date and time when the event occurred. The value is shown in the ISO 8601 format.
            - `category` 'ACTION' | 'EFFECT' — Type of the event.
            - `event_source` EventSource — Contains the source of the object that initiated the event.
              - …
          - `earning_rule` object, required — Contains information about the earning rule.
            - `id` string, required — Unique identifier of an earning rule, assigned by Voucherify.
            - `source` object, required — Contains the custom earning rule name.
              - …
          - `order` object, required — Details about the order that caused adding pending points.
            - `id` string, required — Unique order identifier, assigned by Voucherify.
            - `source_id` string, nullable, required — User-defined order identifier.
        - `created_at` string, date-time, required — Timestamp representing the date and time when the pending point entry was created. The value is shown in the ISO 8601 format.
        - `updated_at` string, date-time — Timestamp representing the date and time when the pending point entry was modified. The value is shown in the ISO 8601 format.
      - `reward` object — Contains information about the pay with points reward.
        - `id` string, required — Unique reward ID.
        - `name` string, required — Reward name.
      - `source_voucher` SimpleVoucher — Simplified voucher data.
        - `id` string — A unique identifier that represents the voucher assigned by Voucherify.
        - `code` string, required — Voucher code.
        - `gift` Gift — Contains current gift card balance information.
          - `amount` number, required — Total gift card income over the lifetime of the card. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
          - `subtracted_amount` integer — Total amount of subtracted credits over the gift card lifetime.
          - `balance` number, required — Available funds. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`. `balance` = `amount` - `subtracted_amount` - `redemption.redeemed_amount`.
          - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS' — Defines how the credits are applied to the customer's order.
        - `discount` union — Contains information about discount.
          - object
            - `type` 'AMOUNT', required — Defines the type of the voucher.
            - `amount_off` number, required — Amount taken off the subtotal of a price. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000.
            - `amount_off_formula` string — Formula used to dynamically calculate the discount.
            - `aggregated_amount_limit` integer — Maximum discount amount per order.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS' | 'APPLY_TO_ITEMS_PROPORTIONALLY' | 'APPLY_TO_ITEMS_PROPORTIONALLY_BY_QUANTITY' | 'APPLY_TO_ITEMS_BY_QUANTITY'
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
          - object
            - `type` 'UNIT', required — Discount type.
            - `unit_off` integer — Number of units to be granted a full value discount.
            - `unit_off_formula` string — Formula used to dynamically calculate the number of units.
            - `effect` 'ADD_MISSING_ITEMS' | 'ADD_NEW_ITEMS' | 'ADD_MANY_ITEMS' | 'ADD_SAME_ITEMS'
            - `unit_type` string, required — The product deemed as free, chosen from product inventory (e.g. time, items).
            - `product` SimpleProductDiscountUnit
              - …
            - `sku` SimpleSkuDiscountUnit
              - …
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
          - object
            - `type` 'UNIT', required — Discount type.
            - `effect` 'ADD_MANY_ITEMS' — Defines how the discount is applied to the customer's order.
            - `units` DiscountUnitMultipleOneUnit[], required
              - …
          - object
            - `type` 'PERCENT', required — Defines the type of the voucher.
            - `percent_off` number, required — The percent discount that the customer will receive.
            - `percent_off_formula` string — Formula used to dynamically calculate the discount.
            - `amount_limit` number — Upper limit allowed to be applied as a discount. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $6 maximum discount is written as 600.
            - `aggregated_amount_limit` integer — Maximum discount amount per order.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS'
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
          - object
            - `type` 'FIXED', required — Defines the type of the voucher.
            - `fixed_amount` number, required — Sets a fixed value for an order total or the item price. The value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000. If the fixed amount is calculated by the formula, i.e. the `fixed_amount_formula` parameter is present in the fixed amount definition, this value becomes the **fallback value**. As a result, if the formula cannot be calculated due to missing metadata, for example, this value will be used as the fixed value.
            - `fixed_amount_formula` string — Formula used to dynamically calculate the discount.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS'
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
        - `loyalty_card` SimpleLoyaltyCard — Simplified loyalty card data.
          - `points` integer, required — Total number of points added to the loyalty card over its lifespan.
          - `balance` integer — Points available for reward redemption. This is calculated as follows: `balance` = `points` - `expired_points` - `subtracted_points` - `redemption.redeemed_points`.
          - `next_expiration_date` string — The next closest date when the next set of points are due to expire.
          - `next_expiration_points` integer — The amount of points that are set to expire next.
          - `pending_points` integer — Shows the number of pending points that will be added to the loyalty card when they are activated automatically or manually.
          - `expired_points` integer — Shows the total number of expired points over the lifetime of the loyalty card.
          - `subtracted_points` integer — Shows the total number of subtracted points over the lifetime of the loyalty card.
        - `type` 'DISCOUNT_VOUCHER' | 'LOYALTY_CARD' | 'GIFT_VOUCHER', required — Type of the voucher.
        - `campaign` string — Campaign name.
        - `campaign_id` string — Campaign unique ID.
        - `is_referral_code` boolean — Flag indicating whether this voucher is a referral code; `true` for campaign type `REFERRAL_PROGRAM`.
        - `holder_id` string — Unique customer identifier of the redeemable holder. It equals to the customer ID assigned by Voucherify.
        - `referrer_id` string — Unique identifier of the referrer assigned by Voucherify.
        - `category_id` string, nullable — Unique identifier of the category that this voucher belongs to.
        - `categories` Category[] — Contains details about the category.
          - `id` string, required — Unique category ID assigned by Voucherify.
          - `name` string, required — Category name.
          - `hierarchy` integer, required — Category hierarchy. Categories with lower hierarchy are processed before categories with higher hierarchy value.
          - `object` 'category', required — The type of the object represented by the JSON. This object stores information about the category.
          - `created_at` string, date-time, required — Timestamp representing the date and time when the category was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp representing the date and time when the category was updated. The value is shown in the ISO 8601 format.
        - `active` boolean — Shows whether the voucher is on or off. `true` indicates an *active* voucher and `false` indicates an *inactive* voucher.
        - `created_at` string, date-time, required — Timestamp representing the date and time when the order was created in the ISO 8601 format.
        - `updated_at` string, date-time — Timestamp representing the date and time when the order was created. The value is shown in the ISO 8601 format.
        - `redemption` object — Defines the redemption limits on vouchers.
          - `quantity` integer, nullable, required — How many times a voucher can be redeemed. A `null` value means unlimited.
          - `redeemed_quantity` integer, required — How many times a voucher has already been redeemed.
          - `redeemed_points` integer — Total loyalty points redeemed.
        - `start_date` string, date-time — Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is *inactive before* this date.
        - `expiration_date` string, date-time — Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is *inactive after* this date.
        - `metadata` object — A set of custom key/value pairs that you can attach to a voucher. The metadata object stores all custom attributes assigned to the voucher.
        - `object` 'voucher', required — The type of the object represented by JSON.
      - `destination_voucher` SimpleVoucher — Simplified voucher data.
        - `id` string — A unique identifier that represents the voucher assigned by Voucherify.
        - `code` string, required — Voucher code.
        - `gift` Gift — Contains current gift card balance information.
          - `amount` number, required — Total gift card income over the lifetime of the card. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
          - `subtracted_amount` integer — Total amount of subtracted credits over the gift card lifetime.
          - `balance` number, required — Available funds. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`. `balance` = `amount` - `subtracted_amount` - `redemption.redeemed_amount`.
          - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS' — Defines how the credits are applied to the customer's order.
        - `discount` union — Contains information about discount.
          - object
            - `type` 'AMOUNT', required — Defines the type of the voucher.
            - `amount_off` number, required — Amount taken off the subtotal of a price. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000.
            - `amount_off_formula` string — Formula used to dynamically calculate the discount.
            - `aggregated_amount_limit` integer — Maximum discount amount per order.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS' | 'APPLY_TO_ITEMS_PROPORTIONALLY' | 'APPLY_TO_ITEMS_PROPORTIONALLY_BY_QUANTITY' | 'APPLY_TO_ITEMS_BY_QUANTITY'
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
          - object
            - `type` 'UNIT', required — Discount type.
            - `unit_off` integer — Number of units to be granted a full value discount.
            - `unit_off_formula` string — Formula used to dynamically calculate the number of units.
            - `effect` 'ADD_MISSING_ITEMS' | 'ADD_NEW_ITEMS' | 'ADD_MANY_ITEMS' | 'ADD_SAME_ITEMS'
            - `unit_type` string, required — The product deemed as free, chosen from product inventory (e.g. time, items).
            - `product` SimpleProductDiscountUnit
              - …
            - `sku` SimpleSkuDiscountUnit
              - …
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
          - object
            - `type` 'UNIT', required — Discount type.
            - `effect` 'ADD_MANY_ITEMS' — Defines how the discount is applied to the customer's order.
            - `units` DiscountUnitMultipleOneUnit[], required
              - …
          - object
            - `type` 'PERCENT', required — Defines the type of the voucher.
            - `percent_off` number, required — The percent discount that the customer will receive.
            - `percent_off_formula` string — Formula used to dynamically calculate the discount.
            - `amount_limit` number — Upper limit allowed to be applied as a discount. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $6 maximum discount is written as 600.
            - `aggregated_amount_limit` integer — Maximum discount amount per order.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS'
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
          - object
            - `type` 'FIXED', required — Defines the type of the voucher.
            - `fixed_amount` number, required — Sets a fixed value for an order total or the item price. The value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000. If the fixed amount is calculated by the formula, i.e. the `fixed_amount_formula` parameter is present in the fixed amount definition, this value becomes the **fallback value**. As a result, if the formula cannot be calculated due to missing metadata, for example, this value will be used as the fixed value.
            - `fixed_amount_formula` string — Formula used to dynamically calculate the discount.
            - `effect` 'APPLY_TO_ORDER' | 'APPLY_TO_ITEMS'
            - `is_dynamic` boolean — Flag indicating whether the discount was calculated using a formula.
        - `loyalty_card` SimpleLoyaltyCard — Simplified loyalty card data.
          - `points` integer, required — Total number of points added to the loyalty card over its lifespan.
          - `balance` integer — Points available for reward redemption. This is calculated as follows: `balance` = `points` - `expired_points` - `subtracted_points` - `redemption.redeemed_points`.
          - `next_expiration_date` string — The next closest date when the next set of points are due to expire.
          - `next_expiration_points` integer — The amount of points that are set to expire next.
          - `pending_points` integer — Shows the number of pending points that will be added to the loyalty card when they are activated automatically or manually.
          - `expired_points` integer — Shows the total number of expired points over the lifetime of the loyalty card.
          - `subtracted_points` integer — Shows the total number of subtracted points over the lifetime of the loyalty card.
        - `type` 'DISCOUNT_VOUCHER' | 'LOYALTY_CARD' | 'GIFT_VOUCHER', required — Type of the voucher.
        - `campaign` string — Campaign name.
        - `campaign_id` string — Campaign unique ID.
        - `is_referral_code` boolean — Flag indicating whether this voucher is a referral code; `true` for campaign type `REFERRAL_PROGRAM`.
        - `holder_id` string — Unique customer identifier of the redeemable holder. It equals to the customer ID assigned by Voucherify.
        - `referrer_id` string — Unique identifier of the referrer assigned by Voucherify.
        - `category_id` string, nullable — Unique identifier of the category that this voucher belongs to.
        - `categories` Category[] — Contains details about the category.
          - `id` string, required — Unique category ID assigned by Voucherify.
          - `name` string, required — Category name.
          - `hierarchy` integer, required — Category hierarchy. Categories with lower hierarchy are processed before categories with higher hierarchy value.
          - `object` 'category', required — The type of the object represented by the JSON. This object stores information about the category.
          - `created_at` string, date-time, required — Timestamp representing the date and time when the category was created. The value is shown in the ISO 8601 format.
          - `updated_at` string, date-time — Timestamp representing the date and time when the category was updated. The value is shown in the ISO 8601 format.
        - `active` boolean — Shows whether the voucher is on or off. `true` indicates an *active* voucher and `false` indicates an *inactive* voucher.
        - `created_at` string, date-time, required — Timestamp representing the date and time when the order was created in the ISO 8601 format.
        - `updated_at` string, date-time — Timestamp representing the date and time when the order was created. The value is shown in the ISO 8601 format.
        - `redemption` object — Defines the redemption limits on vouchers.
          - `quantity` integer, nullable, required — How many times a voucher can be redeemed. A `null` value means unlimited.
          - `redeemed_quantity` integer, required — How many times a voucher has already been redeemed.
          - `redeemed_points` integer — Total loyalty points redeemed.
        - `start_date` string, date-time — Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is *inactive before* this date.
        - `expiration_date` string, date-time — Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is *inactive after* this date.
        - `metadata` object — A set of custom key/value pairs that you can attach to a voucher. The metadata object stores all custom attributes assigned to the voucher.
        - `object` 'voucher', required — The type of the object represented by JSON.
    - `type` 'PENDING_POINTS_ACTIVATION' | 'POINTS_ACCRUAL' | 'POINTS_REDEMPTION' | 'POINTS_REFUND' | 'POINTS_ADDITION' | 'POINTS_REMOVAL' | 'POINTS_EXPIRATION' | 'POINTS_TRANSFER_IN' | 'POINTS_TRANSFER_OUT', required — Transaction types concerning loyalty points.
  - `has_more` boolean, required — As query results are always limited (by the limit parameter), the `has_more` flag indicates if there are more records for given filter parameters. This lets you know if you can run another request to get more records returned in the results.
  - `more_starting_after` string — Returns an ID that can be used to return another page of results. Use the transaction ID in the `starting_after_id` query parameter to display another page of the results starting after the transaction with that ID.

---

[API](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions.md) · [All operations](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voucherifyio/voucherify-api-async-actions/versions/4982266e0494/schema)
