Where is there XML in Authorize.Net's API? Here's how you charge a card using the AIM (Advanced Integration Method) interface (Perl sample code):
my $post_values =
{
"x_login" => "API_LOGIN_ID",
"x_tran_key" => "TRANSACTION_KEY",
"x_version" => "3.1",
"x_delim_data" => "TRUE",
"x_delim_char" => "|",
"x_relay_response" => "FALSE",
"x_type" => "AUTH_CAPTURE",
"x_method" => "CC",
"x_card_num" => "4111111111111111",
"x_exp_date" => "0115",
"x_amount" => "19.99",
"x_description" => "Sample Transaction",
"x_first_name" => "John",
"x_last_name" => "Doe",
"x_address" => "1234 Street",
"x_state" => "WA",
"x_zip" => "98004"
};
my $useragent = LWP::UserAgent->new( protocols_allowed => ["https"] );
my $request = POST( $post_url, $post_values );
my $response = $useragent->request( $request );
That's just a straightforward form post to a CGI. Result is a line of CSV data. No XML in sight.
Does the non-AIM option (I forget what it is called) use XML?