Topping up Revolut with credit cards has been risky for several months now.
Revolut keep changing their merchant category code. What’s more, it appears that they send some customers to their MCC 4829 merchant account and send other customers to their MCC 6012 merchant account. Revolut themselves can’t always accurately advise which one they will send you to and the truth is nobody on the internet can either, even if advice and experience is shared in good faith.
If your credit card issuer charges cash advance fees or has a 0 day interest free period for MCC 4829 transactions then the best thing to do is to stop loading Revolut with it if the fees are an issue. Furthermore some issuers will not give you any cashback/points on MCC 4829 transactions. Some issuers consider 6012 a cash advance too.
MCC passthrough means that fronting your credit card with Curve will not stop you being charged for a cash like transaction if that’s what your card issuer does.
An easy way to avoid these charges is to top up Revolut with a current account debit card or by bank transfer. Other, less risky methods are available if you are a points collector.