you could use soil from the ground somewhere as long as you are certain that it doesnt have chemicals etc in it. I've read of people using marshland soil also which works great.
One thing that no one mentioned yet afaik is that there is a mineralizing process that is usually done with topsoil before putting it in the tank. The concept is to soak it/dry it out repeat repeat repeat out on a tarp which basically breaks down the organics for you so you don't have the ammonia spikes etc. Most recipes also call for a bit of dolomite, clay, and potash to be added in when the soil goes into the tank.
Also it helps to screen the topsoil and remove any pieces of wood. A simple google for MTS (mineralized topsoil) should yield plenty of recipes and methods.