Skip to main content

Overview of cairo.PROFIT

cairo.PROFIT is a loyalty system integrated with cairo.ERP. It allows calculating points for purchases, which customers can then exchange for rewards. It operates on principles similar to loyalty programs like Orlen Vitay or Payback.


How does cairo.PROFIT work?

Points are calculated after printing a WZ (Invoice) and ZW (Invoice Correction) document. In the case of a ZW document, points are not recalculated but are retrieved from the corrected document and recorded with a negative sign.

Points will be calculated if the document value exceeds the minimum document value set in the system parameters.

Detailed point calculation method

The cairo.PROFIT system calculates loyalty points for each document item, based on a series of parameters. Below we explain how it works step-by-step, taking into account the priorities of individual settings:

1. Priority of fixed item points

The system always first checks if a fixed number of points has been set for a given item. You can find this in:

ERP > GOODS CATALOG > [Enter] > LOYALTY SYSTEM > FIXED POINTS.

  • If an item has fixed points set: The final number of points for that item will be the product of these fixed points and the quantity of that item in the document. In such a situation, the system will not take into account the item's value, the percentage for the customer type, or most multipliers, except for the final customer multiplier (see point 3).

Example: A customer buys 2 pieces of "Air filter" for which 50 fixed points are set. They will receive 100 points (2 pieces * 50 points/piece).

2. Calculating points from purchase value (when no fixed item points)

If an item does not have fixed points set (i.e., the "FIXED POINTS" field is empty or 0), the system proceeds to a more complex calculation based on the item's value and all active multipliers. This is the primary method for calculating points in most cases:

  1. Base value: Points start from the document item's value – this can be net or gross value. You set this in:

ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > GENERAL PARAMETERS > DOCUMENT VALUE TYPE.

   2. Percentage for customer type: The base value is then multiplied by the point calculation percentage assigned to the customer type (e.g., retail, workshop). These settings can be found in:

ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > GENERAL PARAMETERS, where there are sections for each customer type (e.g., "CUSTOMER TYPE: retail").

   3. Multiplier "POINTS PER 1 PLN": The result from the previous step is multiplied by the global parameter "POINTS PER 1 PLN". This parameter determines how many points are awarded for each PLN and can be found in:

 ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > GENERAL PARAMETERS > NUMBER OF POINTS FOR 1 zł.

   4. Specific multipliers (hierarchy): At this stage, the system checks for additional multipliers that will increase or decrease the number of points. These are checked in a specific order, applying the first one found that meets the conditions:

  • Multiplier for item group assigned to customer, checked in: 
    ERP > ADMINISTRATION > DICTIONARIES > CUSTOMER MULTIPLIERS FOR GROUPS. This multiplier has priority, but will only work if the customer has met the minimum sales value condition (CALCULATE ABOVE).
  • Customer multiplier: If the previous one is not active, the system looks for a multiplier set directly for the given contractor in:
    ERP > CONTRACTORS > [Enter] > TRADE TERMS > MULTIPLIER IN THE LOYALTY SYSTEM.
  • Item group multiplier: If none of the above multipliers apply, the system will use the multiplier assigned to the item group itself to which the given item belongs. You can find it in:
    ERP > ADMINISTRATION > DICTIONARIES > ITEM GROUPS > COMMODITY GROUPS > [ENTER] > SYS-LOJ MULTIPLIER.

Example: A "Workshop" type customer buys an item from the "Car parts" group for 100 PLN net.

  • In the "Workshop" customer type settings (ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > GENERAL PARAMETERS), the percentage is 2%.
  • "NUMBER OF POINTS FOR 1 zł " (ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > GENERAL PARAMETERS) is 5 points.
  • For the customer and the "Car parts" group, there is an active multiplier of 1.2 (ERP > ADMINISTRATION > DICTIONARIES > CUSTOMER MULTIPLIERS FOR GROUPS).
  • Calculation:
    1. Base value: 100 PLN
    2. After applying customer percentage: 100 PLN * 2% = 2 points
    3. After applying "POINTS PER 1 PLN": 2 points * 5 = 10 points
    4. After applying the item group multiplier: 10 points * 1.2 = 12 points.

    3. Final customer multiplier (always at the end)

Regardless of whether points were calculated based on fixed item points or purchase value, the final result is always adjusted by the final multiplier assigned to the customer. You can find it in: 

ERP > CONTRACTORS > [Enter] > TRADE TERMS  > FINAL MULTIPLIER IN LOYALTY SYSTEM.

  • If this multiplier is set and is greater than zero, the total number of points will be multiplied by it and rounded to a whole number.

Example continuation: If, in the above example, the customer has a final customer multiplier set to 1.1, they will ultimately receive 13 points (12 points * 1.1 = 13.2, rounded to 13).


cairo.PROFIT Configuration

1. General Loyalty System Parameters

You can define the conditions for calculating points in the loyalty system. Access these settings in:

ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > GENERAL PARAMETERS

Settings include:

  • MIN. DOCUMENT VALUE: Minimum document value from which points are calculated.

  • DOCUMENT VALUE TYPE: Specifies whether points are calculated from the net or gross value of the document.

  • NUMBER OF POINTS FOR 1 zł: Number of points awarded for each PLN.

  • OVERDUE POINTS AFTER: Number of days after which points are considered expired.

  • SUPPORTED CARD TYPE: Type of loyalty card (magnetic, internal barcode, arbitrary barcode).

  • DEFAULT SALES PRICE: Default sales price for a reward.

  • DO NOT ACCUMULATE FOR OVERDUE ABOVE: Setting the number of days of overdue payments after which points are not calculated.

  • REMOVE POINTS FOR OVERDUE ABOVE: Setting the number of days of overdue payments after which loyalty points can be removed.


