---
title: "Issue points or alternate currencies to customers"
method: POST
path: "/v2/customers/bulk/manualCurrencyAllocate"
---

# Issue points or alternate currencies to customers

`POST /v2/customers/bulk/manualCurrencyAllocate`

This API allows you to manually issue reward currency to a customer or user group.

## Request body

- ManualCurrencyAllocationRequest[]
  - `orgId` integer, required — Unique identifier of the organisation.
  - `programId` integer, required — Unique ID of the loyalty program.
  - `awardStrategyId` integer, required — Unique ID for the points award strategy.
  - `expiryStrategyId` integer, required — Unique ID for the points expiry strategy.
  - `promotionId` integer, nullable — Unique ID of the loyalty promotion to associate with the points issue.
  - `sourceValue` number, double, required — Bill amount based on which points are issued.
  - `eventName` 'TransactionAdd' | 'TargetCompleted' | 'GenericEvent', required — Type of event to associate with the allocation.
  - `eventSourceId` string, required — Identifier related to the event. For 'TransactionAdd', this is the bill ID. For 'TargetCompleted', it can be a streak, target, or unified achieved ID. For 'GenericEvent', it's a reference ID.
  - `currencyType` 'PROMISED' | 'REGULAR' — Type of currency being allocated.
  - `alternateCurrencyIdentifier` string, nullable — Identifier for the alternate currency that is generated on creation. Provide this value when issuing alternate currencies.
  - `billLineItemId` integer, nullable — The ID of the line-item that is part of the bill.
  - `sourceValueRoundingStrategy` 'FLOOR' | 'ACTUAL' | 'ROUND', nullable — Strategy for rounding the source value (total bill amount).
  - `pointsRoundingStrategy` 'FLOOR' | 'ACTUAL' | 'ROUND', nullable — Strategy for rounding the awarded points.
  - `lookupParams` object, required — Object containing details of the customer.
    - `identifierType` 'mobile' | 'email' | 'id' | 'externalId', required — Unique ID of the customer.
    - `identifierValue` string, required — Value corresponding to the identifierType
    - `entityType` 'CUSTOMER' | 'USERGROUP2', required — Type of entity for which issual is being made.
    - `accountId` string — Account ID associated with the customer.
    - `source` 'WEB_ENGAGE' | 'FACEBOOK' | 'WECHAT' | 'MARTJACK' | 'TMALL' | 'TAOBAO' | 'JD' | 'ECOMMERCE' | 'MOBILE_APP' | 'WEBSITE' | 'LINE' | 'INSTORE', required — Source from where the customer is registered.

## Response `200`

OK

- object

## Other responses

- `207` — Multi-Status

---

[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)
