There is a problem with the current version.  This will be fixed on the next release, in the mean time, here is what you can do to fix it:
in www/administrator/components/com_awocoupon/helpers/estore/estorecouponhandler.php around line 2622 is this:
<?php
        if($coupon_row->function_type=='shipping' && $coupon_row->discount_type=='specific') {
        
            $r_err = $this->couponvalidate_include_exclude( $coupon_row, array(
                    'asset_mode'=>'exclude',
                    'asset_type'=>$asset_type,
                    'valid_list'=>$coupon_row->{$list_name},
                    'error_include'=>'errShippingExclList',
                    'error_exclude'=>'errShippingExclList',
                )
            );
            if(!empty($r_err)) return $r_err;
        }
?>
Change it to this
<?php
        if($coupon_row->function_type=='shipping' && $coupon_row->discount_type=='specific') {
            
            $r_err = '';
            if(empty($coupon_row->params->{$asset_mode_name}) || $coupon_row->params->{$asset_mode_name}=='include') {
                $is_not_in_list = false;
                foreach($coupon_row->cart_items as $row) {
                    if (
                        ($asset_type=='product' && !isset($coupon_row->{$list_name}[$row[$asset_id_name]]))
                                    ||
                        ($asset_type!='product' && !isset($coupon_row->{$list_name}[@$coupon_row->cart_items_def[$row['product_id']][$asset_type]]))
                    ) {
                        $is_not_in_list = true;
                        break;
                    }
                }
                if($is_not_in_list) {
                // (exclude) all on list
                    $r_err = 'err'.ucfirst(strtolower($asset_type)).'InclList';
                }
            }
            elseif($coupon_row->params->{$asset_mode_name}=='exclude') {
                $is_in_list = false;
                foreach($coupon_row->cart_items as $row) {
                    if (
                        ($asset_type=='product' && isset($coupon_row->{$list_name}[$row[$asset_id_name]]))
                                    ||
                        ($asset_type!='product' && isset($coupon_row->{$list_name}[@$coupon_row->cart_items_def[$row['product_id']][$asset_type]]))
                    ) {
                        $is_in_list = true;
                        break;
                    }
                }
                if($is_in_list) {
                // (exclude) all on list
                    $r_err = 'err'.ucfirst(strtolower($asset_type)).'ExclList';
                }
            }
            if(!empty($r_err)) return $r_err;
            
        }
?>
That should do it.