Cart and Checkout Filters – Coupons
The following Coupon filters are available:
-
coupons
-
showApplyCouponNotice
-
showRemoveCouponNotice
coupons
Description
Parameters
-
coupons
object
– The coupons object with the following keys:-
code
string
– The coupon code. -
discount_type
string
– The type of discount. Can bepercent
orfixed_cart
. -
totals
object
– The totals object with the following keys:-
currency_code
string
– The currency code. -
currency_decimal_separator
string
– The currency decimal separator. -
currency_minor_unit
number
– The currency minor unit. -
currency_prefix
string
– The currency prefix. -
currency_suffix
string
– The currency suffix. -
currency_symbol
string
– The currency symbol. -
currency_thousand_separator
string
– The currency thousand separator. -
total_discount
string
– The total discount. -
total_discount_tax
string
– The total discount tax.
-
currency_code
-
code
-
extensions
object
(default:{}
) – The extensions object. -
args
object
– The arguments object with the following key:-
context
string
(default:summary
) – The context of the item.
-
context
Returns
-
array
– The coupons array of objects with the same keys as above.
Code example
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyCoupons = ( coupons, extensions, args ) => {
return coupons.map( ( coupon ) => {
if ( ! coupon.label.match( /autocoupon(?:_\d+)+/ ) ) {
return coupon;
}
return {
...coupon,
label: 'Automatic coupon',
};
} );
};
registerCheckoutFilters( 'example-extension', {
coupons: modifyCoupons,
} );
Filters can be also combined. See Combined filters for an example.
Screenshots
Before | After |
---|---|
showApplyCouponNotice
Description
Parameters
-
value
boolean
(default:true
) – Weather to show the apply coupon notice. -
extensions
object
(default:{}
) – The extensions object. -
args
object
– The arguments object with the following keys:-
context
string
(allowed values:wc/cart
andwc/checkout
) – The context of the coupon notice. -
code
string
– The coupon code.
-
context
Returns
-
boolean
– Weather to show the apply coupon notice.
Code examples
Basic example
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowApplyCouponNotice = ( defaultValue, extensions, args ) => {
return false;
};
registerCheckoutFilters( 'example-extension', {
showApplyCouponNotice: modifyShowApplyCouponNotice,
} );
Advanced example
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowApplyCouponNotice = ( defaultValue, extensions, args ) => {
if ( args?.couponCode === '10off' ) {
return false;
}
return defaultValue;
};
registerCheckoutFilters( 'example-extension', {
showApplyCouponNotice: modifyShowApplyCouponNotice,
} );
Filters can be also combined. See Combined filters for an example.
Screenshots
Before | After |
---|---|
showRemoveCouponNotice
Description
Parameters
-
value
boolean
(default:true
) – Weather to show the remove coupon notice. -
extensions
object
(default:{}
) – The extensions object. -
args
object
– The arguments object with the following keys:-
context
string
(allowed values:wc/cart
andwc/checkout
) – The context of the coupon notice. -
code
string
– The coupon code.
-
context
Returns
-
boolean
– Weather to show the apply coupon notice.
Code examples
Basic example
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowRemoveCouponNotice = ( defaultValue, extensions, args ) => {
return false;
};
registerCheckoutFilters( 'example-extension', {
showRemoveCouponNotice: modifyShowRemoveCouponNotice,
} );
Advanced example
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowRemoveCouponNotice = ( defaultValue, extensions, args ) => {
if ( args?.couponCode === '10off' ) {
return false;
}
return defaultValue;
};
registerCheckoutFilters( 'example-extension', {
showRemoveCouponNotice: modifyShowRemoveCouponNotice,
} );
Filters can be also combined. See Combined filters for an example.
Screenshots
Before | After |
---|---|
Last updated: February 20, 2025