Most banks offer money orders, but not all locations stock them, and some charge fees you may not expect

Yes, you can get a money order from your bank if it offers them. Major banks like Chase, Bank of America, Wells Fargo, and Citibank all sell money orders at most branches. However, availability varies by location—some smaller branches or rural areas may not keep them in stock, and you may need to order one in advance. Banks typically charge between $5 and $10 per money order, though some offer them free to certain account holders or for orders under a certain amount.

The process is straightforward: you walk into a branch during business hours, tell the teller you want a money order, provide the amount and the recipient's name, and pay the fee plus the money order value. You'll need a valid ID and funds in your account or cash on hand. The teller will fill out the money order and give you a receipt. The whole transaction usually takes five to ten minutes.

Key Takeaways

  • Not every bank branch stocks money orders, so call ahead or check your bank's website to confirm availability at your location.
  • Bank money orders typically cost $5 to $10 each, though some banks waive the fee for customers with certain account types.
  • You need a valid ID and the recipient's name to purchase a money order at your bank.
  • If your bank doesn't offer money orders or the branch is closed, grocery stores, post offices, and check-cashing services are faster alternatives.
  • Money orders are safer than cash or personal checks because they're backed by the bank and can be traced if lost or stolen.

When your bank branch may not have money orders in stock

Smaller branches, especially in rural areas, sometimes don't keep money orders on hand. If you need one urgently, call your branch first to confirm they have them available. Many banks allow you to order a money order by phone and pick it up the next business day, though this defeats the purpose if you need it immediately.

If your branch doesn't offer money orders at all, ask the teller where the nearest location is that does. Some banks have a central location that handles money orders for multiple branches. Alternatively, you can get one from the post office, a grocery store, or a check-cashing service—all of which are often faster and may charge less.

What information you need to provide

The teller will ask for the recipient's name (the person or business the money order is being sent to) and the amount. You'll also need to show a valid ID—a driver's license, passport, or state ID card. If you're paying with cash, bring exact change or be prepared for the teller to give you change back.

You do not need to have an account at the bank to buy a money order there, though some banks prefer it. If you don't have an account, ask the teller whether they'll accept cash or if you need to open one. Most major banks will sell you a money order without an account, but smaller regional banks may have different policies.

How fees work and which banks charge less

Bank money order fees range from free to $10 per order. Chase typically charges $5 to $10 depending on the branch and account type. Bank of America charges around $5 to $7.50. Wells Fargo charges $5 to $10. Credit unions often charge $1 to $3, making them a cheaper option if you're a member. Some banks waive the fee entirely if you maintain a minimum balance or have a premium account.

Call your bank directly or check their website to find out the exact fee at your branch. The fee is separate from the money order amount—if you want to send $500, you'll pay $500 plus the fee. This is why it's worth comparing: if you need multiple money orders, a credit union or the post office might save you money.

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

If the branch has money orders in stock, the transaction takes five to ten minutes. The teller fills out the money order with the recipient's name and amount, you sign it, and you receive a receipt. You can walk out with it immediately and mail it or deliver it the same day.

If the branch doesn't have them in stock, you may be able to order one over the phone and pick it up the next business day. Some banks can also mail you a money order, though this takes three to five business days. If you need one urgently and your bank can't provide it same-day, go to the post office or a grocery store instead—both typically have them available immediately.

Why a bank money order is safer than cash or a personal check

A money order is backed by the bank that issues it, which means the recipient is may provide to receive the funds. If you send cash through the mail, it can be lost or stolen and you have no recourse. If you write a personal check, it can bounce if you don't have enough funds, or the recipient may not trust it.

A money order also leaves a paper trail. The bank records the transaction, and you receive a receipt with a tracking number. If the money order is lost or stolen before the recipient cashes it, you can contact the bank and request a replacement. This is why money orders are often required for security deposits, court payments, or sending money to someone you don't know well.

Alternatives if your bank doesn't offer money orders or is closed

The U.S. Postal Service sells money orders at every post office, typically for $1.45 to $2.45 depending on the amount. Grocery stores like Walmart, Target, and Kroger sell them for $0.70 to $3 per order. Check-cashing services and convenience stores also offer them, usually for $1 to $5. All of these options are faster than ordering from your bank if the branch doesn't have them in stock.

If you need a money order outside business hours, a 24-hour Walmart or grocery store is your best bet. Post offices have limited hours, and banks are only open during the day. The trade-off is that non-bank money orders may have lower maximum amounts—most cap out at $500 to $1,000 per order, whereas banks may allow higher amounts.

Frequently Asked Questions

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

No. Most major banks will sell you a money order without an account, though you'll need a valid ID and cash or debit card to pay. Some smaller regional banks may require an account, so call ahead to confirm your bank's policy.

What happens if I lose a money order before I cash it?

Contact the bank that issued it immediately with your receipt and tracking number. The bank can place a stop on it and issue a replacement, though this process may take several days. This is why keeping your receipt is important—without it, the bank may not be able to help you.

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

Banks can issue money orders for amounts higher than $1,000, but post offices and grocery stores typically cap them at $500 to $1,000 per order. If you need to send more, you can purchase multiple money orders or use a bank wire transfer instead.

How long does a money order stay valid?

Money orders don't expire, but banks may stop honoring them after a certain period—typically two to three years. If a money order is very old, the recipient should contact the issuing bank to verify it's still valid before trying to cash it.

Is a money order the same as a cashier's check?

No. A cashier's check is drawn on the bank's account and is typically used for larger amounts. A money order is prepaid and is better for smaller transactions. Cashier's checks are more formal and may be required for real estate transactions, while money orders are common for bills, deposits, and smaller payments.