Most credit card issuers and money order sellers will not let you buy a money order with a credit card

Money order sellers — including the U.S. Postal Service, Western Union, MoneyGram, Walmart, and grocery store chains — treat credit cards as cash advances rather than regular purchases. A cash advance on a credit card typically costs you an upfront fee (often 3 to 5 percent of the amount) plus a higher interest rate that starts accruing immediately, with no grace period. Because of these costs, most money order retailers simply refuse credit cards outright.

The few exceptions exist mainly at smaller retailers or independent money order agents, and even then the terms vary widely. Your best path is to use a debit card, which most sellers accept without penalty, or to pay cash. If you do not have either, a prepaid card may work — but you need to check with the specific retailer first.

Key Takeaways

  • The U.S. Postal Service, Western Union, MoneyGram, Walmart, and most grocery stores do not accept credit cards for money orders because they classify the transaction as a cash advance.
  • A cash advance on a credit card charges an upfront fee of 3 to 5 percent plus interest that begins immediately, making money orders expensive to buy this way.
  • Debit cards are accepted at nearly all money order retailers without additional fees and are the fastest alternative if you do not have cash.
  • Some independent money order agents or smaller retailers may accept credit cards, but you must call ahead to confirm their policy and any fees they charge.
  • Prepaid cards sometimes work for money order purchases, depending on how the card issuer classifies the transaction and the retailer's system.

Why credit card companies treat money orders as cash advances

A cash advance is any transaction that converts your credit line into cash or cash-like value without going through a merchant sale. Money orders fall into this category because they are not goods or services — they are a form of payment itself. Your credit card issuer sees the transaction the same way it would see withdrawing cash from an ATM.

This classification matters because cash advances carry different terms than regular purchases. You pay a fee upfront (typically 3 to 5 percent, sometimes higher), and interest accrues from the moment the transaction posts, not from your statement due date. There is no grace period. If you buy a $500 money order on a credit card with a 4 percent cash advance fee and a 24 percent APR, you pay $20 immediately plus interest on $520 starting that day.

Because of these costs, money order retailers have little incentive to accept credit cards. They would need to process the transaction as a cash advance through your card network, which means your issuer flags it and charges you. The retailer gains nothing from this friction, so most simply decline credit cards to avoid the processing complications.

Which money order sellers accept credit cards (and which do not)

The major money order networks have clear policies against credit cards:

  • U.S. Postal Service: Cash or debit card only. Credit cards are not accepted.
  • Western Union: Cash or debit card. Credit cards are declined at most locations.
  • MoneyGram: Cash or debit card. Credit cards are not accepted.
  • Walmart: Cash or debit card. Credit cards are declined for money orders.
  • Grocery store chains (Kroger, Safeway, Albertsons, etc.): Policies vary by location, but most accept cash or debit only for money orders.

Independent money order agents — small check-cashing shops, payday lenders, or local retailers — sometimes have different policies. Some will accept credit cards but charge an additional fee on top of the money order cost. Others treat it as a cash advance and pass the credit card company's fee to you. You must call the specific location before you go, because policies differ even within the same chain.

Debit cards and prepaid cards as alternatives

A debit card is treated as a direct payment from your bank account, not a credit transaction, so money order retailers accept it without hesitation or extra fees. If you have a debit card linked to a checking account, this is your fastest option. The transaction posts the same way as paying cash, and you avoid all the fees and interest that come with a credit card cash advance.

Prepaid cards — including reloadable cards like Green Dot, NetSpend, or Chime — may work, depending on how the card issuer classifies the transaction and how the money order retailer's system processes it. Some prepaid cards are flagged as cash advances by the retailer's payment terminal, while others go through as regular debit transactions. The only way to know is to try it at the retailer you plan to use, or call the prepaid card issuer first to ask whether money order purchases are blocked or charged as cash advances.

What to do if you only have a credit card

If you need a money order and only have a credit card available, your options are limited but real. First, check whether your credit card issuer allows cash advances at ATMs — if so, you can withdraw cash and then buy the money order with that cash. You will pay the cash advance fee either way, but at least you avoid the retailer's additional processing complications.

Second, ask whether the person or business you are paying will accept a different form of payment. A certified check from your bank, a wire transfer, or an ACH transfer may work instead of a money order and would not require a cash advance at all. If the recipient specifically needs a money order, this option will not help, but it is worth asking.

Third, contact independent money order agents in your area and ask their policy on credit cards. Some will accept them if you are willing to pay an extra fee. This is more expensive than using cash or a debit card, but it may be your only option in that moment.

How to avoid needing a money order on credit

Money orders are usually needed for specific situations: paying rent, sending money to someone who does not have a bank account, or paying a bill that does not accept credit cards. If you find yourself regularly needing money orders and only having credit available, that is a sign to open a checking account or get a debit card. Most banks offer free checking accounts, and some do not require a minimum balance.

If you are unbanked or underbanked, community development financial institutions (CDFIs) and credit unions often offer low-cost checking accounts specifically designed for people in this situation. A debit card solves the money order problem and gives you access to other payment methods that do not carry cash advance fees.

Frequently Asked Questions

Will the money order retailer charge me a fee if I use a credit card?

Most retailers will not accept a credit card at all. If an independent agent does accept one, they may charge an additional fee on top of the money order cost, or they may pass your credit card issuer's cash advance fee to you. Always ask the specific location before you attempt the purchase.

Can I use a credit card to buy a money order online?

Online money order services like MoneyGram.com and Western Union's website typically accept credit cards for the purchase itself, but they still classify it as a cash advance and charge the associated fees. You will pay the cash advance fee plus the money order fee, making it more expensive than buying in person with cash or a debit card.

What if my debit card is declined at the money order counter?

Debit cards are rarely declined for money orders, but if yours is, the issue is usually with your bank account (insufficient funds, a fraud hold, or a card that has expired). Contact your bank to confirm your account is active and has enough money. If the card itself is the problem, ask the retailer if they accept cash instead.

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

Most retailers cap individual money orders at $1,000, though the U.S. Postal Service allows up to $1,000 per money order. If you need to send more than that, you can buy multiple money orders. The fee applies to each one, so buying five $1,000 money orders costs five times the per-order fee.