Most money order sellers won't take credit cards directly, but you have workarounds

You cannot buy a money order with a credit card at most places that sell them — post offices, grocery stores, and check-cashing shops typically accept only cash, debit cards, or bank transfers. The reason is practical: money orders are meant to be a safer alternative to cash or checks, and sellers want immediate, may provide payment. A credit card creates a delay and a chargeback risk that defeats the purpose.

That said, you have three real paths forward. You can withdraw cash from an ATM using your credit card (though this costs a fee), use a debit card if you have one, or pay online through a service that issues money orders electronically. Which one makes sense depends on why you need the money order and how much you're willing to pay in fees.

Key Takeaways

  • Post offices, Walmart, grocery stores, and check-cashing shops do not accept credit cards for money order purchases — they require cash or a debit card.
  • You can withdraw cash from an ATM using your credit card, but the transaction will be treated as a cash advance and charged a higher fee (usually 3 to 5 percent plus interest starting immediately).
  • Online money order services like MoneyGram and Western Union allow credit card payment, but they charge higher fees than in-person purchases and may not work for all payment types.
  • A debit card is the cheapest option if you have one, since money order fees are typically $1 to $3 and no additional charges apply.

Why sellers reject credit cards for money orders

Money order sellers have a straightforward reason for the cash-only or debit-only rule: they need payment that cannot be reversed. When you pay with a credit card, the transaction can be disputed or charged back up to 120 days later. By that time, the money order has been cashed and the seller has no way to recover the funds.

A debit card is different because it draws directly from your bank account, and the seller gets the money immediately. Cash is the same — it's in hand. Credit cards, by contrast, are a promise of future payment, and money order sellers don't want to carry that risk.

Using a cash advance to buy a money order

If you have a credit card but no debit card and no cash, you can withdraw money from an ATM using your credit card. This is called a cash advance, and it will let you get the cash you need to buy a money order in person. However, this option is expensive.

A cash advance typically costs 3 to 5 percent of the amount you withdraw, charged upfront. On top of that, interest begins accruing immediately — not at the end of a billing cycle like a regular purchase. If you withdraw $500, you might pay $15 to $25 in fees plus interest that compounds daily until you pay it back. A money order itself costs $1 to $3, so the total cost of using a credit card this way is much higher than simply using a debit card or cash.

This route makes sense only if you have no other way to get cash and you need the money order urgently. Otherwise, the fees will outweigh any benefit.

Buying money orders online with a credit card

MoneyGram and Western Union both allow you to purchase money orders online using a credit card. You enter the amount, the recipient's details, and your payment information, and the service issues a money order that can be picked up at a physical location or, in some cases, printed and mailed.

The trade-off is cost. Online money orders typically charge $5 to $15 depending on the amount, compared to $1 to $3 at a post office or Walmart. You're paying for the convenience of using a credit card and the online platform. If the recipient needs the money order quickly, you may also need to pay for expedited delivery or pickup, which adds another $5 to $10.

This option works well if you don't have a debit card or cash and the extra cost doesn't matter. It's also useful if the recipient is in a location where you can't easily get to a physical money order seller. But if you have a debit card or can access cash, buying in person is significantly cheaper.

When a debit card is your best choice

If you have a debit card linked to a bank account, use it. Money order sellers accept debit cards at the same places they accept cash — post offices, Walmart, grocery stores, and check-cashing shops. The fee is the standard money order fee ($1 to $3), and there are no additional charges or interest.

A debit card works because the money comes directly from your account, just like cash, but you don't have to carry physical bills. The seller gets paid immediately and can't dispute the transaction later. This is why debit cards are treated the same way as cash by money order sellers.

Alternatives if you can't get a money order

If buying a money order with a credit card is too expensive or too complicated, consider what you're actually trying to do. If you need to send money to someone, a bank transfer or peer-to-peer payment app (Venmo, PayPal, Cash App) is often faster and cheaper than a money order. If the recipient specifically needs a money order because they don't have a bank account, ask whether they'd accept a cashier's check instead — banks issue these to credit card holders and they serve the same purpose.

If you're paying a bill or a landlord and they require a money order, call them and ask whether they accept other forms of payment. Many landlords and utilities will take a personal check, a bank transfer, or an online payment if you explain that a money order isn't practical for you. The worst they can say is no.

Frequently Asked Questions

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

No. Walmart and the U.S. Postal Service both require cash or a debit card for money order purchases. They do not accept credit cards because money orders are designed to be paid with funds that cannot be reversed.

What's the difference between a cash advance and a regular credit card purchase?

A cash advance charges a higher fee (3 to 5 percent) and interest starts immediately, not at the end of your billing cycle. A regular purchase has no upfront fee and interest only applies if you carry a balance. Never use a cash advance to buy a money order unless you have no other option.

Is it cheaper to buy a money order online with a credit card or withdraw cash and buy in person?

Withdrawing cash with a credit card costs 3 to 5 percent plus daily interest. Buying online costs $5 to $15. Buying in person with cash or a debit card costs $1 to $3. In-person is always cheapest if you can do it.

Can I use a prepaid card to buy a money order?

Yes, if the prepaid card is linked to a bank account and functions like a debit card. Reloadable prepaid cards (like NetSpend or Chime) are usually accepted the same way debit cards are. However, some prepaid cards have restrictions, so check with your card issuer first.

What if I need a money order but have no debit card and no cash?

Your options are to buy online through MoneyGram or Western Union with your credit card (higher fees), withdraw cash using a credit card cash advance (very expensive), or ask the recipient whether they'll accept an alternative like a bank transfer or check instead.