Skip to main content

/member/details

Description

This API call is used to verify the customer is a loyalty member, retrieve their member details (name, balance, etc.), and optionally evaluate their transaction context for benefits and redeemable assets.

Purpose

  • To verify if a customer is a registered loyalty member
  • To display member information, balances, and gift list
  • To preview benefits or discounts before finalizing a purchase

When to Use

  • To display member profile before or during checkout
  • To fetch up-to-date balances and gift eligibility
  • To run a preview of discounts on a draft transaction

Request Format

Headers

HeaderTypeRequiredDescription
x-api-keystringYesAPI key used to authenticate the request
x-source-typestringYesOrigin of the request (e.g., POS, Web)
x-source-namestringYesName of the client or integration
x-pos-idstringYesUnique identifier of the POS terminal
x-branch-idstringYesIdentifier of the branch where the request originates
x-return-assetsstringNoFilter assets by status: active, inactive, all
x-return-benefitsbooleanNoSet to true to trigger benefit calculation

Request Body

FieldDescriptionTypeMandatory
memberObject representing a member’s identifierMemberY
transactionCustomer’s transaction detailsTransactionN

Request Example

Short Instance - Just for Identification

curl --location --request POST 'https://dev-pos-api.fidelizacion.app/v1/member/details' \
--header 'Content-Type: application/json' \
--header 'x-api-key: {{api-key}}' \
--header 'x-source-type: POS' \
--header 'x-source-name: pos_terminal_01' \
--header 'x-pos-id: POS001' \
--header 'x-branch-id: BR001' \
--header 'x-return-assets: active' \
--header 'x-return-benefits: false' \
--data-raw '{
"member": {
"phoneNumber": "123456789"
}
}'

Long Instance - Identification + Transaction Preview

curl --location --request POST 'https://dev-pos-api.fidelizacion.app/v1/member/details' \
--header 'Content-Type: application/json' \
--header 'x-api-key: {{api-key}}' \
--header 'x-source-type: POS' \
--header 'x-source-name: pos_terminal_01' \
--header 'x-pos-id: POS001' \
--header 'x-branch-id: BR001' \
--header 'x-return-assets: active' \
--header 'x-return-benefits: true' \
--data-raw '{
"member": {
"phoneNumber": "123456789"
},
"transaction": {
"transactionId": "TX-DEMO-01",
"dateTime": "2025-06-17T18:30:00Z",
"totalAmount": 1500,
"items": [
{
"lineId": "1",
"code": "LATTE001",
"name": "Latte",
"departmentCode": "DRINKS",
"departmentName": "Beverages",
"quantity": 1,
"grossAmount": 1500,
"netAmount": 1500
}
],
"payments": [
{
"type": "CASH",
"amount": 1500
}
],
"employee": "Demo Cashier"
},
"usedAssets": []
}'

Success Response

FieldDescriptionType
statusIndicates request statusstring
memberMember objectobject
{
"status": "success",
"member": {
"status": "active",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "123456789",
"email": "member@example.com",
"gdpr": true,
"termsOfUse": true,
"tags": [],
"birthday": "1990-01-01T00:00:00.000Z",
"visit": 0,
"totalSpent": 0,
"customFields": {},
"membershipKey": "0fe31b8b-5ad5-48af-81e9-4adc7d596042",
"commonExtId": "0fe31b8b-5ad5-48af-81e9-4adc7d596042",
"businessId": 7,
"allowedSMS": true,
"allowedEmail": true,
"allowedPush": false,
"points": {
"balance": 0,
"useForPayments": false
},
"credit": {
"balance": 0,
"useForPayments": true
},
"assets": [],
"registeredAt": "2025-06-20T13:34:56.045Z"
}
}

Error Response

FieldDescriptionType
statusError status indicatorstring
errorError objectobject
{
"status": "error",
"error": {
"code": "203",
"message": "Cannot find any member with the given identifier!"
}
}