Deduct

Deducts an amount from a wallet

This operation deducts the requested amount from a wallet using multiple authentication and context parameters.

REQUEST

PATH PARAMETERS

ParameterType & AttributesDescription
terminalIDstring, requiredOur partner issued terminal ID of the terminal requesting the transaction
referencestring, requiredThe reference of the wallet to deduct
requestAmountinteger, requiredThe amount to be deducted in cents
narrativestring, requiredA description of the terminal where the card was used
transactionTypestring, required2 character string identifying the type of transaction:
  • 00 = POS
  • 01 = ATM
  • 09 = Cashback at POS
  • 10 = AFT
  • 30 = Balance Inquiry (used only for acquirer fees applied on balance inquiry)
transactionDatastring, requiredExtra information about the transaction in a KLV Format
transactionIDstring, requiredTransaction ID number generated by the calling client. Note that the Transaction ID is not a unique value and may be duplicated over time
transactionDatedate, requiredTransaction date (in UTC) generated by the calling client
checksumstring, requiredHMAC-SHA256 hashed signature of the concatenated method name with all argument values using the terminal password as private key


<?xml version="1.0"?>
<methodCall>
  <methodName>Deduct</methodName>
  <params>
    <param><value><string>0068766621</string></value></param>
    <param><value><string>43172792905</string></value></param>
    <param><value><int>200</int></value></param>
    <param><value><string>KARINA FURNITURE CURACAO CUW</string></value></param>
    <param><value><string>00</string></value></param>
    <param>
      <value>
        <string>
          0021562702810000002100412000000000200026045712049038400850025003EMV25110MasterCard2530451122540025500
        </string>
      </value>
    </param>
    <param><value><string>401897</string></value></param>
    <param>
      <value>
        <dateTime.iso8601>20200817T17:58:57</dateTime.iso8601>
      </value>
    </param>
    <param>
      <value>
        <string>3139CDCE0C0457ADFA560295376C150D55C934E7</string>
      </value>
    </param>
  </params>
</methodCall>

RESPONSE

STATUS 200 OK

SCHEMA

FieldTypeDescription
resultCodeintegerStatus code indicating transaction result
approvalAmountinteger(Optional) When used in combination with result code 2, on transactions that support partial authorisation, the amount of the authorisation value to be partially approved in cents
actualBalanceinteger(Optional) Actual/settled balance in cents
balanceAmountinteger(Optional) Available balance in cents
addressVerificationResultinteger(Optional) Address Verification Result

<?xml version="1.0" encoding="UTF-8"?>
<methodResponse>
  <params>
    <param>
      <value>
        <struct>
          <member>
            <name>resultCode</name>
            <value><int>1</int></value>
          </member>
        </struct>
      </value>
    </param>
  </params>
</methodResponse>