Banks sell money orders at the teller window, usually for a flat fee between $5 and $10

Walk into your bank branch during business hours with cash or a debit card. Tell the teller you want to buy a money order. They will ask you for the name of the person or business the money order is payable to (the payee), the amount, and your identification. You hand over the cash or they charge your debit card, they print the money order, and you walk out with it. The whole process takes about five minutes.

Not all banks offer money orders at all branches. Call ahead or check your bank's website to confirm the branch you plan to visit has them in stock. Some smaller branches or online-only banks do not sell them at all.

The fee varies by bank. Chase charges $5 for a money order up to $1,000. Bank of America charges $5 for amounts up to $500 and $10 for $500 to $2,500. Credit unions often charge $1 to $3. Ask what your bank charges before you buy, because the fee is not refundable if you change your mind.

Key Takeaways

  • You need a valid ID and either cash or a debit card linked to your account to buy a money order at your bank.
  • The payee name must be written on the money order at the time of purchase and cannot be changed afterward.
  • Bank money orders cost $5 to $10 depending on the amount and the bank, and this fee is not refundable.
  • Money orders from banks are safer than cash for mailing because they can be replaced if lost or stolen, but only if you kept your receipt.
  • Not every bank branch stocks money orders, so call or check online before you go.

What information you need to bring

Bring a valid photo ID—a driver's license, passport, or state ID card. The teller will check it before selling you the money order. If you do not have photo ID, some banks will turn you away. A few will accept other forms of ID like a utility bill or bank statement, but this is rare and varies by branch.

You also need to know the exact name of the person or business you are paying. This is the payee. Write it down or have it ready on your phone. The name on the money order must match exactly how the recipient's bank account or business is registered, or they may have trouble depositing it. If you are unsure of the exact spelling or legal name, ask the recipient before you go to the bank.

Bring the amount in cash, or use a debit card tied to your bank account. Credit cards are not accepted. If you are buying a money order for more than $2,500, some banks require you to call ahead or fill out extra paperwork.

How the money order is filled out

The teller fills in most of the money order for you. They print the amount, the payee name, the date, and a tracking number. You sign the back as the purchaser (the person buying it). Do not sign the front—that is where the payee signs when they cash or deposit it.

Some banks let you request a specific money order number, but most do not. The tracking number is printed automatically and is how you can look up the money order later if it goes missing.

You will receive a receipt. Keep this receipt. If the money order is lost or stolen before the payee cashes it, you will need the receipt and tracking number to request a replacement. Without the receipt, the bank cannot help you.

Money orders versus cashier's checks from your bank

Banks also sell cashier's checks, which work similarly but are different. A cashier's check is drawn on the bank's own account, while a money order is a prepaid instrument. For amounts under $1,000, a money order is usually cheaper and faster. For larger amounts or formal transactions like a down payment on a house, a cashier's check is more standard and carries more weight.

Cashier's checks typically cost $10 to $15 and take longer to process because the bank has to verify your account balance. Money orders are when ready—you pay the fee and walk out with it. If you need the funds to reach someone today or tomorrow, a money order is the faster choice.

What happens after you buy it

You can hand the money order to the recipient in person, mail it, or give it to them electronically if they have a way to deposit it remotely (some banks now allow mobile deposit of money orders). The recipient takes it to their bank and deposits it like a check. It usually clears within one to three business days, depending on their bank.

If you mail a money order, use tracking or send it in a way that requires a signature. Money orders can be cashed by anyone who has them, so if it is lost in the mail, the recipient will not receive the funds and you will have to request a replacement from your bank.

If the payee never deposits the money order and you need the funds back, you cannot straightforward cancel it. You have to request a refund from your bank using the receipt and tracking number. This process takes one to two weeks and the bank may charge a fee to process the refund request.

When a bank money order makes sense

Use a bank money order when you need to send money to someone who does not have a bank account, when the recipient specifically requests one, or when you want a record of payment that is safer than cash. Landlords, utility companies, and government agencies often accept money orders.

Do not use a money order if you can use a bank transfer or ACH payment instead—those are free and faster. Do not use a money order if you are unsure of the payee's exact name, because you cannot change it after purchase. Do not use a money order for very large amounts; a cashier's check or wire transfer is more appropriate.

Frequently Asked Questions

Can I buy a money order without a bank account?

No. You need to be a customer of the bank to buy a money order there. If you do not have a bank account, you can buy money orders at grocery stores, pharmacies, or check-cashing services, though the fees are often higher ($2 to $5 per order).

What if I make a mistake on the money order?

If the teller makes a mistake before printing, tell them when ready and they will void it and issue a new one. If you sign it and then realize the payee name is wrong, you cannot fix it. You will have to request a refund and buy a new one, and the bank may charge a fee for the refund.

How long does a money order stay valid?

Money orders do not expire, but banks may charge a fee to issue a replacement if one has not been cashed after a certain period—usually one to three years. Check with your bank about their policy. Keep your receipt so you can request a replacement if needed.

Can I get a refund if I change my mind?

Yes, but it is not automatic. You have to go back to the bank with your receipt and request a refund. The bank will charge a fee (usually $5 to $10) to process the refund, and it takes one to two weeks. The refund goes back to the payment method you used—cash, debit card, or account withdrawal.

What if the money order is lost or stolen?

Contact your bank when ready with your receipt and tracking number. The bank will put a stop on it so no one else can cash it, and will issue a replacement. This process takes one to two weeks. Without your receipt, the bank cannot help you and the money order can be cashed by whoever has it.