v1

latestOpenAPI 3.0.32026-07-243003151.2 MB
Services

Debit Loyalty Points and Create Wallet Transaction

This API method allows the calling application to Debit an EES AIR Account, Create an Account Transaction and create a DEBIT Wallet Transaction. 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). In very, very rare case when for some reason this negative balance auto-correction is enabled but it fails, EES AIR would perform an automatic ROLLBACK.
post/services/wallet/{walletId}/transaction/debit

Path parameters

walletIdstring string required

EES AIR Wallet ID

Request body

amountinteger required

Credit Amount, for monetary values denominated to the smallest currency value

accountIdstring string required

EES AIR Account ID

Example request

{
  "amount": 40,
  "accountId": "133121",
  "walletTransaction": {
    "meta": {
      "metaFoo": "metaBar"
    },
    "transactionDateTime": "2020-04-01T15:15:14+00:00"
  },
  "debitAccountTransaction": {
    "details": {
      "detailsFoo": "detailsBar",
      "reason": "A Reason #3"
    },
    "reasonCode": "AA"
  },
  "location": {
    "storeId": "32432"
  }
}

Response

Created

walletTransactionIdstring

Wallet Transaction ID

parentWalletTransactionIdstring

Parent Wallet Transaction ID

walletIdstring

Wallet ID

referencestring

Calling party's reference to this transaction

transactionDateTimestring

Calling party's Transaction Date Time

identityIdstring

Wallet Identity ID used for this transaction.

typestring

Wallet Transaction Type

status'ACTIVE' | 'SETTLED' | 'EXPIRED' | 'CANCELLED' | 'DELETED' | 'PURGED'

Wallet Transaction status

statestring

Wallet Transaction state

expiryDatestring

Wallet Transaction Expiry Timestamp (date-time), when transaction should expiry and automatically be settled.

channelstring

Channel used for Transaction creation or update

dateCreatedstring

Date this Wallet Transaction was created

lastUpdatedstring

Date this Wallet Transaction was last updated