Most money order sellers won't take credit cards directly

You cannot buy a money order with a credit card at most locations. Post offices, Walmart, Western Union, and MoneyGram — the four largest money order providers in the United States — all require cash, debit cards, or bank transfers. They treat credit cards as a form of borrowing rather than payment, which creates a cash advance situation they want to avoid.

A few smaller retailers and online services do accept credit cards for money orders, but these are exceptions. The reason most places refuse is straightforward: they want immediate, may provide payment. A credit card transaction can be disputed or reversed; cash and debit cannot. Money order sellers also know that customers using credit cards to buy money orders are often trying to move debt around, which increases their risk.

If you need a money order and only have a credit card, you have three realistic paths: withdraw cash from an ATM using the card, use a cash advance feature, or find an online money order service that accepts credit cards.

Key Takeaways

  • Post offices, Walmart, Western Union, and MoneyGram require cash or debit cards for money orders; they do not accept credit cards.
  • Using a credit card to withdraw cash at an ATM, then buying a money order with that cash, works but costs you the ATM fee plus any cash advance interest if your card charges it.
  • A few online money order services like Paysend and MoneyLion accept credit cards, but they charge higher fees than in-person options and take longer to deliver.
  • Money order fees range from $1 to $5 depending on the amount and location; online services typically charge $2 to $10.

Using an ATM to get cash, then buying the money order

This is the most common workaround. You withdraw cash from an ATM using your credit card, then use that cash to buy a money order at any location. The catch is that credit card ATM withdrawals are treated as cash advances, not regular purchases.

Cash advances come with two immediate costs. First, you pay an ATM fee — typically $2 to $5 per withdrawal, depending on your bank and the ATM network. Second, your card may charge a cash advance fee, usually 3 to 5 percent of the amount withdrawn. So if you withdraw $200, you might pay $6 to $15 just to get the cash. Then you pay another $1 to $5 for the money order itself.

Cash advances also start accruing interest immediately — there is no grace period like there is for regular purchases. Interest rates on cash advances are often higher than the regular purchase APR on the same card. If you carry a balance, this compounds quickly. For a $200 money order, the total cost could easily reach $20 to $30 when you factor in all fees and interest over a month.

Online money order services that accept credit cards

A small number of online platforms let you buy money orders with a credit card without the ATM fee. Paysend, MoneyLion, and a few smaller services accept credit cards directly. The process is straightforward: you enter your card details, the recipient's information, and the amount, then the service mails or delivers the money order.

The trade-off is cost and speed. Online money order fees typically run $2 to $10 per order, which is higher than the $1 to $5 you would pay in person. Delivery takes 3 to 7 business days instead of being instant. Some services offer faster delivery for an additional fee. You also need to trust a third party with your card information and the recipient's address.

These services work best when you are not in a hurry and the convenience of avoiding an ATM fee outweighs the higher money order cost. They are also useful if you do not have access to a nearby post office or Walmart.

Why your credit card issuer may block the transaction

Even when a money order seller theoretically accepts credit cards — or when you use an online service — your card issuer may decline the transaction. Banks and credit card companies flag money order purchases as high-risk because they are often used to move money in ways that look like debt cycling or money laundering.

If your transaction is declined, you have a few options. Call your card issuer before you attempt the purchase and let them know you are buying a money order. They may temporarily raise your limit or flag your account so the transaction goes through. Alternatively, use a different card if you have one, or try a different money order provider.

This friction is intentional on the card issuer's side. They are trying to protect themselves and you from risky financial behavior. If you find yourself regularly blocked, it may be worth asking yourself whether a money order is the right tool for what you are trying to do.

Money order fees and limits at major providers

ProviderMaximum AmountFee (typical)Credit Card Accepted?
USPS (Post Office)$1,000$1.45 to $2.20No
Walmart$1,000$0.88 to $1.24No
Western Union$1,000$1 to $5No
MoneyGram$1,000$1 to $5No
Paysend (online)$500$2 to $10Yes

All major in-person providers cap money orders at $1,000 per order. If you need to send more, you must buy multiple money orders. Walmart and the post office offer the lowest fees for in-person purchases. Online services charge more but accept credit cards, which saves you the ATM fee if you do not mind paying extra for the convenience.

Alternatives to money orders when you have a credit card

Before you commit to a money order, consider whether another payment method might work better. If the recipient has a bank account, a bank transfer or ACH payment is faster, cheaper, and works directly from your credit card's issuer (though you would need to set it up through your bank, not the card itself). If the recipient uses a payment app, services like Venmo, PayPal, or Square Cash let you send money instantly using a credit card.

If you specifically need a money order because the recipient will not accept other forms of payment, or because you need a receipt and a traceable payment method, then a money order is the right choice. But if the reason you are considering a money order is just that you do not have cash on hand, a direct transfer or payment app is almost always cheaper and faster.

Frequently Asked Questions

What happens if I use a credit card cash advance to buy a money order?

You pay an ATM fee ($2 to $5), a cash advance fee (3 to 5 percent of the amount), and interest starting immediately at a higher rate than your regular purchase APR. For a $200 money order, total costs could reach $20 to $30 over a month. It is an expensive way to get cash.

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

No. Both require cash, debit cards, or bank transfers. They do not accept credit cards because they want may provide, non-reversible payment.

Are online money order services safe to use with a credit card?

Established services like Paysend and MoneyLion use encryption and fraud protection similar to other online payment platforms. The main risk is the same as any online transaction: you are sharing your card details with a third party. Check reviews and verify the service is legitimate before using it.

What is the cheapest way to buy a money order if I only have a credit card?

Use an online service like Paysend that accepts credit cards directly. You pay $2 to $10 in fees but avoid the ATM fee and cash advance interest. If you can get to a Walmart or post office, withdraw cash at an ATM first, then buy the money order in person — but only if the ATM fee plus cash advance costs are less than the online service fee.

Can I dispute a money order purchase on my credit card?

Once a money order is issued and cashed, it cannot be reversed. If you buy a money order with a credit card and then dispute the charge, the card issuer will likely deny the dispute because the money order was delivered as promised. Dispute a money order purchase only if the service failed to deliver it or charged you twice.