Yes, most banks issue money orders, but not all branches carry them

Your bank can issue a money order if it offers them — but this is not may provide. Large national banks like Chase, Bank of America, and Wells Fargo typically stock money orders at most branches. Credit unions and smaller regional banks may not. The only way to know is to call your branch directly and ask whether they sell money orders, what the fee is, and whether you need an account to buy one.

If your bank does issue them, you can usually walk in during business hours with cash or a debit card and walk out with a money order in minutes. No application or waiting period. You fill out the form on the spot, pay the fee (usually $5 to $10), and the teller processes it immediately.

If your bank does not carry them, you have other options: the post office, Walmart, grocery stores with money services, and check-cashing businesses all sell money orders. The post office is often the cheapest for larger amounts.

Key Takeaways

  • Call your bank branch before you go — not all banks sell money orders, and availability varies by location.
  • You typically need cash or a debit card and a valid ID; most banks do not require an account.
  • The fee ranges from $5 to $10 depending on the bank and the amount of the money order.
  • If your bank does not carry them, the post office, Walmart, and grocery stores are faster alternatives than driving to another branch.
  • Money orders issued by banks are treated the same as those from other vendors — the issuer's name appears on the order, not your bank's.

What you need to bring to buy a money order at your bank

Bring a valid photo ID — a driver's license, passport, or state ID card. You do not need a bank account at that institution. You will need either cash or a debit card to pay for the money order and its fee.

Have the exact amount ready. You tell the teller how much the money order should be for, and they fill in that amount. The fee is separate — you pay both the face value of the money order and the bank's processing fee out of pocket.

Know who the money order is going to. You will need to provide the recipient's name (called the payee) so the teller can write it on the form. Some banks also ask for the reason for the money order, though this is optional information.

How the fee works and what it costs

Bank fees for money orders vary. Most charge between $5 and $10 per money order. Some banks charge a flat fee regardless of amount; others charge slightly more for larger orders. A few banks offer assistance programs orders to account holders, so if you have an account there, ask.

The fee is in addition to the face value. If you want to send $500, you pay $500 for the money order plus $5 to $10 for the fee — so $505 to $510 total comes out of your account or cash.

Compare this to other vendors before you go. The post office charges $1.45 for money orders up to $500 and $1.95 for $500 to $1,000. Walmart charges $0.88 to $1.24 depending on the amount. If you are sending a small amount, the post office or Walmart may save you money.

The difference between a bank money order and one from another vendor

A money order is a money order — the recipient does not care whether it came from your bank, the post office, or Walmart. They cash it the same way at their bank or check-cashing business. The issuer's name (your bank's name, or USPS, or Walmart) appears on the order, but that does not affect how the recipient uses it.

The main difference is the fee and how fast you can get one. Banks are convenient if you are already there, but they charge more. The post office is cheaper for amounts under $500. Walmart is the cheapest option overall and has longer hours than most banks.

All money orders — regardless of source — are safer than cash because they are traceable and can be replaced if lost or stolen. The recipient cannot cash it without endorsing it, so there is less fraud risk than with a personal check.

What happens if your bank does not sell money orders

Call ahead rather than showing up and being turned away. If your bank does not carry them, ask the teller where the nearest location that does is, or ask for a list of alternatives in your area.

The post office is your most reliable backup. Every post office sells money orders during business hours, and the fee is lower than most banks. You need a valid ID and cash or a debit card, just like at a bank.

Walmart, grocery stores with money services (like Kroger or Safeway), and check-cashing businesses are open longer than banks and post offices. Walmart locations are often open until 11 p.m. or midnight, making them useful if you need a money order outside normal business hours.

How long it takes to get a money order from your bank

If the bank has money orders in stock, the process takes 5 to 10 minutes. You fill out a form with the recipient's name and the amount, the teller processes it, and you leave with the money order in hand. No waiting, no approval process.

If the branch is busy, you may wait in line longer, but the actual transaction is quick. There is no delay like there would be with a wire transfer or ACH payment.

The money order itself is valid immediately. Once you hand it to the recipient, they can deposit or cash it at their bank or check-cashing business right away. There is no clearing period like there is with a personal check.

When a bank money order makes sense versus other options

Use your bank if you are already there for another reason and the fee does not bother you. If you have an account at the bank and they offer assistance programs orders to account holders, that is the cheapest option available to you.

Use the post office if you want the lowest fee and do not mind a slightly longer trip. The $1.45 fee for amounts under $500 is hard to beat, and post offices are in most neighborhoods.

Use Walmart or a grocery store if you need a money order outside of bank hours or want the fastest transaction. These locations have longer hours and shorter lines than most banks and post offices.

Do not use a check-cashing business unless it is your only option — their fees are typically higher than banks, the post office, and Walmart, sometimes reaching $15 or more per money order.

Frequently Asked Questions

Do I need a bank account to buy a money order from a bank?

No. Most banks sell money orders to anyone with a valid photo ID, whether or not you have an account there. Call your branch to confirm their policy, as a few smaller banks may have different rules.

Can I buy a money order with a credit card?

Most banks do not accept credit cards for money orders — they want cash or a debit card. Some post offices and Walmart locations may accept credit cards, but policies vary. Call ahead to confirm.

What if I lose the money order before I send it?

Contact the bank that issued it as soon as you realize it is missing. Bring your receipt and ID. The bank can cancel the original and issue a replacement, though there may be a small fee. This is why keeping your receipt is important.

Can I get a money order for more than $1,000?

Most banks and vendors cap individual money orders at $1,000. If you need to send more, you can buy multiple money orders. For very large amounts, a wire transfer or cashier's check may be faster and cheaper.

How do I know if the money order went through after I send it?

Ask the recipient to confirm they received and cashed it. Money orders do not have tracking like registered mail. If you need proof of delivery, ask the recipient for a photo of the cashed money order or a receipt from their bank.