/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
| Header | Type | Required | Description |
|---|---|---|---|
x-api-key | string | Yes | API key used to authenticate the request |
x-source-type | string | Yes | Origin of the request (e.g., POS, Web) |
x-source-name | string | Yes | Name of the client or integration |
x-pos-id | string | Yes | Unique identifier of the POS terminal |
x-branch-id | string | Yes | Identifier of the branch where the request originates |
x-return-assets | string | No | Filter assets by status: active, inactive, all |
x-return-benefits | boolean | No | Set to true to trigger benefit calculation |
Request Body
| Field | Description | Type | Mandatory |
|---|---|---|---|
| member | Object representing a member’s identifier | Member | Y |
| transaction | Customer’s transaction details | Transaction | N |
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
| Field | Description | Type |
|---|---|---|
| status | Indicates request status | string |
| member | Member object | object |
{
"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
| Field | Description | Type |
|---|---|---|
| status | Error status indicator | string |
| error | Error object | object |
{
"status": "error",
"error": {
"code": "203",
"message": "Cannot find any member with the given identifier!"
}
}