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

# List card pending point buckets

> Returns a cursor-paginated list of pending point buckets (`status` is `PENDING`) of the member's card. Pending points are earned points waiting for activation (period-based, fixed-dates or event-based activation, per the card definition's pending points settings).

Results can be ordered by activation `date`.

Returns `404` when the program, member, or card does not exist.

Use this endpoint to get the list of IDs of pending point bucket to use the [POST Activate pending point bucket](/api-reference/programs/activate-pending-point-bucket) or [POST Cancel pending point bucket](/api-reference/programs/cancel-a-pending-points-bucket).



## OpenAPI

````yaml /openapi/loyalties-v2.json get /v2/loyalties/programs/{programId}/members/{memberId}/cards/{cardId}/pending-points
openapi: 3.1.0
info:
  title: Voucherify Loyalty v2 API
  version: 2.0.0
  description: >-
    Complete OpenAPI specification for the Voucherify Loyalty v2 API.

    All endpoints require the LOYALTY_V2 feature flag.


    Combined from per-domain specs: programs.yaml, members.yaml,
    program-operations.yaml, card-definitions.yaml, earning-rules.yaml,
    tier-structures.yaml, benefits.yaml, rewards.yaml, examine.yaml
servers:
  - url: '{protocol}://{host}'
    variables:
      protocol:
        default: https
        enum:
          - https
          - http
      host:
        default: api.voucherify.io
security:
  - X-App-Id: []
    X-App-Token: []
  - bearerAuth: []
tags:
  - name: Programs
    description: >-
      Loyalty program CRUD, lifecycle management, program-scoped resource
      assignments (card definitions, earning rules, rewards, tier structures),
      member management (create, list, get, update, activate, deactivate,
      delete), membership retrieval (member + program + cards with tier
      progress, by customer ID, customer source ID, or member ID), card
      operations (points adjustment, pending points, expiring points,
      transactions), reward purchases, and activity history.
  - name: Card definitions
    description: >-
      CRUD operations, lifecycle management, and activity history for card
      definitions. Card definitions describe the configuration for loyalty
      cards, including code generation, points expiration, earning/spending
      limits, pending points, refunds, and balance settings.
  - name: Earning rules
    description: >-
      Manage earning rules that define how customers earn points or receive
      incentives based on triggers (events, segments, custom events). Includes
      CRUD, lifecycle, and activity history.
  - name: Tier structures
    description: >-
      CRUD operations, lifecycle management, and activity history for tier
      structures. Includes nested tier definitions (create, list, update,
      delete) within tier structures. Tier structures define the tiering model
      for loyalty programs — how members qualify for and move between tiers.
  - name: Benefits
    description: >-
      Manage benefit definitions (fixed points, proportional points, material,
      digital). Includes CRUD, lifecycle transitions, and activity history.
  - name: Rewards
    description: >-
      CRUD, lifecycle operations, and activity history for reward definitions.
      Rewards can be material (product/SKU) or digital (discount coupons, gift
      vouchers).
  - name: Examine
    description: >-
      Evaluation endpoints that estimate earning opportunities and reward
      availability for a customer across their loyalty program memberships,
      without side effects.
