The basic process: buy, fill out, and deliver

To send a money order, you buy one at a retail location, write in the recipient's name and your information, and then mail it or hand it to them. The whole process takes about 10 minutes at the counter. You pay the money order amount plus a small fee — usually between $1 and $5 depending on where you buy it and how much you're sending.

Money orders work because they're prepaid. Once you hand over the cash and fill in the recipient's name, that person is the only one who can cash it. This makes them safer than sending cash through the mail, and safer than giving someone a personal check if you don't have a bank account.

The steps below walk you through each part of the transaction, from finding a place to buy one to making sure it reaches the right person.

Key Takeaways

  • You can buy money orders at post offices, grocery stores, Walmart, check-cashing stores, and banks — each charges a different fee.
  • Fill in the recipient's name on the "Pay to the Order of" line; if you get it wrong, the money order is nearly impossible to fix.
  • Write your name and address in the "From" section so the recipient knows who sent it and can contact you if there's a problem.
  • Keep your receipt until the recipient confirms they received and cashed the money order.
  • Money orders sent by mail typically arrive within 7 to 14 days, though delivery time depends on postal service speed.

Step 1: Decide where to buy your money order

You have several options for where to purchase a money order, and the fee varies at each location. The United States Postal Service (USPS) charges $1.45 for money orders up to $500 and $1.95 for $500.01 to $1,000. Walmart typically charges $0.70 to $0.98 depending on the amount. Most grocery store chains charge between $1 and $2. Check-cashing stores and payday loan shops often charge $2 to $5 or more.

Banks and credit unions sometimes sell money orders to their customers for a small fee or free, but policies vary widely. Call ahead if you bank somewhere — you may save money. If you don't have a bank account, USPS and Walmart are usually the cheapest options and don't require membership.

Choose a location that's convenient and open during hours you can visit. You'll need to bring cash or a debit card, since most places won't accept personal checks for money order purchases.

Step 2: Bring cash and know the amount

Have the exact amount of money ready in cash or be prepared to pay with a debit card. The money order itself will be for whatever amount you specify — if you want to send $150, you'll pay $150 plus the fee. Most places won't let you buy a money order for more than $1,000, though you can buy multiple money orders if you need to send more.

Bring a little extra cash to cover the fee. If you're unsure of the exact amount, ask the clerk before you hand over money. Once you've paid, the transaction is complete and you own the money order.

Step 3: Fill in the recipient's name correctly

The most important line on a money order is "Pay to the Order of." Write the recipient's full name here — the name they use to cash checks or withdraw money from their bank account. If you write the wrong name or spell it incorrectly, the money order becomes very difficult to fix. The recipient won't be able to cash it, and you'll have to contact the issuer to request a replacement, which can take weeks.

Use a pen, not a pencil. Write clearly and stay within the lines. If you make a mistake, ask the clerk for a new money order rather than trying to cross out and correct the name. Most places will issue a replacement without charging an additional fee if the error was made before you left the counter.

Step 4: Fill in your information in the "From" section

Write your full name and address in the section labeled "From," "Purchaser," or "Sender" — the exact label varies by money order issuer. This tells the recipient who sent the money order and gives them a way to contact you if something goes wrong, such as if they never receive it in the mail.

Some money orders also have a line for a memo or reference number. You can leave this blank or write a brief note like "Rent" or "Invoice #12345" so both you and the recipient have a record of what the money order was for.

Step 5: Keep your receipt and send or deliver the money order

The clerk will give you a receipt that shows the money order number, the amount, the fee you paid, and the date. Keep this receipt in a safe place until the recipient tells you they've cashed the money order. If the money order is lost in the mail or never arrives, you'll need the receipt number to file a claim with the issuer.

You can mail the money order or hand it directly to the recipient. If you mail it, put it in an envelope with other papers so it's not obvious what's inside. Don't send cash through the mail, but a money order is reasonably safe. Standard mail typically takes 3 to 5 business days for local delivery and 5 to 14 days for cross-country mail, though times vary by location and postal service speed.

Once the recipient cashes the money order, ask them to let you know so you can discard your receipt. If weeks pass and they haven't received it, contact the issuer with your receipt number to report it missing and request a replacement.

Common mistakes to avoid

The biggest mistake is writing the wrong name on the "Pay to the Order of" line. Once that's done, you can't straightforward cross it out — the money order is invalid. Always double-check the spelling and make sure you're using the name the recipient actually goes by.

Another common error is forgetting to fill in the "From" section. Without your name and address, the recipient won't know who sent it, and if there's a problem, they won't be able to contact you. It also makes it harder to trace the money order if it's lost.

Don't assume the money order arrived just because you sent it. Mail gets lost sometimes. Ask the recipient to confirm they received it and cashed it before you throw away your receipt. If you're sending it to someone you don't know well, consider using a delivery method that requires a signature, such as certified mail through USPS.

Frequently Asked Questions

What's the difference between a money order and a cashier's check?

A money order is smaller (usually capped at $1,000), costs less, and can be bought with cash at many retail locations. A cashier's check is issued by a bank, can be for any amount, costs more, and requires a bank account. For sending under $1,000, a money order is usually simpler and cheaper.

Can I cancel a money order after I've bought it?

Yes, but it's complicated. You'll need your receipt and the money order number. Contact the issuer (USPS, Walmart, your bank, etc.) and request a refund. They'll charge a fee — usually $1 to $5 — and may take several weeks to process. It's easier to avoid buying the wrong amount in the first place.

What if the recipient loses the money order before cashing it?

They can contact the issuer with the money order number (which is on your receipt) and request a replacement. The issuer will verify that the original hasn't been cashed and issue a new one. This is why keeping your receipt is important — you can provide the number if the recipient asks.

Can I send a money order internationally?

USPS sells international money orders, but they work differently than domestic ones and have lower limits (usually $700). Many other countries don't accept U.S. money orders at all. For sending money abroad, wire transfers or international money transfer services are usually more practical.

Is it safe to mail a money order?

Money orders are safer than cash because they're made out to a specific person and can't be cashed by anyone else. However, mail can still be lost or stolen. If you're sending a large amount, consider using certified mail with signature confirmation so you have proof of delivery.