Member Registration Configuration
One of the main setup steps is choosing the registration method. See the sample example how this can be configured. Links to more detailed instructions can be found at the end of the article.
How this example works
OpenLoyalty supports multitenancy, allowing each tenant (store) to operate as a distinct database, complete with its own member list and campaigns. This guide outlines the initial step of the setup process: selecting the appropriate registration method for a member. A single unique identifier is required, which can be an email, phone number, or loyalty card number (that can serve as your own unique identifier).
Try yourself
Input the previous saved token in the request header
Retrieve a list of tenants (stores) Endpoint:
GET /api/store
Choose the required tenant and its code
Retrieve member registration for the specified tenant Endpoint:
GET /api/{storeCode}/settings
Update
identificationMethod
Endpoint:PATCH /api/{storeCode}/settings
{ "settings": { "identificationMethod": "phone" // or "loyaltyCardNumber", "email" } }
Moving forward, the chosen method will be a required field for member registration.
Endpoints used
This method returns a list of all created Stores in the system.
If sorting is not chosen, the rows will be returned in an unspecified order.
To sort a result, use an _orderBy
parameter in query.
Maximum supported value is 50.
GET /api/store HTTP/1.1
Host: openloyalty.localhost
Authorization: YOUR_API_KEY
Accept: */*
{
"items": [
{
"storeId": "123e4567-e89b-12d3-a456-426614174000",
"code": "text",
"currency": "text",
"name": "text",
"active": true,
"createdAt": "2025-07-03T02:43:06.563Z",
"updatedAt": "2025-07-03T02:43:06.563Z",
"createdBy": "text",
"updatedBy": "text"
}
],
"total": {
"all": 1,
"filtered": 1,
"estimated": true
}
}
This method returns all system settings.
If sorting is not chosen, the rows will be returned in an unspecified order.
To sort a result, use an _orderBy
parameter in query.
Store code
GET /api/{storeCode}/settings HTTP/1.1
Host: openloyalty.localhost
Authorization: YOUR_API_KEY
Accept: */*
{
"settings": [
{
"ANY_ADDITIONAL_PROPERTY": "text"
}
]
}
This method allows configuring system settings partially.
Store code
PATCH /api/{storeCode}/settings HTTP/1.1
Host: openloyalty.localhost
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 676
{
"settings": {
"allowCustomersProfileEdits": true,
"expirePointsNotificationDays": 1,
"expireCouponsNotificationDays": 1,
"expireLevelsNotificationDays": 1,
"customersIdentificationPriority": [],
"tierAssignType": "points",
"tierWalletCode": "text",
"excludeDeliveryCostsFromTierAssignment": true,
"excludedLevelCategories": [
"text"
],
"levelDowngradeMode": "none",
"levelDowngradeDays": 1,
"levelDowngradeBase": "none",
"levelResetPointsOnDowngrade": true,
"accountActivationRequired": true,
"identificationMethod": "email",
"timezone": "Europe/Warsaw",
"rewardWalletCode": "text",
"activeMember": {
"transactionInXDays": 1,
"customEventsInXDays": {
"days": 1,
"allEvents": true,
"eventTypes": [
"text"
]
},
"operator": "and"
}
}
}
No content
More resources
For a detailed overview and description of the member registration configuration, please refer to these articles:
TenantsIn this section, you will learn how to manage the tenants within your loyalty program.ConfigurationIn this section, you will learn how to manage the loyalty program configuration.SettingsIn this section, you will learn how to manage the Open Loyalty settings.Last updated
Was this helpful?