If a product has FREE SHIPPING checked WHY does paypal show a line item for shipping UPS $0.00
I even tried hiding the shipping in the checkout but something is still being set to paypal..
{if shipping_method && order_shipping_val != 0}
The PayPal payment gateway file is set to send the order totals, taxes, shipping totals, billing details, shipping details and line item details to PayPal. So Store sends the shipping total of $0 dollars when the shipping total is free just as it send the total of $9.95 when that is the shipping total.
IF you wanted to change this behavior you would have to open up the PayPal payment gateway search for the shipping cost lines and add a conditional to check the value of the shipping total with php and then only send the shipping variable if it has a total.
This should be noted that you would need to make this change again anytime you updated Store as it would be overwritten each update.