2. Customer Types

Customer types allow for differentiation in the number of points earned depending on the customer category. 

Each customer type has a percentage of the item value assigned, which will be converted into points.

    • Retail: Points are calculated after scanning the customer's card. A prompt will appear when printing the document. You can assign a MAX. DISCOUNT, above which points will not be calculated for an item.

    • Workshop: Does not require card scanning.

    • Shop: Does not require card scanning.

    • Wholesale: Does not require card scanning.


3. Forms

You can edit forms for joining the loyalty system and for issuing rewards.

ERP > ADMINISTRATION > PARAMETERS > LOYALTY SYSTEM > FORMS

Forms can be self-defined, and their content can use predefined variables reflecting customer data.


4. Reward Warehouse

To add and issue rewards from a given warehouse, it must be designated as a reward warehouse. 

ERP > ADMINISTRATION > WAREHOUSE LIST > [Enter] > REWARD WAREHOUSE


5. Item Configuration

The loyalty system can be configured for individual items. 

ERP > ITEM CATALOG > [Enter] > LOYALTY SYSTEM

  • ACTIVE ITEM: Specifies whether the item is included in the loyalty system and whether it is active. You can exclude selected items or item groups.
  • FIXED POINTS: Number of fixed points received for purchasing this item.
  • REWARD: Specifies whether the item is a reward. You can set for it:
    • POINTS: Number of points required to issue the reward.
    • DESCRIPTION: Reward description.
    • WARRANTY: Specifies whether the warranty is counted in days, months, or years, and its duration.
    • RECEIPT TYPE: Type of reward collection by the customer.
    • AVAILABLE IN PERIOD: Date range for the reward's validity (available options [Shift] + [<-], [Shift] + [->], [F2] for month, [F3] for year).
    • REWARD CATEGORY: Selection of reward category from the list.
    • PROMOTED IN PERIOD: Date range for reward promotion (available options [Shift] + [<-], [Shift] + [->], [F2] for month, [F3] for year).
    • HIDE IF UNAVAILABLE: Specifies whether the reward should be hidden if unavailable.

6. Point Multipliers

It is possible to add point multipliers that affect the number of points calculated. 

ERP > ADMINISTRATION > DICTIONARIES > CUSTOMER MULTIPLIERS FOR GROUPS

You can add a new multiplier, edit an existing one, or delete it. A multiplier can be assigned to:

  • Customer
  • Customer group
  • Item group
  • Multiplier in the loyalty system

For a multiplier, you can set:

  • VALIDITY DATE RANGE: Period during which the multiplier is active.
  • CALCULATE ABOVE: Minimum required net value of customer sales documents during the multiplier's validity period.
  • DESCRIPTION: Multiplier description.
  • PROMOTION DESCRIPTION: Promotion description.

Multipliers considered when calculating points are also defined in:

  • Contractor data: MULTIPLIER IN LOYALTY SYSTEM and FINAL MULTIPLIER IN LOYALTY SYSTEM.
  • Item group data: LOYALTY SYSTEM MULTIPLIER.
  • Multiplier definition per group for a specific customer: ERP > CONTRACTORS > [F2] > ITEM GROUPS > [->] > CUSTOMER MULTIPLIERS.

Managing Customer in Loyalty System

Customer information in the loyalty system is available in: 

ERP > CONTRACTORS > [ -> ] > LOYALTY SYSTEM

Available options:

  • CUSTOMER REGISTRATION: Registering a customer in the loyalty system.

  • CHANGE CUSTOMER TYPE: Changing the customer type (retail/workshop/shop/wholesale).

  • JOINING FORM: Printing the joining form (editable from the parameters level).

  • WEB DATA: Setting data for authentication on the website.

  • REWARD ISSUANCE: Issuing rewards due to the customer.

  • TRANSACTION HISTORY: Customer's transaction history in the loyalty system.

  • POINT TRANSFER: Transferring points between contractors.

  • CHANGE NUMBER OF POINTS: Manually changing a contractor's points.

  • QUARTERLY TARGET VERIFICATION: Verification of quarterly targets.


Advanced Options

  • REMOVE POINTS FOR OVERDUE CUSTOMERS: Option to remove points for customers with overdue payments.

  • REMOVE EXPIRED POINTS: Option to remove points that have expired.

  • CHANGE CUSTOMER LOYALTY SYSTEM JOIN DATE: Option to change the customer's loyalty system joining date.

  • IMPORT POINT CHANGES: Option to import changes in customer points.


Reporting and Point Visibility

  • Statements: Statements can be generated from the contractor catalog. ERP > CONTRACTORS > [TAB]

  • Point visibility in cairo.B2B: The customer's point balance is visible in cairo.B2B. Customers can check available rewards there and add them to their cart.


Issuing Rewards

Rewards can be ordered by the customer in cairo.B2B or issued by the operator: 

ERP > CONTRACTORS > [->] > LOYALTY SYSTEM > AWARD ISSUANCE


cairo.PROFIT Integration

cairo.PROFIT is an integral part of cairo.ERP and cannot be offered independently.