Link to post

Share on other sites

My experience suggests that to send data off to another place can be solved by using cURL.

Hello! process.do was originally receiving the data by <form method="post" action="somewebsite.com/whatever.process.do" and the data is key/value pairs.

I'm setting up a simple credit card payment form and sending the data to a service called Virtual Merchant that will process the payment after I have collected the data, validated it, and sent it off to them. I would simply set the form action to that process.do url, but I first need to validate it and add in some info like virtual merchant account id and account pin and such. I will look into using cURL

This should be a helpful bit of info for anyone who's taking the time to read this! Number 4 is where Im stuck kind of!

Create a form on your website.

Set the action of the form to a script on your server that will send a POST request to the process.do URL using cURL or an equivalent. Refer to the URLS section to set your URL for either the demo or production environment.

Collect as much or as little transactional data on the website as needed and pass the values through the POST to your servier-side script. Example: Pass an amount to your script, but allow the customer to fill out the VirtualMerchant hosted payment form with their contact and shipping information and credit card data.

On the server-side script, collect the information from the POST request (typically using $_POST variables or an equivalent) and include the ssl_merchant_id, ssl_user_id, and ssl_pin.

Note: Do not include your ssl_merchant_id, ssl_user_id, andssl_pin in hidden fields on the website.

Set the transaction type you wish to perform ssl_transaction_type to ccsale to perform a sale or ccauthonly for an authorization.

Call VirtualMerchant’s process.do through cURL or the equivalent and VirtualMerchant will return the source code for your payment form, or the response as indicated by the ssl_show_form value to the customer’s browser.

Set the value of the ssl_amount so that it is unable to be changed on the payment form (unless you are accepting donations).