Enkash Developer Portal
Home
Home
Login
  1. Rewards & Incentives
  • Explore Our Product Suite
  • Payment Gateway
    • Set Up Payment Gateway
    • Payment Options
    • Easy API Setup
    • Payment Gateway APIs
  • Payouts
    • Set Up Payouts
    • Payout APIs
  • Prepaid Cards
    • Key Capabilities
    • Set Up Prepaid Cards
    • Prepaid Card APIs
  • Wallet
    • Wallet APIs
    • wallet payment api
  • Bharat Connect (BBPS)
    • Vendor Payment
    • Bill Payment
  • Accounts Payable
    • Accounts Payable APIs
  • Account Receivable
    • Accounts Receivable Overview
    • Account Receivable APIs
  • Expense Management
    • Expense Management Overview
    • About Authorization
    • Expense APIs
  • Rewards & Incentives
    • About Rewards
    • Getting Started
    • Encryption & Decryption Guide
    • Reward Allocation
    • Incentive Allocation
    • Reward APIs
  • Verification Suite
    • Verification Suite Overview
    • Verification Suite APIs
  1. Rewards & Incentives

Allocating Rewards Using EnKash APIs

This section guides you through the sequence of actions required to allocate or manage reward points for a user via EnKash’s reward system.
Create Single User
Create Multiple Users

1. Obtain Onboarding Identifiers#

Before initiating any API requests, ensure you have the following identifiers from EnKash after onboarding:
FieldDescription
companyIdUnique ID assigned to your company by EnKash.
cardAccountIdReward account ID associated with your company.
partnerIdPartner ID assigned during onboarding.

2. Create Reward Account and Allocate Points#

Use this functionality to create a new user and allocate initial reward points to their account.
Set the following parameters:
transactionType: CR (Credit)
type: ALLOCATE_POINT
Required Details:
FieldDescription
firstNameEmployee's first name
emailEmployee's email address
mobileEmployee's mobile number
genderEmployee's gender (M/F)
titleEmployee's title (Mr/Mrs/Ms)
loadAmountInitial points to be credited
Sample Request:
{
  "companyId": "CEK1PU9AOO",
  "cardAccountId": "CAQL8YCV3",
  "transactionCode": "ALLOCATION",
  "transactionType": "CR",
  "type": "ALLOCATE_POINT",
  "email": "[email protected]",
  "mobile": "9600098867",
  "title": "Mr",
  "firstName": "hedfdfg",
  "gender": "M",
  "loadAmount": 11,
  "uniqueReferenceNum": "TEST234236"
}

3. Topup Existing Reward Account#

Use this to top-up an existing reward account with additional points.
Set the following parameters:
transactionType: CR (Credit)
type: ALLOCATE_POINT
Required Details:
FieldDescription
enkashCardIdUnique card ID (required if cardAccountId not used)
cardAccountIdUnique reward account ID (required if enkashCardId not used)
loadAmountPoints to be credited
email / mobile(Optional) User identifiers for validation

4. Unallocate / Debit Points#

Use this to reverse/remove (debit) points from a reward account (e.g., refunds or corrections).
Set the following parameters:
transactionType: DR (Debit)
type: UNALLOCATE_POINT
Required Details:
FieldDescription
enkashCardIdUnique card ID (required if cardAccountId not used)
cardAccountIdUnique reward account ID (required if enkashCardId not used)
loadAmountPoints to be debited

5. Validate the Response#

You will receive a response with transaction and cardAccount details. Verify that the pgReferenceNumber in the response matches your uniqueReferenceNumber.
Sample Response Snippet:
{
  "code": 0,
  "message": "Success",
  "payload": {
    "enKashCardId": "EKC04AZHXP",
    "enkashCardTxnId": "ECTRSZJ8CRJ2E",
    "pgReferenceNumber": "TEST234236",
    "otbBalance": 11,
    "maskedNumber": "XXXX XXXX XXXX 8867",
    ...
  }
}

Reference Number Mapping#

ParameterWhere It’s UsedPurpose
uniqueReferenceNumberRequest payloadIdentifies the transaction uniquely (client side)
pgReferenceNumberResponse payloadEnKash's confirmation reference for traceability
These must match to confirm the transaction has been successfully tracked

Data Schema#

FieldTypeDescription
companyIdstringUnique EnKash company ID (provided on onboarding)
cardAccountIdstringEnKash reward account ID
transactionCodeenumType of transaction (e.g., ALLOCATION)
transactionTypeenumDirection of transaction (CR or DR)
typeenumTransaction purpose (ALLOCATE_POINT, UNALLOCATE_POINT)
emailstringEmail ID of the cardholder
mobilestringMobile number of the cardholder
titlestringTitle of the cardholder (Mr/Mrs/Ms)
firstNamestringFirst name of the cardholder
genderstringGender (M/F).
loadAmountnumberAmount of points to credit or debit
uniqueReferenceNumberstringUnique identifier from the partner for traceability
Modified at 2025-05-24 09:09:15
Previous
Encryption & Decryption Guide
Next
Incentive Allocation
Built with