# Limits

This article outlines the technical and business limits of the Open Loyalty system. Understanding these limits will help you optimize your use of the platform and ensure smooth operation within the specified constraints.

## Technical Limits

### API Timeout

* **Timeout Duration**: The API will timeout after 30 seconds.

### Imports / Exports

* **Maximum Concurrent Requests**: You can import or export up to 5 files simultaneously.
* **Maximum File Size**: The maximum file size for importing XML or CSV files is 100MB.

### Forms

#### Number Field Type

* **Minimum Value**: -2,147,483,648
* **Maximum Value**: 2,147,483,647

#### Float Field Type

* **Maximum Decimal Places**: 6 decimal places

#### String Field Type

* **Maximum Length**: 255 characters

#### Expressions

* **Maximum Length**: 500 characters

#### loyaltyCardNumber Field

* **Uniqueness**: The loyalty card number must be unique per tenant.
* **Case Sensitivity**: The field is case-sensitive (e.g., XYZ is not equal to xyz).

#### Email and Phone Matching

* **Case Insensitivity**: The system does not consider case when matching email and phone fields during member matching with transactions or custom events.

***

## Business Limits

{% hint style="info" %}
If you believe your loyalty program requires adjustments beyond these limits, please contact Open Loyalty to discuss potential increases.
{% endhint %}

### **Loyalty Modules**

{% hint style="warning" %}
The limitations for Loyalty Modules are set across the **entire instance**, so they apply to all tenants.
{% endhint %}

* **Campaigns:** A maximum of 100 **active** campaigns.
  * **QR Codes:** A maximum of 2 million across **all** campaigns.
  * **Rules:** A maximum of 6 rules per campaign (**hard limit**)
  * **Automation campaigns:**  **4 campaigns** (active and inactive) per tenant, with a maximum audience of max. 200,000 members for each campaign. **The limit does not apply to birthday and anniversary campaigns.**
* **Achievements:** A maximum of 50 **active** achievements.
  * **Rules:** A maximum of 6 rules per achievement (**hard limit**)
* **Segments:** A maximum of 100 **active** segments.
* **Wallets:** A maximum of 50 wallet types, and 5 wallet types **per tenant**.
* **Custom Fields:** A maximum of 6 custom field types.

{% hint style="danger" %}
Below limitations apply to both **Rewards** and **Fortune Wheels**
{% endhint %}

**Rewards and Fortune Wheels:** A maximum of 100 rewards can be created.

* **Issued Rewards and Claimed Fortune Wheels:**  A maximum of 100 million issued rewards.
* **Coupons:** A maximum of 1 million across **all** rewards.
* **Coupons**: A maximum of 315 characters for the Coupon length.

### **Tiers**

{% hint style="warning" %}
The Tier limitations are set **per tenant**.
{% endhint %}

* **Tier Sets:** A maximum of 3 active **tier sets,** 5 in total.
* **Tiers:** A maximum of 20 **tiers per set**.
  * **Tier Benefits:** A maximum of 10 **tier benefits per tier**.

### **Badges**

{% hint style="warning" %}
The badges limitations are set **per tenant**.
{% endhint %}

* **Badges:** A maximum of 50 **active** badges.

### Transaction

* **Maximum Number of Items in a Transaction**: 100

### Custom Event

* **Maximum Number of Fields in a Custom Event Schema**: 50

### **Administration**

{% hint style="warning" %}
The limitations for Administration components are set across the **entire instance**, so they apply to all tenants.
{% endhint %}

* **Admins:** A maximum of 100 admins.
* **Roles:** A maximum of 20 roles.
* **Tenants (Stores)**: A maximum of 50 tenants.
* **Webhooks Subscription:** A maximum of 30 webhooks subscription.

### Custom Attributes

All custom attributes share the same maximum length for both keys and values: 255 characters.

|                     | Max no of custom attributes |
| ------------------- | --------------------------- |
| Campaign Simulation | 25                          |
| Member              | 25                          |
| Tier Set            | 5                           |
| Transaction         | 25                          |
| Transaction Item    | 10                          |

***

These limits are designed to ensure optimal performance and reliability of the Open Loyalty platform. Adhering to these constraints will help maintain system stability and efficiency. If you have any questions or need further clarification, please refer to the [OpenLoyalty API Documentation](https://apidocs.openloyalty.io/) or contact us.
