package constants // Loyalty setting keys (docs/prd-point-coin.md F1, F2, F12). Outlet keys live in // outlet_settings and organization keys in organization_settings. A key that was // never set takes the default in the PRD. // Per outlet (F1): what an order earns, and whether EnakPoint can pay. const ( LoyaltyPointEnabledKey = "loyalty.point.enabled" LoyaltyPointEarnPerAmountKey = "loyalty.point.earn_per_amount" LoyaltyPointEarnValueKey = "loyalty.point.earn_value" LoyaltyPointMinOrderAmountKey = "loyalty.point.min_order_amount" LoyaltyPointMaxPerOrderKey = "loyalty.point.max_per_order" LoyaltyCoinEnabledKey = "loyalty.coin.enabled" LoyaltyCoinEarnPerAmountKey = "loyalty.coin.earn_per_amount" LoyaltyCoinEarnValueKey = "loyalty.coin.earn_value" LoyaltyCoinMinOrderAmountKey = "loyalty.coin.min_order_amount" LoyaltyCoinMaxPerOrderKey = "loyalty.coin.max_per_order" LoyaltyPointAcceptPaymentKey = "loyalty.point.accept_payment" LoyaltyPointMinPaymentPointsKey = "loyalty.point.min_payment_points" LoyaltyPointMaxPaymentPercentKey = "loyalty.point.max_payment_percent" ) // Per organization (F2, F12): the value of EnakPoint, the exchange rate, transfers and // expiry, which must be the same in every outlet. const ( LoyaltyPointValueKey = "loyalty.point.value" LoyaltyExchangeCoinAmountKey = "loyalty.exchange.coin_amount" LoyaltyExchangePointAmountKey = "loyalty.exchange.point_amount" LoyaltyTransferEnabledKey = "loyalty.transfer.enabled" LoyaltyTransferMinAmountKey = "loyalty.transfer.min_amount" LoyaltyTransferMaxPerTransactionKey = "loyalty.transfer.max_per_transaction" LoyaltyTransferDailyLimitKey = "loyalty.transfer.daily_limit" // Suffixes after "loyalty.point." or "loyalty.coin.". LoyaltyExpiryEnabledSuffix = "expiry_enabled" LoyaltyExpiryPeriodSuffix = "expiry_period" LoyaltyExpiryUnitSuffix = "expiry_unit" LoyaltyExpiryEndOfMonthSuffix = "expiry_end_of_month" LoyaltyExpiryReminderDaysSuffix = "expiry_reminder_days" ) // Units of loyalty.{point,coin}.expiry_unit. const ( LoyaltyExpiryUnitDay = "DAY" LoyaltyExpiryUnitMonth = "MONTH" ) // Defaults from the PRD. const ( LoyaltyPointEarnPerAmountDefault = int64(100) LoyaltyCoinEarnPerAmountDefault = int64(25000) LoyaltyEarnValueDefault = int64(1) LoyaltyMinPaymentPointsDefault = int64(1) LoyaltyMaxPaymentPercentDefault = int64(100) LoyaltyPointValueDefault = int64(1) LoyaltyExchangeAmountDefault = int64(1) LoyaltyTransferEnabledDefault = true LoyaltyTransferMinAmountDefault = int64(1) LoyaltyExpiryPeriodDefault = int64(12) LoyaltyExpiryUnitDefault = LoyaltyExpiryUnitMonth LoyaltyExpiryReminderDaysDefault = int64(7) )