Payment Gateway Support
Authorize.Net Emulator Gateway API
The AE gateway API is a programming interface that resides on transaction servers which communicate directly to credit card processing networks. The programming interface requires that the merchant, or their web programming staff, be sufficiently knowledgeable in programming skills in any programming or object oriented scripting language. Several programming samples in a variety of languages are provided for reference to coding into the AE Gateway API.
The AE Gateway API accepts the card purchasers information, including credit card information, billing address, total charge amount and order id and produces an authorization or decline directly from the merchant bank. The AE Gateway API provides methods to perform the following operations: AUTH, SALE. The information is passed via 128bit SSL https post in delimited string format. That post occurs in the background from the merchant's server. Thus the purchaser never leaves the merchant's website. The authorization information is returned in CSV string format with full error trapping and reporting to indicate the success or failure of the transaction.
General Requirements
What do I need to send to the AE Gateway?
version: 1.0, future formats will use a different version number.
login: transaction center id # assigned by gateway
password: pwd # assigned by gateway
#or (gateway id is preferred method)
tran_key: gateway id # assigned by gateway
type: auth/sale
invoice_num: MUST BE UNIQUE ASSIGNED
amount: (In US Dollars. Example 59.99 No $ signs.)
card_name: (Visa, Amex, Discover or MasterCard) #not required
card_num: 15|16 digit credit card number
exp_date: MMYY
card_code: 3 digit cvv2 code #not required
first_name: first name of card owner
last_name: last name of card owner
address: address of card
address2: address line 2 of card #not required
city: city of card
state: state - 2 chars ex. AA
zip: postal code of card
country: country - 2 chars ex. AA
email: email address of customer #not required
phone: phone number of customer #not required
recurring: 0-no 1-yes #not required
recurring_type: Null if recurring =0 #not required
remote_ip_address: Customer IP Address #not required
purchase_card: 0 - regular card, 1 - b2b purchase card #not required
customer_reference_number: 17 character limit - invoice, order id or purchase order number #not required
local_tax_flag: 0 - tax not provided, 1 - tax included, 2 - non-taxable transaction #not required
ship_to_zip: zipcode where order is shipped #not required
tax: In US Dollars. Example 59.99 No $ signs) #not required
Complete Example:
x_version=1.0&x_amount=1.00&x_card_num=4111111111111111&x_exp_date=1010&x_login=1264
&x_password=password&x_address=123 test rd&x_zip=19036&x_type=sale&x_invoice_num=testaegw1
&x_card_code=123&x_city=cityville&x_first_name=bob&x_last_name=tester&x_email=test@testt.com
&x_phone=7144844949&x_state=pa&x_country=usa&x_ship_to_address=123 test rd&x_ship_to_zip=19036&x_tax=
What is the response that I get back from the AEGateway (for operation_type auth or sale)?
statusCode, statSubCode, response, authresponse,
authcode, avs_code, cvv2_code, invoice_num,
reference_number, f10, f11, f12,
f13, f14, f15, f16,
f17, f18, f19, f20,
f21, f22, f23, f24,
f25, f26, f27, f28,
f29, f30, f31, f32,
f33, f34, f35, f36,
f37, f38, f39
Real Example:
1,1,APPROVED,APPROVED,DEMO71,Z, ,testaegw1,12162,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
status: 0-error 1-success 2-declined
statusSubCode: 0-error 1-success 2-declined
response: text response for transaction result
authresponse: response from bank. May be same as response
auth_code: character code sent by the bank
avs_code: avs code from the bank
cvv2_code: cvv2 code from the bank
invoice_num: echoed back from original post
reference_number: returned for use with credits/voids/settles in other gateways
f10 - f39: will be empty but may be used in future versions for additional information.
NOTE: Status-
- 0 = error in data passed
- 1 = successful transaction
- 2 = failed transaction
Example Error
Malformed fields or bad messages in all cases will be returned in the response defined for the operation type sent in with the status = 0. The auth_response field will contain the error message.
Example Error:
0,,,Merchant: not authorized.,,,,testaegw1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
For a more detailed description on how to set up the Authorize.net Emulator(AE) Gateway API, and to view PERL sample, see this documentation.