Where to buy a money order
You can buy a money order at most banks, credit unions, post offices, grocery stores, and pharmacies. The Post Office, Walmart, Western Union, and MoneyGram are the most common places, but your local bank or credit union often sells them too. Call ahead if you are not sure — not every location carries them, and some have limits on how much you can buy in a single day.
Bring cash or a debit card. Most places do not accept credit cards for money orders. You will also pay a small fee — usually between $1 and $5 depending on the amount and where you buy it. Post Office fees are typically $1.45 to $2.00 for amounts under $500.
Go to the counter and tell the clerk you want to buy a money order. They will ask you how much you need and show you the form. You do not need to have an account at that location.
Key Takeaways
- You can buy money orders at banks, post offices, grocery stores, pharmacies, and Western Union or MoneyGram locations without needing an account.
- Fill in the payee name (who receives it), your name as the sender, and the amount in both numbers and words before you hand over cash.
- Keep your receipt and the money order number until the payee confirms they received and cashed it.
- Money orders typically cost $1 to $5 and take one to three business days to clear once deposited.
- If a money order is lost or not cashed, you can request a refund or replacement by showing your receipt and the original money order number.
How to fill out a money order
The money order form has several blank lines. Fill them out in this order: first, write the name of the person or business receiving the money in the "Pay to the Order of" or "Payee" line. Use the exact name they gave you — if it is a business, spell it exactly as they have it registered. Do not use a nickname or shortened version.
Next, write your name and address in the "From" or "Sender" section. This is so the payee knows who sent it if there is a problem. Some money orders also ask for your phone number or account number — fill those in if the form has them.
Write the dollar amount in two places: once in the box with the dollar sign (using numbers like $150.00) and once spelled out on the line below it (like "One hundred fifty dollars"). Both must match exactly. If they do not, the money order may be rejected.
Sign the money order in the signature line. Do not sign it until you are at the counter and ready to pay — a signed blank money order can be cashed by anyone. The clerk will also sign or stamp their section to show they issued it.
What information you need before you buy
Before you go to the store or post office, get the exact name of the person or business that will receive the money. Ask them how they want their name written — for example, whether a business name should include "LLC" or "Inc." or whether a person goes by a first name, middle initial, or full legal name. Using the wrong name is the most common reason a money order gets rejected or delayed.
Know the exact amount you need to send. Money orders are issued for a specific amount and cannot be changed after they are printed. If you need to send $250 and you accidentally buy one for $225, you will have to buy another one and lose the fee on the first.
Have your own address ready to write in. You do not need to memorize it, but have it with you so you can fill it in correctly.
Sending the money order
Once the money order is filled out and you have paid for it, you can mail it or hand it to the payee in person. If you mail it, use regular mail or certified mail with tracking — certified mail costs more but gives you proof of delivery. Write the payee's address clearly on the envelope.
Do not fold the money order or write on the back of it. Treat it like a check. Money orders typically take one to three business days to clear once the payee deposits or cashes it.
Keep your receipt and write down the money order number (usually printed on both the receipt and the money order itself). You will need this information if the money order is lost, not received, or not cashed.
If the money order is lost or not cashed
If the payee says they never received it, or if you realize you made a mistake before sending it, contact the place where you bought it. Bring your receipt and the money order number. They can tell you whether it has been cashed and, if not, can issue you a replacement or refund.
The process usually takes 30 to 90 days because the issuer has to wait to make sure the original money order is not deposited somewhere else. Once that waiting period is over and they confirm it was not cashed, they will refund your money or issue a new money order at no extra charge.
If the money order was already cashed, you cannot get your money back — the payee has it. In that case, contact the payee and ask them to return it or send you a refund through another method.
Money order limits and when to use them
Most places limit how much you can buy in a single money order. The Post Office allows up to $1,000 per money order. Walmart and other retailers typically cap them at $500 to $1,000. If you need to send more than the limit, you can buy multiple money orders.
Money orders are useful when you need to send cash but do not want to mail actual bills, when the payee does not have a bank account to receive a transfer, or when you need a paper record of payment. They are also safer than personal checks because they cannot bounce — the money is already paid for when you buy it.
For large amounts or regular payments, a bank transfer or check is often cheaper and faster. For small amounts or one-time payments to someone without a bank account, a money order is usually the best option.
Frequently Asked Questions
Can I buy a money order with a credit card?
Most places do not accept credit cards for money orders. You will need cash or a debit card. Some credit card companies also treat money order purchases as cash advances, which come with higher fees and interest rates, so even if a location accepts your card, it may cost you more.
What happens if I make a mistake filling out the money order?
If you make a mistake before you pay, tell the clerk and they will void it. You will lose the fee but can buy a new one. If you have already paid and left, you can return to that location with your receipt and ask them to cancel it and issue a replacement, though some places charge a second fee for this.
How long does a money order take to clear?
Once the payee deposits or cashes it at their bank, a money order typically clears in one to three business days, the same as a check. The time it takes to arrive in the mail is separate — regular mail usually takes three to five business days depending on distance.
Can someone else cash my money order if they have it?
If the money order is made out to a specific person or business, only that payee can cash it. If you write it out to "Cash" instead of a name, anyone who has it can cash it, so avoid doing that unless you plan to cash it yourself right away.
What if the payee's name is spelled wrong on the money order?
If the name does not match exactly, the payee may not be able to cash it. Some banks will reject it outright. If this happens, contact the place where you bought it with your receipt and money order number — they can usually cancel it and issue a corrected one, though you may lose the original fee.