---
title: "Transfer Customer Points"
method: POST
path: "/points/transfer"
---

# Transfer Customer Points

`POST /points/transfer`

Transfers points from one customer account to another customer account by validating the OTP issued for the points transfer.

## Request body

- object
  - `pointsTobeTransferred` integer, required — Number of points to be transferred.
  - `programId` integer — Program ID from which points has to be transferred. Applicable for multi-program orgs.
  - `groupProgramTransfer` boolean — Pass true to transfer group points.
  - `notes` string — A short note on the points transfer.
  - `fromCustomerIdentifier` object — Source account from which points need to be transferred.
    - `type` string, required — Identifier type used to identify the customer. Value: mobile, email, externalId, id, cardnumber, cardExternalId.
    - `value` string, required — Value of the specified identifier type.
  - `toCustomerIdentifier` object — Details of destination account.
    - `type` string, required — Identifier type used to identify the customer. Value: mobile, email, externalId, id, cardnumber, cardExternalId.
    - `value` string, required — Value of the specified identifier type.
  - `code` string — Pass the OTP received by the fromCustomer for the current points transfer. To issue OTP, use either /isPointsTransferrable or /issuePointsTransferOtp.

## Response `201`

201

- object
  - `data` object[]
    - `toEntityId` integer
    - `toEntityType` string
    - `fromEntityId` integer
    - `fromEntityType` string
    - `pointsTransferDate` string
    - `pointsTransferred` integer
    - `transferId` integer
    - `transferType` string
    - `transferredFrom` object
      - `userId` integer
      - `firstName` string
      - `lastName` string
    - `transferredTo` object
      - `userId` integer
      - `firstName` string
      - `lastName` string
    - `notes` string
    - `programName` string
    - `pointsTransferBreakupByEarningPrograms` object[]
      - `programId` integer
      - `deductedPoints` integer
      - `programCurrentPoints` integer
  - `warnings` unknown[]
    - unknown
  - `errors` unknown[]
    - unknown

## Other responses

- `400` — 400

---

[API](https://skmtc.net/capillarytech/apis/sample-api.md) · [All operations](https://skmtc.net/capillarytech/apis/sample-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/capillarytech/sample-api/revisions/de241f2ed9b3/schema)
