Banks will cash a money order if you have an account there, and most will cash one even if you don't — but the process and fees differ between the two
If you have a bank account, the simplest route is to go to your bank's teller window with the money order and your ID. The teller will verify the money order is legitimate, check that it hasn't already been cashed, and deposit it into your account or give you cash on the spot. Most banks do this for free if you're an account holder.
If you don't have an account at that bank, you can still cash a money order there, but many banks charge a fee — typically $5 to $15 — and some require you to have an account. A few banks will cash money orders for non-customers at no charge, but this varies by location and by the bank's policy. Call ahead before you go in.
The money order itself must be filled out correctly and signed by the person who bought it (the purchaser, not necessarily the person cashing it). If it's made out to you by name, bring ID that matches that name. If it's made out to "Cash," anyone can cash it, but the bank may still ask for ID.
Key Takeaways
- Account holders at a bank can usually cash a money order there for free by presenting it at the teller window with an ID.
- Non-account holders can often cash a money order at a bank, but many charge a fee of $5 to $15, and some refuse to do it.
- The money order must be signed by the purchaser and made out to you by name, or made out to "Cash" if anyone is allowed to cash it.
- You will need a government-issued ID that matches the name on the money order, and the bank will verify the money order hasn't already been cashed.
- If your bank won't cash it or charges too much, check a check-cashing store, grocery store customer service desk, or the post office as alternatives.
What the bank needs from you before cashing
Bring the money order itself and a government-issued ID — a driver's license, passport, or state ID card. The ID must match the name printed on the money order. If the money order is made out to your name, the name on your ID should match exactly. If it's made out to "Cash," most banks will still ask for ID to record who cashed it, even though anyone could technically cash it.
The money order must be signed on the back by the person who purchased it. If it's not signed, the bank will refuse to cash it. If you're cashing a money order that was sent to you, you don't sign it — the purchaser already did. You only sign it if you're the one who bought it and are now cashing it yourself.
How banks verify the money order is real
The teller will check the money order for signs of tampering or forgery — looking at the paper quality, the printing, and the security features. They will also look up the money order's serial number in the issuer's system to confirm it was actually issued and hasn't already been cashed. This verification usually takes a few minutes.
If the money order was issued by a major company like Western Union or MoneyGram, the bank can verify it quickly through their system. If it was issued by a smaller or less common issuer, verification may take longer or the bank may refuse to cash it on the spot. In that case, they may offer to deposit it into your account and hold it while they verify it — a process that can take 5 to 10 business days.
Fees and timing for account holders versus non-account holders
If you have an account at the bank, cashing a money order is almost always free. The teller will either deposit it into your account or hand you cash, and you walk out. The whole process takes 5 to 10 minutes.
If you don't have an account, the bank may charge you a fee to cash it. The fee is usually $5 to $15, depending on the bank and the amount of the money order. Some banks waive the fee if the money order is over a certain amount — say, $100 or more. A few banks will not cash money orders for non-account holders at all, no matter what you offer to pay.
Call your bank before you go in to ask whether they cash money orders for non-customers and what the fee is. If the fee is too high or they refuse, you have other options: check-cashing stores, grocery store customer service desks, and the post office all cash money orders, usually for a lower fee or for free.
What happens if the money order has already been cashed
If the bank's system shows the money order was already cashed, the teller will tell you and refuse to cash it again. This can happen if someone else cashed it without your knowledge, or if it was cashed twice by mistake. If you believe the money order was cashed fraudulently, contact the issuer (Western Union, MoneyGram, or whoever issued it) and file a claim.
The issuer will investigate and may refund the money to the original purchaser if fraud is confirmed. This process can take several weeks. In the meantime, contact the person who sent you the money order and let them know it was already cashed — they may need to file a claim on their end as well.
Alternatives if your bank won't cash it or charges too much
Check-cashing stores will cash a money order for a fee, usually $2 to $5 for a standard money order. They verify it the same way a bank does and often have faster turnaround. The downside is that check-cashing stores are less common in some areas and may charge more than a bank would.
Many grocery stores and drugstores offer money order cashing at their customer service desk, often for free or for $1 to $2. Walmart, Target, and similar retailers often cash money orders as well. The post office will cash a money order it issued, and some post offices will cash money orders from other issuers for a small fee.
If the money order is from Western Union or MoneyGram, you can also cash it at any Western Union or MoneyGram location — there are thousands across the country. These locations are often in grocery stores, pharmacies, or standalone shops. Fees vary but are usually $2 to $5.
What to do if the money order is damaged or illegible
If the money order is torn, stained, or faded so that key information is hard to read, the bank may refuse to cash it. The serial number and the amount must be clearly visible and readable. If the money order is damaged, contact the issuer and request a replacement. You'll need to provide proof of purchase or the original receipt.
The issuer will verify that the original money order was issued but not yet cashed, and will issue a replacement. This process usually takes 5 to 10 business days. In the meantime, you won't be able to cash the damaged money order at a bank or anywhere else.
Frequently Asked Questions
Can I cash a money order at a bank I don't have an account with?
Yes, most banks will cash a money order for non-account holders, but many charge a fee of $5 to $15. Some banks refuse to do it at all. Call ahead to ask about the fee and whether they will do it. If the fee is too high, try a check-cashing store, grocery store, or the post office instead.
What if the money order is made out to someone else's name?
If the money order is made out to a specific person's name, only that person can cash it — the bank will require ID matching that name. If the money order is made out to "Cash," anyone can cash it. If you need to cash a money order made out to someone else, ask that person to sign the back and write your name, then bring both your ID and theirs to the bank.
How long does it take to cash a money order at a bank?
If the money order is from a major issuer like Western Union or MoneyGram and you have an account at the bank, it usually takes 5 to 10 minutes. If you don't have an account or the issuer is smaller, it may take longer. Some banks will deposit it into your account and hold it for 5 to 10 business days while they verify it.
What if I lost the money order?
Contact the issuer when ready with the serial number (if you have it) and proof of purchase. The issuer will check whether it has been cashed. If it hasn't, they can issue a replacement. If it has been cashed, you may not be able to recover the money unless you can prove fraud.
Can I cash a money order without an ID?
No. Banks require a government-issued ID to cash a money order, even if it's made out to "Cash." The ID is used to verify your identity and to record who cashed it. If you don't have an ID, you won't be able to cash a money order at a bank.