EliautdpService

EliautdpService.asmx

This web service provides a method to process credit cards after the fact. It assumes you already processed a credit card without going through Elliott’s credit card payment gateway.


AutoDeposit

This method will perform the “cash receipt” for a credit card transaction. It will update the following Elliott tables:

·        ARCUSFIL: Customer (balance, and payment information)

·        AROPNFIL: A/R Open Item

·        ARDISFIL: A/R Distribution

·        ARCRCLOG: A/R Credit Card Log

The regular A/R cash receipt does not update A/R Credit Card Log.

El2crcrdService can also perform similar functions. The difference is El2crcrdService will also charge the credit card through Elliott's credit card payment gateway, so it is a two-in-one function. Not only does it charge the credit card; it also performs the cash receipt. On the other hand, EliauddpService only performs the cash receipt function.

Usage:

AutoDepositResult = A.AutoDeposit(UserName, UserPassword, AutoDepositInput)

Parameters UserID, Password are not used at this moment.

 

AutoDepositInput Structure

Property Name

Length

Type

Upper

Detail

CustomerNo

6

String

Y

Required.

TransactionDate

8

Date

 

Default to system date.

TransactionTime

6

Integer

 

Default to system time.

ApplyTo

6

Integer

 

This is the apply-to invoice number. If the invoice becomes fully paid as a result of this transaction, the system will also update customer’s average days-to-pay.

Amount1

7.2

Double

 

Required. This is the principle payment amount.

Amount2

7.2

Double

 

This is secondary payment amount. Normally, you will leave this field as zero. In some situations, you can put a negative amount to reflect a convenience fee, or a positive amount to reflect early payment discount.

For example, if customer needs to pay $100, you may charge $3 for a convenience fee. Then the actual credit card charge will be $103. In this situation, you will pass the amount1 as 103 and amount2 as -3.

CreditType

4

String

Y

Possible values are “VISA,” “MAST,” “AMEX,” “DINE,” “DISC” and “ENRO.” You can also leave it blank.

If CreditType is provided, this method will validate if the credit card number matches the card type. If not, an error is returned. You may use this as safety logic to prevent accepting wrong credit cards.

CreditNumber

19

String

 

This field is required and it is the 15-digit (AMEX) or 16-digit (other) credit card number.

ExpYear

4

Integer

 

This field is required and is the 4-digit credit card expiration year.

ExpMonth

2

Short

 

This field is required and is the 2-digit credit card expiration month.

CardHolder

30

String

Y

This field will be used to update ARCRCLOG.

Address1

30

String

Y

This field will be used to update ARCRCLOG.

Address2

30

String

Y

This field will be used to update ARCRCLOG.

City

15

String

Y

This field will be used to update ARCRCLOG.

State

2

String

Y

This field will be used to update ARCRCLOG.

ZipCode

10

String

 

This field will be used to update ARCRCLOG.

Country

20

String

Y

This field will be used to update ARCRCLOG.

ApprovalNo

30

String

Y

If Source = “WEB” or blank, then this field is required. This is a custom implementation which may not apply to you, so we suggest you always provide a value to Source other than “WEB.”

ReferenceNo

10

String

Y

This field will be used to update ARCRCLOG.

ReferenceText

60

String

Y

This field will be used to update ARCRCLOG.

Source

6

String

Y

This field refers to the Elliott Payment Source. You should set up a payment source for each credit card merchant account. Generally speaking, you should have separate merchant accounts for ecommerce, MOTO and retail credit card transactions. If you use this web service for your ecommerce website, then enter the corresponding payment source here.

Default to “WEB.” We suggest you always provide a valid payment source other than “WEB.”

EnforceValidCRCard

1

String

Y

“Y”: Enforces the credit card number to be valid based on the checksum logic.

“N”: Does not enforce the passed credit card number to be valid. You may want to do this if the payment amount received is not from a credit card.

Blank (default): Determines whether to enforce valid credit card numbers by Elliott Global Setup -> eContact Manager -> “7. Enforce Valid Credit Card Number”

UserID

10

String

 

Default to “SUPERVISOR.”

WorkstationID

10

String

 

Default to “SUPERVISOR.”

UpdateAR

1

String

Y

“Y” (Default): System will create A/R open item record.

“N”: System will not create A/R open item. In some rare situations, if the money received is not for crediting the receivable, then you will set this flag to “N.” In that case, the user needs to specify CRAcctNo.

CRAcctNo

24

String

Y

Provide the 24-digit GL account number in the internal format. For example, if the GL account to credit is 1234-12-1, the corresponding internal format is 000012340000001200000001. This field is required if UpdateAR is “N.”

* Upper = Y indicates the value of the property will be converted to upper case.

 

Output Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see the “EliitmiqService Return Code” section.

ReturnMsg

String

This is a description of the return code. For example, if return code is zero, you can expect “OK” in this field.

CheckNo

Integer

This is the sequentially assigned A/R document number for the payment record just created in the AROPNFIL table.

 

Code Example (VB)

The following sample code will deposit one credit card payment.

 

Dim Service As New webServicesAutdp.EliautdpService

Dim Input As New webServicesAutdp.AutoDepositInput

Dim Result As New webServicesAutdp.AutoDepositResult

Input.CustomerNo = "CUST01"

Input.CreditNumber = "4111111111111111”

Input.ExpYear = 2020

Input.ExpMonth = 08

Input.Source  = “CC-WEB”

Input.EnforceValidCRCard = “Y”

Result = Service.AutoDeposit("","",Input)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

  "Payment Doc# " & Result.CheckNo.ToString & “ Created”

Else

  lblResult.Text = Result.ReturnMsg

End If

 

EliautdpService Error Code

 0 = OK

 1 = File Error

 2 = Data Missing (No Customer No)

 3 = Data Missing (No Amount [AMOUNT-1])

 4 = Data Missing (No Credit Card Number)

 5 = Data Missing (No Expiration Year & Month)

 6 = Credit Card Type Mismatch

 7 = Data Missing (No Approval Number)

 8 = Credit Card Type invalid

 9 = Incorrect Credit Card Length

10 = Expiration Year/Month invalid

11 = This Credit Card Has Already Expired

12 = Credit Card Number Invalid

13 = Customer Record Locked, Please try again.

14 = NSI Control File Not Found

15 = Source Not On File

16 = Credit Type Required (Enforce Credit Checking Off)

17 = Invalid Update A/R Flag ("Y" or "N")

18 = CR Acct Number Required

CLS

Feedback and Knowledge Base