Implementing Authorize.net Direct Post Method
Posted: Thu May 08, 2014 12:25 pm
So I looked at the AbleCommerce implementation of Authorize.net CIM and found it to closely mimic the standard AIM method. Unless I'm missing something, I'm not seeing why the effort was even made to implement it this way. Unless I'm mistaken it doesn't appear to be utilizing the tokenization, and the credit card details pass through the server leaving it in-scope for PCI compliance.
We are looking for a solution that keeps the credit card data from even touching our server in order to limit PCI scope. So now I'm back to figuring out how to implement the Direct Post Method (http://developer.authorize.net/api/dpm/). The basic idea is that your payment form submits directly to Authorize.net so credit card information never touches your server, Authorize.net passes the transaction and auth code to the store in the background, the store logs the payment and notifies Authorize.net where to redirect the customer, and Authorize.net redirects the customer to the receipt.
I was able to create a form that submits all the appropriate information (except the order number) and it properly registers the transaction in Authorize.net. I haven't started working on the handshake part yet because I'm developing on localhost, but you need a public IP/domain for Authorize.net to communicate with.
Before I get that far, I'm wondering how I am supposed to generate the order number to submit with the payment? I'd imagine it would have to work similar to PayPal Express, but I can't follow exactly how those orders are initially placed without payment details.
We are looking for a solution that keeps the credit card data from even touching our server in order to limit PCI scope. So now I'm back to figuring out how to implement the Direct Post Method (http://developer.authorize.net/api/dpm/). The basic idea is that your payment form submits directly to Authorize.net so credit card information never touches your server, Authorize.net passes the transaction and auth code to the store in the background, the store logs the payment and notifies Authorize.net where to redirect the customer, and Authorize.net redirects the customer to the receipt.
I was able to create a form that submits all the appropriate information (except the order number) and it properly registers the transaction in Authorize.net. I haven't started working on the handshake part yet because I'm developing on localhost, but you need a public IP/domain for Authorize.net to communicate with.
Before I get that far, I'm wondering how I am supposed to generate the order number to submit with the payment? I'd imagine it would have to work similar to PayPal Express, but I can't follow exactly how those orders are initially placed without payment details.