Event Definitions

AIR can trigger the following Event Notifications as part of each API's endpoints being called.

Please refer to the API reference for further endpoint details, and please note that this list does not cover our client-specific extensions (API Composites).

Event NameDescriptionTriggered By API EndpointAtomicOperationArrayItem(s) Object TypeAtomicOperationArrayItem(s) Operation Type
CAMPAIGN.CREATEA new Campaign was createdPOST /campaignscampaignEntityCREATE
CAMPAIGN.UPDATEAn existing Campaign was updated.PUT /campaigns/{campaignId}
PATCH /campaigns/{campaignId}
campaignEntityUPDATE
CAMPAIGN.DELETEAn existing Campaign was deleted.DELETE /campaigns/{campaignId}campaignEntityDELETE
PLAN.CREATEA new Plan was created.Dashboard ActionplanEntityCREATE
PLAN.UPDATEAn existing Plan was updated.Dashboard ActionplanEntityUPDATE
PLAN.DELETEAn existing Plan was deleted.Dashboard ActionplanEntityDELETE
SCHEME.CREATEA new Scheme was created.POST /schemesschemeEntityCREATE
SCHEME.UPDATEAn existing Scheme was updated.PUT /schemes/{schemeId}schemeEntityUPDATE
SCHEME.DELETEAn existing Scheme was deleted.Dashboard actionschemeEntityDELETE
ACCOUNT.MOVE.TO.WALLETAn Account that existed outside a wallet was moved in to a Wallet.PATCH /account/{accountId}/move/to/wallet/{walletId}walletAccountEntity
walletAccountTransactionEntity
UPDATE
CREATE
FUND.CREATEA new Fund was created.Dashboard ActionfundEntityCREATE
FUND.CREDITAn existing Fund was credited.Dashboard ActionfundTransactionEntityCREATE
FUND.DEBITAn existing Fund was debited.Dashboard ActionfundTransactionEntityCREATE
FUND.DELETEAn existing Fund was deleted.Dashboard ActionfundEntityDELETE
FUND.LOADAn existing Fund was loaded.Dashboard ActionfundTransactionEntityCREATE
FUND.UNLOADAn existing Fund was un-loaded.Dashboard ActionfundTransactionEntityCREATE
FUND.UPDATEAn existing Fund was amended.Dashboard ActionfundEntityUPDATE
POINTSREWARD.BANK.CREATEA new Reward Bank was created.POST /banks/pointsrewardpointsRewardBankEntityCREATE
POINTSREWARD.BANK.UPDATEAn existing Reward Bank was updated.PATCH /banks/pointsrewardpointsRewardBankEntityUPDATE
POINTSREWARD.BANK.DELETEAn existing Reward Bank was deleted.DELETE /banks/pointsrewardpointsRewardBankEntityDELETE
POINTSREWARD.BANK.REWARD.CREATEA new Reward for an existing Reward Bank was created.POST /banks/pointsreward/rewardpointsRewardBankRewardEntityCREATE
POINTSREWARD.BANK.REWARD.UPDATEAn existing Reward for an existing Reward Bank was updated.PATCH /banks/pointsreward/rewardpointsRewardBankRewardEntityUPDATE
POINTSREWARD.BANK.REWARD.DELETEAn existing Reward for an existing Reward Bank was deleted.DELETE /banks/pointsreward/rewardpointsRewardBankRewardEntityDELETE
POINTSREWARD.BANK.WALLET.LINK.CREATEA new targeted link between a Wallet and Reward Bank was created.POST /wallet/{walletId}/link/bank/pointsreward/{pointsRewardBankId}pointsrewardBankWalletLinkEntityCREATE
POINTSREWARD.BANK.WALLET.LINK.DELETEAn existing link between a Wallet and Reward Bank was deleted.DELETE /wallet/{walletId}/link/bank/pointsreward/{pointsRewardBankId}pointsrewardBankWalletLinkEntityDELETE
POINTSREWARD.BANK.WALLET.LINK.UPDATEAn existing link between a Wallet and Reward Bank was updated.PATCH /wallet/{walletId}/link/bank/pointsreward/link/{pointsRewardBankWalletLinkId}pointsrewardBankWalletLinkEntityUPDATE
POSCONNECT.MESSAGEATTILL.CREATEAccounts were created and sent to be used in Message At TillPOST /connect/messages/createwalletAccountTransactionEntityCREATE
POSCONNECT.MESSAGEATTILL.REPORTAccounts were either activated or cancelled in Message At TillPOST /connect/messages/report
POSCONNECT.WALLET.OPENCreate a new POS transaction with or without adjudication.POST /connect/wallet/openwalletTransactionEntity
walletAccountTransactionEntity
CREATE
POSCONNECT.WALLET.SETTLESettle a POS transaction.POST /connect/wallet/settle
POST /connect/wallet/opensettle
walletTransactionEntity
walletAccountTransactionEntity
CREATE
UPDATE
POSCONNECT.WALLET.REFUNDRefund an existing settled transaction.POST /connect/wallet/refundwalletTransactionEntity
walletAccountTransactionEntity
CREATE
UPDATE
POSCONNECT.WALLET.SPENDSpend points from a Points Account in your wallet.POST /connect/wallet/spendwalletTransactionEntity
walletAccountTransactionEntity 
CREATE
POSCONNECT.WALLET.SPEND.VOIDVoid a transaction where points have been spent.POST /connect/wallet/spend/voidwalletTransactionEntityUPDATE
POSCONNECT.WALLET.FULFILFulfil individual items within an ecommerce transaction.POST /connect/wallet/fulfilwalletTransactionEntity
walletAccountTransactionEntity
CREATE
UPDATE
POSCONNECT.WALLET.PRODUCTEXCHANGECalculate loyalty changes when a product is exchangedPOST /connect/wallet/productExchange
SERVICE.RECOMMENDATION.ACCEPTAn existing Recommendation was accepted and accounts have been created.POST /services/wallet/{walletId}/catalogue/{catalogueGuid}/recommendation/{recommendationGuid}/acceptwalletAccountEntity
walletAccountTransactionEntity
CREATE
SERVICE.TRIGGERA Behavioural Action has been triggered.POST /services/triggerwalletAccountTransactionEntity
walletAccountTransactionEntity
walletTransactionEntity
CREATE (One for Create and one for Redeem)
CREATE (For the Points Account Credit)
CREATE
SERVICE.WALLET.CREATECreate a Wallet with one or more Identities within single API callPOST /services/walletwalletEntity
walletEntity
walletIdentityEntity
CREATE (One for the main wallet created and one for each relationship wallet created)
UPDATE (A pair for each relationship wallet created and linked)
CREATE (One item for one created Wallet Identity)
SERVICE.WALLET.DELETEDelete a Wallet and its contents.
Wallet Consumer and Identities are deleted and Wallet Accounts are cancelled
DELETE /services/wallet/{walletId}walletEntity
walletIdentityEntity
walletConsumerEntity
walletAccountEntity
DELETE
DELETE (One item for one deleted Wallet Identity)
DELETE
UPDATE
SERVICE.WALLET.MERGETwo Wallets were merged together.PATCH /services/wallet/{victimWalletId}/merge/{survivorWalletId}walletEntity
walletAccountEntity
walletAccountEntity
walletIdentityEntity
walletIdentityEntity
walletAccountTransactionEntity
walletTransactionEntity
UPDATE
UPDATE
CREATE
UPDATE
CREATE
CREATE
CREATE
SERVICE.WALLET.ACCOUNTS.CREATEA new Wallet was created, along with one or more identities, one or more coupon accounts, one or more scheme accounts, and a consumer object.POST /services/wallet/accountswalletEntity
walletIdentityEntity
walletAccountTransactionEntity
walletConsumerEntity
CREATE
CREATE
CREATE
CREATE
SERVICE.WALLET.BACKENDPOINTSUpdate the balance of an existing Wallet Points Account.POST /services/wallet/backendpointswalletTransactionEntity
walletAccountTransactionEntity
CREATE
UPDATE
SERVICE.WALLET.POINTS.EXPIREExpire points within a Wallet Points Account.System ActionwalletTransactionEntity
walletAccountTransactionEntity
CREATE
UPDATE
SERVICE.WALLET.TRANSACTION.CREDITA Credit Wallet Transaction was created and points awarded to a points account in a wallet.POST /services/wallet/{walletId}/transaction/creditwalletAccountEntity
walletAccountTransactionEntity
walletTransactionEntity
UPDATE
CREATE
CREATE
SERVICE.WALLET.TRANSACTION.DEBITA Debit Wallet Transaction was created and points removed from a points account in a wallet.POST /services/wallet/{walletId}/transaction/debitwalletAccountEntity
walletAccountTransactionEntity
walletTransactionEntity
UPDATE
CREATE
CREATE
SERVICE.WALLET.TRANSACTION.GOODWILLA Goodwill Wallet Transaction was created and points put into a points account with a good will transaction.POST /services/wallet/{walletId}/transaction/goodwillwalletAccountEntity
walletAccountTransactionEntity
walletTransactionEntity
UPDATE
CREATE
CREATE
WALLET.ACCOUNT.TRANSACTION.SPENDA Spend Wallet Transaction was created and points spent from a points account in a wallet.POST /services/wallet/{walletId}/transaction/spendwalletAccountEntity
walletAccountTransactionEntity
walletTransactionEntity
UPDATE
CREATE
CREATE
SERVICE.WALLET.TRANSACTION.REDEEM.CREDITA new Redeem_Credit Wallet Transaction was created.POST /services/wallet/{walletId}/transaction/redeemCreditwalletTransactionEntity
walletAccountTransactionEntity
walletTransactionEntity
CREATE
UPDATE
UPDATE
WALLET.TRANSACTION.DONATEA new Donate Wallet Transaction was created.POST /services/wallet/{walletId}/transaction/donatewalletTransactionEntity
walletTransactionEntity
walletAccountTransactionEntity
walletAccountTransactionEntity
CREATE (Donor's Wallet Transaction)
CREATE (Receipient's Wallet Transaction)
CREATE (Donor's Wallet Account Transaction (e.g. to deduct 170 points from loyalty points balance))
CREATE (Receipient's Wallet Account Transaction)
SERVICES.WALLET.TRANSACTION.EXCHANGEAn Exchange Wallet Transaction was created and points were taken from a points account in a wallet and a coupon created.POST /services/wallet/{walletId}/transaction/exchange/pointsrewardwalletTransactionEntity
walletAccountTransactionEntity
walletAccountTransactionEntity
CREATE
CREATE (Exchange Wallet Account Transaction (e.g. to deduct 170 points from loyalty points balance)
CREATE (Reward Account Creation (Wallet Account Transaction)
SERVICE.WALLET.TRANSACTION.UNREDEEMA wallet account was unredeemed and an UNREDEEM wallet transaction was created using a specific walletId and accountId.POST /services/wallet/{walletId}/transaction/unredeemwalletAccountEntity
walletAccountTransactionEntity
walletTransactionEntity
UPDATE
CREATE
CREATE
SERVICE.WALLET.TRANSACTION.UPDATEUpdate a transaction using the transaction reference if it has already been released, and at the same time will lock the specified Accounts in preparation for the given Account transactions.PUT /services/wallet/{walletId}/transaction/{transactionId}
PUT /services/wallet/transaction
walletTransactionEntity
walletAccountEntity
UPDATE
UPDATE
SUPPLIERUNIT.CREATEA new Supplier Unit was created.Dashboard ActionSupplierUnitEntityCREATE
SUPPLIERUNIT.DELETEAn existing Supplier Unit was deleted.Dashboard ActionSupplierUnitEntityDELETE
SUPPLIERUNIT.UPDATEAn existing Supplier Unit was updated.Dashboard ActionSupplierUnitEntityUPDATE
WALLET.ACCOUNT.UPDATEAn Account in a wallet was updated.PATCH /wallet/{walletId}/account/{accountId}/activate
PATCH /wallet/{walletId}/account/{accountId}/update
PATCH /wallet/{walletId}/account/{accountId}/block
PATCH /wallet/{walletId}/account/{accountId}/inactivate
PATCH /wallet/{walletId}/account/{accountId}/cancel
walletAccountTransactionEntityCREATE
WALLET.ACCOUNT.CREATE.CAMPAIGNCreate a Coupon Account and place into the corresponding Wallet.POST /wallet/{walletId}/campaign/{campaignId}/accountwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.CREATE.CAMPAIGNCreate an entitlement account and attach it to an existing Plan Account in a wallet.POST /wallet/{walletId}/account/{parentAccountId}/campaign/{campaignId}/accountwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.CREATE.PLANCreate a Subscription Account with Entitlement Accounts (arisen from suplied Plan definition) and place them into the corresponding Wallet.POST /wallet/{walletId}/plan/{planId}/accountwalletAccountEntity
walletAccountTransactionEntity
CREATE (one item for each succesfully created walletAccountEntity (Plan and Entitlement))
CREATE (one item for each successfully created walletAccountTransactionEntity)
WALLET.ACCOUNT.CREATE.PROGRAMMECreate a Programme Account and place into the corresponding walletPOST /wallet/{walletId}/programme/{programmeId}/accountwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.CREATE.SCHEMECreate a Loyalty Scheme Account and place into the corresponding walletPOST /wallet/{walletId}/scheme/{schemeId}/accountwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.REFRESHRefresh a Subscription Account for a corresponding Wallet.PATCH /wallet/{walletId}/account/{accountId}/refreshwalletAccountEntity
walletAccountTransactionEntity
walletAccountEntity
walletAccountTransactionEntity
UPDATE
UPDATE
CREATE
CREATE
WALLET.ACCOUNT.TRANSACTION.CREDITCredit a Wallet Account. Currently available for POINTS and CONTINUITY Accounts, along with all Stored Value Accounts.PATCH /wallet/{walletId}/account/{accountId}/creditwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.CREDIT.GOODWILLCredit a Goodwill Points to a points Wallet Account. Please note Goodwill rules has to be defined for a Scheme.PATCH /wallet/{walletId}/account/{accountId}/goodwillwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.DEBITDebit a Wallet Account and create appropriate Account Transaction. Currently available for POINTS and CONTINUITY Accounts, along with all Stored Value Accounts.
Please note: by default for Loyalty Points Accounts, EES AIR allows debits of an amount larger than the Account's available balance, which would result in a negative balance. This could be mitigated by EES Scheme settings:
  • Disable 'allow negative balance'
  • Enable 'autotopup' - EES AIR will detect these negative balances and instantly correct them by bringing a balance to zero (and creating a corresponding Account Transaction of type AUTOTOPUP).
PATCH /wallet/{walletId}/account/{accountId}/debitwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.EARNCredit Points into Wallet Account and create a Wallet Account Transaction (with event=EARN) within EES AIR. Currently available for POINTS Accounts only.
Please note: this endpoint accepts one of two mutualy exclusive Request Payload structures: one with explicit balance structure (the calling application need to provids explicit balance names and amounts), second one for instructing AIR to credit Points for an Account with the amounts calculated by EES AIR (referenced Point Schema Earn definitions(s) would be the base for this calclulation)
PATCH /wallet/{walletId}/account/{accountId}/earnwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.LOADLoad a Wallet Account. Currently available for Stored Value Account types. If the Account is INACTIVE, the load will activate it by default.PATCH /wallet/{walletId}/account/{accountId}/loadwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.REDEEMRedeem a Coupon using a Wallet Account. Currently available for ECOUPON and CONTINUITY Accounts.PATCH /wallet/{walletId}/account/{accountId}/redeemwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.REFUNDRefund a Wallet Account. Currently available for Stored Value.PATCH /wallet/{walletId}/account/{accountId}/refundwalletAccountTransactionEntityUPDATE
WALLET.ACCOUNT.TRANSACTION.SPENDSpend accumulated points. Please note a) this endpoint could be used only for Point Accounts b) this endpoint also allows to adjust other than current balance (i.e. lifetimeSpend or lifetimeSpendValue).PATCH /wallet/{walletId}/account/{accountId}/spendwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.TOPUPTopup a Stored Value Wallet Account. A request to topup an INACTIVE Account will fail. A request to topup with a value of zero will be accepted. The value will be compared with programme rules.PATCH /wallet/{walletId}/account/{accountId}/topupwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.UNREDEEMUnredeem a Wallet Account. Currently available for ECOUPON and CONTINUITY Accounts.PATCH /wallet/{walletId}/account/{accountId}/unredeemwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.TRANSACTION.VERIFYVerify a transaction against the specified Wallet Account.POST /wallet/{walletId}/account/{accountId}/verifywalletAccountTransactionEntityUPDATE
WALLET.ACCOUNT.TRANSACTION.VOIDVoid the specified Wallet Account Transaction. Currently only applicable for CONTINUITY and POINTS Accounts, along with all stored value Accounts.PATCH /wallet/{walletId}/account/{accountId}/transaction/{accountTransactionId}/voidwalletAccountTransactionEntityCREATE
WALLET.ACCOUNT.UNBLOCKChange the status of a Wallet Account from BLOCKED to ACTIVE.PATCH /wallet/{walletId}/account/{accountId}/unblockwalletAccountTransactionEntity
walletAccountEntity
CREATE (one item in atomicOperations array for each created walletAccountTransaction)
UPDATE (one item in atomicOperations array for each updated walletAccount)
WALLET.ACCOUNT.UPDATEModify a Wallet Account. For example update the state or metadata or overridesPATCH /wallet/{walletId}/account/{accountId}
PATCH /wallet/{walletId}/account/{accountId}/state
PATCH /account/{accountId}/move/to/wallet/{walletId}
walletAccountTransactionEntityUPDATE
WALLET.CONSUMER.CREATEA new Consumer record was created on an existing wallet.POST /wallet/{walletId}/consumerwalletConsumerEntityCREATE
WALLET.CONSUMER.DELETEAn existing Consumer was deleted from a wallet.DELETE /wallet/{walletId}/consumer/{consumerId}walletConsumerEntityDELETE
WALLET.CONSUMER.UPDATEAmend the Wallet Consumer details for a Wallet Consumer.PATCH /wallet/{walletId}/consumer/{consumerId}
PATCH /wallet/{walletId}/consumer/{consumerId}/data
PATCH /wallet/{walletId}/consumer/{consumerId}/state
walletConsumerEntityUPDATE
WALLET.CREATEA new Wallet was created.POST /walletwalletEntityCREATE
WALLET.DELETEAn existing Wallet was deleted.DELETE /wallet/{walletId}walletEntityDELETE
WALLET.UPDATEAn existing Wallet was updated.PATCH /wallet/{walletId}
PATCH /wallet/{walletId}/activate
PATCH /wallet/{walletId}/suspend
PATCH /wallet/{walletId}/state
walletEntityUPDATE
WALLET.IDENTITY.CREATEA new Identity was created for the corresponding Wallet.POST /wallet/{walletId}/identitywalletIdentityEntityCREATE
WALLET.IDENTITY.DELETEAn existing Identity was deleted for the corresponding Wallet.DELETE /wallet/{walletId}/identity/{identityId}walletIdentityEntityDELETE
WALLET.IDENTITY.UPDATEAn existing Identity was updated for the corresponding Wallet.PATCH /wallet/{walletId}/identity/{identityId}
PATCH /wallet/{walletId}/identity/{identityId}/suspend
PATCH /wallet/{walletId}/identity/{identityId}/activate
PATCH /wallet/{walletId}/identity/{identityId}/lost
PATCH /wallet/{walletId}/identity/{identityId}/stolen
PATCH /wallet/{walletId}/identity/{identityId}/state
PATCH /wallet/{walletId}/identity/{identityId}/move
walletIdentityEntityUPDATE
WALLET.INVITE.ACCEPTA Wallet Invite has been accepted.PATCH /wallet/{walletId}/invite/{walletInviteId}/acceptwalletInviteEntityUPDATE
WALLET.INVITE.CANCELA Wallet Invite has been cancelled.PATCH /wallet/{walletId}/invite/{walletInviteId}/cancelwalletInviteEntityUPDATE
WALLET.INVITE.CREATEA new Wallet Invite has been created.POST /wallet/{walletId}/invitewalletInviteEntityCREATE
WALLET.INVITE.REJECTA Wallet Invite has been rejected.PATCH /wallet/{walletId}/invite/{walletInviteId}/rejectwalletInviteEntityUPDATE
WALLET.INVITE.UPDATEA Wallet Invite has been updated.PATCH /wallet/{walletId}/invite/{walletInviteId}
PATCH /wallet/{walletId}/invite/{walletInviteId}/state
walletInviteEntityUPDATE
WALLET.INVITE.VERIFYA Wallet Invite has been verified.GET /wallet/invite/verifywalletInviteEntityREAD
WALLET.RELATIONA new relationship was created between two Wallets.PATCH /wallet/{walletId}/join/{relationshipWalletId}/child
PATCH /wallet/{walletId}/join/{relationshipWalletId}/associate
PATCH /wallet/{walletId}/join/{receipientWalletId}/donor
PATCH /wallet/{walletId}/split/{relationshipWalletId}
walletEntityUPDATE
WALLET.TRANSACTION.CANCELAn existing Wallet Transactions status was changed to cancelled.PATCH /wallet/{walletId}/transaction/{transactionId}/cancelwalletTransactionEntityDELETE
WALLET.TRANSACTION.CREATEA new Wallet Transaction was created.POST /wallet/{walletId}/transactionwalletTransactionEntityCREATE
WALLET.TRANSACTION.DELETEAn existing Wallet Transaction was deleted.DELETE /wallet/{walletId}/transaction/{transactionId}walletTransactionEntityDELETE
WALLET.TRANSACTION.EXPIREAn existing Wallet Transactions status was updated to expired.PATCH /wallet/{walletId}/transaction/{transactionId}/expirewalletTransactionEntityUPDATE
WALLET.TRANSACTION.GIFTA new Gift Wallet Transaction was created.POST /services/wallet/{{walletId}}/transaction/giftwalletTransactionEntity
walletTransactionEntity
walletAccountTransactionEntity
CREATE
UPDATE
UPDATE
WALLET.TRANSACTION.SETTLEAn existing Wallet Transactions status was updated to settled.PATCH /wallet/{walletId}/transaction/{transactionId}/settlewalletTransactionEntityUPDATE
WALLET.TRANSACTION.UPDATEAn existing Wallet Transaction was updated.PATCH /wallet/{walletId}/transaction/{transactionId}
PATCH /wallet/{walletId}/transaction/{transactionId}/state
walletTransactionEntityUPDATE
TIER.MEMBERSHIP.ADJUSTAn existing Tier Membership was adjusted.PATCH /wallet/{walletId}/tier/membership/{tierMembershipId}/adjusttierMembershipEntity
tierMembershipTransactionEntity
UPDATE
CREATE
TIER.MEMBERSHIP.CREATEA new Tier Membership was created.POST /wallet/{walletId}/tier/{tierId}/membershiptierMembershipEntityCREATE
TIER.MEMBERSHIP.CREDITAn existing Tier Membership was credited.PATCH /wallet/{walletId}/tier/membership/{tierMembershipId}/credittierMembershipEntity
tierMembershipTransactionEntity
UPDATE
CREATE
TIER.MEMBERSHIP.DEBITAn existing Tier Membership was debited.PATCH /wallet/{walletId}/tier/membership/{tierMembershipId}/debittierMembershipEntity
tierMembershipTransactionEntity
UPDATE
CREATE
TIER.MEMBERSHIP.MOVEAn existing Tier Membership was moved to another Tier.PATCH /wallet/{walletId}/tier/membership/{tierMembershipId}/movetierMembershipEntity
tierMembershipTransactionEntity
UPDATE
CREATE