The hardware requirements for accepting cash/check deposits are far greater, and take up more space/cost.
ATMs run by private businesses are usually just intended as a convenient way to obtain cash, as that’s generally more heavily demanded than a point where an account holder could pay to deposit funds.
The money ATMs dispense belongs to whoever owns the ATM. Withdrawals from your bank account through an ATM are actually paid to the ATM company (plus the fee they charge for the service) after giving electronic proof that the money was dispensed.
But for deposits, banks have to physically receive your deposited money and cheques for them to be deposited into your account. Unless the ATM belongs to your bank, the logistics of actually dispersing cash to each seperate institution for *every* ATM everywhere would be prohibitively complex. No bank will accept the notion of crediting your account with funds, then maybe receiving the cash or cheque down the road if the company decides to pass it along. There are simply too many opportunities for fraud to occur.
Some ATMs *do* let you deposit cash and checks – you’ll see them especially often at banks, for use when the bank is closed (holidays, night, etc). They just pull the money out in the morning and double check.
For the rest: nowhere near as many people need to do that, or anywhere near as often, so ATM operators save space and cost by not adding expensive machinery to every ATM.
You can in India, somewhat lol, they’re called CDMs(cash deposit machines), some are deposit only, some do both deposits & withdrawal, have seen both types. But they’re quite rare, only 1-2 banks have them, and usually a local branch is nearer and people use them only when banks are closed. Some are inside large branches and available only during bank hours.
Roughly speaking, the difference in requirements between the two is the following:
Withdrawals only: The machine has to somehow authenticate you (card, pinpad, biometry), has to retrieve and update info on your balance, and count and dispense the cash. It doesn’t have to check that the cash inside is legit, the bank put it there. And it doesn’t have to check the note values because they are coming from pre-specified stacks.
Withdrawals + Deposits: it has to do all of the above plus take notes, reliably check if they are real, if they are whole, and what is their value amount. And to do this for a bunch of different kinds of bank notes of all values, ages and amounts of use. Then it has to redirect the notes to the correct stacks.
To do all that, hardware requirement is quite big. All sorts of sensors are needed to defeat counterfeiters (UV, magnetic, infrared, scanner, etc). Not only the hardware has an associated cost, but more complexity equals more maintenance.
The alternative is the machine taking envelopes, which would generate a reverse logistic to take the notes back to the bank from all the machines, and manually confirm the deposit there.
So anyway it’s much more complex, expensive, and demand from individuals for this service is quite low on the age of internet banking (though I can see why it’s convenient for cash businesses).
Latest Answers