Skip to main content

Buying a Money Order With Your Credit Card

Most places won't sell you a money order with a credit card directly

When you walk up to a counter at a grocery store, post office, or check-cashing place to buy a money order, the cashier will almost always ask for cash or a debit card. Credit card companies treat money orders as cash advances — a way to get money out of your credit line — and most issuers block these transactions outright. Even if your card isn't blocked, you'll pay a cash advance fee (usually 3 to 5 percent of the amount) plus interest that starts accruing immediately, with no grace period like you get on regular purchases.

That said, there are a few workarounds if you need a money order and only have a credit card available. None of them are ideal, but they exist, and knowing which one fits your situation can save you money and frustration.

Key Takeaways

  • Most retailers and post offices reject credit cards for money order purchases because card issuers classify them as cash advances.
  • If your card does go through, you'll pay a cash advance fee (typically 3 to 5 percent) plus interest starting immediately, with no grace period.
  • The most practical workaround is to use your credit card to withdraw cash from an ATM, then buy the money order with that cash.
  • Some credit unions and banks allow money order purchases with a debit card linked to a credit line, which avoids the cash advance classification.
  • Money orders cost between $1 and $5 depending on the amount and where you buy them, so factor that into your total cost.

Why credit card companies block money order purchases

A cash advance is when you borrow money directly from your credit card's available credit, rather than making a purchase that gets billed to your card. Money orders fall into this category because they're a way to convert credit into cash or a cash-like instrument. Your card issuer sees no difference between you asking for cash at an ATM and you buying a money order — both pull money out of your credit line.

Because cash advances are riskier for the lender (you're borrowing money with no purchase to back it up), they come with penalties. The cash advance fee is separate from your purchase APR and is usually higher. Interest on a cash advance also starts the day you make the transaction, not at the end of your billing cycle like a regular purchase. This means even if you pay off the balance immediately, you'll owe a few days of interest.

Some card issuers block money order transactions entirely at the point of sale. Others allow them but flag them as cash advances. Either way, the cost and the mechanics work against you.

Converting your credit card to cash first

The most straightforward workaround is to use your credit card to get cash from an ATM, then use that cash to buy the money order. You'll still pay the cash advance fee and interest, but at least you'll have the cash in hand and can buy the money order without any additional complications at the counter.

Here's how it works: Go to an ATM that accepts your card (your bank's ATM, or a network ATM like Allpoint or MoneyPass). Insert your card and select "Withdraw Cash." You'll be asked how much you want. The ATM will charge you a cash advance fee right away — usually $3 to $10 depending on your card issuer and the ATM network — plus your card issuer's own fee, which is typically 3 to 5 percent of the amount withdrawn. Then take that cash to any money order retailer and buy your money order as normal.

The downside is that you're paying two fees: the ATM fee and the cash advance fee from your card issuer. If you need a $500 money order, you might pay $20 to $30 in fees just to get the cash. But if your card is blocked from buying money orders directly, this is often the fastest option.

Using a debit card or checking account instead

If you have a debit card, use it instead. Debit card transactions are not classified as cash advances, so you'll avoid the fee and interest charges entirely. You'll only pay the money order fee itself, which is typically $1 to $5 depending on where you buy it and how much the money order is for.

If you don't have a debit card but have a checking account, you can open one at your bank or credit union — most offer them for free. Some banks will issue a debit card immediately or within a few business days. This is worth doing if you plan to buy money orders regularly, because the savings add up quickly compared to credit card cash advances.

If you're in a bind and need a money order today, ask your bank if they can issue a temporary debit card or a one-time debit card number you can use immediately. Some banks and credit unions offer this service.

Money order fees and where to buy them

Money order fees vary by retailer and by the amount of the money order. The U.S. Postal Service charges between $1.45 and $2.20 depending on whether the money order is for $500 or less or between $500 and $1,000. Walmart typically charges $0.88 for money orders up to $1,000. Check-cashing stores and grocery stores usually charge $1 to $3. Some banks and credit unions offer money orders to customers for free or at a reduced rate.

When you're calculating the total cost of buying a money order with a credit card, add up the cash advance fee, the card issuer's percentage fee, any ATM fee, and the money order fee itself. For a $500 money order, this could easily total $25 to $35. Compare that to using a debit card or cash, where you'd pay only $1 to $5.

What to bring when you buy a money order

Whether you're paying with cash, a debit card, or credit card cash, you'll need to provide the recipient's name and address. The cashier will fill in a form with your information as the sender and the recipient's information. Bring a valid ID — a driver's license, passport, or state ID card. Some retailers ask for your phone number or address as well.

If you're buying a large money order (usually $3,000 or more), the retailer may ask additional questions about the purpose of the money order. This is a federal requirement to prevent money laundering. Be prepared to explain who you're sending it to and why.

When a credit card cash advance might make sense anyway

In rare cases, paying the cash advance fee might be worth it. If you're in a situation where you absolutely need a money order today and have no other way to pay, and the fee is less than the cost of a late payment or missed deadline, then go ahead. But this should be the exception, not the rule.

For example, if you owe $500 in rent and your landlord requires a money order, and you have no debit card or cash, then paying $25 in fees to buy the money order is better than paying a late fee or facing eviction. But if you have time to get a debit card or borrow cash from a friend, those options are cheaper.

Frequently Asked Questions

Can I buy a money order with a credit card at Walmart or the post office?

Most Walmart locations and all post offices will reject a credit card for money order purchases. They'll ask for cash or a debit card. If you try to use a credit card anyway, the transaction may be declined at the register, or it may go through as a cash advance with fees added to your bill.

What's the difference between a money order and a cashier's check?

A money order is a prepaid instrument you buy at a retail location for a small fee. A cashier's check is issued by a bank and is drawn on the bank's account, not yours. Cashier's checks are typically used for larger amounts and cost more (usually $5 to $15), but they carry more weight in formal transactions. You can usually buy a cashier's check with a debit card or by withdrawing from your account, but not with a credit card.

Will my credit card issuer let me know if a money order purchase is blocked?

Sometimes. If the transaction is declined at the register, you'll know immediately. If your card issuer allows the transaction but flags it as a cash advance, you may not find out until you see the fee on your statement. Check your card's terms or call your issuer before you go to the store if you want to know in advance whether money orders are blocked.

Is there a limit to how much I can spend on a money order?

Most retailers cap money orders at $1,000 per order. If you need to send more than that, you can buy multiple money orders. The U.S. Postal Service allows up to $1,000 per money order. Walmart and other retailers have similar limits. Check with your specific retailer if you need to send a large amount.

Can I buy a money order online with a credit card?

Some online money order services exist, but they're not common and often come with higher fees than in-person purchases. Most traditional money order retailers (post office, Walmart, grocery stores) require you to buy in person. If you do find an online service, read the terms carefully to understand all fees before you commit.