Prepaying for fuel is the law in BC. It is known as Grant's Law after a service station attendant was killed in a gas and dash incident.
Most larger stations have prepay pumps, where you can just enter your debit or credit card. I do not know if there is any issue using a US card in them.
On tip, at Safeway stores in BC that have gas stations, if you buy $40.00 in groceries (use your Safeway card or get one once you are here), you get 5 cents per litre off the price of gas.
The Safeway in my home town has diesel too, I am pretty sure the discount applies to it too. The pumps at at least some of the stores are big rig friendly.