Oxy-kic made by Bissell is the best thing going but might not work on old stains. a guest decided to eat a punnet of raspberries in their room and got the juice on an expensive Ethan Allen chair. I squirted the stuff on and the stain vanished instantly.
I just remembered, they have just bought out a pet version, I bought some last week but haven't used it yet - I just looked on the back and it says urine, vomit, feces, blood, tracked in dirt. I haven't tried the pet one yet but if its as good as the other one, it "should" work.
They are oxgen based. There are 2 aluminium tanks and the fluids combine.
The regular is £7.99 & the pet is £9.99 but a bigger can.
Its made in USA
I get mine in Lakeland which surprisingly is the cheapest place for it. You can get it on ebay but its more expensive even without postage.