Check an intended action — vendor, amount and category — against a spend policy (max amount, allowed/blocked vendors, allowed/blocked categories) before money moves. Returns allowed=false with reasons when any rule is violated.