Always ascertain the appropriate filing fee by checking the U.S. Citizenship and Immigration Services (USCIS) fee charts, on the USCIS web site, not from the form instructions!
• The fee for the regular I-129 petition for a nonimmigrant worker is $460.
• The fee for the I-907 premium processing form is $2,500. (As of 10/19/20, and must use the latest form)
Payment should be made by business or personal check, money order or cashier's check, payable to "U.S. Department of Homeland Security." Separate checks should be used for each fee paid. It is best to make a notation of some sort on the check, such as "Acme Co. I-129/O-1B for J. Brown," to make it easier to reconnect with check with the filing should it become separated by accident. Do NOT pay fees in cash or stamps!
There is no rule about who must pay these or any other costs associated with the petition. That is a matter of contract between the petitioner, the beneficiary(ies), and the venues. USCIS will be happy to take payment from any source.