LoyaltyProgram
LoyaltyProgram
Search for (look up) a loyalty program membership. The preferred and main search criteria is mobile number, but email can be used when mobile number is not available.
Country code must be with a plus sign, e.g. +47 for Norway. If country code is missing, the default country code of the tenant is used.
Reference to a tenant.
^[A-Za-z0-9-_]+full mobile number or email
Example response
POST /v2/tenants/{tenantUid}/customers/loyalty/search HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 16
{
  "query": "text"
}Example response
{
  "items": [
    {
      "loyaltyId": "text",
      "firstName": "text",
      "lastName": "text",
      "address": "text",
      "postalCode": "text",
      "city": "text",
      "countryCode": "text",
      "email": "text",
      "mobile": "text",
      "consents": [
        "text"
      ],
      "customerUid": "text",
      "origin": "text",
      "displayName": "text"
    }
  ]
}Enroll new customer to loyalty program. If the mobile number is not in the country of the tenant you must add the country code (e.g. +358 for Finland). The store is where the enroll was made from.
Reference to a tenant.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+No Content
No content
POST /v2/tenants/{tenantUid}/customers/loyalty HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 62
{
  "mobile": "text",
  "mobileCountryCode": "text",
  "storeUid": "text"
}No Content
No content
Get loyalty program member details for customer
Get loyalty program member details for customer.
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+Example response
GET /v2/tenants/{tenantUid}/customers/{customerUid}/loyalty HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
  "address": "text",
  "city": "text",
  "companyName": "text",
  "countryCode": "text",
  "createdAt": "2025-10-30T21:20:24.462Z",
  "customerUid": "text",
  "customerType": "COMPANY",
  "email": "text",
  "externalId": "text",
  "firstname": "text",
  "lastModifiedAt": "2025-10-30T21:20:24.462Z",
  "lastname": "text",
  "ledgerNumber": "text",
  "mobile": "text",
  "postalCode": "text",
  "pricelistUid": "text",
  "vatNumber": "text",
  "origin": "text"
}Enroll existing customer to loyalty program. The store is where the enroll is made from.
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
POST /v2/tenants/{tenantUid}/customers/{customerUid}/loyalty HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 19
{
  "storeUid": "text"
}Example response
{
  "address": "text",
  "city": "text",
  "companyName": "text",
  "countryCode": "text",
  "createdAt": "2025-10-30T21:20:24.462Z",
  "customerUid": "text",
  "customerType": "COMPANY",
  "email": "text",
  "externalId": "text",
  "firstname": "text",
  "lastModifiedAt": "2025-10-30T21:20:24.462Z",
  "lastname": "text",
  "ledgerNumber": "text",
  "mobile": "text",
  "postalCode": "text",
  "pricelistUid": "text",
  "vatNumber": "text",
  "origin": "text",
  "addresses": [
    {
      "address": "text",
      "city": "text",
      "companyName": "text",
      "firstname": "text",
      "lastname": "text",
      "countryCode": "text",
      "email": "text",
      "phone": "text",
      "postalCode": "text",
      "type": "DELIVERY_ADDRESS",
      "customerAddressUid": "text",
      "displayName": "text"
    }
  ],
  "contacts": [
    {
      "firstname": "text",
      "lastname": "text",
      "email": "text",
      "mobile": "text",
      "createdAt": "2025-10-30T21:20:24.462Z",
      "lastModifiedAt": "2025-10-30T21:20:24.462Z",
      "customerContactUid": "text",
      "extensions": [
        {
          "extensionCode": "TWO_INVOICE",
          "organizationUid": "text"
        }
      ],
      "displayName": "text"
    }
  ],
  "extensions": [
    {
      "extensionCode": "TWO_INVOICE",
      "organizationUid": "text"
    }
  ],
  "consents": [
    {
      "consentUid": "text",
      "name": "text",
      "status": true,
      "source": "text",
      "createdAt": "2025-10-30T21:20:24.462Z"
    }
  ],
  "loyaltyId": "text",
  "displayName": "text",
  "credit": {
    "limit": 1,
    "balance": 1
  },
  "paymentTerms": 1,
  "internalNote": "text",
  "accountManager": {
    "tenantUserUid": "text",
    "displayName": "text",
    "userCode": "text"
  },
  "ehfEnabled": true,
  "ehf": {
    "enabled": true,
    "address": "text"
  },
  "customerGroupUids": [
    "text"
  ],
  "defaultStore": {
    "name": "text",
    "storeUid": "text"
  }
}List loyalty program discounts for customer
List available loyalty program member discounts for customer.
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+Example response
GET /v2/tenants/{tenantUid}/customers/{customerUid}/loyalty/discounts HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
  "items": [
    {
      "discountCode": "text",
      "title": "text",
      "description": "text",
      "validFrom": "2025-10-30T21:20:24.462Z",
      "validTo": "2025-10-30T21:20:24.462Z",
      "discountType": "PERCENTAGE",
      "discountValue": 1,
      "maxUsage": 1,
      "timesUsed": 1,
      "productSkus": [
        "text"
      ]
    }
  ]
}Get loyalty program points for customer
Get available loyalty program member points for customer.
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+Example response
GET /v2/tenants/{tenantUid}/customers/{customerUid}/loyalty/points HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
  "customerUid": "text",
  "balance": 1,
  "currency": "text",
  "expiringBalance": 1,
  "expirationDate": "2025-10-30T21:20:24.462Z"
}Get loyalty program member balance for customer on order.
Get loyalty program member balance for customer on order.
- If order total > 0, the response shows balance to use as payment on order. 
- If order total on order < 0, the response shows bonus point that can be refunded on order. 
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to an Order.
^[A-Za-z0-9-_]+Example response
GET /v2/tenants/{tenantUid}/orders/{orderUid}/loyalty HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
  "balance": 1
}Last updated