ATM withdrawals
Increase cards support cash withdrawals at Automated Teller Machines (ATMs). Increase routes ATM transactions over three networks: Visa, Plus (Visa’s ATM network), and Pulse (Discover’s debit and ATM network).
An ATM withdrawal arrives in the Card Payment in one of two shapes: either a card_authorization entry followed by a card_settlement entry, or a single card_financial entry. Which shape arrives depends on the card. Integrations should handle both.
Identifying an ATM withdrawal
To distinguish ATM withdrawals from other Card Payments, check processing_category on a card_authorization, card_settlement, or card_financial entry. ATM withdrawals (and, less commonly, cash advances at a point of sale) use cash_disbursement.
You can subscribe to card_authorization.created, card_settlement.created, and card_financial.created Events to be notified as these entries are added to the Card Payment.
Single-message and dual-message processing
Card networks support two processing models. In dual-message processing, an authorization message (ISO 8583 0100) reserves funds, and a separate clearing file later posts the transaction. In single-message processing, one 0200 message both authorizes and clears the transaction at once. Visa supports both, and translates between them when the acquirer and issuer use different models.
Which one Increase receives depends on the card’s bank identification number (BIN), the prefix on the card number that identifies the issuer. See Launch a Card Program for background on Increase’s BIN types.
- Cards on Increase’s credit BINs use dual-message processing for all transactions, including ATM withdrawals. The withdrawal arrives as a
card_authorizationentry, and Increase records a matchingcard_settlemententry once Visa’s clearing file arrives. - Cards on Increase’s debit BINs use single-message processing for ATM withdrawals. The withdrawal arrives as a
card_financialentry that authorizes and clears in one step.
You don’t need to check the BIN to know which shape arrived. The entry types in the Card Payment make it clear.
The two models behave differently when an ATM fails to dispense cash. Under dual-message, the unsettled authorization can be reversed and no Transaction is created. Under single-message, the Transaction has already posted, so the reversal arrives as a separate offsetting entry, and the Account ends up with two opposing Transactions.
Finalization
A card_authorization entry triggers a hold on funds, not a posted Transaction. Increase represents the hold as a Pending Transaction on the Account. When the matching card_settlement entry arrives, the Pending Transaction completes and Increase posts a Transaction. Visa delivers its daily clearing file around 10:00 UTC each business day, so most ATM withdrawals settle within one business day.
A card_financial entry both authorizes and clears in one step. Increase posts the Transaction immediately.
A card_authorization entry can still be reversed before it settles. When that happens, Increase records a card_reversal entry and releases the Pending Transaction. No Transaction is ever created.
To confirm that a withdrawal completed, wait for a card_settlement or card_financial entry. A card_authorization entry on its own is a useful early signal, but be prepared to handle a subsequent card_reversal entry.
Interchange
ATM withdrawals invert the typical interchange flow on Visa. For ordinary card purchases, the merchant’s acquirer pays interchange to Increase. For ATM withdrawals, Increase pays interchange to the ATM operator’s acquirer.
Examples
A typical single-message withdrawal
- A user withdraws $100 from an ATM.
- A
card_paymentis created. It includes acard_financialentry for $100 withprocessing_categoryofcash_disbursement. - A
transactionis created for -$100 on the Account.
A typical dual-message withdrawal
- A user withdraws $100 from an ATM.
- A
card_paymentis created. It includes acard_authorizationentry for $100 withprocessing_categoryofcash_disbursement. - A
pending_transactionfor -$100 is created on the Account to hold the funds. - The following morning, a
card_settlemententry is created for $100. - The
pending_transactionfor -$100 completes. - A
transactionis created for -$100 on the Account.
A failed dual-message withdrawal
- A user attempts to withdraw $100 from an ATM.
- A
card_paymentis created. It includes acard_authorizationentry for $100 withprocessing_categoryofcash_disbursement. - A
pending_transactionfor -$100 is created on the Account to hold the funds. - The ATM fails to dispense cash.
- A
card_reversalentry is received for $100. - The
pending_transactionis released, and notransactionis created.