Colombia ATM Issuer Fee Inquiries
For Mastercards issued in Colombia, cardholders who want to withdraw cash at Colombian ATMs are first shown the total amount of fees that will be applied to the withdrawal, and the cardholder decides whether to accept the fee or to cancel the transaction.
To display this fee, the ATM's acquirer sends an ATM fee inquiry to the issuer, and the issuer responds with the fee amount for that withdrawal. The issuer fee can be a flat per-transaction rate or a percentage of the withdrawal amount. The acquirer then adds any fees it intends to apply and displays the total to the cardholder. When the cardholder accepts the fee, the ATM sends a conventional ATM withdrawal request.
Transaction sequence
- At the ATM, the cardholder inputs the amount of cash to withdraw.
- The ATM acquirer sends an ATM Issuer Fee Inquiry to Galileo.
- Galileo verifies that the PIN and other information is correct.
- Galileo verifies that the account is eligible for an issuer-fee inquiry. Galileo will deny the request under these circumstances:
- If the
prod_id
for the account is not set up for ATM issuer-fee inquiries - If the request is coming from a country that is not eligible to make issuer-fee inquiries. In this case the originating country must be Colombia.
- Galileo does not determine whether there are sufficient funds for the transaction at this time.
- If the
- If you are using the Auth API, Galileo sends the Auth API message to you.
- The proposed amount of the cash withdrawal is in
trans_amount
. - Galileo populates the
fee_amount
field with the amount configured for the ATD fee, which can be either a flat amount or a percentage oftrans_amount
. - The Auth API message includes the
aifi_fields
object, which contains information specific to this request type. - You can deny the transaction if you determine that the account or transaction is not eligible for an ATM issuer-fee inquiry. You cannot deny the transaction for insufficient funds.
- The proposed amount of the cash withdrawal is in
- When approved, Galileo returns
response_code: 00
(success). - Galileo sends you the
AIFI: atm_issuer_fee_inquiry
event message withotype: A
. - The acquirer combines the issuer fee with any fees the acquirer will charge and presents the amount to the cardholder.
- The cardholder either accepts the fee or cancels the transaction.
- If the cardholder accepts, then the acquirer sends a conventional auth request for an ATM withdrawal.
- Galileo combines the ATM withdrawal amount from the ATM acquirer with the issuer fee to get the authorization amount.
- If there are insufficient funds, Galileo denies the withdrawal request and sends the
DAUT: denied_auth
event message. - If there are sufficient funds, Galileo approves the request and sends
BAUT: auth
withotype: W
.
- If there are insufficient funds, Galileo denies the withdrawal request and sends the
- A day or two later, Mastercard sends the settlement batch file. The withdrawal is included in the file but the inquiry transaction is not, because it is a non-financial transaction.
- Galileo posts the settlement for the withdrawal and sends the
SETL: setl
event message. The amount is the cash withdrawal plus any ATM acquirer fee. - Galileo posts the issuer fee separately and sends the
BFEE: fee
event message. Thefee_auth
field in the event message links the fee with theauth_id
of the original withdrawal.
Viewing the ATM issuer-fee inquiry
You can see the issuer-fee inquiries as follows:
The transaction type for the inquiry is AUA
(credit rails) or DBA
(debit rails).
This table shows the inquiry and withdrawal transactions that are returned by Get All Transaction History. Amounts shown in Colombian pesos.
- Beginning available balance — 10 000 000
- Withdrawal amount — 200 000
- Issuer fee — 15 000
- ATM operator fee — 10 000
amt | auth_id | trans_code | source_id | calculated_balance | auth_ts | |
---|---|---|---|---|---|---|
1 | 0 | 1111 | AUA | 1111 | 10 000 000 | 2025-03-10 09:00:00 |
2 | -225 000 | 1122 | DBW | 1122 | 9 775 000 | 2025-03-10 09:01:00 |
3 | 225 000 | BDW | 1122 | 10 000 000 | 2025-03-11 06:30:00 | |
4 | -210 000 | 1122 | SDW | 1122 | 9 790 000 | 2025-03-11 06:30:00 |
5 | -15 000 | 1122 | FE0013 | 5577 | 9 775 000 | 2025-03-11 06:30:00 |
- Row 1 — The ATM's acquirer sends an ATM Issuer-Fee Inquiry. There is no identifier to link this inquiry with the withdrawal.
- Row 2 — The cardholder accepts the fees, and the ATM sends a conventional ATM withdrawal request. As with other ATM withdrawals, the issuer fee (15 000.00) and the ATM fee (10 000.00) are included in the request amount.
- Rows 3–4 — The next day, Mastercard sends the settlement batch file with the ATM withdrawal. Galileo backs out the full amount and then posts the settlement for 210 000.00, which is the withdrawal amount plus the ATM fee.
- Row 5 — Galileo posts the issuer fee (15 000.00) as a separate transaction.
Auth API fields
If you are using the Auth API, you receive the aifi_fields
object:
"aifi_fields": {
"issuer_fee_inquiry_indicator": "01",
"pos_transaction_status": "8",
"issuer_fee_amt": "15000.00"
}
issuer_fee_inquiry_indicator
— From DE112SE35,01
indicates an issuer-fee inquiry requestpos_transaction_status
— From DE061SF7,8
indicates account-status inquiry (ASI) serviceissuer_fee_amount
— From DE112SE36, this is the issuer fee, which in the Galileo system is the ATD (domestic ATM) fee. This amount is displayed to the cardholder as the issuer fee.
These other fields in the Auth API are significant in an issuer-fee inquiry:
"auth_type": "Auth",
"transaction_type": "ATM",
"amounts": {
"trans_amount": "225000.00"
},
"network": "Mastercard",
"subnetwork": "Mastercard Banknet",
"mti": "0100"
trans_amount
— The amount the cardholder wants to withdraw from the ATM.mti
— 0100 if it arrives over Mastercard credit rails or 0200 if it arrives over Maestro rails.
Updated 10 days ago