There are many ways of doing this. One way would be to use MySQL or MongoDB to create a queue for the bot to send. This queue might contain the items to send, the SteamID of the person to send it to, and their token. Then, the bot will poll the database every X seconds to check if there's a new trade offer to send, and, if there is, send it. Websites that I've made use MongoDB to do just that. Another, cleaner, and faster way to do this would be to use Socket.io to emit the trade offer to send just like above. The downside to Socket.io, however, is not having a queue which would build up while the bot is offline, or serve as a log. You could also go with the straight PHP route, using waylaidwanderer's PHP-SteamCommunity.