Solved

Authorize.net post string example for cURL

Posted on 2009-04-02
1
926 Views
Last Modified: 2013-11-18
Long story short, we have to use cURL command line to send a AUTH request to Authorize.net to pre-auth credit card transactions.  Does anyone have an example of what the post string should look like?  Are there existing scripts already written?

Thanks, Jay
0
Comment
Question by:jaygraves
1 Comment
 
LVL 50

Accepted Solution

by:
Steve Bink earned 500 total points
ID: 24066306
You mean something like this?  This code was written in PHP.

You'll likely want to use this manual along with the example code:

http://www.authorize.net/support/AIM_guide.pdf
http://www.authorize.net/support/CNP/helpfiles/
<?
// ... more code up here to set up order processing, etc.
 
// set a test mode?
$x_Test = "FALSE";
if (usr_GLOBALS_TESTMODE) { $x_Test='TRUE'; }
 
$hashval = "Authorize.NET Customer HASH";
$x_Login="Authorize.NET Customer Login#";
$x_Delim_Data="TRUE";
$x_Delim_Char="|";
$x_Encap_Char="";
$x_Type="AUTH_ONLY";
// customer fields
$x_Method="CC";
$x_Tran_Key = "Authorize.NET Transaction Key";
$x_Amount = sprintf("%1.2f","Amount to charge");
$x_FName = "Customer First Name";
$x_LName = "Customer Last Name";
$x_Company = "Customer Company Name";
$x_Address = "Customer Address";
$x_City = "Customer City";
$x_State = "Customer State";
$x_Zip = "Customer Zip";
$x_Phone = "Customer Phone Number";
$x_Card_Num = "Customer Card Number";
// Customer's Card Expiration Date...specific format!
$x_Exp_Date = date("m/y", mktime(0, 0, 1, $expmonth, 1, $expyear));
$x_CVV = "Customer CVV Code";
 
 
/*
Unused fields:
x_tax:#:sales tax, 0.00 formatted
x_customer_ip:15:????????????????
x_description:255:description field...hrrmmm.....
*/
 
// standard fields
$fields = "x_version=3.1&x_delim_data=$x_Delim_Data&x_delim_char=$x_Delim_Char&" .
		"x_encap_char=$x_Encap_Char&x_type=$x_Type&x_method=$x_Method&x_duplicate_window=300&" .
		"x_country=US&x_email_customer=FALSE&";
 
// customized fields
$fields .= "x_login=$x_Login&x_tran_key=$x_Tran_Key&x_test_request=$x_Test&" .
					"x_first_name=$x_FName&x_last_name=$x_LName&x_address=$x_Address&" .
					"x_city=$x_City&x_state=$x_State&x_zip=$x_Zip&x_company=$x_Company&" .
					"x_phone=$x_Phone&x_cust_id=$custid&x_invoice_num=$orderid&" .
					"x_amount=$x_Amount&x_card_num=$x_Card_Num&x_exp_date=$x_Exp_Date&" .
					"x_card_code=$x_CVV";
 
// execute CURL session to authorize.net, return in $details
$ch = curl_init("https://secure.authorize.net/gateway/transact.dll");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$buffer = curl_exec($ch);
curl_close($ch);
// get the returned array, and set up for the hash check.
$details = explode($x_Delim_Char,$buffer);
 
// details is now an array of the return
?>

Open in new window

0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Background Still having to process all these year-end "csv" files received from all these sources (including Government entities), sometimes we have the need to examine the contents due to data error, etc... As a "Unix" shop, our only readily …
Read about how to choose the best possible content marketing agency to suit your needs. Content marketing has become an integral part of running a successful tech business, so it is wise to be informed.
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Viewers will get an overview of the benefits and risks of using Bitcoin to accept payments. What Bitcoin is: Legality: Risks: Benefits: Which businesses are best suited?: Other things you should know: How to get started:

685 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question