Buying a Money Order With a Credit Card: What Actually Works
Most credit card issuers block money order purchases, but a few workarounds exist
You cannot walk into most places and buy a money order directly with a credit card. Western Union, MoneyGram, the U.S. Postal Service, and most grocery store money order counters treat credit cards as cash advances, which they decline. Your card issuer sees the transaction the same way — as a loan against your credit line, not a purchase — and charges you a cash advance fee (usually 3 to 5 percent) plus interest starting immediately, with no grace period.
That said, a few payment paths do work. You can use a credit card to fund a digital wallet, then use that wallet to buy a money order online. You can also withdraw cash at an ATM with your credit card and use the cash to buy a money order in person, though this costs you the cash advance fee twice over. The best option depends on where you need the money order and how quickly you need it.
Key Takeaways
- Credit cards are blocked at most money order counters because issuers classify the purchase as a cash advance, which triggers a fee and immediate interest charges.
- You can fund a digital wallet like PayPal or Square Cash with your credit card, then use that balance to buy a money order online through services like MoneyGram or Western Union.
- Withdrawing cash at an ATM with your credit card and then buying a money order in person works but costs you two separate cash advance fees.
- Debit cards, prepaid cards, and bank account transfers all avoid the cash advance fee and are faster routes if you have access to them.
Why credit cards don't work at the counter
When you try to buy a money order with a credit card at a Western Union location, MoneyGram agent, post office, or Walmart money services desk, the system rejects it. This is not a mistake or a temporary block — it is a deliberate policy set by both the money order provider and your card issuer.
The reason is classification. A money order is considered a cash equivalent, and buying one with a credit card counts as a cash advance. Cash advances are treated differently from regular purchases: your card issuer charges a separate fee (typically 3 to 5 percent of the amount), and interest accrues from the transaction date forward, with no grace period. For a $500 money order, that is $15 to $25 in fees alone, plus interest.
Money order providers enforce this rule because they do not want to process disputed transactions or chargebacks on cash-equivalent products. Once a money order is issued, it is nearly impossible to reverse, so they require payment methods that are final and non-reversible — cash, debit cards, or bank transfers.
Using a digital wallet to buy a money order online
The most practical workaround is to load your credit card into a digital wallet, then use that wallet balance to purchase a money order through an online money order service. This works because the wallet itself holds the funds, and the money order purchase is treated as a transfer from the wallet, not a credit card transaction.
PayPal is the most common option. Link your credit card to your PayPal account, transfer funds from the card to your PayPal balance, then go to MoneyGram's website or Western Union's website and buy a money order using your PayPal balance as payment. The credit card transaction (loading the wallet) still counts as a cash advance and incurs a fee, but it happens once, upfront, rather than at the money order counter.
Square Cash (now called Cash App) works the same way. Add your credit card, transfer the amount you need to your Cash App balance, then use that balance to buy a money order through MoneyGram or Western Union online. Some regional digital wallets and payment apps also support this, though availability varies by state and by app.
The catch: loading a credit card into a digital wallet is still classified as a cash advance by most card issuers, so you pay the fee and interest. You are not avoiding the cost — you are just avoiding the rejection at the counter. This route makes sense only if you need to buy a money order online or if your local money order provider does not accept credit cards at all.
Withdrawing cash and buying in person
You can use your credit card to withdraw cash at an ATM, then use that cash to buy a money order at any counter. This always works, because money order providers accept cash without question.
The downside is cost. You pay a cash advance fee when you withdraw the cash (3 to 5 percent), and then you pay another cash advance fee when you buy the money order with the credit card at the counter — except you are using cash, so there is no second fee. Actually, you pay only one cash advance fee, but it applies to the full amount you withdrew. If you withdrew $500 to buy a $500 money order, you pay $15 to $25 in fees plus interest on the full $500.
This route is slower and more expensive than using a digital wallet, and it makes sense only if you do not have a digital wallet set up and need the money order urgently.
Better alternatives if you have them
If you have access to a debit card, use it instead. Debit card transactions are not classified as cash advances, so there is no fee and no interest. The same applies to prepaid cards — load them with your credit card if you need to, but once the prepaid card has a balance, use it to buy the money order and avoid the cash advance fee on that transaction.
A bank account transfer is even simpler. If you are sending money to someone and they have a bank account, ask whether they can receive a direct transfer instead of a money order. ACH transfers (the standard bank-to-bank transfer) are free or very cheap, faster than a money order, and require no credit card at all.
If you must use a credit card and none of these options work, compare the total cost: the cash advance fee plus interest for the time you carry the balance. For small amounts, the fee might be $5 to $10. For larger amounts, it adds up quickly, and you may find it is cheaper to ask a friend or family member to buy the money order with their debit card or cash and let you pay them back.
Money order fees and timing with credit cards
Money order fees themselves are separate from credit card fees. The U.S. Postal Service charges around $1.45 to $2.00 depending on the amount. Western Union and MoneyGram charge $1 to $5 depending on where you buy and how much you are sending. These fees apply whether you pay with cash, debit, or credit (via a digital wallet).
Timing also matters. If you buy a money order online through a digital wallet, the money order is usually issued within minutes, but delivery to the recipient takes 1 to 3 business days depending on the service. If you buy in person at a post office or Western Union location, you get the money order immediately, but you cannot use a credit card directly — you need cash or a debit card.
Plan ahead if you are using a digital wallet route, because loading the wallet and buying the money order online takes longer than walking into a store with cash.
Frequently Asked Questions
Will my credit card issuer let me load a digital wallet with a credit card?
Most will, but they classify it as a cash advance and charge the fee. Before you load a large amount, call your card issuer and ask whether they charge a cash advance fee for digital wallet transfers. Some cards (particularly rewards cards) charge higher cash advance fees than others, so it is worth checking your terms first.
Can I use a credit card to buy a money order at Walmart?
No. Walmart's money services desk treats credit cards as cash advances and declines them, just like Western Union and the post office do. You need cash, a debit card, or a prepaid card.
What if I buy a money order with a digital wallet and the recipient never cashes it?
Money orders do not expire, but they can become difficult to replace if lost or damaged. If the recipient says they never received it, contact the money order provider (MoneyGram or Western Union) with your receipt and ask for a trace. They can confirm whether it was cashed and help you replace it if it was not.
Is there a limit to how much I can send with a money order bought through a digital wallet?
Yes, but the limit depends on the provider. Western Union and MoneyGram typically cap single money orders at $1,000 to $2,500 depending on the location and service. Your digital wallet may also have its own daily or monthly transfer limits. Check both before you try to send a large amount.
Do I have to pay the cash advance fee if I use a prepaid card instead of a credit card?
No. Prepaid cards are not credit cards, so loading them with your credit card may incur a fee (depending on the prepaid card provider), but buying a money order with the prepaid card balance does not. If you have a prepaid card, load it with your credit card and then use the prepaid card to buy the money order — you pay the credit card fee once, not twice.