An ATM, or automated teller machine, is the cash machine where you withdraw cash using your debit card and PIN. Many ATMs in India also accept cash deposits. Some now let you withdraw cash without a card, by scanning a QR code on the screen with a UPI app.
Say you ask for ₹2,000 at an ATM. You insert your card and type your PIN. The keypad encrypts your PIN at once. This means it converts the PIN into a code that only the bank's systems can convert back. So even someone who taps the machine's cables cannot read your PIN. The ATM sends the request to the bank's payment hub. If the card belongs to another bank, the request travels over a network that connects the banks' ATMs, or over the card's card network. Your bank checks your balance in its core banking system, approves the withdrawal and debits ₹2,000. The ATM counts the notes and gives them to you. All of this takes a few seconds.
Sometimes the bank debits your account, but the machine fails to give you the cash. The RBI requires the bank to reverse the debit within five working days. If it is late, the bank must pay you compensation for each day of delay.
ATM software has two jobs. It runs the machine itself: the card reader, the keypad, the screen and the cash dispenser. It also reports the machine's condition to the bank. It tells the bank how much cash is left, and whether a part has failed.
The ATM business is changing. In the past, a bank bought its machines and ran them itself. Now, more and more banks pay a company to run the whole fleet of ATMs as a service. That company owns or maintains the machines, fills them with cash and repairs them. The bank pays a fee for each machine or each withdrawal. Some of the largest ATM companies build much of their software in Hyderabad and Mumbai.