A money order is a paper document that lets you send money to someone without giving them your bank account number or personal check
When you buy a money order, you pay cash (or sometimes a debit card) to an issuer — usually a post office, bank, or convenience store — and they print a document with the amount you specify. You fill in who receives the money, sign it, and send it through the mail or hand it over in person. The recipient takes it to their bank or a check-cashing location and deposits or cashes it. The issuer guarantees the money is there, so the recipient knows the payment is real.
A money order works like a safer version of sending cash or a personal check. Unlike cash, it can be replaced if lost or stolen. Unlike a personal check, it cannot bounce because you pay upfront. The issuer holds the funds and pays out when the money order is presented.
Key Takeaways
- You pay cash or use a debit card to buy a money order from a post office, bank, or convenience store, and the issuer prints a may provide payment document.
- Money orders cost a small fee — typically $1 to $5 depending on the amount and where you buy it — on top of the money you are sending.
- The recipient cashes or deposits the money order at a bank, credit union, or check-cashing service without needing your personal information.
- Money orders are useful when you need to send money to someone you do not fully trust with your bank details, or when the recipient does not have a bank account.
- If a money order is lost or stolen, you can request a replacement from the issuer, though the process takes time and requires proof of purchase.
Where to buy a money order
The most common places to buy a money order are the United States Postal Service (USPS), your bank or credit union, and convenience stores like Walmart, CVS, or 7-Eleven. Each charges a different fee and may have different limits on how much you can send in a single money order.
USPS money orders cost between $1.45 and $2.20 depending on the amount, and you can send up to $1,000 per money order. Banks often charge $5 to $10 but may waive the fee if you have an account with them. Walmart charges around $0.88 to $1.25 and accepts amounts up to $1,000. If you need to send more than $1,000, you can buy multiple money orders, but each one costs a separate fee.
Call ahead or check the website of the location nearest you, because not all branches or stores sell money orders, and hours vary. Some rural post offices have limited hours, and some convenience stores only sell them during certain times of day.
How to fill out a money order
When you buy a money order, the issuer will print the amount you specify. You then fill in the recipient's name on the "Pay to the Order of" line — this is the person or business that will cash or deposit it. Write clearly in pen so there is no confusion about who should receive the money.
On the "From" or "Purchaser" line, write your name and address. This is not required for the money order to work, but it helps the issuer track it if something goes wrong. Sign the back or front of the money order where it says "Purchaser's Signature" — do not sign it before you hand it over, because the recipient may need to see your signature to verify it is legitimate.
Keep the receipt the issuer gives you. It has a tracking number that matches the money order. If the money order is lost or stolen, you will need this receipt and the tracking number to request a replacement.
Why someone might ask for a money order instead of a check or bank transfer
A landlord, utility company, or business may request a money order because it is may provide — they know the money exists before they deposit it. A personal check can bounce if your account does not have enough funds, but a money order cannot. This makes it safer for the recipient and reduces their risk.
Someone without a bank account may ask for a money order because they can cash it at a check-cashing service or convenience store without needing to open an account. A person who does not trust you with their bank account information may prefer a money order over an electronic transfer, because you never see their account details.
Money orders are also common in situations where the sender and recipient do not know each other well — for example, buying something from a private seller online, paying a contractor you have not worked with before, or sending money to a family member in another country who does not have access to modern banking.
The cost of a money order and what affects the price
The fee for a money order ranges from less than $1 to around $10, depending on where you buy it and how much money you are sending. USPS charges based on the amount: money orders under $500 cost $1.45, and those from $500 to $1,000 cost $2.20. Walmart charges a flat rate of around $0.88 to $1.25 regardless of amount. Banks typically charge $5 to $10 but may charge nothing if you are a customer.
The fee is separate from the amount you are sending. If you want to send $500, you pay the $500 plus the fee — so the total cost to you is $501.45 at USPS or $500.88 at Walmart. Some issuers charge more for larger amounts, so if you are sending $1,000 or more, compare prices at different locations before you buy.
What happens if a money order is lost or stolen
If you lose a money order before you send it, contact the issuer immediately with your receipt and tracking number. They can cancel it and issue a replacement, though the process usually takes 30 to 60 days. You may have to pay a replacement fee, typically $1 to $5.
If someone else cashes a money order you sent, you cannot get the money back — the issuer has already paid it out. This is why it is important to send money orders through the mail in a secure way, such as certified mail with tracking, rather than regular mail. If you hand-deliver a money order, make sure you give it directly to the person who is supposed to receive it.
If a money order you received does not cash or is rejected by your bank, contact the issuer with the money order itself and your receipt. They can verify whether it was legitimate and help you track down the problem.
Money orders versus other ways to send money
| Method | Cost | Speed | Risk to Sender | Best For |
|---|---|---|---|---|
| Money order | $1–$10 | 1–3 days by mail; instant in person | Low — may provide payment | Sending to someone without a bank account; paying a landlord or utility company |
| Personal check | Free (if you have checks) | 3–5 days | High — can bounce | Paying bills or people you know well |
| Bank transfer or ACH | Free or $1–$3 | 1–3 days | Medium — requires bank account info | Paying bills online; sending money to someone with a bank account |
| Wire transfer | $15–$50 | Same day or next day | High — cannot be reversed | Sending large amounts quickly; international transfers |
| Cash in person | None | Immediate | Very high — no record | Small amounts to someone you trust |
Frequently Asked Questions
Can I buy a money order with a credit card?
Most issuers do not accept credit cards for money orders because they treat it as a cash advance. USPS, banks, and most convenience stores require cash or a debit card. Some Walmart locations may accept debit cards but not credit cards. Call ahead to confirm what payment methods your location accepts.
What is the maximum amount I can send in one money order?
Most issuers cap money orders at $1,000 per document. If you need to send more, you can buy multiple money orders, but you will pay a separate fee for each one. USPS, Walmart, and most banks all follow the $1,000 limit, though some smaller issuers may have lower caps.
How long does it take for a money order to clear?
If you hand-deliver a money order, the recipient can cash it immediately. If you mail it, it typically arrives in 1 to 3 days depending on distance. Once the recipient deposits or cashes it, the funds are available right away — money orders do not have a clearing period like checks do.
Can I cancel a money order after I buy it?
Yes, but only if it has not been cashed. Contact the issuer with your receipt and tracking number and request a cancellation. They will refund the amount minus a cancellation fee (usually $1 to $5) and may take 30 to 60 days to process. If the money order has already been cashed, you cannot cancel it.
Do I need a bank account to cash a money order?
No. You can cash a money order at a check-cashing service, convenience store, or bank without having an account. Some places may charge a small fee to cash it if you are not a customer. You will need to show a photo ID.