The most common places to buy a money order

You can buy a money order at a bank, credit union, post office, grocery store, or convenience store. Not every location sells them, and prices vary by where you go. A bank or credit union usually charges $1 to $10 per money order. The post office charges between $1.45 and $2.00 depending on the amount. Grocery stores and convenience stores like 7-Eleven or Circle K often charge $1 to $3, sometimes less.

The fastest option is usually a store you already pass — a grocery store or gas station near your home or work. The cheapest option is often your bank if you have an account there, since some banks waive the fee for customers. If you need a money order outside normal business hours, a 24-hour convenience store or grocery store is your only choice.

Key Takeaways

  • Banks, credit unions, post offices, grocery stores, and convenience stores all sell money orders, but fees and hours vary by location.
  • Post offices charge $1.45 to $2.00 per money order; banks charge $1 to $10; grocery stores and convenience stores typically charge $1 to $3.
  • You will need cash or a debit card, a valid ID, and the recipient's name and address before you go to buy one.
  • Money orders have limits on how much you can send in a single order, usually $500 to $1,000 depending on where you buy it.

Banks and credit unions

Your own bank or credit union is often the cheapest place to buy a money order if you have an account. Many banks waive the fee for customers or charge only $1 to $2. Some banks limit money orders to customers only, so call ahead if you do not have an account there. Credit unions almost always require membership, but the fee is usually lower than at a bank.

Banks are open during business hours only — typically 9 a.m. to 5 p.m. on weekdays and limited Saturday hours. If you need a money order on a Sunday or after 6 p.m., a bank will not work. The advantage is that a teller can answer questions about the money order and make sure you fill it out correctly before you leave.

The U.S. Postal Service

Post offices sell money orders at a flat rate: $1.45 for amounts up to $500, and $2.00 for amounts from $500.01 to $1,000. You do not need to be a customer or have an account. Post offices are open six days a week (closed Sundays), and many locations have extended hours. You can also buy a money order at some grocery stores that have a postal counter inside.

The post office is a good choice if you need a money order for more than $500, since the fee does not increase much. It is also reliable — the post office has been selling money orders for decades and the process is standardized. Bring your ID and cash or a debit card.

Grocery stores and convenience stores

Most large grocery chains — Walmart, Target, Kroger, Safeway, Albertsons — sell money orders at customer service desks. Convenience stores like 7-Eleven, Circle K, and Murphy USA also sell them. Fees are usually $1 to $3, making them cheaper than banks. These stores are often open early and close late, and many are open on Sundays.

The trade-off is that staff at these locations may not be as familiar with money orders as postal workers or bank tellers. If you have questions about how to fill one out or what information to include, you may not get a detailed answer. Most stores limit money orders to $500 or $1,000 per transaction. Check with your local store about their limit before you go.

What you need to bring

Bring a valid photo ID — a driver's license, passport, or state ID card. You will also need cash or a debit card to pay for the money order and the fee. Some locations accept credit cards, but most do not. Have the recipient's full name and mailing address ready, since you will need to write it on the money order.

If you do not know the recipient's exact address, you can leave that blank and fill it in later, but it is safer to have it before you buy the money order. Some locations will not sell you a money order without a recipient name, so ask before you get in line. Bring more cash than you think you need — the fee is separate from the amount you are sending.

Money order limits and what they mean

Most places limit a single money order to $500 or $1,000. This is a safety feature — it reduces the risk of theft or fraud. If you need to send more than the limit, you can buy multiple money orders. For example, if you need to send $2,000 and the limit is $1,000, you would buy two money orders for $1,000 each.

The limit is per transaction, not per day. You can go back to the same store later and buy another money order if you need to. Some places charge a small fee for each one, so buying two $500 money orders costs twice as much as buying one $1,000 money order. Ask about the limit before you decide where to buy.

Comparing your options by situation

If you have a bank account and your bank is open, start there — the fee is usually lowest and the service is reliable. If you need a money order outside business hours, a 24-hour grocery store or convenience store is your only choice. If you need to send more than $500, the post office is a good option because the fee for $1,000 is only 55 cents more than for $500.

If you are in a hurry and want the fastest transaction, a convenience store is usually quickest — the line is shorter and the process takes two to three minutes. If you want to make sure you fill out the money order correctly, go to a bank or post office where staff can review it before you leave. If cost is your main concern and you do not have a bank account, a grocery store or convenience store will save you money compared to a bank.

Frequently Asked Questions

Can I buy a money order with a credit card?

Most places do not take credit cards for money orders. Banks, post offices, and convenience stores typically require cash or a debit card. A few grocery stores may accept credit cards, but it is not standard. Call ahead if you only have a credit card available.

What if I do not have a valid ID?

You will not be able to buy a money order without a photo ID. This is a federal requirement to prevent fraud and money laundering. If your ID is expired, some places will still accept it; others will not. Call the location first to ask about their ID policy.

Can I buy a money order online?

You cannot buy a traditional money order online, but some banks and payment services offer digital alternatives like wire transfers or bill pay. These work differently and may have different fees. If you specifically need a physical money order, you must go to a store in person.

How long does it take to buy a money order?

The process usually takes five to ten minutes at a convenience store or grocery store, and ten to fifteen minutes at a bank or post office. Longer lines during busy times can add time. If you are in a hurry, go early in the morning or late in the evening when stores are less crowded.

Do I need to fill out the money order before I leave the store?

You can fill it out at the counter or at home. Most people fill in the recipient's name and address at the counter so the cashier can check it. Leave the amount blank if you are not sure, but fill in your name as the sender. Do not sign it until you are ready to send it.