Yeah, React forms are a different beast since they maintain their own states, so assigning value to the inputs may not work.
What you can do is try experimenting with firing different events to see if it the coupon field is entered properly. Here's a sample JS rule:
let coupon = document.querySelector('#some-coupon-field');
if (coupon) {
coupon.focus();
coupon.value = 'COUPON_CODE';
coupon.dispatchEvent(new Event('input'));
coupon.blur();
}
If firing 'input' event alone doesn't work, then try firing other events like change, keyup, keydown, and keypress. Depending on what event handlers are used in the form, it may require a combination of these events, or possibly all of them being fired.