package constants // The two balances a customer wallet holds (docs/prd-point-coin.md). EnakPoint pays // for orders; EnakCoin is spent on games and can be exchanged into EnakPoint. const ( WalletCurrencyPoint = "POINT" WalletCurrencyCoin = "COIN" ) func IsValidWalletCurrency(currency string) bool { return currency == WalletCurrencyPoint || currency == WalletCurrencyCoin } // Ledger row types. ยง8.1 of the PRD lists, per type, which currency it may use, which // way it moves the balance, and which reference it must carry. const ( WalletTxTypeEarn = "EARN" WalletTxTypeEarnReversal = "EARN_REVERSAL" WalletTxTypePayment = "PAYMENT" WalletTxTypePaymentRefund = "PAYMENT_REFUND" WalletTxTypeExchangeOut = "EXCHANGE_OUT" WalletTxTypeExchangeIn = "EXCHANGE_IN" WalletTxTypeTransferOut = "TRANSFER_OUT" WalletTxTypeTransferIn = "TRANSFER_IN" WalletTxTypeGameSpend = "GAME_SPEND" WalletTxTypeExpire = "EXPIRE" WalletTxTypeAdjustment = "ADJUSTMENT" WalletTxTypeMigration = "MIGRATION" WalletTxTypeRewardRedeem = "REWARD_REDEEM" ) // What a ledger row's reference_id points at: where the value came from for a // credit, or where it went for a debit. const ( WalletRefTypeOrder = "ORDER" WalletRefTypePayment = "PAYMENT" WalletRefTypeWalletTx = "WALLET_TX" WalletRefTypeGamePlay = "GAME_PLAY" WalletRefTypeLot = "LOT" WalletRefTypeUser = "USER" WalletRefTypeLegacyPoints = "LEGACY_POINTS" WalletRefTypeLegacyTokens = "LEGACY_TOKENS" WalletRefTypeRewardRedemption = "REWARD_REDEMPTION" )