Yes, banks cash money orders, but you need the right account and the right paperwork

Most banks will cash a money order if you have an account with them. Some will cash one even if you don't, though they may charge a fee or require you to deposit it instead of taking cash. The process takes minutes if the money order is legitimate and properly filled out — but if something is wrong with it, the bank can refuse and you'll have to track down the issuer to get it corrected.

The key difference between cashing and depositing matters: cashing means you walk out with cash in hand. Depositing means the money goes into your account and you can withdraw it later. Banks prefer deposits because they reduce their cash handling costs, so some will push you toward that option or charge you to cash instead.

Key Takeaways

  • Banks that issue money orders (like Western Union or MoneyGram locations inside banks) will almost always cash them for account holders without a fee.
  • A money order must be made payable to you by name, properly signed by the sender, and have the correct amount filled in — if any of these are wrong, the bank will refuse it.
  • If you don't have an account at that bank, you may still cash the money order, but expect a fee of $3 to $10 or a requirement to deposit it instead.
  • The money order issuer's name appears on the front (Western Union, MoneyGram, USPS, or your bank's name) — you'll need to go to that issuer or a location that handles them.
  • If the money order is damaged, altered, or missing information, the bank will refuse it and you'll need to contact the issuer for a replacement.

What information the bank needs to see on the money order

The money order must have your name printed or written in the "Payee" field — the line that says who the money is for. If it's blank, made out to someone else, or has a name that doesn't match your ID, the bank will not cash it. Some banks will let you sign the back if the payee line is blank, but this varies by bank and is not reliable — it's better to have the sender correct it before you try to cash it.

The sender must have signed the money order on the line marked "Purchaser" or "From" — usually on the back or bottom. If that signature line is blank, the bank will refuse it. The amount filled in on the front must match the amount written out in words (if there is a words line), and both must be legible. If the numbers don't match or one is missing, the bank treats it as incomplete and will not process it.

Check that the money order has not been altered — no crossed-out amounts, no stickers or tape covering information, no water damage that makes it hard to read. Banks scan these for fraud, and anything that looks tampered with will be flagged and refused.

Cashing at the bank that issued the money order

If the money order was issued by your bank (or by a service like Western Union or MoneyGram that operates inside your bank), go to that same bank or location. Account holders can almost always cash it on the spot with no fee. Non-account holders may be charged $3 to $10 or asked to deposit it instead of taking cash.

Bring your government-issued ID — a driver's license, passport, or state ID card. The teller will compare the name on the money order to the name on your ID. If they match, and the money order is properly filled out, the teller will process it and hand you cash or ask if you want to deposit it.

If you're cashing a money order issued by USPS (a postal money order), you can cash it at any bank, but not all banks handle them. Call ahead or ask at the teller window whether they cash postal money orders, because some smaller banks or branches do not.

Cashing at a bank where you don't have an account

Banks are not required to cash money orders for non-customers. Some will do it for a fee (usually $3 to $10), some will ask you to open an account or deposit the money instead, and some will refuse outright. Your best bet is to call the bank's main number and ask whether they cash money orders for non-account holders, and what the fee is.

If the money order was issued by a service like Western Union or MoneyGram, you can also take it to any Western Union or MoneyGram agent location — these are often in grocery stores, pharmacies, or check-cashing shops, not just banks. They will cash it for a fee, usually $1 to $5 depending on the amount.

If you have a choice, cashing at the issuing bank or service is faster and cheaper than going to a different bank. A different bank may also put a hold on the funds if you deposit rather than cash, meaning you won't have access to the money for one to three business days.

What happens if the money order is damaged or incomplete

If the money order is torn, water-damaged, faded, or missing key information (the amount, the payee name, or the sender's signature), the bank will refuse to cash it. You cannot fix these problems yourself — you have to contact the issuer and request a replacement.

To get a replacement, you'll need the receipt or confirmation number from when the money order was purchased. If you don't have it, you'll need the sender to provide it. Call the issuer's customer service line (the number is usually on the money order itself) and explain that the money order is damaged or incomplete. They will verify the purchase and issue a replacement, which usually takes one to two weeks by mail, though some issuers offer faster options for a fee.

If the money order was lost or stolen before you received it, the issuer can also issue a replacement, but you'll need proof that you reported it (a police report or a written statement). This process takes longer and may require the original purchaser to file the claim.

Money orders that are old or have been stopped

Money orders do not expire in the legal sense — a bank must honor a valid money order no matter how old it is. However, some issuers (like Western Union or MoneyGram) may charge a fee to cash a money order that is more than a year old, or they may require you to contact them first to confirm it is still valid.

If the sender reported the money order as lost or stolen and requested a stop payment, the bank will refuse to cash it. The sender can only stop payment if they still have the receipt and contact the issuer within a certain window (usually 30 days for most issuers, though this varies). If a stop payment has been placed, you'll need to contact the sender and ask them to cancel the stop so you can cash it, or ask them to purchase a new one.

Fees and timing

If you have an account at the bank that issued the money order, cashing it is free and takes five to ten minutes. If you don't have an account, expect a fee of $3 to $10, depending on the bank and the amount. Some banks waive the fee if the amount is over a certain threshold (like $500), so it's worth asking.

If you deposit the money order instead of cashing it, most banks will not charge a fee, but they may place a hold on the funds. A hold means the money is in your account but you cannot withdraw it for one to three business days while the bank verifies the money order is legitimate. Large deposits (over $5,000) are more likely to trigger a hold.

The actual processing time — from when the teller takes the money order to when the funds clear — is usually one to three business days. You'll see the deposit in your account right away, but if there is a hold, you won't be able to use the money until the hold lifts.

Frequently Asked Questions

Can I cash a money order at any bank?

No. You can cash it at the bank or service that issued it, or at any bank where you have an account. Other banks may refuse or charge a fee. If the money order was issued by Western Union or MoneyGram, you can also cash it at any Western Union or MoneyGram agent location, which are often in grocery stores or pharmacies.

What if the money order is made out to the wrong name?

The bank will not cash it. You need to contact the sender and ask them to get a replacement made out to the correct name. Some issuers will reissue a money order if the sender still has the receipt and contacts them within a short window, but this varies by issuer.

Do I need an ID to cash a money order?

Yes. The bank will ask for a government-issued ID (driver's license, passport, or state ID) and will compare the name on the ID to the name on the money order. If they don't match, the bank will refuse to cash it.

Can I deposit a money order instead of cashing it?

Yes. Most banks will deposit a money order into your account for free, though they may place a hold on the funds for one to three business days. Depositing is often faster and cheaper than cashing if you don't need the cash immediately.

What if the money order is really old?

Money orders do not expire legally, so a bank must honor it. However, some issuers charge a fee to cash very old money orders (over one year old) or may require you to contact them first. Call the issuer's customer service number to confirm the money order is still valid before you go to the bank.