developer:soap-1.1:methods:runchecksale

runCheckSale

Run a new check sale transaction.

Description

This method is equivalent to running the runTransaction method with the Command set to Check:Sale. Instead of charging a customer's credit card, this method uses the customer's bank information (bank routing number and customer account number) to electronically deduct the required funds from the customer's checking account.

It will run a transaction debit a customer's checking or savings account via ACH for the desired amount. If a mistake is made or a refund must be given you can use either the overrideTransaction, voidTransaction, refundTransaction or runCheckCredit method.

If the sale is for a customer whose information has been stored, you may use the runCustomerTransaction method to avoid having to reenter all of the customer's information.

See also runTransaction, runQuickSale, voidTransaction, overrideTransaction, runCheckCredit, runAuthOnly

Syntax

Arguments

Type Name Description
ueSecurityToken Token Merchant security token: used to identify merchant and validate transaction.
TransactionRequestObject Params Transaction details from all fields of the transaction form, including reference number, transaction amount, customer ID, currency, authorization code, and any other information entered at the time of the transaction.

Return Value

TransactionResponse Returns a TransactionResponse object containing the results of the transaction and all relevant data.

Examples

PHP

For directions on how to set up the WSDL link, create “$token” and “$client”, go to SOAP PHP How-to.

<?php
 
try {
 
  $Request=array(
    'AccountHolder' => 'Tester Jones',
    'Details' => array(
      'Description' => 'Example Transaction',
      'Amount' => '4.99',
      'Invoice' => '44539'
      ),
    'CheckData' => array(
      'CheckNumber' => '1234',
      'Routing' => '123456789',
      'Account' => '11111111',
      'AccountType' => 'Savings',
      'DriversLicense' => '34521343',
      'DriversLicenseState' => 'CA',
      'RecordType' => 'PPD'
      )
    );
 
  $res=$client->runCheckSale($token, $Request);
 
}  
 
catch (SoapFault $e)  {
  echo $client->__getLastRequest();
  echo $client->__getLastResponse();
  die("runCheckSale failed :" .$e->getMessage());
  }
 
?> 

VB

    Dim client As usaepay.usaepayService = New usaepay.usaepayService
    Dim token As usaepay.ueSecurityToken
 
    token = Me.CreateToken("982lz9VsLm87MA54Sv8E582h8OZMArL6", "443311")
 
    Dim transaction As usaepay.TransactionRequestObject = New usaepay.TransactionRequestObject
 
      transaction.CheckData = New usaepay.CheckData
 
        transaction.CheckData.Account = "1112223333"
        transaction.CheckData.Routing = "123456789"
        transaction.CheckData.DriversLicense = "D5555555"
        transaction.CheckData.DriversLicenseState = "CA"
 
      transaction.Details = New usaepay.TransactionDetail
 
        transaction.Details.Amount = "1.00"
        transaction.Details.AmountSpecified = True
        transaction.Details.Invoice = "55555"
        transaction.Details.Description = "Test Check Sale"
 
      transaction.AccountHolder = "Test Guy"
 
    Dim response As usaepay.TransactionResponse = New usaepay.TransactionResponse
 
    response = client.runCheckSale(token, transaction)
 
    If response.ResultCode = "A" Then
      MsgBox("Transaction Approved, Reference Number: " & response.RefNum)
    ElseIf response.ResultCode = "D" Then
      MsgBox("Transaction Declined, Reason: " & response.Error)
    Else
      MsgBox("Transaction Error, Reason: " & response.Error)
    End If

.NET C#

usaepay.TransactionRequestObject tran = new usaepay.TransactionRequestObject();
 
            tran.Details = new usaepay.TransactionDetail();
            tran.Details.Amount = 1.00;
            tran.Details.AmountSpecified = true;
            tran.Details.Invoice = "1234";
            tran.Details.Description = "Sample Check Sale";
 
            tran.CheckData = new usaepay.CheckData();
            tran.CheckData.Account = "1112223333";
            tran.CheckData.Routing = "123456789";
            tran.CheckData.DriversLicense = "D5555555";
            tran.CheckData.DriversLicenseState = "CA";
 
            tran.AccountHolder = "Test Guy";
 
            usaepay.TransactionResponse response = new usaepay.TransactionResponse();
 
            try
            {
                response = client.runCheckSale(token, tran);
 
                if (response.ResultCode == "A")
                {
                    MessageBox.Show(string.Concat("Transaction Approved, RefNum: ",
                    response.RefNum));
                }
                else
                {
                    MessageBox.Show(string.Concat("Transaction Failed: ",
                    response.Error));
                }
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
 
            }

XML

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:usaepay"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
 SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:runCheckSale>
<Token xsi:type="ns1:ueSecurityToken">
	<ClientIP xsi:type="xsd:string">192.168.0.1</ClientIP>
	<PinHash xsi:type="ns1:ueHash">
		<HashValue xsi:type="xsd:string">673d067b9e414b11d3be405d3537fbf7bc359ffa</HashValue>
		<Seed xsi:type="xsd:string">12045764872012320491</Seed>
		<Type xsi:type="xsd:string">sha1</Type>
	</PinHash>
	<SourceKey xsi:type="xsd:string">nE3D6frKFj27U9ug1Yd2366e0062hepS</SourceKey>
</Token>
<Params xsi:type="ns1:TransactionRequestObject">
	<AccountHolder xsi:type="xsd:string">Tester Jones 111</AccountHolder>
	<CheckData xsi:type="ns1:CheckData">
		<Account xsi:type="xsd:string">11111111</Account>
		<AccountType xsi:type="xsd:string">Savings</AccountType>
		<CheckNumber xsi:type="xsd:integer">1234</CheckNumber>
		<DriversLicense xsi:type="xsd:string">34521343</DriversLicense>
		<DriversLicenseState xsi:type="xsd:string">CA</DriversLicenseState>
		<RecordType xsi:type="xsd:string">PPD</RecordType>
		<Routing xsi:type="xsd:string">123456789</Routing>
	</CheckData>
	<Details xsi:type="ns1:TransactionDetail">
		<Amount xsi:type="xsd:double">4.99</Amount>
		<Description xsi:type="xsd:string">Example Transaction</Description>
		<Invoice xsi:type="xsd:string">44539</Invoice>
	</Details>
</Params>
</ns1:runCheckSale>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Change History

Version Change
1.0 Method added in soap v1.0
developer/soap-1.1/methods/runchecksale.txt · Last modified: 2010/09/29 13:26 by irina

Page Tools