Most banks will cash a money order if you have an account there, but non-customers face real limits

You can cash a money order at your own bank with no problem — that is the easiest route. If you do not have a bank account or want to cash it somewhere else, your options narrow. Many banks will cash a money order for non-customers, but they often charge a fee (usually $5 to $15) and may require the money order to be drawn on their own bank. Some will refuse outright. Your best bet outside a bank account is a check-cashing store, the issuer of the money order, or the post office if it was a USPS money order.

The speed and cost of cashing depend on where you go and whether you are a customer there. A bank account holder gets it done in minutes with no fee. A non-customer at a bank pays a fee and waits longer. A check-cashing store charges a percentage but does not ask as many questions. The issuer — Western Union, MoneyGram, or USPS — will always cash it for free, but you may have fewer locations nearby.

Key Takeaways

  • Bank account holders can cash money orders at their own bank with no fee and no questions asked.
  • Non-customers can sometimes cash money orders at a bank, but expect a fee of $5 to $15 and stricter rules about which money orders they will accept.
  • Check-cashing stores will cash almost any money order but charge 1 to 3 percent of the face value, which adds up on larger amounts.
  • The issuer of the money order — Western Union, MoneyGram, or USPS — will always cash it, though you may need to show ID and the original receipt.
  • Cashing a money order at a store where you do not have an account takes longer than depositing it, because the teller must verify the funds before handing over cash.

Cashing at your own bank with an account

If you have a checking or savings account at a bank, you can walk in and cash a money order the same way you would cash a check. No fee. No waiting period beyond the time it takes the teller to process it — usually a few minutes. The money order does not have to be drawn on that bank; your bank will accept any legitimate money order.

You will need to sign the back of the money order and show a photo ID. If the money order is made out to someone else, you cannot cash it — the payee (the person whose name is on the "Pay to the Order of" line) must be present and sign it, or they must sign it over to you in writing on the back. Some banks allow you to deposit a money order made out to someone else if that person has authorized it in writing, but cashing it for cash requires the payee to be there or to have signed it over.

Cashing at a bank where you do not have an account

Banks vary widely on whether they will cash money orders for non-customers. Some will; some will not. Those that do usually charge a fee and have stricter rules. Call ahead before you go in. Large banks like Chase, Wells Fargo, and Bank of America have different policies by branch, so even if one branch refuses, another might accept it.

If a bank agrees to cash it, expect to pay $5 to $15 depending on the bank and the amount. Some banks will only cash money orders that were issued by their own bank — for example, a Bank of America customer might cash a money order drawn on Bank of America, but the bank may refuse one from a smaller regional bank. You will still need to show ID and sign the back of the money order. The teller will verify the funds before handing over cash, which can take 10 to 20 minutes.

If you are a customer of a smaller bank or credit union, call your own bank first — they may have reciprocal agreements with other banks in their network that allow you to cash money orders at partner branches. Some credit unions belong to shared branching networks that extend cashing privileges to members of other credit unions in the same network.

Cashing at a check-cashing store

Check-cashing stores will cash almost any money order, no account required. They are faster than banks for non-customers and do not ask as many questions. The trade-off is cost: they typically charge 1 to 3 percent of the face value. On a $500 money order, that is $5 to $15. On a $1,000 money order, it is $10 to $30.

You will need to show a photo ID. Some stores may ask for a second form of ID or a thumbprint. The process usually takes 5 to 10 minutes. Check-cashing stores are common in urban areas and less common in rural ones, so availability depends on where you live. Fees vary by store and by location, so call ahead if you want to know the exact cost before you go in.

Cashing at the issuer: Western Union, MoneyGram, or USPS

The organization that issued the money order will always cash it, even if you do not have an account anywhere. Western Union and MoneyGram have thousands of agent locations — grocery stores, pharmacies, convenience stores, and dedicated offices. USPS money orders can be cashed at any post office. You will need the original money order and a photo ID. If you lost the receipt, bring the money order itself — the receipt is not required to cash it, only to track it if it was lost or stolen.

Processing usually takes 5 to 10 minutes. There is no fee to cash a money order at the issuer. If the money order is made out to someone else, that person must be present with ID, or they must have signed it over to you on the back. Some issuers are stricter about this than others; call ahead if you are unsure.

What happens if the money order is damaged or has a problem

A torn, water-damaged, or partially illegible money order may still be cashed, but the teller will take longer to verify it. Banks and check-cashing stores may refuse it outright and tell you to contact the issuer instead. The issuer can issue a replacement if the original is damaged, though you may need the receipt and proof of the original purchase.

If the money order is stale-dated (more than a year old in most cases), some banks and check-cashing stores will refuse it. USPS money orders are valid for two years; Western Union and MoneyGram do not expire. Call the issuer if you are unsure whether a money order is still valid. If a money order has been altered — if the amount or payee name has been changed — no one will cash it, and you should report it to the issuer immediately.

Depositing instead of cashing

If you have a bank account, depositing a money order is often faster and safer than cashing it. You can deposit it at an ATM, through mobile deposit (if your bank offers it), or at a teller window. Deposits usually clear within one to three business days, depending on your bank. You do not have to wait for cash on the spot.

Depositing also creates a record — the money order shows up in your account history. Cashing it means you walk away with physical cash, which leaves no paper trail and cannot be recovered if you lose it or it is stolen. If you need the cash immediately, cashing is your only option. If you can wait a few days, depositing is safer and often faster at an ATM.

Frequently Asked Questions

Can I cash a money order at Walmart or Target?

Walmart cashes money orders at its customer service desk for a small fee (usually $3 or less), but only if the money order was issued by Walmart Money Services. Target does not cash money orders. Check with your local store to confirm current policies, as they vary by location.

What if the money order has the wrong name on it?

If your name is not on the "Pay to the Order of" line, you cannot cash it unless the payee signs it over to you on the back. The person whose name is on the money order must sign it and write "Pay to the Order of [your name]" below their signature. Some banks and check-cashing stores will refuse a signed-over money order anyway, so the issuer is your safest option.

Do I need the receipt to cash a money order?

No. The receipt is useful only if the money order is lost or stolen and you need to file a claim. To cash the money order itself, you need only the money order and a photo ID. Keep the receipt in a safe place in case something goes wrong.

How long does it take to cash a money order?

At your own bank, 5 to 10 minutes. At a non-customer bank, 10 to 20 minutes because they verify the funds. At a check-cashing store or the issuer, 5 to 10 minutes. Depositing into your account is fastest if you use an ATM or mobile deposit — it takes seconds, though the funds may not be available for one to three business days.

Can I cash a money order if it is made out to a business?

Only if you are authorized to handle that business's money. Bring a letter from the business owner or a power of attorney document, plus your ID. Many banks and check-cashing stores will still refuse because the liability is unclear. The safest route is to have the business deposit it into their own account.