GKS Bank
Events
Listen for completed GKS Bank transactions from another server resource.
GKS Bank emits server events after a ledger write succeeds. Use them for receipts, analytics, achievements, business logic, or external logging.
Events can be disabled with:
Config.Integration.EmitEvents = falsegkbank:transaction
Emitted for one-sided movements such as deposits, withdrawals, fees, payroll, interest, and API calls.
AddEventHandler('gkbank:transaction', function(data)
print(data.groupId)
print(data.accountId)
print(data.direction) -- 'in' or 'out'
print(data.amount) -- minor units
print(data.channel)
end)Payload fields:
| Field | Description |
|---|---|
groupId | Movement group identifier |
txId | Transaction identifier |
accountId | GKS Bank account ID |
iban | Account IBAN |
direction | in or out |
txType | Transaction type |
amount | Minor units |
fee | Fee in minor units |
channel | Source channel |
description | Transaction description |
gkbank:transfer
Emitted once for an account-to-account transfer. It is not emitted twice for the sender and receiver.
AddEventHandler('gkbank:transfer', function(data)
print(data.groupId)
print(data.amount) -- minor units
print(data.from.accountId, data.from.iban)
print(data.to.accountId, data.to.iban)
end)The payload contains groupId, amount, fee, channel, description, and from/to account objects.
Event settings
Event names are fixed: gkbank:transaction and gkbank:transfer.
Handler guidelines
- Events are emitted after the movement succeeds.
- Event handlers should be fast and non-blocking.
- Queue slow work with
SetTimeout(0, ...). - Treat event payloads as read-only.
- Use
amount / Config.Money.Scalewhen displaying money.

