Where to buy a money order
You can buy a money order at most banks, credit unions, post offices, grocery stores, and convenience stores. The easiest option depends on where you already do business — if you have a checking account, your bank probably sells them over the counter during business hours. If you don't bank anywhere, the nearest grocery store or 7-Eleven usually has them available.
Post offices sell money orders at every location, and they're open on Saturday mornings in most places. Walmart and other large retailers also sell them, usually at the customer service desk. Call ahead if you're going somewhere unfamiliar, because a few smaller locations don't carry them.
The cost varies by where you buy. Banks and credit unions typically charge $5 to $10 per money order. The post office charges around $1.45 for domestic money orders (prices vary slightly by region). Grocery stores and convenience stores usually fall in the $1 to $3 range. If you need several money orders, the post office is almost always cheapest.
Key Takeaways
- Money orders are sold at banks, post offices, grocery stores, and convenience stores, with post offices usually charging the least.
- You'll need cash or a debit card to buy one, and the amount you want to send (most places have a $1,000 limit per order).
- Fill in the recipient's name, your name and address, and the amount before you leave the counter — the seller won't do this for you.
- Keep your receipt until the money order is cashed, because you'll need it to track or cancel the order if something goes wrong.
- Money orders take 3 to 7 business days to clear once the recipient deposits them, so they're not instant like a wire transfer.
What you need to bring
Bring cash or a debit card. Most places that sell money orders won't take credit cards, and some won't take checks. If you're buying at a bank where you have an account, you can usually pay from your checking account, but call first to confirm.
You don't need an ID to buy a money order at most retailers, but banks and the post office may ask for one. Bring your driver's license or state ID just in case. If you're sending the money order to someone, have their full name and mailing address ready — you'll write this on the money order itself.
How to fill out a money order
The seller will hand you a blank money order form. You fill it out, not them. Write the amount you want to send in the box labeled "Amount" — use both numbers and words (for example, "$50.00" and "Fifty Dollars"). Write clearly in pen, not pencil.
In the "Pay to the Order of" line, write the full name of the person or business receiving the money. Use their legal name if you know it — a nickname or partial name can cause the recipient trouble when they try to cash it. On the line marked "Memo" or "For," you can write a brief note like "Rent" or "Invoice 12345" so both of you remember what the payment was for.
Sign the money order in the box labeled "From" or "Purchaser." Write your full name and address on the back or on the lines provided. Do not leave these fields blank — the recipient may need your information if there's a problem.
How much a money order costs
The fee depends on where you buy it and how much money you're sending. Post offices charge a flat rate (around $1.45 for domestic orders) regardless of the amount. Banks typically charge $5 to $10 per order. Grocery stores and convenience stores usually charge $1 to $3.
The amount you send doesn't change the fee at most places — sending $50 costs the same as sending $500. However, most retailers have a maximum limit per money order, usually $500 to $1,000. If you need to send more than that, you'll have to buy multiple money orders.
Sending the money order
Put the money order in an envelope with a stamp and mail it like a regular letter, or hand it directly to the recipient. If you mail it, use regular first-class mail — it usually arrives in 3 to 5 business days. If you want tracking, you can pay extra for certified mail or priority mail, though this costs more than the money order itself.
The recipient doesn't have to do anything special to cash it. They can deposit it at their bank like a check, or cash it at most banks and check-cashing services. Money orders are safer than cash because they're traceable — if it gets lost or stolen, you can cancel it using your receipt.
If something goes wrong
Keep your receipt. It has a tracking number that lets you find out whether the money order has been cashed. If the recipient says they never got it, or if you need to cancel for any reason, contact the place where you bought it with your receipt and the tracking number.
If you lost the receipt, you can still track the money order, but it takes longer. The post office can look it up by the serial number printed on the money order itself, though you'll need to remember where you bought it. Banks and retailers have their own tracking systems — call the location where you purchased it and explain the situation.
Canceling a money order takes time. The post office typically takes 30 days to process a cancellation, and you may have to pay a fee (usually $1 to $2). During that waiting period, if the recipient tries to cash it, the cancellation won't go through. Once the 30 days pass and nobody has cashed it, you get a refund minus the cancellation fee.
Money orders versus other payment methods
Money orders are safer than cash because they're traceable and can be canceled. They're cheaper than wire transfers, which typically cost $15 to $30. They're slower than wire transfers (3 to 7 business days versus same-day) but faster and more reliable than personal checks, which can bounce.
Use a money order when you need to send money to someone who doesn't have a bank account, when you want a paper trail, or when the recipient won't accept a personal check. Use a wire transfer if you need the money to arrive the same day and cost isn't a concern. Use a personal check if you have time and the recipient trusts you.
Frequently Asked Questions
Can I buy a money order online?
No. Money orders must be purchased in person at a bank, post office, or retailer. You cannot buy them online or over the phone. Some services offer digital alternatives like wire transfers or bill pay, but those are different products with different costs and timing.
What if I make a mistake filling out the money order?
Ask the seller for a new blank form before you leave the counter. Most places will give you a replacement at no extra charge if you haven't signed it yet. Once you sign it, it's considered issued, and you'll have to cancel it and buy a new one, which costs extra.
Do I need to report a money order on my taxes?
No. Money orders are not taxable income or deductible expenses — they're just a way to move money you already have. If you're sending money as a gift, there's no tax consequence. If you're paying for a service or product, the tax treatment depends on the transaction itself, not the payment method.
How long does a money order stay valid?
Money orders don't expire, but they may become harder to cash after a long time. The post office recommends cashing domestic money orders within three years. After that, you may have to contact the issuer to verify it before a bank will accept it. International money orders have shorter validity periods, usually one to three years.
Can someone else cash my money order if I lose it?
If you haven't signed it yet, yes — anyone can cash it. Once you sign it, only the person whose name is in the "Pay to the Order of" line should be able to cash it, though enforcement varies by bank. This is why you should keep your receipt and cancel the money order immediately if you lose it before sending it.