Personal discounts
The use of personal discounts within pricing is a product feature. In Control Center, however, personal discounts and personal discount types are managed on the provider level.
Personal discounts are always assigned to a single user and are applied after the fare is calculated with the booking price fare calculation adapter, that is, during booking. Discounts apply to bookings made in ioki Web Booking too, where passengers can also redeem a promo code.
There are four main types of personal discounts: non-purchasable personal discounts, purchasable personal discounts (passes), promo codes, and referrals. These are provider features and must be activated for the provider before they can be used in a product.
To create a personal discount and assign it to a user, the corresponding personal discount type must be defined first.
Activate this feature
Roles: Super Admin
- Navigate to the management settings of the product.
- Within the Product features section, select the checkbox Personal discounts.
- Select Save.
Usage and functionality
Personal discounts are automatically used and applied if the associated user books a ride. When the fare is calculated, ioki Platform looks for valid personal discounts assigned to the user.
This includes checking whether a discount is valid for the current product, whether the number of daily usages has been exceeded, and whether it is still active. If it has a time limit, ioki Platform also checks whether that time limit is still valid. It also checks whether the personal discount is valid for the requested zone code of a ride.
Time-limited discounts and prebookings
For a time-limited discount, ioki Platform checks the discount’s validity period against the scheduled pickup time of the ride, not against the date the ride is booked. The validity period is inclusive of its start and end, evaluated in the product’s time zone.
This matters for prebookings. A user can book a ride in advance and still receive a time-limited discount, as long as the ride’s pickup time falls within the discount’s validity period. For example, if a discount is valid from 24 July and a user books today for a pickup on 24 July, the discount applies to that ride. A ride whose pickup falls before the start of the validity period, or after the end, is not discounted, even if the discount is on the user’s account at the time of booking.
For a discount that comes from a promo code, the code’s own redeemable-from and redeemable-until dates control only when the code can be entered. They are separate from the discount’s validity period, which is what determines whether a given ride is discounted.
It also checks whether the product setting Personal Discount only applies to first passenger is active. In that case, the discount is applied only to the booking user. Otherwise, it can be extended to all passengers included in the booking.
If a user has more than one personal discount assigned to their account, the best available discount is always used, that is, the one that results in the lowest price for the current ride. If two discounts result in the same price, a time-limited discount is used before a discount that is limited by number of usages.
The admin procedure for this feature, including managing personal discount types, is documented in Personal discounts in Control Center.