Where you can cash a money order

You can cash a money order at a bank, credit union, grocery store, pharmacy, check-cashing service, or the U.S. Postal Service. The place you choose depends on where you have an account, how quickly you need the cash, and whether you want to deposit it instead of cashing it on the spot.

Banks and credit unions usually cash money orders for free if you have an account with them. Some will cash them even if you don't have an account, but may charge a fee of $1 to $5. Grocery stores and pharmacies with money services (like Walmart, CVS, or Kroger) cash money orders for a small fee, typically $0.50 to $3. The U.S. Postal Service cashes money orders it issued, and some post offices cash money orders from other issuers as well.

Check-cashing stores will cash any money order but usually charge the highest fees, ranging from $2 to $10 depending on the amount. If you want to deposit the money order into your bank account instead of receiving cash, most banks let you do this for free, either in person or by mobile deposit.

Key Takeaways

  • You need the money order itself, a valid government-issued ID, and sometimes your account number if you're depositing it rather than cashing it.
  • Banks and credit unions are usually free or cheapest if you have an account; grocery stores and pharmacies charge small fees and don't require an account.
  • The U.S. Postal Service cashes money orders it issued at any post office, and some post offices cash money orders from other issuers.
  • You can deposit a money order into your bank account instead of cashing it, which takes one to three business days but avoids carrying large amounts of cash.

What you need to bring

Bring the money order itself and a valid government-issued ID. Acceptable IDs include a driver's license, state ID card, passport, or military ID. The person cashing the money order must match the name on the ID.

If you're depositing the money order into a bank account instead of cashing it, you'll need your account number or debit card. Some banks let you deposit money orders through their mobile app by taking photos of the front and back, which is faster than going to a branch.

Check the back of the money order before you go. Some money orders have a section for the recipient to sign, and you must sign it before it can be cashed. If the money order is made out to someone else and they want you to cash it on their behalf, that person may need to sign the back and write "Pay to the order of" followed by your name, though policies vary by location.

How to cash it at a bank or credit union

Walk into any branch of your bank or credit union during business hours and tell the teller you want to cash a money order. Hand over the money order and your ID. The teller will check that the money order is legitimate, that it hasn't been altered, and that the amount and payee information are correct.

The teller will ask how you want the cash — in what denominations of bills. You can request all $20s, a mix of $20s and $5s, or any other combination. This usually takes five to ten minutes. If you have an account at that bank or credit union, there is no fee. If you don't have an account, ask about their fee before handing over the money order, as it varies by institution.

If you prefer not to carry cash, ask the teller to deposit the money order directly into your account instead. This is free and takes one to three business days to clear, depending on the bank's processing time.

How to cash it at a grocery store or pharmacy

Go to the customer service desk or money services counter at a grocery store or pharmacy that offers money order cashing. Stores like Walmart, Target, Kroger, Safeway, CVS, and Walgreens typically offer this service. Not every location does, so call ahead if you're unsure.

Hand the money order and your ID to the associate. They will verify the money order and process the transaction. The fee is usually $0.50 to $3 depending on the amount and the store's policy. You'll receive cash in return, typically within five minutes. Some stores limit the amount they will cash in a single transaction, so if your money order is for a large amount, ask about their maximum before you go.

How to cash it at the U.S. Postal Service

Take the money order to any U.S. Post Office. The Postal Service cashes all money orders it issued. If the money order was issued by another company, some post offices will cash it, but not all — call ahead to confirm.

Hand the money order and your ID to the postal clerk. They will verify that it's legitimate and hasn't been altered. There is no fee to cash a money order at the post office. The transaction usually takes five to ten minutes. You'll receive cash, and the clerk will record the transaction in the post office's system.

How to cash it at a check-cashing store

Check-cashing stores are open longer hours than banks and don't require you to have an account, but they charge the highest fees. Fees typically range from $2 to $10 depending on the amount of the money order and the store's policy.

Walk in with the money order and your ID. The clerk will verify the money order, check your ID, and process the cash-out. The transaction takes about five to ten minutes. Ask about the fee upfront so you know how much cash you'll actually receive. Some check-cashing stores also offer other services like bill payment or wire transfers if you need them.

What happens if the money order is damaged or lost

If the money order is damaged but still readable, most places will still cash it. If it's torn, stained, or partially illegible, the teller or clerk may refuse it or ask you to contact the issuer first to confirm it's legitimate.

If you've lost the money order, you cannot cash it. Contact the issuer (the bank, post office, or store where it was purchased) with your receipt or the money order number if you have it. The issuer can issue a replacement, though this usually takes several weeks and may require a fee. Keep your receipt when you buy a money order so you can request a replacement if needed.

Frequently Asked Questions

Do I have to cash a money order the same day I receive it?

No. Money orders don't expire, so you can cash them weeks or months after you receive them. However, the longer you wait, the higher the risk that the money order could be lost or damaged. It's generally safer to cash or deposit it within a few days of receiving it.

Can I cash a money order if it's made out to someone else?

Only if that person signs the back and writes "Pay to the order of" followed by your name. The person the money order is made out to must be present or have already endorsed it. The institution cashing it will require ID from the person whose name is on the front, or they may refuse the transaction.

What if I don't have a government-issued ID?

Most places require a valid government ID to cash a money order. If you don't have one, you may be able to deposit the money order into a bank account instead, which sometimes requires less documentation. Call your bank or the location where you plan to cash it and ask what forms of ID they accept.

Is it faster to cash a money order or deposit it?

Cashing it is faster — you get cash in five to ten minutes. Depositing it takes one to three business days because the bank has to verify it and clear the funds. Choose cashing if you need the money right away, and depositing if you're comfortable waiting and prefer not to carry cash.

Can I cash a money order online?

No. Money orders must be cashed or deposited in person. You can deposit some money orders through your bank's mobile app by photographing them, but you cannot cash them for physical currency online.