Deprecated feature

Cassette for BankServACH command reference

For each WebSphere Commerce Payments application programming interface (API) command, the following sections describe:

  • All BankServ-specific protocol parameters
  • Any special notes related to the Cassette for BankServACH handling of framework parameters.
Note: For any framework commands that are not listed here, there are no specific BankServ parameters or unique behaviors.

The following section outlines information specific to the BankServ protocol for the parameters on WebSphere Commerce Payments commands.

AcceptPayment

The AcceptPayment command causes a framework order and a BankServACH cassette order to be created. If the ApproveFlag is set to 1, then a framework payment and BankServACH cassette payment are also created. If the DepositFlag is set to 1, then the Payment is added to the currently open batch (if there isn't a batch open, one will be created implicitly) and an Electronic Check transaction is sent to the BankServ payment gateway.

Required keywords for AcceptPayment command
Name Value
$BUYERNAME Specifies the name of the buyer. The value is specified as a 1-80 character string.
$STREETADDRESS Specifies the first line of the street address. The value is specified as a 1-50 character string.
$CITY Specifies the city. The value specified is a 1-50 character string.
$STATEPROVINCE Specifies the 2 character state abbreviation. See Appendix A. Country codes and state codes for a list of valid state codes.
$POSTALCODE Specifies the 5 or 9 digit zip code.
$COUNTRYCODE Specifies the 2 character country code of the buyer. See Appendix A. Country codes and state codes for a list of valid country codes.
$PHONE Specifies the phone number of the buyer. The value specified is a 1-10 digit number.
$CHECKROUTINGNUMBER Specifies the nine digit check routing number of the buyer. The value specified is a 9 digit number.
$CHECKINGACCOUNTNUMBER Specifies the checking account number of the buyer. The value specified is a 1-17 digit number.
Optional keywords for AcceptPayment command
Name Value
$STREETADDRESS2 Specifies the second line of the street address. The value specified is a 1-50 character string.
$EMAILADDRESS Specifies the e-mail address of the buyer. The value specified is a 1-49 character string.

Approve

The Approve command causes a framework payment and BankServACH cassette payment to be created. If the DepositFlag is set to 1, then the Payment is added to the currently open batch (if there isn't a batch open, one will be created implicitly) and an Electronic Check transaction is sent to the BankServ payment gateway.

ApproveReversal

The ApproveReversal command causes the specified payment to be retrieved and reversed. This command is a local operation only. There are no messages that flow to the BankServ payment gateway as a result of this command. The BankServACH cassette will support both full and partial reversals. This works as follows:

  • If the AMOUNT in the request is 0, then a full reversal is done and the payment moves into PAYMENT_VOID state.
  • If the AMOUNT is non-0, then the payment amount is updated with an amount equal to the amount in the ApproveReversal request. The state of this newly updated payment stays in the PAYMENT_APPROVED state.

BatchOpen

This command is not supported since all batches are opened implicitly. If this command is issued with PAYMENTTYPE set to BankServACH the command will fail with PRC_COMMAND_NOT_SUPPORTED and RC_NONE.

BatchPurge

The BatchPurge command is not supported. If this command is issued with PAYMENTTYPE set to BankServACH the command will fail with PRC_COMMAND_NOT_SUPPORTED and RC_NONE.

BatchClose

The BatchClose command is a local operation only since settlement occurs outside the scope of cassette. The way settlement occurs is that every day at 2:30 p.m. PST, all transactions that have been received and authorized by the BankServ gateway in the previous 24 hours are sent, as a batch, to the BankServ originating bank (ODFI), where they are introduced into the ACH network. The cassette is not involved in this process. The cassette does support the automatic closing of the currently open batch (see CreateAccount for details), and it is expected that merchants will configure this to be 2:30 p.m. PST.

When a BatchClose command is received, the current batch will be put in CLOSED state (moving all associated payments to CLOSED state as well) and will no longer accept new transactions.

CassetteControl

The CassetteControl command is not supported. This command will fail with the following return codes:

  • PRC_COMMAND_NOT_SUPPORTED
  • RC_NONE.

CloseOrder

The Delete option may be used only if every Batch containing one or more of the Payments or Credits has already been Closed.

CreateAccount

Optional keywords for CreateAccount command
Name Value
$BATCHCLOSETIME In the format HHMM, the (local) time of day an automatic BatchClose is to occur.

CreatePaySystem

Required keywords for CreatePaySystem command
Name Value
$MERCHANTPIN Merchant assigned pin. The value specified is a 1-200 character string.

DeleteBatch

The DeleteBatch command removes the specified Batch from the database. A Batch can be deleted only if the Batch is in Closed state.

Deposit

The Deposit command causes the specified payment to be added to the currently open batch. If a batch is not currently open, one is created. This command causes an Electronic Check transaction to be sent to the BankServ gateway. If the operation is successful, the payment moves from Approved state to Deposited state.

DepositReversal

The DepositReversal command causes the specified payment to be removed from the currently open batch. In addition, it causes the transaction to be removed from the BankServ batch. There is no concept of partial reversals; you are either adding transactions to the batch or you are removing transactions from the batch. Removing a transaction from the batch is accomplished by sending an Electronic Check transaction to the BankServ gateway with the rule set ID = "ACHVOID". If the transaction is successful, then the payment is removed from the batch (both the cassette batch and the BankServ batch) and the payment moves to the PAYMENT_APPROVED state. This command is valid for payments in DEPOSITED state.

ModifyAccount

Optional keywords for ModifyAccount command
Name Value
$BATCHCLOSETIME In the format HHMM, the (local) time of day an automatic BatchClose is to occur.

ModifyCassette

Optional keywords for ModifyCassette command
Name Value
$READTIMEOUT Number of seconds to wait while communicating with the BankServ payment gateway.
$CONNECTTIMEOUT Number of seconds to wait while attempting connection to the BankServ payment gateway.
$CONNECTRETRIES Number of times to retry a connection attempt to the BankServ payment gateway.
$MAXRETRIES When a communications error occurs (i.e.not a connection failure), the maximum number of immediate retries to attempt before either returning a communication error, or before entering the delayed retry cycle.
$ATTEMPTINTERVAL When a communications error occurs, the number of seconds to wait before trying the next set of (delayed) retries.
$MAXATTEMPTS Maximum number of delayed retry sets. Default is 3.
$SOCKSHOSTNAME TCP Host Address for socks server (0-254 character string).

Specify the fully qualified host name carefully. For example, mycomputer.city.company.com is fully qualified. If you enter the wrong SOCKS host name, the Payments application server may fail when a Payments transaction is attempted and you will not be able to use the Payments GUI. (To recover, stop and restart the Payments instance.)

$SOCKSPORTNUMBER Socks port number
$BANKSERVURL The URL to access the BankServ payment gateway.

ModifyPaySystem

Optional keywords for ModifyPaySystem command
Name Value
$MERCHANTPIN Merchant assigned PIN.

ReceivePayment

This command is not supported because the cassette does not support order creation by a wallet. If this command is issued with PAYMENTTYPE set to BankServ the command will fail with:

  • PRC_COMMAND_NOT_SUPPORTED and RC_NONE.

Refund

This command is not supported since BankServ ACH transactions do not have the concept of refunds. If this command is issued with PAYMENTTYPE set to BankServACH the command will fail with PRC_COMMAND_NOT_SUPPORTED and RC_NONE.

RefundReversal

This command is not supported since BankServ ACH transactions do not have the concept of refunds. If this command is issued with PAYMENTTYPE set to BankServACH the command will fail with PRC_COMMAND_NOT_SUPPORTED and RC_NONE.