Group Points Transferable

Checks if specific points from one account can be transferred to another account (group to customer, customer to a group, or one group to another).

👍

Note

For detailed information about our APIs and for hands-on testing, refer documentation in API overview and step-by-step guide on making your first API call in Make your first API call.

Prerequisites

  • Authentication: Basic or OAuth authentication
  • Default access group

Before using this API to add or redeem points at the group level, you must ensure that certain configurations are enabled and the correct entity type is set. Failure to configure these prerequisites may result in errors, incomplete transactions, or unexpected behavior.

ConfigurationPurposeHow to Enable
ENABLE_USER_GROUP_LOYALTYEnables user group loyalty features, including viewing and managing group details, members, and loyalty incentives. When enabled, a "Group view" option is available.Raise a ticket to the sustenance team. More info.
ENABLE_GROUP_PROGRAMS_REDEMPTION (or ENABLE_GROUP_PROGRAM_REDEMPTION)Allows points redemption at the group level. Requires setting group_redemption to true and ensuring the loyalty workflow rule currentEvent.isGroupProgramRedemption is set to true.Raise a ticket to the sustenance team. Changes may take up to 24 hours to reflect. More info.
ENABLE_FLEET_LOYALTY (FLEET_GROUP_LOYALTY_ENABLED)Enables fleet loyalty features, such as point expiration and management for fleet or group users.Raise a JIRA ticket to the sustenance team. More info.

User Entity Requirement

You must change the user entity type from individual to groupUser to allow points to be added or redeemed at the group level.

Resource information

HTTP MethodGET
PaginationNo
Batch supportNo
Rate limit informationNone

Request Body Parameters


Parameter (parameters marked by * are mandatory)DataTypeDescription
pointsTobeTransferred*intNumber of points to be transferred.
notesstringNotes to be added to the transfer activity.
programId*intLoyalty program ID from which points have to be transferred. Applicable for multi-program organizations. Defaults to the primary program ID if not passed.
transferredBy*objectDetails of the user or entity performing the transfer.
— identifierType*EnumIdentifier type to identify the user. Example values: id, externalId, cardnumber, mobile, email.
— identifierValue*stringUnique value of the specified identifier type.
— sourceEnumSource where the user account is available. Example values: INSTORE, ECOMMERCE, WECHAT, etc.
— accountIdstringAccount ID for sources that require additional account identifiers.
toEntity*objectDetails of the destination account (customer or group) to which points need to be transferred.
— type*EnumType of the entity. Value: CUSTOMER, USERGROUP2.
— identifierType*EnumIdentifier type for the destination entity. Example values: id, externalId, cardnumber, etc.
— identifierValue*stringUnique value of the specified identifier type.
— accountIdstringAccount ID for the destination entity if needed.
— sourceEnumSource where the destination entity account is available. Example values: INSTORE, ECOMMERCE, etc.
fromEntity*objectDetails of the source account (group or customer) from which points will be transferred.
— type*EnumType of the entity. Value: CUSTOMER, USERGROUP2.
— identifierType*EnumIdentifier type for the source entity. Example values: id, externalId, cardnumber, etc.
— identifierValue*stringUnique value of the specified identifier type.

Response Parameters


Parameter (parameters marked by * are mandatory)DataTypeDescription
dataarrayList of point transfer status objects.
— pointsTobeTransferredintNumber of points that were attempted to be transferred.
— transferrablebooleanIndicates if the points are eligible and allowed for transfer (true or false).
warningsarrayList of warnings returned by the system, if any.
errorsarrayList of errors returned by the system, if any.
{
    "data": [
        {
            "pointsToBeTransferred": 10,
            "transferrable": true
        }
    ],
    "warnings": [],
    "errors": []
}
{
    "warnings": [],
    "errors": [
        {
            "status": false,
            "code": 422,
            "message": "pointsToBeTransferred value is invalid"
        }
    ]
}
{
    "warnings": [],
    "errors": [
        {
            "status": false,
            "code": 434,
            "message": "Invalid transferredBy.identifierValue set in the request payload"
        }
    ]
}
{
    "warnings": [],
    "errors": [
        {
            "status": false,
            "code": 434,
            "message": "Invalid fromEntity.identifierType set in the request payload"
        }
    ]
}

API Error Codes

Error CodeDescriptionReason
422pointsToBeTransferred field is missingValue provided in pointsToBeTransferred field is missing or invalid.
434Invalid transferredBy.identifierValue in the request payloadThe value provided for identifierValue under transferredBy is invalid.
434Invalid fromEntity.identifierType in the request payloadThe value provided for identifierType under fromEntity is invalid.
830User lacks permissions to transfer points from this entityThe transferredBy object is missing or the user is not authorized to perform this transfer.
1206Source entity details missing or invalidfromEntity object is missing or contains invalid values.
1207Destination entity details missing or invalidtoEntity object is missing or contains invalid values.
1208Entity type not set or invalidtype under toEntity is missing or not one of the supported types (USERGROUP2, CUSTOMER).
1645Invalid group detailsidentifierType is missing or identifierValue is invalid under toEntity.
885Invalid program IDThe value provided for programId is missing or does not match any valid program.
8015Customer not found for given identifiersThe value provided for identifierValue under transferredBy is invalid or the customer does not exist.
807Redemptions points not divisibleThe points value in pointsTobeTransferred is not valid as per configuration. Only whole numbers are accepted or points should be divisible as configured.
Language
Credentials
Basic
base64
:
URL
Click Try It! to start a request and see the response here!