Virtuemart apply coupon from query string
You could use this url:
index.php?option=com_virtuemart&controller=cart&task=setcoupon&view=cart&coupon_code=COUPON_CODE
I have tested that with virtuemart 3.0.18 and it works just fine.
You could see how this url is being created by checking the input fields that the form is posting in:
components/com_virtuemart/views/cart/tmpl/default_coupon.php
Hope this helps