The best way to achieve this would be with Ajax, or JS/Jquery.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#submit").click(function () {
$.post($("#addToDB").attr("action"), $("#addToDB").serialize(),
function () {
alert('Add to Database submitted');
});
$.post($("#paymentGateway").attr("action"), $("#addToDB").serialize(),
function () {
alert('Payment Gateway submitted');
});
});
});
</script>
The form:
<form id="addToDB" action="addtodatabase.php" method="post">
<input type="button" id="submit" value="Submit" />
</form>
<!-- Hidden form for payment gateway -->
<form id="paymentGateway" action="paymentgateway.php" method="post">
<!-- Payment gateway input fields -->
</form>
Clicking the button with id="submit"
calls function to post both forms by form id.