Awepay Integration Document
Awepay Integration Document
https://admin.awepay.com/documentation.php 1/65
10/16/2020 Awepay
Table of Contents
1. System Overview
1.1. Security Requirements
2. Integration
2.1. SOAP, Parameter Definitions
2.2. SOAP, Credit Card
2.2.1.General information
2.2.2.Verification
2.2.3.Secure3D Integration
2.2.4.Pre-Authentications (PreAuths)
2.2.5.Settlements (Capture)
2.2.6.Single transactions (Sale)
2.2.7.Responses
2.3. SOAP, Payout
2.3.1.China Union Pay Payout
2.3.2.Flow diagram
2.4. SOAP, ACH
2.4.1.General Information
2.4.2.Single Transactions
2.4.3.ACH Account Types
2.4.4.ACH Classes
2.4.5.Responses
2.5. SOAP, Card Load
2.5.1.General Information
2.5.2.Load Transactions
2.5.3.Responses
2.5.4.Process Flow
2.6. SOAP, Refunds
2.6.1.General Information
2.6.2.Refunding Transactions
2.6.3.Responses
2.7. TxHandler
2.7.1.General Information
2.7.2.Single Transactions
2.7.3.Single Transactions - CUP/WeChat/AliPay/P2P
2.7.4.Flow diagram
2.7.5.Parameter Definitions
2.7.6.Responses
2.8. Secure Hosted Payment
2.8.1.General Information
2.8.2.Single Transactions
2.8.3.Single Transactions - CUP/WeChat/AliPay/P2P
2.8.4.Parameter Definitions
2.8.5.Responses
2.9. Postbacks
2.9.1.General
2.9.2.Usage
2.9.3.Parameters
2.9.4.Signature
2.10. Admin Interfaces
2.10.1.General Information
2.10.2.Get Transactions By TID
2.10.3.Get Transactions By RID
2.10.4.Get Transactions By SID
2.10.5.Get Transaction Details
2.10.6.Parameter Definitions
2.10.7.Responses
3. Code Examples
3.1. SOAP Credit Card
3.1.1.Single Transaction [Non-Secure3D OR Secure3D] (php + nusoap)
3.1.2.Single Transaction [Non-Secure3D OR Secure3D] (PHP soap)
3.2. SOAP ACH
3.2.1.Single Transaction (php + nusoap)
3.3. SOAP Card Load
3.3.1.Single Card Load (php + nusoap)
3.4. SOAP Refunds
3.4.1.Refund (php)
3.5. Secure Hosted Payment
3.5.1.Single Transaction (HTML)
3.6. TxHandler
3.6.1.Single Transaction (HTML)
https://admin.awepay.com/documentation.php 2/65
10/16/2020 Awepay
3.7. Postbacks
3.7.1.PAYMENT
3.7.2.REFUND
3.7.3.CHARGEBACK
3.7.4.LOAD
4. Appendix
4.1. Awepay Generic Error Types
4.2. Transaction Action Types
4.3. Transaction Status Types
4.4. Transaction Specific Error Codes
4.5. Bank Codes
4.6. CVV(2) Response Codes
4.7. AVS Response Codes (Visa)
4.8. AVS Response Codes (Mastercard)
4.9. Country ISO Codes
4.10. State ISO Codes
4.11. Industry Standard Credit Card Response Codes
4.12. Payout Bank Codes
5. Disclaimer
https://admin.awepay.com/documentation.php 3/65
10/16/2020 Awepay
1. System Overview
Awepay is a payment system that allows you to do quick, efficient and secure online transaction processing through a number of third party and bank
payments processing systems. Awepay uses real time processing with customer specified payment gateways to verify credit card details. Awepay stores the
purchase and verification details in an internal database.
With the Awepay Administration interface you are able to overview user transactions and marketing figures. It also allows you to cancel existing accounts and
to view and analyse declined payments.
SSL and TLS 1.1 has been removed as an example of strong cryptography in the PCI DSS, and can no longer be used as a security control.
https://admin.awepay.com/documentation.php 4/65
10/16/2020 Awepay
2. Integration
https://admin.awepay.com/documentation.php 5/65
10/16/2020 Awepay
Data
Name Required Description
Type
state String Customer state, 2 or 3 letter code for US/Canada/Australia Appendix - State ISO Codes
country String Customer country, ISO 3166 2 letter code Appendix - Country ISO Codes
ship_state String Shipping state, 2 or 3 letter code for US/Canada/Australia Appendix - State ISO Codes
ship_country String Shipping country, ISO 3166 2 letter code Appendix - Country ISO Codes
IP address of the purchasing person. If taking phone orders please set uip to 127.0.0.1. This is only valid for
uip String
phone orders.
payby String Card Type (eg. visa, mastercard, ach, etc...). You will be notified if you have a special requirement here.
String
card_no No spaces or dashes allowed
(16)
String
card_ccv Card security code (CVV2) 3 or 4 digits
(3)
String
card_exp_month Card expiry month - 2 digits
(2)
String
card_exp_year Card expiry year - 4 digits
(4)
https://admin.awepay.com/documentation.php 6/65
10/16/2020 Awepay
md String Session ID - Required when performing Secure3D transactions
redirecturl String Where to redirect users after Secure3D password entry - Required when performing Secure3D transactions
useragent String Browser user agent string - Required when performing Secure3D transactions
browseragent String Browser agent string - Required when performing Secure3D transactions
routing_no String ACH routing number. Only required for ACH/Check21 transactions.
account_no String ACH account number. Only required for ACH/Check21 transactions.
type String ACH account type. Valid values are ( 1 = Checking / 2: Savings ). Only required for ACH/Check21 transactions.
regulation_e String ACH regulation e acceptance. Only required for ACH/Check21 transactions. - Set to 1 if unsure.
ACH origination. Please set to "WEB" if online payment, or "TEL" if order taken by phone. Only required for
class String
ACH/Check21 transactions.
receive_name String ACH receivers name. Only required for ACH/Check21 transactions.
bank_code String Bank code. Appendix - Payout Bank Codes *p2p only
amount_purchase String Total purchase amount (without commas and only 2 decimals places)
amount_shipping String Total shipping amount (without commas and only 2 decimals places)
currency_code String 3 digit currency code (Only "USD" supported at this time)
(numerical index) Array Contains information about one item in the cart (Repeat until all cart items are listed)
amount_unit String Unit price amount (without commas and only 2 decimals places)
postbackurl String This is where our system will send a server-server postback notification.
successurl String Used in secure payments as a redirection URL for successful payments
failureurl String Used in secure payments as a redirection URL for failed payments
2.2.1.General information
https://admin.awepay.com/documentation.php 7/65
10/16/2020 Awepay
The Awepay payment system uses SOAP to communicate with customer sales systems. It is important that the required parameters passed to the server are
formatted with the correct data type, (see Error! Reference source not found.) otherwise the transaction will not be accepted.
2.2.1.1. Testing
To test your integration, please contact support and you will be provided with a testing SID. Any transaction processed on the testing SID will only be
checked syntactically and semantically by Awepay. This way you can test if you have sent sufficient and correct data.
When performing testing with your testing SID, the following card details can be used.
Field Value
Card Number 4111111111111111 or 5555555555554444
CCV 123
The following CVV value can be used to test different transaction results with your testing SID.
CVV Description
222 Decline
You will be able to view the results of your testing transactions in Awepay by searching for them on the Browse Transactions page with your testing SID as a
search item.
2.2.2.Verification
Verification allows you to verify customer submitted details, like email or mobile phone, by asking the user to submit extra confirmation details that may be
sent to them.
Verification integration will be required only for sites that have verification options enabled in the fraud check settings.
A transaction that requires verification will return a VER response. If this repose is recieved you will also get the extra question required for verification as
encoded html. Here some example code:
PHP
<?php
if($response["status"]=="VER"){
echo '<form action="yoursubmitpage.php" method="POST">';
echo urldecode($response["required"]["embedhtml"]);
echo '<br/>';
echo '<input type="submit"/> </form>';
}
?>
Once the details are submitted to your verification submit page you must take these variables and sen them to the verification soap request. This will
continue the billing process as expected.
processPreAuth (
array ( integer sid,
string rcode,
string txid,
array verifyresponse
)
The verifyresponse array is an array of items that each have a "name" and "value" tag. These should be the post name and values.
2.2.3.Secure3D Integration
Secure3D is a third party fraud prevention protocol. The premise of this protocol in theory is easily explained; registered Secure3D cards have an additional
password, which helps prevent unauthorised use, which must be authorised and approved on a 3rd party secure website.
Secure3D integration will be required only for sites that have Secure3D enabled, and the steps for Secure3D will only be required to be followed if a payees'
card is registered with Visa for "vbv" or Mastercard for "securecode".
https://admin.awepay.com/documentation.php 8/65
10/16/2020 Awepay
2.2.3.1. Can I continue to process payments using SOAP if my website is Secure3D enabled?
Yes you can. However there have been fundamental changes to the processing steps of a SOAP payment and preauth to support Secure3D.
Create a payment array and initiate a soap response as per a normal transaction. The only changes that will need to be made, is to fill in the "vbv" array in
the "txparams" array of your payment/preauth request. The specifics are outlined in the payment / preauth array section.
https://admin.awepay.com/documentation.php 9/65
10/16/2020 Awepay
A response will be returned in the same format as a normal payment with additional array variables. Here are examples of the following scenarios:
b) Your transaction has been approved and the card is not registered for Secure3D:
You will receive a standard status->OK array, with referenced TXID.
c) Your transaction has been halted, due to the card requiring additional Secure3D information for processing:
You will receive a new result, status->REQ array, with reference TXID & the "required" result array.
If you have received a status->REQ, your response array will be similar to the following:
required Array
enrolled String Has the value "Y" indicating the card is enrolled with Secure3D
embedhtml String (URL encoded) Pre-drawn HTML code to embed in your site (Alternatives available below)
error Array
sys String Where the error occurred. Used when talking to support to isolate errors
info String Additional error information, sometimes another description of the error.
At this point, you have a number of options on how you would like to continue to process the Secure3D transaction. Assume your response data is inside the
array "$response".
a) You may choose to directly imbed the "embedhtml" code into your website, and auto-redirect. Here is how to embed the code:
PHP
<?php
if($response["status"]=="REQ"){
echo urldecode($response["required"]["embedhtml"]);
echo "<script>document.secure_form.onsubmit();
document.secure_form.submit();</script>";
}
?>
b) You may choose to directly imbed the "embedhtml" code into your website, and auto-redirect. Here is how to embed the code:
PHP
<?php
if($response["status"]=="REQ"){
echo urldecode($response["required"]["embedhtml"]);
echo "<script>
document.getElementById("secure_submit").style.display="block";
</script>";
}
?>
c) You may choose to directly embed the "embedhtml" code into your website, and auto-redirect. Here is how to embed the code:
Note: Each element in the embedded html code has an id & name, and elements such as styles and innerHtml can be modified easily with simple javascript
commands. Please ensure the iframe in your website is no less than 400px in width and height.
At this stage, when the form is submitted into the iframe, the client is redirected to a Secure3D hosted page. The Payee will fill in the required confirmation
data, such as card password, and submit their application.
https://admin.awepay.com/documentation.php 10/65
10/16/2020 Awepay
When the payee has completed their application successfully, the iframe will redirect itself back to your original specified "redirecturl" defined in the "vbv"
array inside "txparams".
The transaction has now been completed, and will return a response in the format of a payment/preauth soap response, status->OK or status->EXC etc,
which will be located inside the $_POST variable sent to your redirecturl. You may then use this data as per a normal soap response.
Please contact our support team for a full PHP working example version, to assist with your integration.
Important notice: The exact data format of the fields in these examples may differ from gateway to gateway. Please ask us for special data formats used by
your gateway!
2.2.4.Pre-Authentications (PreAuths)
The following SOAP API function is used to authorise a payment without settling it (Preauth).
Function Name
processPreAuthCC
Parameters
transactionData, an array of transaction details.
Example
processPreAuth (
array ( integer sid,
string rcode,
array udetails,
array paydetails,
array cart,
array txparams)
)
2.2.5.Settlements (Capture)
The following SOAP API function is used to settle a Preauth.
Function Name
processSettlementCC
Parameters
transactionData, an array of transaction details.
Example
processSettlement (
array ( integer sid,
string rcode,
string txid)
)
https://admin.awepay.com/documentation.php 11/65
10/16/2020 Awepay
Function Name
processPayment
Parameters
transactionData, an array of transaction details.
Example
processPayment (
array ( integer sid,
string rcode,
array udetails,
array paydetails,
array cart,
array txparams)
)
https://admin.awepay.com/documentation.php 12/65
10/16/2020 Awepay
2.2.7.Responses
The response from the server is an array. If the status has the value "OK" the transaction has been successfully processed. The response array has the
following structure:
required Array This array will contain values in the event of Secure3D. The status will equal "REQ" if Secure3D is required.
enrolled String Has the value "Y" indicating the card is enrolled with Secure3D
embedhtml String (URL encoded) Pre-drawn HTML code to embed in your site (Alternatives available below)
error Array If an error has occured, then the status value will equal "EXC" and this array with contain further information
sys String The system that caused the error (client or server)
info String Error information that contains the bank message and bank code
descriptor string The billing descriptor that will show on the customer's statement
https://admin.awepay.com/documentation.php 13/65
10/16/2020 Awepay
Function Name
processPayout
Parameters
transactionData, an array of transaction details.
Example
processPayout (
array ( integer sid,
string rcode,
array udetails,
array payoutdetails,
array txparams)
)
2.3.2.Flow diagram
https://admin.awepay.com/documentation.php 14/65
10/16/2020 Awepay
2.4.1.General Information
ACH processing with the Awepay system has three possible stages that begin with the customer submitting their payment. The system will first return that a
payment is pending, it is very important to understand that ACH is not processed in real time and may take between 24 hours and 7 days before a
transaction is approved or declined. The second stage after a pending response will be either approved or declined depending on the response from the
customer's bank, the third and final stage of the transaction is settlement where the funds are cleared into the merchants account.
As a transaction will always return a pending response after the customer process's their order you should make sure that an appropriate response for the
customer is displayed letting them know that the transaction has been processed but it is pending approval before you can ship the merchandise. A postback
can be sent to an email address or to a url from the Awepay system once the transaction leaves a pending state, you will need to provide this information as
part of the integration process. Note that this postback is for the integration and is not sent to the customer, the integration will need to be able to notify the
customer of the transaction update.
The Awepay payment system uses SOAP to communicate with customer sales systems. It is important that the required parameters passed to the server are
formatted with the correct data type, (see Error! Reference source not found.) otherwise the transaction will not be accepted.
2.4.1.1. Testing
To test your integration, please contact support and you will be provided with a testing SID. Any transaction processed on the testing SID will only be
checked syntactically and semantically by Awepay. This way you can test if you have sent sufficient and correct data.
https://admin.awepay.com/documentation.php 15/65
10/16/2020 Awepay
2.4.2.Single Transactions
The following SOAP API function is used to process single payments.
Function Name
processPayment
processPayment (
array ( integer sid,
string rcode,
array udetails,
array paydetails,
array cart,
array txparams)
)
2 Savings account.
2.4.4.ACH Classes
ACH
Conditions
Class
Accounts Receivable Entry - Used in debit applications when a consumer check is received via mail or at a drop-box location for payment of goods or
ARC
services. The check is used to collect the amount as well as the consumer's routing, account, and check serial number.
Customer Initiated Entry - Used in credit applications where tde consumer initiates tde transfer of funds to a company for payment of funds owed to tde
CIE
company, typically tdrough some type of home banking product or bill payment service provider.
Pre-arranged Payment and Deposit Entry - For direct deposit, this is used in credit application that transfers funds into a consumer's account at the
PPD Receiving Depository Financial Institution. For a pre-authorized payment, this is used in a debit application that the company, with customer's consent, will
initiate periodic charges to the customer's account as bills become due.
Re-presented Check Entry - Used in debit applications that will re-present a check that has been processed through the check collection system and
RCK
returned due to insufficient or un-collected funds.
Telephone Initiated Entry - Used in applications that will debit a consumer's account pursuant to an oral authorization obtained from the consumer via the
TEL
telephone.
Internet Initiated Entry - Used in signal entry or recurring debit of a consumer's account pursuant to an autdorization that is obtained form the Receiver via
WEB
tde Internet.
Cash Concentration or Disbursement - Used in either credit or debit application where funds are either distributed or consolidated between corporate
CCD
entities.
Corporate Trade Exchange - Used in an application that supports the transfer of funds (debit or credit) witdin a trading partner relationship in which full
CTX ANSI ASC X12 message or payment related UN/EDIFACT information is sent witd the funds transfer. this information is placed in multiple addenda
records.
Death Notification Entry - Used in applications that are utilized by a Federal Government Agency such as Social Security Administration to notify a
DNE
depository financial institution that the recipient of a government benefit payment has died.
2.4.5.Responses
The response from the server is an array. If the status has the value "OK" the transaction has been successfully processed. The response array has the
following structure:
error String If an error has occured, then the status value will equal "EXC" and this array with contain further information
sys String The system that caused the error (client or server)
info String Error information that contains the bank message and bank code
2.5.1.General Information
Awepay is able to process loads onto approved card types. Loads, often referred to as bookback, are when instead of money being debited from an account,
money is transferred onto the balance of an approved debit card or credit card; much like a credit.
The Awepay payment system uses SOAP to communicate with customer sales systems. It is important that the required parameters passed to the server are
formatted with the correct data type, (see Error! Reference source not found.) otherwise the transaction will not be accepted.
2.5.2.Load Transactions
https://admin.awepay.com/documentation.php 16/65
10/16/2020 Awepay
The following SOAP API function is used to load a card.
Function Name
processLoad
Parameters
transactionData, an array of transaction details.
Example
processLoad (
array ( integer sid,
string rcode,
array udetails,
array paydetails,
array cart,
array txparams)
)
2.5.3.Responses
The response from the server is an array. If the status has the value "OK" the transaction has been successfully processed. The response array has the
following structure:
required Array This array will contain values in the event of Secure3D. The status will equal "REQ" if Secure3D is required.
enrolled String Has the value "Y" indicating the card is enrolled with Secure3D
embedhtml String (URL encoded) Pre-drawn HTML code to embed in your site (Alternatives available below)
error String If an error has occured, then the status value will equal "EXC" and this array with contain further information
sys String The system that caused the error (client or server)
info String Error information that contains the bank message and bank code
2.5.4.Process Flow
After a processLoad API Call is made, the response can be one of two: "PENDING", or "DECLINED".
If the API responds with "PENDING", this means the transaction has been successfully lodged and will be processed within the next 2-3 business days.
Once the funds have cleared and are onroute to the credit card, the system will update the status of transaction to "APPROVED", and trigger a postback to
the url supplied in the originating api request parameter ' txparams->postbackurl '. Please refer to section 3.7. Code Examples -> Postbacks for examples
of postback data.
If either the processLoad API call or the postback return a status of "DECLINED", this means the funds transfer has been unsuccessful. Please refer to
individual decline reasons.
2.6.1.General Information
The Awepay payment system uses SOAP to communicate with customer sales systems. It is important that the required parameters passed to the server are
formatted with the correct data type, (see Error! Reference source not found.) otherwise the transaction will not be accepted.
Awepay is able to process both voids and refunds. There is no need in the client request to determine which action should be performed by Awepay.
a) If the transaction occurred within the last 48 hours and the full transaction amount has been passed to the refund API Awepay will try to do a void first. If
the void fails, Awepay will do a refund.
b) If the transaction has been processed more than 48 hours ago Awepay will perform a refund transaction.
c) Partial transaction amounts can only be refunded not voided. If you try to perform a partial refund within the first 48 hours of the transaction occurrence be
prepared to get an error message such as "invalid order reference number".
https://admin.awepay.com/documentation.php 17/65
10/16/2020 Awepay
2.6.1.2. Pending Status
Awepay will process refunds even if a site has refunds disabled. An error is the normal response, (See Example) these refunds will be placed in a pending
queue for the Awepay administration team to action. If a refund has "PEND" status returned it is possible to have a postback url in the request array so the
customer sales system can update in real time once the refund in the pending queue has been actioned.
2.6.2.Refunding Transactions
The following SOAP API function is used to refund a transaction.
Function Name
processRefund
Parameters
transactionData, an array of transaction details.
Example
processRefund (
array ( integer sid,
string rcode,
string txid,
string reason,
string amount,
string postbackurl,
string sendNotification)
)
2.6.3.Responses
The response from the server is an array. If the status has the value "OK" the transaction has been successfully processed. The response array has the
following structure:
required Array This array will contain values in the event of Secure3D. The status will equal "REQ" if Secure3D is required.
enrolled String Has the value "Y" indicating the card is enrolled with Secure3D
embedhtml String (URL encoded) Pre-drawn HTML code to embed in your site (Alternatives available below)
error String If an error has occured, then the status value will equal "EXC" and this array with contain further information
sys String The system that caused the error (client or server)
info String Error information that contains the bank message and bank code
2.7. TxHandler
2.7.1.General Information
It will only be accessible from your domain when data has been sent via HTTP POST towards it.
2.7.1.1. Will I need to make changes to my integration if I am using Secure3D with TxHandler?
2.7.2.Single Transactions
To process a transaction, post a form via HTTP POST to the TxHandler containing all variables in the table in Parameter Definitions 2.5.3.
https://admin.awepay.com/documentation.php 18/65
10/16/2020 Awepay
p2p - no upfront cardholder information is required at API stage, collection occurs on the remote page.
wechat - no upfront cardholder information is required at API stage, collection occurs via qr code.
alipay - no upfront cardholder information is required at API stage, collection occurs via qr code.
pg_ebank - account information is required at API stage, remote page is only for security screening.
There are 2 differing payment methods for CUP transactions dependant on your merchant account.
union_pay - no upfront cardholder information is required at API stage, collection occurs on the remote page.
union_pay_direct - cardholder information is required at API stage, remote page is only for security screening.
These transactions require an asynchronous state, because they may remain pending indefinately if a customer for instance closes their browser or leaves
the page during the remote screening.
You will be required to supply a Success, Failure and Postback URL, through each individual request, or alternatively you can submit these to support and
they can be permanently assigned to your SID - please refer to section 2.7.6.Responses for more information.
When a customer is returned from the secure hosted payment page after completing a payment, please assume all transactions are in a pending state until
confirmed via the information sent in the Postback call. Alternatively, you may choose to poll the transaction via the "getTransactionDetails" API call to
confirm its validity. Once a transaction is either Approved or Declined, it has completed its life cycle.
Please note that the following parameters are returned in a response regarding a redirected API transaction, and that all other standard API factors are
required such as validation.
html String The HTML to display for the customer to initate the browser transaction.
2.7.4.Flow diagram
https://admin.awepay.com/documentation.php 19/65
10/16/2020 Awepay
2.7.5.Parameter Definitions
Name Required Description
wid Webmaster ID
tid Tracking ID
card_ccv
card_exp_month 2 digits
card_exp_year 4 digits
item_amount_unit[] An array that defines the price per unit for each cart item
postback_url The URL of the page used to recieve the TxHandler postback
2.7.6.Responses
Once the transaction has been processed, txHandler will return an encrypted string to the postback url you provided using a get variable.
The GET variable "Status" will be sent to the provided postback URL and once decrypted, contains the transaction status and txid.
The following code demonstrates how to decrypt the postback string using your rcode as the key, which will be returned as an array.
2.7.6.0. Decryption
PHP
https://admin.awepay.com/documentation.php 20/65
10/16/2020 Awepay
<?php
function decrypt($string, $key) {
$result = "";
$string = base64_decode($string);
parse_str($result,$result);
return $result;
}
$result=decrypt($_GET["status"] , RCODE);
?>
https://admin.awepay.com/documentation.php 21/65
10/16/2020 Awepay
Imports System
' outputString=Unescape(outputString)
Console.WriteLine(outputString)
End Sub
End Class
https://admin.awepay.com/documentation.php 22/65
10/16/2020 Awepay
package javaapplication1;
import sun.security.util.Debug;
}
String dec = decrypt(str, "bd2882"); /* Replace with your RCode */
System.out.println(dec);
System.out.println(getQueryParams(dec));
}
result.append((char)(chr - (int)keychar));
}
return result.toString();
}
status String Has the value "OK" for a successful transaction or "EXC" for a failed transaction
error Array
required Array
https://admin.awepay.com/documentation.php 23/65
10/16/2020 Awepay
2.8.1.General Information
It will only be accessible from your domain when data has been sent via HTTP POST towards it.
2.8.1.1. Testing
To test your integration, please contact support and you will be provided with a testing SID.
2.8.1.2. Will I need to make changes to my integration if I am using Secure Hosted Payment?
If you are currently using the SOAP interface, yes, you will need to swap to our POST interface. If you are currently using our POST interface (txhandler), no,
all the changes are handled internally on the Secure Hosted Payment interface.
2.8.2.Single Transactions
To process a transaction, post a form via HTTP POST to the Secure Hosted Payment page containing all required variables in the table in Parameter
Definitions 2.6.3.
p2p - no upfront cardholder information is required at API stage, collection occurs on the remote page.
wechat - no upfront cardholder information is required at API stage, collection occurs via qr code.
alipay - no upfront cardholder information is required at API stage, collection occurs via qr code.
pg_ebank - account information is required at API stage, remote page is only for security screening.
There are 2 differing payment methods for CUP transactions dependant on your merchant account.
union_pay - no upfront cardholder information is required at API stage, collection occurs on the remote page.
union_pay_direct - cardholder information is required at API stage, remote page is only for security screening.
These transactions require an asynchronous state, because they may remain pending indefinately if a customer for instance closes their browser or leaves
the page during the remote screening.
You will be required to supply a Success, Failure and Postback URL, through each individual request, or alternatively you can submit these to support and
they can be permanently assigned to your SID - please refer to section 2.7.6.Responses for more information.
When a customer is returned from the secure hosted payment page after completing a payment, please assume all transactions are in a pending state until
confirmed via the information sent in the Postback call. Alternatively, you may choose to poll the transaction via the "getTransactionDetails" API call to
confirm its validity. Once a transaction is either Approved or Declined, it has completed its life cycle.
Please note that the following parameters are returned in a response regarding a redirected API transaction, and that all other standard API factors are
required such as validation.
2.8.4.Parameter Definitions
https://admin.awepay.com/documentation.php 24/65
10/16/2020 Awepay
Name Required Description
item_amount_unit[] An array that defines the price per unit for each cart item
wid Webmaster ID
tid Tracking ID
https://admin.awepay.com/documentation.php 25/65
10/16/2020 Awepay
2.8.5.Responses
Once the transaction has been processed, secure can respond to the host site using any of four systems. To set up these systems you will need contact
support.
If you get a blank page after entering the Secure Hosted Payment page, please double check your SID. Also double check if you are sending the data via
POST from the domain that you have registered with us.
2.8.5.0. Email
If selected this option will send an email to a pre-registered email address with all response details.
If selected this option will submit post variables to a pre-registered url address with all response details
Note: This does not redirect the user. For this, use webgood/webbad.
If selected this option will complete the same tasks as Postback with the key difference of redirecting the user to the given url. A successful redirection will
only run if the transaction (from the users point of view) is successful.
Note: Both Postback and webgood can be run at the same time.
If selected this option will complete the same tasks as the Success URL with the key exception that it will only run if the transaction (from the users point of
view) is unsuccessful.
2.9. Postbacks
2.9.1.General
The postback response is a POST array sent over http or https to a public website address and contains transaction state change information.
Postback address can be set in your transaction request, but if you would like a permanent postback address set for your account please contact support.
Optionally this data can be sent over email containing the postback information in HTML.
Postbacks can contain critical information such as refunds and chargebacks, initiated by a support service or the bank.
2.9.2.Usage
A postback can also be used as an additional security measure after secure hosted sales pages, or transactions that require transactional state changes
such as a load or union_pay payment.
It is recommended when dealing with postbacks that once the page has initiated you log the postdata into a file and then exit your code.
This will allow you to always capture the postback information without error, and process it at at your convenience.
However if you choose to process the postback immediately without storage, and do run into an error, please return http code 500 and our system will
periodically reattempt the transaction up to 5 times.
Please ensure your page is returning a http code 200 to prevent multiple unecessary postback attempts.
2.9.3.Parameters
Name Data Type Description
txid String The txid for the new transaction
tx_action String The state change txaction, please refer to appendix 4.2. Transaction Action Types
signature String Signature for response validation. See section 2.9.4.Signature for details on generating the signature.
2.9.4.Signature
https://admin.awepay.com/documentation.php 26/65
10/16/2020 Awepay
The signature field in a postback is a SHA1 hash of specific response fields, along with your pre-shared rcode value. This can be used to validate the
authenticity of the postback. The signature is generated as follows:
<?php
$rcode = 'YOUR_RCODE';
$signature = sha1(
$_POST['parent_txid'] . $_POST['txid'] .
$_POST['tx_action'] . $_POST['response'] .
$rcode
);
if ($_POST['signature'] == $signature) {
// Signature is a match, postback is authentic
} else {
// Signature is not a match, postback is not trusted
}
?>
https://admin.awepay.com/documentation.php 27/65
10/16/2020 Awepay
2.10.1.General Information
This SOAP interface returns transactions filtered by the parameters passed.
The Awepay payment system uses SOAP to communicate with customer sales systems. It is important that the required parameters passed to the server are
formatted with the correct data type, (see Error! Reference source not found.) otherwise the transaction will not be accepted.
https://admin.awepay.com/documentation.php 28/65
10/16/2020 Awepay
Function Name
getTransactionDetailsByTID
Parameters
options, an array of filter options.
Example
getTransactionDetailsByTID (
array (integer sid,
string rcode,
string tid)
)
Function Name
getTransactionsByRID
Parameters
options, an array of filter options. To and from timestamps should be supplied in the format 'Ymdhis'.
Example
getTransactionsByRID (
array (integer rid,
string rcode,
integer from_timestamp, // Ymdhis (2011-02-28 12:35:00 = '20110228123500')
// note: time is ignored, this would be seen as 2011-02-28 00:00:00
integer to_timestamp, // Ymdhis (2011-02-28 12:35:00 = '20110228123500')
// note: time is ignored, this would be seen as 2011-02-28 23:59:59
string tx_actions,
string responses,
string card_types,
string filter_type,
string filter_search,
integer limit)
)
Function Name
getTransactionsBySID
Parameters
options, an array of filter options. To and from timstamps should be supplied in the format 'Ymdhis'.
Example
getTransactionsBySID (
array (integer sid,
string rcode,
integer from_timestamp, // Ymdhis (2011-02-28 12:35:00 = '20110228123500')
// note: time is ignored, this would be seen as 2011-02-28 00:00:00
integer to_timestamp, // Ymdhis (2011-02-28 12:35:00 = '20110228123500')
// note: time is ignored, this would be seen as 2011-02-28 23:59:59
string tx_actions,
string responses,
string card_types,
string filter_type,
string filter_search,
integer limit)
)
Function Name
getTransactionDetails
Example
https://admin.awepay.com/documentation.php 29/65
10/16/2020 Awepay
getTransactionDetails (
array (integer sid,
string rcode,
string txid)
)
https://admin.awepay.com/documentation.php 30/65
10/16/2020 Awepay
2.10.6.Parameter Definitions
Important: All parameters must be sent with the SOAP request, but only required parameters must have a value. All other values can be sent as an empty
String.
Data
Name Required Description
Type
The action that has been performed by the transaction. Valid values:'PAYMENT', 'PREAUTH', 'SETTLEMENT', 'VOID',
tx_actions String
'REFUND', 'CHARGEBACK','RETRIEVAL' (Separate Multiple searches by a comma or leave blank for all)
The response of the payment gateway. Valid values: 'APPROVED', 'DECLINED', 'PAYG_ERROR', 'PENDING' (Separate
responses String
Multiple searches by a comma or leave blank for all)
The payment type that has been used in the transaction. Valid values: 'VISA', 'MASTERCARD', 'ACH', 'V8pay',
card_types String
'cardOnePlus' (Separate Multiple searches by a comma or leave blank for all)
The filter_search parameter will search inside the following fields (other requests will be ignored): 'TXID', 'EMAIL',
filter_type String
'LASTNAME', 'IP', 'CARD_NO', 'TID', 'WID', 'REF1', 'REF2', 'REF3', 'REF4', 'ADD_INFO'
filter_search String This will search inside the identified filter_type. Filter_type is required if this value is not null.
The maximum number of transactions returned. Cannot be higher than 500 and will default to this value if a higher value is
limit String
passed.
2.10.7.Responses
The response from the server is an array. If the status has the value "OK" the transaction has been successfully processed. The response array has the
following structure:
https://admin.awepay.com/documentation.php 31/65
10/16/2020 Awepay
Name Data Type Description
status String Has the value "OK" for a successful transaction, or "EXC" for a failed transaction
history Array A numerically indexed array of related transactions *TID search only
https://admin.awepay.com/documentation.php 32/65
10/16/2020 Awepay
error String If an error has occured, then the status value will equal "EXC" and this array with contain further information
sys String The system that caused the error (client or server)
info String Error information that contains the bank message and bank code
https://admin.awepay.com/documentation.php 33/65
10/16/2020 Awepay
3. Code Examples
https://admin.awepay.com/documentation.php 34/65
10/16/2020 Awepay
<?php
require_once("nusoap.php");
$client = new nusoap_client("https://admin.awepay.com/soap//tx3.php?wsdl", true);
$sid = 1;
$rcode= "i7u5J9";
$udetails = array(
"username" => "",
"password" => "",
"firstname" => "John",
"lastname" => "Smith",
"email" => "[email protected]",
"phone" => "0777777770",
"mobile" => "0410827364",
"address" => "13/45 Sydney St",
"suburb_city" => "some suburb",
"state" => "QLD",
"postcode" => "40000",
"country" => "AU",
"ship_firstname" => "James",
"ship_lastname" => "Collins",
"ship_address" => "45/13 Melbourne St",
"ship_suburb_city"=> "another suburb",
"ship_state" => "NSW",
"ship_postcode" => "50000",
"ship_country" => "AU",
"bank_name" => "",
"bank_phone" => "",
"ssn" => "",
"dl" => "",
"dob" => "",
"uip" => "123.123.123.123"
);
$paydetails = array(
"payby" => "visa",
"card_name" => "John Smith",
"card_no" => "4242424242424242",
"card_ccv" => "987",
"card_exp_month" => "10",
"card_exp_year" => "2006",
"md" => $_SESSION["id"],
"redirecturl" => "http://www.mywebsite.com/responseiframe.php",
"useragent" => $_SERVER["HTTP_USER_AGENT"],
"browseragent" => $_SERVER["HTTP_ACCEPT"],
"routing_no" => "",
"account_no" => "",
"type" => "",
"regulation_e" => "",
"class" => "",
"receive_name" => ""
);
$txparams = array(
"wid" => "HGTRHJIGS585v536",
"tid" => "o3tf3toct9ctb9ctr9",
"ref1" => "ref value",
"ref2" => "ref value",
"ref3" => "ref value",
"ref4" => "ref value",
"addinfo" => "addinfo value",
"cmd" => "",
"postbackurl" => "https://postback.payment.com/postback.php"
);
$cart = array(
"items" => array(
array(
"name"=>"printer",
"quantity"=> 2,
"amount_unit"=>"150.00",
"item_no"=>"XY2344",
"item_desc"=>"XY Color Printer C123"
),
array(
"name"=>"mouse",
"quantity"=> 1,
"amount_unit"=>"14.50",
"item_no"=>"XY9876",
"item_desc"=>"XY optical mouse M12"
)
),
"summary" => array(
"quantity"=> 3,
"amount_purchase"=>"314.50",
"amount_shipping"=>"10.00",
https://admin.awepay.com/documentation.php 35/65
10/16/2020 Awepay
"currency_code" => "USD"
)
);
$param = array(
"sid" => $sid,
"rcode" => $rcode,
"udetails" => $udetails,
"paydetails" => $paydetails,
"cart" => $cart,
"txparams" => $txparams
);
$response = $client->call("processPayment", $param);
?>
https://admin.awepay.com/documentation.php 36/65
10/16/2020 Awepay
https://admin.awepay.com/documentation.php 37/65
10/16/2020 Awepay
<?php
$client = new SoapClient("https://admin.awepay.com/soap//tx3.php?wsdl");
$sid = 1;
$rcode= "i7u5J9";
$udetails = array(
"username" => "",
"password" => "",
"firstname" => "John",
"lastname" => "Smith",
"email" => "[email protected]",
"phone" => "0777777770",
"mobile" => "0410827364",
"address" => "13/45 Sydney St",
"suburb_city" => "some suburb",
"state" => "QLD",
"postcode" => "40000",
"country" => "AU",
"ship_firstname" => "James",
"ship_lastname" => "Collins",
"ship_address" => "45/13 Melbourne St",
"ship_suburb_city"=> "another suburb",
"ship_state" => "NSW",
"ship_postcode" => "50000",
"ship_country" => "AU",
"bank_name" => "",
"bank_phone" => "",
"ssn" => "",
"dl" => "",
"dob" => "",
"uip" => "123.123.123.123"
);
$paydetails = array(
"payby" => "visa",
"card_name" => "John Smith",
"card_no" => "4242424242424242",
"card_ccv" => "987",
"card_exp_month" => "10",
"card_exp_year" => "2006",
"md" => $_SESSION["id"],
"redirecturl" => "http://www.mywebsite.com/responseiframe.php",
"useragent" => $_SERVER["HTTP_USER_AGENT"],
"browseragent" => $_SERVER["HTTP_ACCEPT"],
"routing_no" => "",
"account_no" => "",
"type" => "",
"regulation_e" => "",
"class" => "",
"receive_name" => ""
);
$txparams = array(
"wid" = "HGTRHJIGS585v536",
"tid" = "o3tf3toct9ctb9ctr9",
"ref1" => "ref value",
"ref2" => "ref value",
"ref3" => "ref value",
"ref4" => "ref value",
"addinfo" => "addinfo value",
"cmd" => "",
"postbackurl" => "https://postback.payment.com/postback.php"
);
$cart = array(
"items" => array(
array(
"name"=>"printer",
"quantity"=> 2,
"amount_unit"=>"150.00",
"item_no"=>"XY2344",
"item_desc"=>"XY Color Printer C123"
),
array(
"name"=>"mouse",
"quantity"=> 1,
"amount_unit"=>"14.50",
"item_no"=>"XY9876",
"item_desc"=>"XY optical mouse M12"
)
),
"summary" => array(
"quantity"=> 3,
"amount_purchase"=>"314.50",
"amount_shipping"=>"10.00",
"currency_code" => "USD"
https://admin.awepay.com/documentation.php 38/65
10/16/2020 Awepay
)
);
$param = array(
"sid" => $sid,
"rcode" => $rcode,
"udetails" => $udetails,
"paydetails" => $paydetails,
"cart" => $cart,
"txparams" => $txparams
);
https://admin.awepay.com/documentation.php 39/65
10/16/2020 Awepay
<?php
require_once("nusoap.php");
$client = new soapclient("https://admin.awepay.com/soap//tx3.php?wsdl", true);
$sid = 1;
$rcode= "i7u5J9";
$udetails = array(
"username" => "",
"password" => "",
"firstname" => "John",
"lastname" => "Smith",
"email" => "[email protected]",
"phone" => "0777777770",
"mobile" => "0410827364",
"address" => "13/45 Sydney St",
"suburb_city" => "some suburb",
"state" => "QLD",
"postcode" => "40000",
"country" => "AU",
"ship_firstname" => "James",
"ship_lastname" => "Collins",
"ship_address" => "45/13 Melbourne St",
"ship_suburb_city"=> "another suburb",
"ship_state" => "NSW",
"ship_postcode" => "50000",
"ship_country" => "AU",
"bank_name" => "",
"bank_phone" => "",
"ssn" => "",
"dl" => "",
"dob" => "",
"uip" => "123.123.123.123"
);
$paydetails = array(
"payby" => "ach",
"card_name" => "",
"card_no" => "",
"card_ccv" => "",
"card_exp_month" => "",
"card_exp_year" => "",
"md" => "",
"redirecturl" => "",
"useragent" => "",
"browseragent" => "",
"routing_no" => "123456789",
"account_no" => "12345678",
"type" => "1",
"regulation_e" => "1",
"class" => "WEB",
"receive_name" => "Jane Doe"
);
$txparams = array(
"wid" = "HGTRHJIGS585v536",
"tid" = "o3tf3toct9ctb9ctr9",
"ref1" => "ref value",
"ref2" => "ref value",
"ref3" => "My Description",
"ref4" => "ref value",
"addinfo" => "addinfo value",
"cmd" => "",
"postbackurl" => "https://postback.payment.com/postback.php"
);
$cart = array(
"items" => array(
array(
"name"=>"printer",
"quantity"=> 2,
"amount_unit"=>"150.00",
"item_no"=>"XY2344",
"item_desc"=>"XY Color Printer C123"
),
array(
"name"=>"mouse",
"quantity"=> 1,
"amount_unit"=>"14.50",
"item_no"=>"XY9876",
"item_desc"=>"XY optical mouse M12" ) ),
"summary" => array(
"quantity"=> 3,
"amount_purchase"=>"314.50",
"amount_shipping"=>"10.00",
"currency_code" => "USD"
)
https://admin.awepay.com/documentation.php 40/65
10/16/2020 Awepay
);
$param = array(
"sid" => $sid,
"rcode" => $rcode,
"udetails" => $udetails,
"paydetails" => $paydetails,
"cart" => $cart,
"txparams" => $txparams
);
https://admin.awepay.com/documentation.php 41/65
10/16/2020 Awepay
https://admin.awepay.com/documentation.php 42/65
10/16/2020 Awepay
<?php
require_once("nusoap.php");
$client = new soapclient("https://admin.awepay.com/soap//tx3.php?wsdl", true);
$sid = 1;
$rcode= "i7u5J9";
$udetails = array(
"username" => "",
"password" => "",
"firstname" => "John",
"lastname" => "Smith",
"email" => "[email protected]",
"phone" => "0777777770",
"mobile" => "0410827364",
"address" => "13/45 Sydney St",
"suburb_city" => "some suburb",
"state" => "QLD",
"postcode" => "40000",
"country" => "AU",
"ship_firstname" => "James",
"ship_lastname" => "Collins",
"ship_address" => "45/13 Melbourne St",
"ship_suburb_city"=> "another suburb",
"ship_state" => "NSW",
"ship_postcode" => "50000",
"ship_country" => "AU",
"bank_name" => "",
"bank_phone" => "",
"ssn" => "",
"dl" => "",
"dob" => "",
"uip" => "123.123.123.123"
);
$paydetails = array(
"payby" => "visa",
"card_name" => "John Smith",
"card_no" => "4242424242424242",
"card_ccv" => "987",
"card_exp_month" => "10",
"card_exp_year" => "2006",
"md" => $_SESSION["id"],
"redirecturl" => "http://www.mywebsite.com/responseiframe.php",
"useragent" => $_SERVER["HTTP_USER_AGENT"],
"browseragent" => $_SERVER["HTTP_ACCEPT"],
"routing_no" => "",
"account_no" => "",
"type" => "",
"regulation_e" => "",
"class" => "",
"receive_name" => ""
);
$txparams = array(
"wid" = "HGTRHJIGS585v536",
"tid" = "o3tf3toct9ctb9ctr9",
"ref1" => "ref value",
"ref2" => "ref value",
"ref3" => "ref value",
"ref4" => "ref value",
"addinfo" => "addinfo value",
"cmd" => "",
"postbackurl" => "https://postback.payment.com/postback.php"
);
$cart = array(
"summary" => array(
"amount_purchase"=>"314.50",
"currency_code" => "USD"
)
);
$param = array(
"sid" => $sid,
"rcode" => $rcode,
"udetails" => $udetails,
"paydetails" => $paydetails,
"cart" => $cart,
"txparams" => $txparams
);
https://admin.awepay.com/documentation.php 43/65
10/16/2020 Awepay
3.4.1.Refund (php)
PHP
<?php
require_once("nusoap.php");
$client = new soapclient("https://admin.awepay.com/soap//tx3.php?wsdl", true);
$param = array(
"sid" => "1",
"rcode" => "i7u5J9",
"txid" => "1148437566168394",
"reason" => "customer request",
"amount" => "23.00",
"postbackurl" => "https://admin.mydomain.com/postback.php"
"sendNotification" => "1"
);
$response = $client->call("processRefund", $param);
?>
https://admin.awepay.com/documentation.php 44/65
10/16/2020 Awepay
https://admin.awepay.com/documentation.php 45/65
10/16/2020 Awepay
3.6. TxHandler
https://admin.awepay.com/documentation.php 46/65
10/16/2020 Awepay
3.7. Postbacks
3.7.1.PAYMENT
PHP
<?php
var_dump($_POST);
?>
//Example Output
array (
'txid' => '12345678901234',
'response' => 'APPROVED',
'tx_action' => 'PAYMENT',
)
3.7.2.REFUND
PHP
<?php
var_dump($_POST);
?>
//Example Output
array (
'txid' => '12345678901234',
'parent_txid' => '12345678901233',
'parent_txaction' => 'PAYMENT',
'response' => 'PENDING',
'tx_action' => 'REFUND',
'comment' => 'Merchandise not received',
)
3.7.3.CHARGEBACK
PHP
<?php
var_dump($_POST);
?>
//Example Output
array (
'txid' => '12345678901234',
'parent_txid' => '12345678901233',
'parent_txaction' => 'PAYMENT',
'response' => 'APPROVED',
'tx_action' => 'CHARGEBACK',
'comment' => 'Unauthorized charge',
)
3.7.4.LOAD
PHP
<?php
var_dump($_POST);
?>
//Example Output
array (
'txid' => '12345678901234',
'response' => 'APPROVED',
'tx_action' => 'LOAD',
)
https://admin.awepay.com/documentation.php 47/65
10/16/2020 Awepay
4. Appendix
004 DB Error
100 Warning
CHALLENGE Documentation has been received and submitted for chargeback challenge
RETRIEVAL Customer's issuing bank has formally requested more information on the transaction from the acquiring bank.
REVERSAL Customer and/or Customer's issuing bank has reversed the chargeback after investigation.
https://admin.awepay.com/documentation.php 48/65
10/16/2020 Awepay
Code Description
PAYMENT
SETTLEMENT
REFUND
VOID
CHARGEBACK
RETRIEVAL
The gateway is currently unavailable while system maintenance and required updates are performed. This transaction has not been recorded or
G00
submitted for processing. Please try again shortly.
G02 The active solution requires Secure3D to be enabled. Configuration Error. Contact technical support.
https://admin.awepay.com/documentation.php 49/65
10/16/2020 Awepay
Code Description
00 successful approval (corresponds to 200 response)
01 refer to issuer
03 invalid merchant
04 pickup card
05 do not honour
06 error
09 request in progress
11 approved VIP
12 invalid transaction
13 invalid amount
15 no such issuer
17 customer cancellation
18 customer dispute
19 re-enter transaction
20 invalid response
21 no action taken
22 suspected malfunction
30 format error
32 completed partially
33 expired card
34 suspected fraud
35 contact acquirer
36 restricted card
39 no credit account
41 lost card
42 no universal account
43 stolen card
44 no investment account
51 insufficient funds
52 no cheque account
53 no savings account
54 expired card
55 incorrect PIN
56 no card record
59 suspected fraud
60 contact acquirer
https://admin.awepay.com/documentation.php 50/65
10/16/2020 Awepay
62 restricted card
63 security violation
67 hard capture
90 cutoff in progress
91 issuer inoperative
94 duplicate transmission
95 reconcile error
96 system malfunction
98 MAC error
N No Match
P Not Processed
U Unable To Verify
https://admin.awepay.com/documentation.php 51/65
10/16/2020 Awepay
Code Description
A Address matches, ZIP code does not.
B Street address match for international transaction; postal code not verified.
Street & Postal codes match for international transaction. Both the five-digit postal zip code as well as the first five numerical characters contained in the
D
address match for the international transaction.
F Street address & postal codes match for international transaction. (UK Only)
G AVS not performed because the international issuer does not support AVS.
P Postal codes match for international transaction; street address not verified.
U Unable to perform address verification because either address information is unavailable or the Issuer does not support AVS.
Nine-digit zip match, address does not. The nine-digit postal zip code matches that stored at the VIC or card issuer's center. However, the first five
W
numerical characters contained in the address do not match.
X Exact match (nine-digit zip and address). Both the nine-digit postal zip code as well as the first five numerical characters contained in the address match.
0 Service Not Allowed. Generally associated with credit cards that are either not allowed to be used for any online transactions or are not allowed to be used
(zero) for a specific classification of company.
B Street address match for international transaction; postal code not verified.
Street & Postal codes match for international transaction. Both the five-digit postal zip code as well as the first five numerical characters contained in the
D
address match for the international transaction.
F Street address & postal codes match for international transaction. (UK Only)
G International Address information unavailable. The international address information was not available at the VIC or issuer's center.
P Postal codes match for international transaction; street address not verified.
https://admin.awepay.com/documentation.php 52/65
10/16/2020 Awepay
Code Country
AF Afghanistan
AX Aland Islands
AL Albania
DZ Algeria
AS American Samoa
AD Andorra
AO Angola
AI Anguilla
AQ Antarctica
AR Argentina
AM Armenia
AW Aruba
AU Australia
AT Austria
AZ Azerbaijan
BS Bahamas
BH Bahrain
BD Bangladesh
BB Barbados
BY Belarus
BE Belgium
BZ Belize
BJ Benin
BM Bermuda
BT Bhutan
BO Bolivia
BW Botswana
BV Bouvet Island
BR Brazil
BN Brunei Darussalam
BG Bulgaria
BF Burkina Faso
BI Burundi
KH Cambodia
CM Cameroon
CA Canada
CV Cape Verde
KY Cayman Islands
TD Chad
CL Chile
CN China
CX Christmas Island
CO Colombia
KM Comoros
CG Congo (Brazzaville)
CK Cook Islands
CR Costa Rica
CI Côte d'Ivoire
HR Croatia
CU Cuba
CY Cyprus
CZ Czech Republic
DK Denmark
https://admin.awepay.com/documentation.php 53/65
10/16/2020 Awepay
DJ Djibouti
DM Dominica
DO Dominican Republic
EC Ecuador
EG Egypt
SV El Salvador
GQ Equatorial Guinea
ER Eritrea
EE Estonia
ET Ethiopia
FO Faroe Islands
FJ Fiji
FI Finland
FR France
GF French Guiana
PF French Polynesia
GA Gabon
GM Gambia
GE Georgia
DE Germany
GH Ghana
GI Gibraltar
GR Greece
GL Greenland
GD Grenada
GP Guadeloupe
GU Guam
GT Guatemala
GG Guernsey
GN Guinea
GW Guinea-Bissau
GY Guyana
HT Haiti
HN Honduras
HU Hungary
IS Iceland
IN India
ID Indonesia
IQ Iraq
IE Ireland
IM Isle of Man
IL Israel
IT Italy
JM Jamaica
JP Japan
JE Jersey
JO Jordan
KZ Kazakhstan
KE Kenya
KI Kiribati
KR Korea, Republic of
KW Kuwait
KG Kyrgyzstan
LA Lao PDR
LV Latvia
LB Lebanon
https://admin.awepay.com/documentation.php 54/65
10/16/2020 Awepay
LS Lesotho
LR Liberia
LI Liechtenstein
LT Lithuania
LU Luxembourg
MK Macedonia, Republic of
MG Madagascar
MW Malawi
MY Malaysia
MV Maldives
ML Mali
MT Malta
MH Marshall Islands
MQ Martinique
MR Mauritania
MU Mauritius
YT Mayotte
MX Mexico
MD Moldova
MC Monaco
MN Mongolia
ME Montenegro
MS Montserrat
MA Morocco
MZ Mozambique
MM Myanmar
NA Namibia
NR Nauru
NP Nepal
NL Netherlands
AN Netherlands Antilles
NC New Caledonia
NZ New Zealand
NI Nicaragua
NE Niger
NG Nigeria
NU Niue
NF Norfolk Island
NO Norway
OM Oman
PK Pakistan
PW Palau
PA Panama
PY Paraguay
PE Peru
PH Philippines
PN Pitcairn
PL Poland
PT Portugal
PR Puerto Rico
QA Qatar
RE Réunion
RO Romania
RU Russian Federation
RW Rwanda
BL Saint-Barthélemy
SH Saint Helena
https://admin.awepay.com/documentation.php 55/65
10/16/2020 Awepay
LC Saint Lucia
WS Samoa
SM San Marino
SA Saudi Arabia
SN Senegal
RS Serbia
SC Seychelles
SL Sierra Leone
SG Singapore
SK Slovakia
SI Slovenia
SB Solomon Islands
SO Somalia
ZA South Africa
ES Spain
LK Sri Lanka
SD Sudan
SR Suriname *
SZ Swaziland
SE Sweden
CH Switzerland
TJ Tajikistan
TH Thailand
TL Timor-Leste
TG Togo
TK Tokelau
TO Tonga
TN Tunisia
TR Turkey
TM Turkmenistan
TV Tuvalu
UG Uganda
UA Ukraine
GB United Kingdom
UY Uruguay
UZ Uzbekistan
VU Vanuatu
VN Viet Nam
VI Virgin Islands, US
EH Western Sahara
YE Yemen
ZM Zambia
ZW Zimbabwe
https://admin.awepay.com/documentation.php 56/65
10/16/2020 Awepay
Country Code State
US
AL Alabama
AK Alaska
AB Alberta
AS American Samoa
AZ Arizona
AR Arkansas
BC British Columbia
CA California
CO Colorado
CT Connecticut
DE Delaware
DC District of Columbia
FM Fed St Micronesia
FL Florida
GA Georgia
GU Guam
HI Hawaii
ID Idaho
IL Illinois
IN Indiana
IA Iowa
KS Kansas
KY Kentucky
LA Louisiana
ME Maine
MB Manitoba
MH Marshall Islands
MD Maryland
MA Massachusetts
MI Michigan
MN Minnesota
MS Mississippi
MO Missouri
MT Montana
NE Nebraska
NV Nevada
NB New Brunswich
NH New Hampshire
NJ New Jersey
NM New Mexico
NY New York
NF Newfoundland
NC North Carolina
ND North Dakota
MP Northern Mariana Is
NT Northwest Ter
NS Nova Scotia
OH Ohio
OK Oklahoma
ON Ontario
OR Oregon
PW Palau
PA Pennsylvania
PE Prince Edward Is
PR Puerto Rico
QC Quebec
RI Rhode Island
SK Saskatchewan
https://admin.awepay.com/documentation.php 57/65
10/16/2020 Awepay
SC South Carolina
SD South Dakota
TN Tennessee
TX Texas
UT Utah
VT Vermont
VI Virgin Islands
VA Virginia
WA Washington
WV West Virginia
WI Wisconsin
WY Wyoming
YT Yukon
CA
AB Alberta
BC British Columbia
MB Manitoba
NB New Brunswick
NS Nova Scotia
NT Northwest Territories
NU Nunavut
ON Ontario
QC Quebec
SK Saskatchewan
YT Yukon
AU
NT Northern Territory
QLD Queensland
SA South Australia
VIC Victoria
WA Western Australia
Outside US/CA/AU
ZZ No value required
https://admin.awepay.com/documentation.php 58/65
10/16/2020 Awepay
Code Message
00 Approved
01 Refer to issuer
02 Refer to issuer
03 Invalid merchant
04 Pick up card
05 Do not honor
06 Error
07 Pick up card
09 Request in process
12 Invalid transaction
13 Invalid amount
15 Invalid issuer
19 Re-enter transaction
21 No action taken
22 Suspected malfunction
30 Format error
39 No credit account
40 Invalid function
41 Lost card
42 No universal account
43 Stolen card
44 No investment account
51 Insufficient funds
52 No checking account
53 No savings account
55 Invalid PIN
56 No card record
59 Suspected fraud
62 Restricted card
63 Security violation
67 Capture card
80 Invalid date
82 Incorrect CVV
90 Cutoff in progress
91 Issuer inoperative
92 Routing failure
93 Law violation
https://admin.awepay.com/documentation.php 59/65
10/16/2020 Awepay
94 Duplicate transaction
95 Reconcile error
96 System error
98 MAC error
99 Timeout
https://admin.awepay.com/documentation.php 60/65
10/16/2020 Awepay
Currency Code Bank
VND
TCB Techcombank
SCM Sacombank
VCB Vietcombank
VTB Vietinbank
EXIM Eximbank
THB
IDR
MYR
RHB.MY RHB
CNY
安徽省农村信用社 安徽省农村信用社
鞍山商业银行 鞍山商业银行
包头市商业银行 包头市商业银行
北京农村商业银行 北京农村商业银行
北京顺义银座村镇银行 北京顺义银座村镇银行
北京银行 北京银行
渤海银行 渤海银行
沧州银行 沧州银行
常熟农村商业银行 常熟农村商业银行
成都农村商业银行 成都农村商业银行
成都银行 成都银行
承德银行 承德银行
大连银行 大连银行
德阳银行 德阳银行
德州银行 德州银行
东莞农村商业银行 东莞农村商业银行
东莞银行 东莞银行
东亚银行 东亚银行
东营莱商村镇银行 东营莱商村镇银行
东营市商业银行 东营市商业银行
鄂尔多斯银行 鄂尔多斯银行
佛山顺德农村商业银行 佛山顺德农村商业银行
福建省农村信用社 福建省农村信用社
阜新银行 阜新银行
富邦华一银行 富邦华一银行
富滇银行 富滇银行
赣州银行 赣州银行
光大银行 光大银行
https://admin.awepay.com/documentation.php 61/65
10/16/2020 Awepay
广东华兴银行 广东华兴银行
广东南粤银行 广东南粤银行
广东省农村信用社 广东省农村信用社
广发银行 广发银行
广西北部湾银行 广西北部湾银行
广西壮族自治区农村信用社 广西壮族自治区农村信用社
广州农村商业银行 广州农村商业银行
广州银行 广州银行
贵阳银行 贵阳银行
贵州省农村信用社 贵州省农村信用社
桂林银行 桂林银行
哈尔滨银行 哈尔滨银行
海口联合农村商业银行 海口联合农村商业银行
海南省农村信用社 海南省农村信用社
邯郸商业银行 邯郸商业银行
韩亚银行 韩亚银行
汉口银行 汉口银行
杭州银行 杭州银行
河北银行 河北银行
恒丰银行 恒丰银行
衡水银行 衡水银行
葫芦岛银行 葫芦岛银行
湖北省农村信用社 湖北省农村信用社
湖北银行 湖北银行
湖南省农村信用社 湖南省农村信用社
湖州银行 湖州银行
华融湘江银行 华融湘江银行
华夏银行 华夏银行
徽商银行 徽商银行
吉林省农村信用社 吉林省农村信用社
吉林银行 吉林银行
济宁银行 济宁银行
嘉兴银行 嘉兴银行
江苏农村信用社 江苏农村信用社
江苏银行 江苏银行
江苏长江商业银行 江苏长江商业银行
江西赣州银座村镇银行 江西赣州银座村镇银行
江西农村信用社 江西农村信用社
江西银行 江西银行
江阴农村商业银行 江阴农村商业银行
交通银行 交通银行
焦作中旅银行 焦作中旅银行
金华银行 金华银行
锦州银行 锦州银行
晋城银行 晋城银行
晋商银行 晋商银行
晋中银行 晋中银行
九江银行 九江银行
昆仑银行 昆仑银行
昆山农村商业银行 昆山农村商业银行
莱商银行 莱商银行
兰州银行 兰州银行
廊坊银行 廊坊银行
临汾市尧都区农村信用社 临汾市尧都区农村信用社
临商银行 临商银行
柳州银行 柳州银行
龙江银行 龙江银行
洛阳银行 洛阳银行
https://admin.awepay.com/documentation.php 62/65
10/16/2020 Awepay
绵阳商业银行 绵阳商业银行
南昌银行 南昌银行
南充商业银行 南充商业银行
南京银行 南京银行
内蒙古银行 内蒙古银行
宁波通商银行 宁波通商银行
宁波银行 宁波银行
宁夏黄河农村商业银行 宁夏黄河农村商业银行
宁夏银行 宁夏银行
攀枝花商业银行 攀枝花商业银行
平安银行 平安银行
平顶山银行 平顶山银行
浦东发展银行 浦东发展银行
齐鲁银行 齐鲁银行
齐商银行 齐商银行
企业银行 企业银行
青岛银行 青岛银行
青海银行 青海银行
曲靖商业银行 曲靖商业银行
泉州银行 泉州银行
日照银行 日照银行
厦门国际银行 厦门国际银行
厦门银行 厦门银行
山东省农村信用社 山东省农村信用社
陕西省农村信用社 陕西省农村信用社
上海农村商业银行 上海农村商业银行
上海银行 上海银行
上饶银行 上饶银行
绍兴银行 绍兴银行
深圳福田银座村镇银行 深圳福田银座村镇银行
深圳农村商业银行 深圳农村商业银行
深圳前海微众银行 深圳前海微众银行
盛京银行 盛京银行
四川省农村信用社 四川省农村信用社
苏州银行 苏州银行
台州市商业银行 台州市商业银行
太仓农村商业银行 太仓农村商业银行
泰安商业银行 泰安商业银行
天津滨海农村商业银行 天津滨海农村商业银行
天津农村商业银行 天津农村商业银行
天津银行 天津银行
威海市商业银行 威海市商业银行
潍坊银行 潍坊银行
温州银行 温州银行
乌海银行 乌海银行
乌鲁木齐市商业银行 乌鲁木齐市商业银行
无锡农村商业银行 无锡农村商业银行
吴江农商行 吴江农商行
武汉农村商业银行 武汉农村商业银行
西安银行 西安银行
新韩银行 新韩银行
新网银行 新网银行
邢台银行 邢台银行
兴业银行 兴业银行
烟台银行 烟台银行
宜昌市商业银行 宜昌市商业银行
鄞州农村合作银行 鄞州农村合作银行
营口银行 营口银行
https://admin.awepay.com/documentation.php 63/65
10/16/2020 Awepay
玉溪商业银行 玉溪商业银行
云南省农村信用社 云南省农村信用社
枣庄银行 枣庄银行
张家港农村商业银行 张家港农村商业银行
张家口银行 张家口银行
长安银行 长安银行
长沙银行 长沙银行
招商银行 招商银行
浙江稠州商业银行 浙江稠州商业银行
浙江景宁银座村镇银行 浙江景宁银座村镇银行
浙江民泰商业银行 浙江民泰商业银行
浙江三门银座村镇银行 浙江三门银座村镇银行
浙江省农村信用社 浙江省农村信用社
浙江泰隆商业银行 浙江泰隆商业银行
浙江网商银行 浙江网商银行
浙商银行 浙商银行
郑州银行 郑州银行
中国工商银行 中国工商银行
中国建设银行 中国建设银行
中国民生银行 中国民生银行
中国农业银行 中国农业银行
中国银行 中国银行
中国邮政储蓄银行 中国邮政储蓄银行
中信银行 中信银行
中原银行 中原银行
重庆农村商业银行 重庆农村商业银行
重庆黔江银座村镇银行 重庆黔江银座村镇银行
重庆三峡银行 重庆三峡银行
重庆银行 重庆银行
重庆渝北银座村镇银行 重庆渝北银座村镇银行
珠海华润银行 珠海华润银行
自贡市商业银行 自贡市商业银行
https://admin.awepay.com/documentation.php 64/65
10/16/2020 Awepay
5. Disclaimer
© 2020 awepay. All rights reserved.
Awepay and the authors assume no liability for errors or omissions, or for damages, resulting from the use of this guide or the information contained in this
guide.
https://admin.awepay.com/documentation.php 65/65