← Back to home
#Banking Sep 27, 2026·3 min read

Where to Get a Money Order (and What It Costs)

DISCLOSURESome links earn us a commission. It never affects what we recommend — see how we test.

You can buy a money order at a post office, most Walmart stores, many grocery stores and pharmacies, and some banks. Walmart is usually the cheapest, at under $1. A single domestic money order is capped at $1,000, so larger payments need several money orders or a cashier's check.

Checked September 23, 2026.

Where to buy one

WhereTypical feePay withNotes
WalmartUnder $1Cash, debit cardIssued by Western Union at most stores
Post office (USPS)About $2.35–$2.65 up to $500; about $3.40–$3.75 up to $1,000 (check the counter price)Cash, debit card, traveler's checkWidely accepted, including by government agencies. No credit cards or personal checks
Grocery stores (Kroger, Publix, Safeway)Around $1–$1.50Cash, debit cardSome stores cap money orders below $1,000
Convenience stores and pharmaciesVaries, sometimes a percentageUsually cashCheck the fee before buying
Your bank or credit unionOften $5–$10From your accountMany credit unions charge less

For a full cost comparison, including cashier's checks, see the cheapest money orders and cashier's checks.

What to bring

  • The amount plus the fee, in cash or on a debit card. Most sellers don't accept credit cards, and card issuers that do usually treat it as a cash advance.
  • Photo ID for larger amounts. Federal anti-money-laundering rules require ID above certain thresholds, and many stores ask for it regardless.
  • The payee's exact name, so you can fill it in at the counter.

Filling it out

  1. Write the payee's name on the "Pay to" line straight away. A blank money order can be cashed by anyone.
  2. Add your name and address as the purchaser.
  3. Add a memo, such as an account number or "March rent," if the payee asked for one.
  4. Keep the receipt. It's the only way to track the money order or replace it if it's lost. USPS charges $23 to replace a lost or stolen money order.

Limits

The $1,000 cap applies to each money order, not to each visit. To pay $2,400 you'd buy three money orders and pay three fees. Some stores also set a daily total limit.

When a money order is the wrong choice

  • Over about $1,000. Several fees add up, and some payees won't accept a stack of money orders. A cashier's check is simpler.
  • For a house closing. Title companies usually want a wire. See ACH vs wire vs Zelle.
  • When a stranger asks for one. Overpayment scams often involve fake money orders. If someone sends you a money order for more than you're owed and asks for the difference back, it's a scam.

FAQ

Can I buy a money order online? Not from USPS or Walmart. Money orders are bought in person.

Do money orders expire? USPS money orders don't. Some other issuers start charging fees after a year or more if one isn't cashed.

Can I cancel a money order? If it hasn't been cashed, the seller can refund it when you bring the money order and receipt, sometimes for a fee.

PRIMARY SOURCES

Figures and rules in this article are checked against the official sources below. Where they disagree with us, they win.

  • USPS money orders page (limit
      ,000
    3 replacement fee
  • July 2026)
  • Walmart.com money orders page (fee under
      , Western Union)
    • USPS OIG report (MoneyGram and Western Union domestic limit
        ,000)
Share this article X LinkedIn Reddit
Recommended #Banking

You might also like

See all #Banking →
Continue the journey
Register for free and join BeginnerBull members
Pin what you're reading, get the Sunday brief, use the tools.
Join for free →