Most credit card issuers won't let you buy money orders directly, but a few workarounds exist

You cannot walk into most places and swipe a credit card to buy a money order. Walmart, Western Union, MoneyGram, and the US Postal Service all treat money order purchases as cash advances rather than regular purchases. A cash advance means you pay an upfront fee (usually 3% to 5% of the amount) plus a higher interest rate starting immediately — there is no grace period like there is for regular purchases.

The exception is rare: some credit cards issued by specific banks may allow money order purchases at their own branches to code as regular purchases instead of cash advances. This is not common, and you would need to check your card's terms or call your issuer directly to know whether yours does. Even then, the bank's own money orders are the only ones that may have access to.

If you need a money order and want to avoid the cash advance penalty, the practical path is to use a debit card, a PIN-based prepaid card, or cash instead. If you must use a credit card, understand the full cost before you proceed.

Key Takeaways

  • Money order purchases at Walmart, Western Union, MoneyGram, and the USPS code as cash advances on most credit cards, triggering an upfront fee and a higher interest rate with no grace period.
  • Cash advance fees typically run 3% to 5% of the amount you are buying, so a $500 money order could cost $15 to $25 in fees alone.
  • Interest on a cash advance begins accruing immediately at a rate higher than your regular purchase APR, which means the cost compounds daily.
  • A debit card, prepaid card, or cash avoids these penalties entirely and is the better choice if you have those options available.
  • A small number of credit cards from specific banks may treat their own money orders as regular purchases — call your issuer to ask.

How cash advances work when you buy a money order

When you use a credit card to buy a money order, the merchant and your card issuer classify it as a cash advance. This is the same category as withdrawing cash from an ATM with your credit card. The issuer treats it as a loan against your credit line rather than a purchase.

That classification triggers two immediate costs. First, you pay a cash advance fee at the time of the transaction — typically 3% to 5% of the amount. A $1,000 money order would cost $30 to $50 in fees. Second, interest starts accruing on day one at your cash advance APR, which is usually 5 to 10 percentage points higher than your regular purchase APR. If your purchase APR is 18%, your cash advance APR might be 25% or higher.

Unlike a regular purchase, there is no grace period. Interest compounds daily from the moment you complete the transaction. If you carry the balance for a month, you are paying interest on top of the fee you already paid upfront.

Where you cannot use a credit card for money orders

The major money order sellers — Walmart, Western Union, MoneyGram, and the US Postal Service — all code credit card transactions as cash advances. This applies whether you are buying a money order in person or online.

Walmart charges a cash advance fee on top of the money order fee itself. Western Union and MoneyGram do the same. The USPS also treats credit card money order purchases as cash advances. If you have used a credit card at any of these places, the transaction likely hit you with both a cash advance fee from your card issuer and the money order fee from the seller.

Some smaller check-cashing or bill-pay services may have different policies, but they are not common, and you would need to call ahead to confirm. The safest assumption is that any money order seller you walk into will code a credit card as a cash advance.

When a bank's own credit card might work differently

A small number of banks treat money orders purchased at their own branches as regular purchases rather than cash advances. This is not a may provide — it depends on the specific bank and the specific card — but it is worth asking about if you bank somewhere and hold a credit card from that same institution.

Call your card issuer's customer service line and ask directly: "If I buy a money order at a branch of your bank, will it code as a regular purchase or a cash advance?" Write down the answer and the date you called. If they say it codes as a regular purchase, you avoid the cash advance fee and interest rate, though you may still pay the bank's money order fee itself.

This option only works if you have a bank branch nearby and you hold a card from that bank. It does not apply to third-party money order sellers.

The actual cost of using a credit card for a money order

The total cost depends on three things: the cash advance fee, the money order fee from the seller, and how long you carry the balance.

Say you buy a $500 money order at Walmart using a credit card with a 3% cash advance fee and a 25% cash advance APR. Walmart's money order fee is $0.88. Your costs are:

  • Cash advance fee: $15 (3% of $500)
  • Money order fee: $0.88
  • Interest for 30 days: approximately $10.42 (25% APR ÷ 365 days × 30 days × $500)
  • Total cost: approximately $26.30

If you pay off the cash advance immediately, you avoid the interest charge and your cost is just the cash advance fee plus the money order fee — about $15.88. But if you carry the balance, the interest compounds daily and the total cost climbs.

Compare this to using a debit card or cash: you pay only the money order fee ($0.88) and nothing else. The credit card route costs you at least 18 times more.

Better alternatives to using a credit card

A debit card is the simplest alternative. Money order sellers accept debit cards and do not code them as cash advances. You pay only the money order fee itself — no additional charges.

A prepaid card with a PIN also works. Load the prepaid card with cash beforehand, then use it like a debit card at the money order counter. Again, you pay only the money order fee.

If you do not have a debit card or prepaid card, cash is your next option. Bring the exact amount plus the money order fee in bills or coins. You avoid all card-related fees this way.

If you are trying to build credit or you have no other payment method, using a credit card for a money order is expensive but possible. Just understand the full cost before you swipe, and pay off the cash advance as quickly as you can to minimize interest charges.

Frequently Asked Questions

Does it matter which credit card I use to buy a money order?

The cash advance fee and APR vary by card, so yes — a card with a lower cash advance fee costs less. Some cards charge 3%, others charge 5%. Some have a minimum fee (like $5 or $10) that applies even on small amounts. Check your card's terms or call the issuer to compare before you buy.

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

Online money order purchases through Western Union, MoneyGram, or similar services also code as cash advances. The fee and interest rate are the same as in-person purchases. You do not save money by buying online.

What if I pay off the cash advance right away?

You still pay the cash advance fee upfront, but you avoid the daily interest charges. If you can pay it off immediately, your total cost is the cash advance fee plus the money order fee — much lower than carrying the balance. This is the least expensive way to use a credit card for a money order, though it is still more expensive than using a debit card.

Will buying a money order with a credit card hurt my credit score?

A cash advance itself does not directly damage your credit score, but it does increase your credit utilization ratio (the amount of your credit line you are using). High utilization can lower your score slightly. Paying it off quickly brings your utilization back down and minimizes the impact.

Are there any credit cards that don't charge a cash advance fee?

Very few credit cards eliminate the cash advance fee entirely. Some cards marketed to people rebuilding credit may have lower fees or promotional periods with no fee, but these are exceptions. Check your card's terms or call the issuer to see if yours is one of them.