Initially you could just order something and choose the amount of 100 times X points you want to redeem before placing your order with 100 points being equal to 5$ and the like.
Now you have to turn your points into coupon codes with specific values beforehand that they send you by e-mail so if you want 10 bucks off you have to redeem two 5$ coupons because reasons.
From what I understand those coupons are apparently pysical store and website specific so you have to make up your mind where you want to order and the coupons become void after like a month.
But it gets better: in certain versions of Lego's website like the German one it's actually not clear where to actually redeem those codes and the description tell you completely different things.
There's field on your shopping cart page that says "Enter Promo Code" with the description "Have a promo code for a free item? Please enter that code in the Promo Code field above! If you have a VIP Discount Code, please enter that in the VIP Discount Code field in the Payment section during Checkout."
Meanwhile, on the German page it says "Enter your Coupon Code" with the description "You want to redeem your VIP-Points for a discount? Just call the Reward Center beforehand!".
So, if you try entering that code here it'll check out as invalid, making you feel like the site and system is shitting you when in reality you actually have to put in your discount code at almost the end of the ordering process in a completely different field on a different page.
Also, those discounts are taken into consideration when it comes to the free shipping.
Got 55 bucks of plastic-crack and want to redeem a 5$ coupon?
Ahahaha, get fucked, now you have to pay for shipping again.