Right now payments.php is pretty much integrated into the UserCP page. It's possible to do what you want, but you'll have to make quite some modifications.
- Remove any requirement that the user is logged in.
- Modify the template so people who are not logged in don't see UserCP related things.
- Adjust the information vBulletin stores in the database when someone makes a payment (paymentinfo table). It's used to check if it's a valid payment when the payment provider pings back to vBulletin. If a valid payment has been made, it uses the information in the paymentinfo table to update the users settings.
- Along with this, you have to modify payment_gateway.php which handles incoming requests from payment providers.
- Instead of modifying payment_gateway.php, you could create your own payment gateway script which you can modify exactly to your needs. This would probably be easier.