Update customer details

Let's you update the details of an existing customer other than primary or secondary identifiers. If any of the identifiers you pass already exists for a different account, then the customer details will be merged automatically.

❗️

Make sure you have the appropriate access control configured. For more information, see access group documentation.

API Behavior

  • Updates existing customer details other than primary/secondary identifiers including custom fields and extended fields.
  • Secondary identifiers only with null values will be updated. Hence, existing identifiers cannot be updated with this API.

📘

You can update secondary identifiers (mobile no./email id./external id) only if the respective config mentioned in the following are enabled on InTouch Settings > Miscellaneous > Registration Configuration.

  • CONF_ALLOW_MOBILE_UPDATE (for mobile number).
  • CONF_ALLOW_EMAIL_UPDATE (for email id).
  • CONF_LOYALTY_ALLOW_EXTERNAL_ID_UPDATE (for external id).

API endpoint

/v1.1/customer/update

Body Parameters

ParameterDescription
Mobile/email/external_id/id*Pass any one of the following identifiers of the customer whose details you want to update.
firstnameFirst name of the customer.
lastnameLast name of the customer.
registered_onDate on which the customer is registered. Format: YYYY-MM-DD HH:MM:SS,
Example: 2016-09-11 11:11:11
registered_tillThe TILL at which customer is registered.
associated_withTill code that you want to associate with the customer.
typePass LOYALTY to convert a non_loyalty customer to loyalty. You cannot change a loyalty customer non-loyalty (NON_LOYALTY).
custom_fieldsProvide the custom field values of the customer in name and value pairs. You can only pass custom fields that are configured for the org.
extended_fieldsProvide the extended field details of the customer in name and value pairs. You can only pass extended fields that are configured for the org.
subscriptionsProvide the subscription details of the customer.
priorityType of message. Value: TRANS for personalized or transaction messages, BULK for promotional messages.
channelCurrent communication channel. Value: sms, email.
fraud_statusUpdate the fraud status of the customer in status. Values: CONFIRMED, NONE.
Parameter marked with * is mandatory.

Response Parameters

ParameterDescription
user_idUnique ID of the customer generated by the system.
totalNumber of customers passed for registration.
success_countNumber of customers that registered successfully.
lifetime_pointsTotal loyalty points earned by the customer to date.
lifetime_purchasesTotal purchases amount (loyalty or non-loyalty transactions) of the customer across all stores of the org.
loyalty_pointsCurrent active loyalty points (neither redeemed nor expired) of the customers.
current_slabCurrent loyalty tier of the customer.
tier_expiry_dateExpiry date of the current tier in YYYY-MM-DD HH:MM:SS format.
points_summariesShows the details of the loyalty points.
programIdUnique ID of the loyalty program associated to the points summary.
redeemedIn total points earned from the program, the total number of points that are redeemed.
expiredIn total points earned from the program, the total number of points that are expired.
returnedIn total points earned from the program, the total number of points that are returned. Usually, for transaction returns.
adjustedPoints that are either credited to or debited from the customer account in adjustments. The value will be negative if debited points are more than credited, and positive if credited points are more than debited.
cumulativePurchasesTotal purchases amount of the customer in the stores associated to the current loyalty program.
currentSlabCurrent tier of the customer in the loyalty program.
nextSlabNext loyalty tier of the customer.
nextSlabSerialNumberSerial number of the next tier. Lowest tier will have 1, succeeding tier will have 2 and so on.
nextSlabDescriptionDescription of the next tier as saved in the loyalty program.
slabSNoSerial number of the current tier of the customer. Lowest tier will have 1, succeeding tier will have 2 and so on.
slabExpiryDateExpiry date of the current loyalty tier of the customer in YYYY-MM-DD HH:MM:SS.
registered_onDate on which the customer is enrolled in the org's loyalty.
updated_onRecent date on which the customer details are updated.
typeLoyalty type of the customer. LOYALTY if the customer is enrolled in the org's loyalty program, NON_LOYALTY if customer has not enrolled in the loyalty program but registered mobile number or email id with the org.
custom_fieldsCustom field details of the customer - custom field name (name) and custom field value (value).
extended_fieldsExtended field details of the customer - extended field name (name) and extended field value (value).
subscriptionsMobile number and email ID subscription details of the customer.
channelSubscription channel. Value: SMS, EMAIL.
priorityType of subscription. Value: TRANS for transaction or personalized messages, BULK for campaign or promotion messages.
status0 for unsubscribed, 1 for subscribed.
side_effectsOther activities triggered because of the customer update. For example, points rewarded to the customer for updating profile (if configured).
Language
Authorization
Basic
base64
:
URL
Click Try It! to start a request and see the response here!