Hi there,
I need to customize the credit card / payment options icons displayed at checkout, as a couple of the default icons are for payment options not available here.
I requeted help with this on your plugins WP support forum (https://wordpress.org/support/topic/how-to-hide-remove-unwanted-card-iscons/#post-17908074), and was told I should raise the issue as a feature request.
“If your Stripe is set in a country where Amex isn’t supported, the icons should reflect this or at least be given the option to select the icons you wish to display.”
Please add an option to set payment option icons that are required.
Closed
Last updated: October 30, 2025
Sadly, our engineers do not think this is possible. 🙁 The payment element doesn’t offer any option to customize it, nor does the Appearance API.
The old form display is perfect with the use of a generic bank card icon by default:
HTML :
CSS : .woocommerce-checkout #payment ul.payment_methods li .stripe-credit-card-brand {background: no-repeat url(../images/credit-card.svg);}
I’m still not using the new form because these icons (.p-CardBrandIcons) duplicate the ones I added after my payment method title.
It would be nice to be able to hide the default bank card icons via the plugin options or with the CSS customization snippet:
add_filter( ‘wc_stripe_upe_params’, function ( $stripe_params ) {
$stripe_params[‘appearance’] = (object) [
‘theme’ => ‘stripe’,
‘variables’ => (object) [
‘colorDanger’ => ‘#bd081c’,
‘focusBoxShadow’ => ‘none’
],
‘rules’ => (object) [
‘.CardBrandIcons’ => (object) [
‘display’ => ‘none’
]
],
];
return $stripe_params;
} );
Thank You
100% this needs implementing as it wasn’t an issue with Legacy checkout as it could be hidden. The new version shows for example American Express even if the seller does not offer it which is massively confusing for customers.
Plugin users should be given a setting where they can hide individual credit card icons and also ALL credit card icons. Especially since there is animation happening with the credit card icons which is distracting.