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

# Redeem Batch Job

> Enable customers to redeem loyalty points as a payment method for multiple customers in a single API call.

## Redeem Batch Job

The **Batch Redeem API** enables customers to redeem **loyalty points** as a payment method in Gameball, allowing them to use points instead of monetary value during transactions. This API supports bulk redemptions, making it efficient for handling multiple customer transactions in a single request.

<Info>
  **Security:** Requires **apiKey** and **secretKey** headers.
</Info>

<Info>
  **Channel Merging Available:** If your system uses different customer IDs across multiple channels (e.g., online and offline), Gameball's channel merging feature helps unify customer profiles. By including the customer's mobile number or email (based on your merging configuration) with each request, Gameball will combine activities into a single profile.
</Info>


## OpenAPI

````yaml POST /api/v4.0/integrations/batch/redeem
openapi: 3.1.0
info:
  title: Gameball API
  description: >-
    Gameball REST API v4.0 - Complete API reference for integrating loyalty,
    gamification, and customer engagement features
  version: 4.0.0
servers:
  - url: https://api.gameball.co
security:
  - bearerAuth: []
paths:
  /api/v4.0/integrations/batch/redeem:
    post:
      description: >-
        Enable customers to redeem loyalty points as a payment method for
        multiple customers in a single API call.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                body:
                  type: array
                  items:
                    type: object
                    required:
                      - customerId
                      - transactionId
                      - transactionTime
                    properties:
                      customerId:
                        type: string
                        description: >-
                          Unique identifier for the customer that you can
                          reference across the customer's whole lifetime.
                      email:
                        type: string
                        description: >-
                          Customer's email address. Required if your account
                          uses email-based channel merging.
                      mobile:
                        type: string
                        description: >-
                          Customer's mobile number. Required if your account
                          uses mobile-based channel merging.
                      transactionId:
                        type: string
                        description: >-
                          A unique identifier for a transaction in your system
                          (e.g., order number or invoice number).
                      transactionTime:
                        type: string
                        format: date-time
                        description: The time of the transaction in your system.
                      amount:
                        type: number
                        description: >-
                          The actual monetary value the customer wants to
                          redeem.
                      points:
                        type: integer
                        description: >-
                          The number of points the customer wants to redeem from
                          their balance.
                      holdReference:
                        type: string
                        description: A unique reference obtained from the Hold Points API.
      responses:
        '200':
          description: Batch redemption processing initiated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  jobId:
                    type: number
                    description: >-
                      The assigned job ID, which is later used for status
                      verification and response retrieval.
      security:
        - apiKey: []
          secretKey: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
    apiKey:
      type: apiKey
      in: header
      name: apikey
    secretKey:
      type: apiKey
      in: header
      name: secretkey

````