Most money order sellers won't take credit cards directly, but you have workarounds
You cannot walk into a Western Union, MoneyGram, or post office and hand over a credit card to buy a money order. These sellers treat money orders as cash equivalents and require payment in actual cash, debit card, or bank transfer. The reason is simple: money orders are final once issued, and the seller has no way to reverse the transaction if your credit card company later disputes the charge.
That said, you can still use a credit card to fund a money order — you just need an extra step. The most common path is to use your credit card to withdraw cash from an ATM, then use that cash to buy the money order. A second option is to transfer money from a credit card to a bank account (through a cash advance or balance transfer), then pay for the money order from that account. Each route has different costs and timing.
Key Takeaways
- Western Union, MoneyGram, and USPS money order counters do not accept credit cards as direct payment, only cash or debit cards.
- Using an ATM to withdraw cash from your credit card costs a cash advance fee (typically 3–5% of the amount) plus daily interest starting immediately.
- Transferring credit card funds to a bank account and paying from there avoids the daily interest but still incurs a one-time transfer fee.
- If you have a debit card linked to a credit line, some banks allow you to use it at money order counters, which avoids the cash advance fee.
- Money order fees themselves range from $1 to $10 depending on the amount and seller, and are separate from any credit card costs.
Using an ATM cash advance to pay for a money order
The fastest way to turn a credit card into cash for a money order is an ATM withdrawal. Walk to any ATM that accepts your card, withdraw the amount you need, and use that cash at your money order seller. The transaction is immediate.
The cost is steep. Most credit card issuers charge a cash advance fee of 3% to 5% of the amount withdrawn, with a minimum of $3 to $10. So withdrawing $500 costs $15 to $25 in fees alone. On top of that, interest on the cash advance begins accruing the day you withdraw it — there is no grace period like there is for purchases. The interest rate for cash advances is often higher than your regular purchase APR, sometimes 2% to 3% higher. If you pay off the advance within a few days, the interest is minimal, but if it sits for weeks, it adds up.
This method makes sense only if you need cash immediately and have no other option. For a $500 money order, you are looking at $15–$25 in fees plus interest, making your total cost $520–$530 or more.
Transferring credit card funds to a bank account
A second option is to move money from your credit card to a checking or savings account, then pay for the money order from that account using a debit card or check. Many credit card issuers allow balance transfers or cash-like transfers to a linked bank account.
This route avoids the daily interest that cash advances carry, but you still pay a one-time transfer fee, usually 3% to 5% of the amount transferred. Some cards offer promotional periods with no transfer fee for the first 30 or 60 days — check your card's terms or call the issuer to ask. The transfer itself takes 1 to 3 business days, so this method is slower than an ATM withdrawal but may be cheaper if you are moving a large amount.
Once the money lands in your bank account, you can pay for the money order with your debit card or by check, and no additional fees apply beyond the initial transfer cost.
Paying with a debit card at the money order counter
If you have a debit card, most money order sellers accept it directly. Western Union, MoneyGram, and USPS all take debit cards without the restrictions they place on credit cards. This is the cheapest option if you have access to a debit card, because you pay only the money order fee itself — no cash advance fee, no transfer fee, no interest.
Some credit card issuers offer a debit card option linked to a credit line or overdraft protection. If your card issuer provides this, you can use the debit card at a money order counter and the charge will draw from your credit line. Check with your bank or card issuer to see whether this option is available to you. It is not common, but it exists with some institutions.
Money order fees and limits at each seller
Regardless of how you pay, the money order itself carries a fee. USPS charges $1.45 for money orders up to $500 and $1.95 for $500 to $1,000. Western Union and MoneyGram fees vary by location and amount but typically range from $1 to $10 for domestic transfers. Some Walmart locations and grocery stores also sell money orders for $0.70 to $1.50, and these sellers accept debit cards.
Money order limits also vary. USPS caps a single money order at $1,000. Western Union and MoneyGram typically allow up to $2,500 per transaction, though some locations may be lower. If you need to send more than the limit, you can buy multiple money orders, but each one carries its own fee.
If you are using a credit card cash advance or transfer to fund the purchase, add the credit card fee to the money order fee to see your total cost. A $500 money order at USPS costs $1.95 plus $15–$25 in credit card fees, bringing your total to $17–$27 before interest.
When a credit card cash advance makes sense
A credit card cash advance for a money order is rarely the best choice, but it can be the right one in specific situations. If you need to send money urgently and have no access to a debit card or bank account, a cash advance is faster than a transfer. If the amount is small — say, $50 — the fee might be only $3 to $5, making it tolerable.
It also makes sense if your credit card offers a promotional period with no cash advance fee. Some cards waive the fee for the first 30 or 60 days after opening. If you are in that window, a cash advance costs only the interest accrued, which is minimal if you pay it back within days.
In all other cases, using a debit card or transferring funds to a bank account is cheaper and often faster.
Frequently Asked Questions
Can I use a credit card to buy a money order online?
Some online money order services, like certain Western Union or MoneyGram digital platforms, do accept credit cards. However, these services typically charge higher fees than in-person purchases and may have lower limits. Check the specific service's website for payment methods and fees before proceeding.
What if I don't have a debit card or bank account?
A credit card cash advance is your main option. Withdraw cash at an ATM and pay in cash at the money order counter. The fees are high, but it works. Alternatively, some prepaid debit cards can be loaded with a credit card and then used at money order counters.
Will paying for a money order with a credit card hurt my credit score?
A cash advance itself does not directly hurt your score, but it increases your credit utilization (the percentage of your available credit you are using), which can lower your score temporarily. Paying off the advance quickly minimizes this impact.
Can I use a credit card at Walmart or grocery store money order counters?
No. Walmart, grocery stores, and other retail money order counters have the same restrictions as USPS and Western Union — they accept cash and debit cards only. You would need to withdraw cash from an ATM first.
Is there a cheaper way to send money than a money order?
Yes. Bank transfers, Venmo, PayPal, and other digital payment services are often free or cost less than a money order. Money orders are useful mainly when the recipient does not have a bank account or when you need a paper receipt, but for most situations, digital transfers are cheaper.