paths:
  /v2/loyalties/programs/{programId}/members/{memberId}/cards/{cardId}/pending-points:
    parameters:
      - name: programId
        in: path
        required: true
        description: Unique loyalty program ID (format `lprg_[a-f0-9]+`).
        schema:
          type: string
          pattern: ^lprg_[a-f0-9]+$
      - name: memberId
        in: path
        required: true
        description: Program member ID (format `lmbr_[a-f0-9]+`), assigned by Voucherify.
        schema:
          type: string
          pattern: ^lmbr_[a-f0-9]+$
      - name: cardId
        in: path
        required: true
        description: Loyalty card ID (format `lcrd_[a-f0-9]+`), assigned by Voucherify.
        schema:
          type: string
          pattern: ^lcrd_[a-f0-9]+$
    get:
      tags:
        - Programs
      summary: List card pending point buckets
      description: >-
        Returns a cursor-paginated list of pending point buckets (`status` is
        `PENDING`) of the member's card. Pending points are earned points
        waiting for activation (period-based, fixed-dates or event-based
        activation, per the card definition's pending points settings).


        Results can be ordered by activation `date`.


        Returns `404` when the program, member, or card does not exist.


        Use this endpoint to get the list of IDs of pending point bucket to use
        the [POST Activate pending point
        bucket](/api-reference/programs/activate-pending-point-bucket) or [POST
        Cancel pending point
        bucket](/api-reference/programs/cancel-a-pending-points-bucket).
      operationId: listCardPendingPoints
      parameters:
        - name: limit
          in: query
          required: false
          description: >-
            Maximum number of buckets to return. Must be between 1 and 100.
            Defaults to 10 when not provided.
          schema:
            type:
              - integer
              - 'null'
            minimum: 1
            maximum: 100
            default: 10
        - name: order
          in: query
          required: false
          description: >-
            Field(s) to order results by. Valid orders are `date` and `-date`;
            defaults to `date` (soonest activation first). Ordering by the same
            field in both directions simultaneously is rejected.
          schema:
            oneOf:
              - type: array
                items:
                  type: string
                  enum:
                    - date
                    - '-date'
              - type: string
                enum:
                  - date
                  - '-date'
              - type: 'null'
        - name: cursor
          in: query
          required: false
          description: >-
            Pagination cursor returned in the `cursor.next` field of a previous
            response.

            Must match the pattern `^lcrscppb_[a-f0-9]+$`.
          schema:
            type:
              - string
              - 'null'
            pattern: ^lcrscppb_[a-f0-9]+$
      responses:
        '200':
          description: Cursor-paginated list of pending point buckets.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CardPendingPointsBucketListResponse'
              examples:
                List of pending point buckets:
                  value:
                    data:
                      - id: lcppb_12db4ebb0483a140a9
                        card_id: lcrd_128f962dbd8c4ba5df
                        card_definition_id: lcdef_128f495f720c4bec8c
                        program_id: lprg_128f58429f4c4bf7b2
                        card_type: INDIVIDUAL
                        member_id: lmbr_128f962dbc8c4ba5dc
                        points:
                          total: 10
                        date: '2026-08-09'
                        type: PERIOD_BASED
                        status: PENDING
                        created_at: '2026-07-30T11:32:06.254Z'
                        updated_at: null
                        object: card_pending_points_bucket
                    cursor:
                      next: lcrscppb_12d74837ba44e95894
                      expires_at: '2026-08-06T08:39:42.505Z'
                    object: list
        '400':
          description: Validation error or the cursor is invalid or expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Invalid cursor:
                  value:
                    code: 400
                    key: invalid_or_expired_cursor
                    message: Invalid or expired cursor
                    details: The provided cursor is invalid or has expired
                    request_id: v-12d75fbdd02d464373
        '404':
          description: Resource not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Program not found:
                  value:
                    code: 404
                    key: not_found
                    message: Resource not found
                    details: Cannot find program with id lprg_128f5429f4c4bf7b2
                    request_id: v-12d749a01991f0e278
                    resource_id: lprg_128f5429f4c4bf7b2
                    resource_type: program
                Member not found:
                  value:
                    code: 404
                    key: not_found
                    message: Resource not found
                    details: Cannot find member with id lmbr_18f962dbc8c4ba5dc
                    request_id: v-12d749dc22ed46108e
                    resource_id: lmbr_18f962dbc8c4ba5dc
                    resource_type: member
                Card not found:
                  value:
                    code: 404
                    key: not_found
                    message: Resource not found
                    details: Cannot find card with id lcrd_128f62dbd8c4ba5df
                    request_id: v-12d749e6f811f0e31a
                    resource_id: lcrd_128f62dbd8c4ba5df
                    resource_type: card
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    CardPendingPointsBucketListResponse:
      type: object
      properties:
        data:
          type: array
          description: Pending point buckets on the current page.
          items:
            $ref: '#/components/schemas/CardPendingPointsBucket'
        cursor:
          description: Pagination cursor, or `null` when there are no more results.
          oneOf:
            - $ref: '#/components/schemas/ListCursor'
            - type: 'null'
        object:
          type: string
          const: list
          description: Object type marker, always `list`.
      required:
        - data
        - cursor
        - object
    ErrorResponse:
      type: object
      description: Standard error response returned by all Loyalty v2 endpoints.
      properties:
        code:
          type: integer
          description: HTTP status code of the error.
        key:
          type: string
          description: Machine-readable error key.
        message:
          type: string
          description: Human-readable error message.
        details:
          type: string
          description: Additional details about the error.
        request_id:
          type: string
          description: Unique identifier of the request that produced the error.
        resource_id:
          type: string
          description: Unique identifier of the resource that produced the error.
        resource_type:
          type: string
          description: Type of the resource that produced the error.
    CardPendingPointsBucket:
      type: object
      description: A pending point bucket of a card.
      properties:
        id:
          type: string
          pattern: ^lcppb_[a-f0-9]+$
          description: Unique pending point bucket ID.
        card_id:
          type: string
          pattern: ^lcrd_[a-f0-9]+$
          description: ID of the card the bucket belongs to.
        card_definition_id:
          type: string
          pattern: ^lcdef_[a-f0-9]+$
          description: ID of the card definition of the card.
        program_id:
          type: string
          pattern: ^lprg_[a-f0-9]+$
          description: ID of the loyalty program.
        card_type:
          type: string
          enum:
            - INDIVIDUAL
          description: Card type.
        member_id:
          type: string
          pattern: ^lmbr_[a-f0-9]+$
          description: ID of the member owning the card.
        points:
          type: object
          description: Points held in the bucket.
          properties:
            total:
              type: number
              description: Number of pending points in the bucket.
          required:
            - total
        date:
          type: string
          format: date
          description: >-
            Scheduled activation date of the pending points (`YYYY-MM-DD`). For
            the `EVENT_BASED` type this is the cancellation deadline.
        type:
          type: string
          enum:
            - PERIOD_BASED
            - FIXED_DATES
            - EVENT_BASED
          description: Pending points activation type from the card definition.
        status:
          type: string
          enum:
            - PENDING
            - ACTIVATED
            - CANCELED
            - DELETED
          description: Bucket status.
        created_at:
          type: string
          format: date-time
          description: Timestamp when the bucket was created (ISO 8601).
        updated_at:
          type:
            - string
            - 'null'
          format: date-time
          description: Timestamp when the bucket was last updated (ISO 8601), or `null`.
        object:
          type: string
          const: card_pending_points_bucket
          description: Object type marker, always `card_pending_points_bucket`.
      required:
        - id
        - card_id
        - card_definition_id
        - program_id
        - card_type
        - member_id
        - points
        - date
        - type
        - status
        - created_at
        - updated_at
        - object
    ListCursor:
      type: object
      description: Pagination cursor.
      properties:
        next:
          type: string
          description: >-
            Cursor value to pass as the `cursor` query parameter to fetch the
            next page.
        expires_at:
          type: string
          format: date-time
          description: Timestamp when the cursor expires.
      required:
        - next
  securitySchemes:
    X-App-Id:
      type: apiKey
      name: X-App-Id
      in: header
    X-App-Token:
      type: apiKey
      name: X-App-Token
      in: header
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````