Yes, you can cash a money order at your bank, and it's usually the fastest route
Most banks will cash a money order if you have an account there, and many will cash one even if you don't—though non-customers often pay a fee. The process takes minutes if the money order is legitimate and properly filled out. You hand it to a teller, they verify it, and you walk out with cash or a deposit to your account. The real delays happen when the money order is damaged, missing information, or issued by a source the bank doesn't recognize.
Banks prefer money orders over personal checks because the funds are already may provide by the issuer—whether that's the U.S. Postal Service, Western Union, MoneyGram, or a retail chain like Walmart or 7-Eleven. There's no waiting for a check to clear. But the bank still needs to see the original document, verify the amount and payee match, and confirm it hasn't been altered or already cashed.
Key Takeaways
- Banks cash money orders at the teller window in minutes if you have an account and the money order is filled out correctly.
- Non-customers can usually cash money orders at a bank, but many charge a fee ranging from a few dollars to $10 or more.
- The money order must have the original signature of the issuer, your name as payee, and the amount written clearly—any alteration or missing information will be rejected.
- If the bank doesn't recognize the issuer or suspects fraud, they may refuse to cash it or place a hold while they verify it with the issuer.
- Retail locations and check-cashing services often cash money orders faster and cheaper than banks if you don't have an account.
What the bank needs to see before cashing
The money order must be filled out completely and correctly. The issuer's signature or watermark should be present and unaltered. Your name must appear as the payee—the person who can cash it. The amount should be written in both numbers and words, and they should match. If any of these are missing, blank, or don't line up, the teller will refuse it.
The money order also cannot be post-dated (dated in the future) or stale-dated (too old). Most money orders issued by the U.S. Postal Service are valid for one year from the date of issue. Western Union and MoneyGram money orders typically remain valid for one to three years, depending on the state and the specific product. After that window closes, you'll need to contact the issuer to request a replacement or refund.
Damage matters too. If the money order is torn, water-damaged, or has a section missing—especially the issuer's watermark or security features—the bank may reject it. Some banks will still process it but place a hold while they contact the issuer to verify it's legitimate.
Account holders versus non-customers
If you have a checking or savings account at the bank, cashing a money order is free and immediate. The teller verifies it, and you can take the cash or have it deposited. No fee, no hold, no questions beyond the standard verification.
Non-customers face a different experience. Some banks will cash a money order for anyone, but they charge a fee—typically $5 to $15, though it varies by bank and the amount of the money order. A few banks refuse to cash money orders for non-customers entirely. Call ahead if you don't have an account; it takes 30 seconds and saves a wasted trip.
If the bank won't cash it or the fee is too high, you have other options. The issuer itself—USPS, Western Union, MoneyGram—will cash or replace a money order at their locations or partner retailers. Walmart, 7-Eleven, and other check-cashing services also cash money orders, often with lower fees or no fee at all if you're a customer.
When the bank puts a hold on the money order
A hold means the bank accepts the money order but doesn't give you the cash immediately. Instead, they contact the issuer to verify the money order is real and hasn't already been cashed. This usually takes one to three business days, though it can take longer if the issuer is slow to respond or if the money order is from a source the bank doesn't work with regularly.
Banks place holds most often when the money order is from an unfamiliar issuer, the amount is large, or the money order shows signs of tampering. They're protecting themselves and you from fraud. Once the issuer confirms it's legitimate, the hold lifts and the money becomes available.
If you need the cash immediately and the bank puts a hold on it, ask if you can cash it at the issuer's location instead. USPS branches, Western Union agents, and MoneyGram locations typically cash their own money orders on the spot without a hold.
What happens if the money order is already cashed
If someone else already cashed the money order, the bank's system will flag it as a duplicate when they try to process it. The teller will tell you it's been paid and refuse to cash it. At that point, you need to contact whoever gave you the money order and ask for a replacement or refund.
If you believe the money order was cashed fraudulently—meaning someone forged your signature or altered the payee name—contact the issuer immediately. USPS, Western Union, and MoneyGram all have fraud investigation processes. You'll need to provide the money order number, the amount, and the date it was issued. The issuer will investigate and may issue a replacement if fraud is confirmed.
Cashing a money order without a bank account
You don't need a bank account to cash a money order, but your options are more limited and may cost more. Retail check-cashing services—found in many neighborhoods and strip malls—cash money orders for a fee, usually $2 to $5 for smaller amounts. Some charge a percentage of the money order's value instead of a flat fee.
The issuer's own locations are often cheaper or free. USPS branches cash postal money orders at no charge if you have the original. Western Union and MoneyGram agents cash their money orders, sometimes for free and sometimes for a small fee depending on the location. Walmart and 7-Eleven also cash money orders issued by their companies or by major issuers, often at no cost to customers.
If you're cashing a money order regularly, opening a basic checking account at a bank or credit union eliminates fees entirely and gives you a record of the transaction. Many banks offer no-fee checking accounts with no minimum balance.
Red flags that might get your money order rejected
Banks and check-cashing services watch for signs of fraud or alteration. The payee name has been scratched out or written over. The amount in numbers doesn't match the amount in words. The issuer's signature or watermark is missing or looks fake. The money order is creased, torn, or water-damaged in a way that obscures key information. Any of these will trigger a rejection.
Timing issues also cause rejections. If the money order is post-dated (dated in the future), the teller will refuse it until that date arrives. If it's stale-dated (older than the issuer's validity period), it's no longer valid and you'll need to contact the issuer for a replacement. If you're trying to cash it more than once, the system will catch the duplicate and refuse it.
If the money order is rejected, ask the teller or cashier why. If it's a simple fix—like a missing signature from the issuer—they may be able to contact the issuer and resolve it on the spot. If it's fraud or alteration, you'll need to contact whoever gave you the money order and report the problem.
Frequently Asked Questions
Do I need to endorse the back of a money order before cashing it?
Yes. Sign the back of the money order in the space marked for the payee's signature. Some banks will ask you to sign it in front of the teller; others will accept it already signed. Either way, your signature must be on it before the bank will cash it. If the money order is made out to someone else, they must sign it, not you.
What if the money order is made out to someone else but they want me to cash it?
The person whose name is on the money order must sign the back and be present when you cash it, or they must sign it and write "Pay to the order of [your name]" above their signature. This is called a third-party endorsement, and many banks no longer accept them due to fraud risk. Your safest option is to have the original payee cash it themselves and give you the cash, or have them deposit it into their own account and transfer you the money.
Can I cash a money order at an ATM?
No. ATMs do not accept money orders. You must go to a teller at a bank branch, a check-cashing service, or the issuer's location. Some banks offer mobile deposit for checks, but money orders cannot be deposited this way because they require verification of the issuer's signature and security features.
How long does it take to cash a money order at a bank?
If you have an account and the money order is filled out correctly, it takes five to ten minutes. If you don't have an account, it may take slightly longer because the teller needs to verify your identity. If the bank places a hold to verify the money order with the issuer, you won't have access to the cash for one to three business days.
What if the bank refuses to cash my money order?
Ask why. Common reasons are the money order is damaged, the payee name is missing or altered, it's post-dated or stale-dated, or it's already been cashed. If the bank simply doesn't recognize the issuer, try cashing it at the issuer's location instead—USPS, Western Union, MoneyGram, or the retail chain that issued it. If you believe the money order is legitimate but the bank won't cash it, contact the issuer directly to verify it and ask for guidance.