Exigo Web Services API v3.4.244

DebitBankAccount

Attempts to debit a bank account with the amount found on an exiting order, or a new order in a transaction. If the debit request is successful, the order is changed to accepted.

Note: This request can participate in a transaction. Learn more about transactions.

Input Properties

DebitBankAccountRequest
PropertyData TypeNotes
BankAccountNumberStringOptional.
BankRoutingNumberStringOptional.
BankNameStringOptional.
BankAccountType BankAccountType
CheckNumberStringOptional. Optional (will be auto generated if pay by check).
NameOnAccountStringOptional.
BillingAddressStringOptional.
BillingAddress2StringOptional.
BillingCityStringOptional.
BillingState StringOptional.
BillingZipStringOptional.
BillingCountry StringOptional.
OrderIDInt32
MaxAmountDecimalOptional. Optional. Only use if you are applying multiple payments.

Output Properties

DebitBankAccountResponse
PropertyData TypeNotes
AmountDecimal
AuthorizationCodeString
PaymentIDInt32

SOAP Request

The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.

POST /3.0/ExigoApi.asmx HTTP/1.1
Host: api.exigo.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://api.exigo.com/DebitBankAccount"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <DebitBankAccountRequest xmlns="http://api.exigo.com/"> <BankAccountNumber>string</BankAccountNumber> <BankRoutingNumber>string</BankRoutingNumber> <BankName>string</BankName> <BankAccountType>CheckingPersonal or CheckingBusiness or SavingsPersonal or SavingsBusiness</BankAccountType> <CheckNumber>string</CheckNumber> <NameOnAccount>string</NameOnAccount> <BillingAddress>string</BillingAddress> <BillingAddress2>string</BillingAddress2> <BillingCity>string</BillingCity> <BillingState>string</BillingState> <BillingZip>string</BillingZip> <BillingCountry>string</BillingCountry> <OrderID>int</OrderID> <MaxAmount>decimal</MaxAmount> </DebitBankAccountRequest> </soap:Body> </soap:Envelope>

SOAP Response

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <DebitBankAccountResult xmlns="http://api.exigo.com/"> <Amount>decimal</Amount> <AuthorizationCode>string</AuthorizationCode> </DebitBankAccountResult> </soap:Body> </soap:Envelope>

C#

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.LoginName = "yourLoginName";

    auth.Password = "yourPassword";

    auth.Company = "yourCompany";

    api.ApiAuthenticationValue = auth;

 

    //Create Request

    DebitBankAccountRequest req = new DebitBankAccountRequest();

 

    req.BankAccountNumber = "1";

    req.BankRoutingNumber = "1";

    req.BankName = "1";

    req.BankAccountType = BankAccountType.CheckingPersonal;

    req.CheckNumber = "1";          //Optional (will be auto generated if pay by check)

    req.NameOnAccount = "1";

    req.BillingAddress = "1";

    req.BillingAddress2 = "1";

    req.BillingCity = "1";

    req.BillingZip = "1";

    req.OrderID = 1;

 

    //Send Request to Server and Get Response

    DebitBankAccountResponse res = api.DebitBankAccount(req);

 

    //Now examine the results:

    Console.WriteLine("Amount: {0}", res.Amount);

    Console.WriteLine("AuthorizationCode: {0}", res.AuthorizationCode);

    Console.WriteLine("PaymentID: {0}", res.PaymentID);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

VB.Net

Try

    'Create Main API Context Object

    Dim api as new ExigoApi()

 

    'Create Authentication Header

    Dim auth as new ApiAuthentication()

    auth.LoginName = "yourLoginName"

    auth.Password = "yourPassword"

    auth.Company = "yourCompany"

    api.ApiAuthenticationValue = auth

 

    'Create Request

    Dim req as new DebitBankAccountRequest()

 

    req.BankAccountNumber = "1"

    req.BankRoutingNumber = "1"

    req.BankName = "1"

    req.BankAccountType = BankAccountType.CheckingPersonal

    req.CheckNumber = "1"

    req.NameOnAccount = "1"

    req.BillingAddress = "1"

    req.BillingAddress2 = "1"

    req.BillingCity = "1"

    req.BillingZip = "1"

    req.OrderID = 1

 

    'Send Request to Server and Get Response

    Dim res As DebitBankAccountResponse = api.DebitBankAccount(req)

 

    'Now examine the results:

    Console.WriteLine("Amount: {0}", res.Amount)

    Console.WriteLine("AuthorizationCode: {0}", res.AuthorizationCode)

    Console.WriteLine("PaymentID: {0}", res.PaymentID)

Catch ex As Exception

    Console.WriteLine("Error: " & ex.Message)

End Try

PHP

Note: PHP is not officially supported.

<?php

try

{

    //Setup the SoapClient and Authentication

    $api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");

    $ns = "http://api.exigo.com/";

    $auth = array()

    $auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);

    $auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);

    $auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);

    $headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);

    $header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);

    $api->__setSoapHeaders(array($header));

 

    //Create Request

 

    $req->BankAccountNumber = "1";

    $req->BankRoutingNumber = "1";

    $req->BankName = "1";

    $req->BankAccountType = 1;

    $req->CheckNumber = "1";

    $req->NameOnAccount = "1";

    $req->BillingAddress = "1";

    $req->BillingAddress2 = "1";

    $req->BillingCity = "1";

    $req->BillingZip = "1";

    $req->OrderID = 1;

 

    //Send Request to Server and Get Response

    $res = $api.DebitBankAccount($req);

 

    //Now examine the results:

}

catch (SoapFault $ex)

{

    echo "Error: ", $ex->getMessage();

}

?>

Java

Note: Java is not officially supported.

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.setLoginName("yourLoginName");

    auth.setPassword("yourPassword");

    auth.setCompany("yourCompany");

    api.setApiAuthenticationValue(auth);

 

    //Create Request

    DebitBankAccountRequest req = new DebitBankAccountRequest();

 

    req.setBankAccountNumber("1");

    req.setBankRoutingNumber("1");

    req.setBankName("1");

    req.setBankAccountType(1);

    req.setCheckNumber("1");

    req.setNameOnAccount("1");

    req.setBillingAddress("1");

    req.setBillingAddress2("1");

    req.setBillingCity("1");

    req.setBillingZip("1");

    req.setOrderID(1);

 

    //Send Request to Server and Get Response

    DebitBankAccountResponse res = api.getExigoApiSoap().debitBankAccount(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

    System.out.println("Error: " + ex.getMessage());

}

CSV

This method does not support csv output.