The USAePay SOAP API provides a standardized web services interface that allows developers to leverage much of the gateway functionality within their applications. The API is designed to give developers the tools necessary to create highly customized payment applications. Since the API uses web standards, it is directly supported by many programming languages such as Dot Net and PHP.
SOAP uses WSDL files to describe the methods and objects that are made available by a webservice. With each new version of the USAePay soap API a new WSDL file is released. Once a version of the API is released, it's corresponding WSDL file will not change. This allows developers to continue to use an older version of the API indefinitely without the risk of future releases breaking existing code. There is no need to upgrade to the latest version unless new functionality is desired. There is also no restriction on the number of WSDL files used by an application. Existing code can continue to use the old WSDL while newly added code can use a second WSDL link.
To create a WSDL link for your application you must login into the Developer's Center. Once logged in, click on “Add Software”.
Current Version: 1.3 (see release notes for more details about current and past versions including documentation)
The following guides give specific setup instuctions/background information on using Soap with some of the more common programming languages. If you are using a language not listed below, please feel free to contact us for assistance. The Soap interface can be used with any programming language that is able to communicate with an HTTPS connection.
runTransaction | Runs a transaction using the Transaction API. |
runTransactionAPI | Provides a Soap wrapper for the Transaction API. |
runSale | Run a new sale (debit) transaction for credit cards. |
runAuthOnly | Run a new authonly (debit) transaction for credit cards. |
runCredit | Run a credit transaction for credit cards. |
runCheckSale | Run a new sale (debit) transaction for checks. |
runCheckCredit | Run a credit transaction for checks. |
runQuickSale | Run a sale based on the credit card or check details of a previous transaction. |
runQuickCredit | Run a credit based on the credit card or check details of a previous transaction. |
postAuth | Post an offline authorization |
captureTransaction | Capture a queued transaction. |
refundTransaction | Refund a specific transaction. |
overrideTransaction | Override a specific transaction. |
voidTransaction | Void a specific transaction. |
getTransaction | Retrieves all details of a specified transaction. |
getTransactionStatus | Retrieve the current status of a specific transaction. |
getTransactionCustom | Retrieves only selected details of a specified transaction. |
getCheckTrace | Retrieves the electronic check status details for a specified transaction. |
searchTransactions | Search transactions and return full transaction records. |
searchTransactionsCount | Returns number of transactions that match search criteria. |
searchTransactionsCustom | Search transactions and return only specific fields. |
getTransactionReport | Pull a transaction report. |
convertTranToCust | Convert a transaction data to a stored customer record. |
emailTransactionReceipt | Email transaction receipt, select template by ref num |
emailTransactionReceiptByName | Email transaction receipt, select template by name |
renderReceipt | Retrieve the body of a transaction receipt, select template by ref num |
renderReceiptByName | Retrieve the body of a transaction receipt, select template by name |
addReceipt | Add a new receipt template |
updateReceipt | Update a receipt template |
getReceipt | Retrieve a receipt template, select template by ref num |
getReceiptByName | Retrieve a receipt template, select template by name |
getReceipts | Retrieve all custom receipt templates |
deleteReceipt | Delete a receipt template |
createBatchUpload | Post a new batch of transactions to the gateway for processing. |
runBatchUpload | Resume processing a paused batch upload. |
pauseBatchUpload | Pause a Batch Upload that is already running. |
getBatchUploadStatus | Retrieve the status of a currently running batch. |
searchBatches | Search previously settled batches. |
searchBatchesCount | Returns number of batches that match search criteria. |
getBatchStatus | Retrieves the status of a batch specified by its BatchNum. |
closeBatch | Close a batch specified by BatchNum. |
getBatchTransactions | Retrieve transactions in the batch specified by BatchNum |
runCustomerTransaction | Run a transaction using payment data stored in the customer database. |
enableCustomer | Enable recurring billing for a customer specified by CustNum. |
disableCustomer | Disable the recurring billing for a customer specified by CustNum. |
deleteCustomer | Delete the customer specified by CustNum. |
searchCustomerID | Find a CustNum (assigned by the gateway) using a CustID (assigned by merchant). |
getCustomer | Retrieve the customer details for a given CustNum. |
searchCustomers | Search customer database, returns full customer object for each customer found. |
searchCustomersCount | Returns number of customers that match search criteria. |
searchCustomersCustom | Search for customers, returning custom columns. |
getCustomerHistory | Pull details of all transactions run for CustNum. |
addCustomer | Add a customer to your stored customer database. |
addCustomerPaymentMethod | Add a payment method for an existing customer. |
deleteCustomerPaymentMethod | Delete a payment method from an existing customer. |
getCustomerPaymentMethod | Retrieve a specific Customer Payment Method |
getCustomerPaymentMethods | Retrieve all Customer Payment Methods for a specific Customer |
updateCustomer | Replace all data for customer specified by CustNum. |
quickUpdateCustomer | Update customer data in selected fields only. |
updateCustomerPaymentMethod | Update customer payment method specified by MethodId |
copyCustomer | Copy customer from one merchant account to another. |
moveCustomer | Move customer from one merchant account to another. |
getCustomerReport | Retrieve one of the customer reports |
addProduct | Add a product |
getProduct | Retrieve a product |
updateProduct | Update an existing product |
quickUpdateProduct | Update specified product fields |
deleteProduct | Delete product |
addProductCategory | Add a product category |
getProductCategory | Retrieve a product category |
getProductCategories | Retrieve all product categories |
updateProductCategory | Update an existing product category |
deleteProductCategory | Delete product category |
getProductInventory | Retrieve current product inventory |
adjustInventory | Adjust product inventory levels |
searchProducts | Search product database, return entire product objects |
searchProductsCount | Search product database, return number of products found |
searchProductsCustom | Search product database, return defined list of fields |
getAccountDetails | Retrieves information about merchant account. |
getSupportedCurrencies | Retrieves an array of currencies supported by a merchant account. |
currencyConversion | Find currency conversion rate for a transaction amount. |
bulkCurrencyConversion | Converts multiple amounts in a single method call. |
getBankList | Retrieve list of banks that the merchant can accept direct payments from |
getSystemInfo | Retrieves API version number, environment (production/sandbox/staging), data-center location, timestamp |
getReport | Retrieve a console report (transaction, customer or product) |
getSyncLog | Retrieve a list of changes made to the gateway |
getSyncLogCurrentPosition | Retrieve the last position in the sync log |
getCustomFields | Retrieve list of merchant defined custom field names |
AccountDetails | Contains all relevant data pertaining to a merchant account. |
Address | Contains customer contact information. |
Bank | Describes Bank or Fincial Institution that supports direct payment processing |
BatchSearchResult | Batch search result object |
BatchStatus | Contains information about a batch awaiting settlement. |
BatchUploadStatus | Contains information on an uploaded batch. |
CheckData | Contains information for electronic check transactions. |
CheckTrace | Electronic check transaction tracking data. |
CreditCardData | This object contains credit card specific information for a transaction. |
CurrencyConversion | Contains the results of a currency conversion. |
CurrencyObject | Describes a currency supported by the merchant's account. |
CustomerObject | Contains customer data. |
CustomerSearchResult | Contains customer search data. |
CustomerTransactionRequest | Contains transaction specific data for stored customer transactions. |
FieldValue | Generalized Field-Value Pair |
LineItem | Transaction Line Item Detail |
MerchantApplicationObject | Contains information for a new merchant application. |
MerchantObject | Contains contact information for an active merchant. |
MerchantSearchResult | Contains the results of a merchant search. |
MerchantSummaryObject | Summary of merchant activity over a given time period. |
PaymentMethod | Describes a customer payment method. |
Product | Product object |
ProductCategory | Product Category object |
ProductInventory | Product Inventory object |
ProductSearchResult | Product search result |
Receipt | Receipt template |
RecurringBilling | This object stores information relating to specific recurring billing cycles. |
SearchParam | Used to create a unique search parameter. |
SyncLog | Change log entry |
SystemInfo | Used to retrieve API version number, environment (production/sandbox/staging), data-center location, and a timestamp. |
TransactionDetail | Contains transaction specific data. |
TransactionObject | Contains all transaction data. |
TransactionRequestObject | Used to run a new transaction. |
TransactionResponse | Contains details on the result of a processed transaction. |
TransactionSearchResult | Contains results of a transaction search. |
ueHash | Defines the properties of the hash used to validate a source key. |
ueSecurityToken | Defines a source key used to identify a merchant or reseller. |