Achworks - Soap Ver 4.0 Api Guide
Achworks - Soap Ver 4.0 Api Guide
A C H W o r k s ,
a c h w o r k s . c o m ,
2 7 2 4
K i l g o r e
R d . ,
R a n c h o
C o r d o v a ,
C A
9 5 7 7 6
3.
DATA
DEFINITIONS
17
3.
1
COMPANYINFO
17
3.
2
ACHTRANSRECORD
17
3.
3
ACHFILE
20
3.
4
ACHRETURNRECORD
21
3.
5
ACHRETURNS
24
3.
6
TRANSRESULT
25
3.
7
RESULTFILE
26
3.
8
ERRORRECORD
27
3.
9
ERRORFILE
28
3.
10
FIELD
TYPES
AND
LENGTHS
29
4. CONTACT INFORMATION 30
APPENDICES
31
A1.
SERVICE
DESCRIPTION
31
A2.
SAMPLE
CLIENT
CODES
48
A2.1
PHP
48
A2.2
VISUAL
BASIC
([Link])
57
A2.3
C#
65
A2.4
JAVA
73
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
2
of
83
1.
Introduction
The
use
of
web
services
like
SOAP,
both
in
theory
and
by
experience,
is
said
to
be
one
of
the
most
suitable
applications
for
easy
and
seamless
integration
with
existing
or
even
new
systems
regardless
of
development
platform
and/or
operating
system.
This
is
proven
to
be
true
for
web
services
involving
complex
data
structure
and
applications
that
require
frequent
connections
(data
updates)
like
the
ACH
system.
Since
it’s
first
release
in
2001,
ACHWorks-‐SOAP
(Figure
1)
has
been
a
reliable
and
stable
system.
The
latest
version
of
ACHWorks-‐SOAP
(Version
4,
2010)
provides
new
enhancements
which
include:
(a)
instant
feedback
of
detailed
status
and/or
connection
errors
for
each
method
or
operation
call,
(b)
improved
data
structure
for
input
and
output
eliminating
the
need
for
understanding
the
ACHWorks
proprietary
data
format
(as
in
Version
3),
(c)
changing
from
the
XML-‐RPC
to
the
Document/Literal
format
for
compatibility
with
most
and
recent
versions
of
development
platforms,
and
(d)
increase
in
the
speed
of
connection.
The
new
version
features
a
data
structure
that
employs
full
object-‐oriented
(OO)
design
that
easily
translates
to
non-‐fully
OO
formats
like
XML.
Consequently,
the
generated
classes
from
the
web
service
WSDL
present
data
as
objects.
This
feature
facilitates
easier
and
more
intuitive
consuming
of
the
web
service
i.e.
creation
of
a
SOAP
client
application.
Figure
1.
ACHWorks-SOAP
Schematic
Diagram
ACH
SYSTEM
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
3
of
83
2.
Description
of
Methods/Operations
This
section
lists
the
methods
and
description
for
using
the
ACHWorks-‐SOAP
web
service.
A
brief
description
is
provided
for
each
method
to
complement
the
service
description
(test
WSDL
url)
which
can
be
found
on
this
link:
[Link]
.
A
different
link
for
WSDL
to
send
live
ACH
transactions
is
provided
for
registered
merchants.
For
details
of
the
data
structure
and
definitions,
please
refer
to
Section
3
of
this
guide.
Viewing
the
sample
codes,
Appendix
A2
in
this
guide,
also
prove
useful
in
understanding
on
how
a
method
is
called
in
an
application
and
to
easily
get
started
quickly.
2.1.
Checking
Connection
and
Account
Status
2.1.1
ConnectionCheck
This
is
the
basic
method
for
accessing
the
web
service
to
determine
validity
of
company
credentials.
This
method
may
be
used
for
initial
testing
of
the
service
only.
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
ConnectionCheckResult
=
ConnectionCheck(InpCompanyInfo),
where
ConnectionCheckResult
is
of
type
String
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
Example:
The
InpCompanyInfo
can
have
the
following
value,
[Link]=”TST”
[Link]=”9505”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
and
the
ConnectionCheckResult
object
may
have
the
following
value
after
the
method
call,
ConnectionCheckResult
-‐>
“SUCCESS:Valid
Account”
or
if
rejected,
ConnectionCheckResult
-‐>
“REJECTED:Invalid
Account”
2.1.2
CheckCompanyStatus
This
method
checks
the
status
of
the
company
credentials
whether
it’s
an
active
or
an
inactive
account.
It
is
possible
that
an
account
is
valid
(e.g.
ConnectionCheck)
but
not
yet
activated
or
already
been
deactivated
or
closed.
An
account
must
be
active
to
initiate
methods
for
sending
ACH
transactions
and
getting
ACH
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
4
of
83
returns.
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
CheckCompanyStatusResult
=
CheckCompanyStatus(InpCompanyInfo),
where
CheckCompanyStatusResult
is
of
type
String
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
Example:
The
InpCompanyInfo
can
have
the
following
value,
[Link]=”TST”
[Link]=”9505”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
and
the
CheckCompanyStatusResult
object
may
have
the
following
value
after
the
method
call,
CheckCompanyStatusResult
-‐>
“SUCCESS:Valid
And
Active
Account”
or
if
rejected,
CheckCompanyStatusResult
-‐>
“REJECTED:Invalid
And/Or
Inactive
Account”
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
5
of
83
2.2.
Sending
Transactions
2.2.1
SendACHTrans
This
method
is
used
for
sending
a
single
ACH
transaction
or
record.
ACHTransRecord
describes
the
format
of
a
single
ACH
transaction
or
record
(see
Section
3.2).
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
SendACHTransResult
=
SendACHTrans(InpCompanyInfo,
InpACHTransRecord),
where
SendACHTransResult
is
of
type
TransResult
(Section
3.6)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
InpACHTransRecord
is
of
type
ACHTransRecord
(Section
3.2)
Example:
The
input
InpCompanyInfo
and
InpACHTransRecord
objects
may
have
the
following
values,
[Link]=”TST”
[Link]=”9502”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
[Link]=”TST”
[Link]=”9502”
[Link]=”XC#-‐0002”
[Link]=”DOE,
JOHN”
[Link]=”123456780”
[Link]=”00002323044”
.
.
.
.
.
.
.
.
.
.
.
.
.
.
[Link]=”1”
Then,
the
SendACHTransResult
object
may
have
the
following
value
after
the
method
call,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]-‐>”Transaction
record
received
and
queued
on
04/16/2010
[Link]
PM
Pacific
Time
[FrontEndTrace=X9000123310].
Server
Processing
Time:15.625
ms”
[Link]
-‐>0
Or
if
rejected,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”REJECTED”
[Link]-‐>”Rejected
due
to
errors”
[Link]
-‐>2
[Link][0]-‐>”Error#1:FrontEndTrace
X9000123310
already
used.”
[Link][1]-‐>”Error#2:Unable
to
complete
processing
of
data
due
to
error(s).”
Special
Note:
All
transactions
sent
via
this
method
can
be
separately
managed
using
the
ACHWorks-‐WEB
online
application
(optional
but
useful
feature
for
online
viewing
and
editing
of
transactions).
Although
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
6
of
83
ACHWorks-‐WEB
requires
a
separate
license,
the
license
is
not
required
to
facilitate
the
processing
of
the
transaction
sent
using
this
method.
2.2.2
SendACHTransBatch
This
method
is
used
for
sending
multiple
or
batch
of
ACH
transactions.
ACHFile
describes
the
format
of
a
batch
file
(see
Section
3.3).
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
SendACHTransBatchResult
=
SendACHTransBatch(InpCompanyInfo,
InpACHFile),
where
SendACHTransBatchResult
is
of
type
TransResult
(Section
3.6)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
InpACHFile
is
of
type
ACHFile
(Section
3.3)
Example:
The
input
InpCompanyInfo
and
InpACHFile
objects
may
have
the
following
values,
[Link]=”TST”
[Link]=”9502”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
[Link]=”TST”
[Link]=”9502”
[Link]=””
//we
recommend
that
you
leave
this
blank,
see
Section
3.3.3
for
forma
[Link]=3
[Link]=2
[Link]=600.5
[Link]=1
[Link]=350.25
[Link][0]=InpACHTransRecord1
//See
example
in
Section
2.2.2
for
assigning
InpACHransRecord
[Link][1]=InpACHTransRecord2
//See
example
in
Section
2.2.2
for
assigning
InpACHransRecord
[Link][2]=InpACHTransRecord3
//See
example
in
Section
2.2.2
for
assigning
InpACHransRecord
Then,
the
SendACHTransBatchResult
object
may
have
the
following
value
after
the
method
call,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]-‐>”Transaction
records
received
and
queued
on
04/16/2010
[Link]
PM
Pacific
Time
[ACHFileName=TST9502-‐[Link]].
Server
Processing
Time:<0.0001
ms”
SendACHTransBatchResult
TotalNumErrors
-‐>0
Or
if
rejected,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”REJECTED”
[Link]-‐>”Rejected
due
to
errors”
[Link]
-‐>2
[Link][0]-‐>”Error#1:
Record
count
defined
does
not
match
actual
number
of
records.”
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
7
of
83
[Link][1]-‐>”Error#2:Unable
to
complete
processing
of
data
due
to
error(s).”
2.2.3
SendACHTransBatchBin
Some
developers
prefer
to
send
a
ready-‐made
file
instead
of
assembling
it
in
their
client
code.
This
method
can
be
used
for
sending
multiple
or
batch
of
ACH
transactions
as
an
alternative
to
the
SendACHTransBatch
method.
The
input
ACHFile
is
encoded
in
a
binary
format
(Figure
2.1).
This
method
is
also
recommended
if
sending
more
than
5,000
transactions
per
send
call.
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
SendACHTransBatchBinResult
=
SendACHTransBatchBin(InpCompanyInfo,
InpBinFile),
where
SendACHTransBatchBINResult
is
of
type
TransResult
(Section
3.6)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
InpBinFile
is
of
type
base64binary,
binary
encoded
ACHFile
(see
Figure
2.1
below)
Example:
Then
input
InpCompanyInfo
and
InpACHFile
objects
may
have
the
following
values,
[Link]=”TST”
[Link]=”9502”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
InpBinFile
=
//assign
a
base64
binary
encoded
of
the
ACHFile,
see
Figure
2.1
below
Then,
the
SendACHTransBatchBINResult
object
may
have
the
following
value
after
the
method
call,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]-‐>”Transaction
records
received
and
queued
on
04/16/2010
[Link]
PM
Pacific
Time
[ACHFileName=TST9502-‐[Link]].
Server
Processing
Time:<0.0001
ms”
SendACHTransBatchResult
TotalNumErrors
-‐>0
Or
if
rejected,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”REJECTED”
[Link]-‐>”Rejected
due
to
errors”
[Link]
-‐>2
[Link][0]-‐>”Error#1:
Record
count
defined
does
not
match
actual
number
of
records.”
[Link][1]-‐>”Error#2:Unable
to
complete
processing
of
data
due
to
error(s).”
Figure
2.1
Sample
ACHFile
text
(to
be
encoded
in
base64
binary
format
as
InpBinFile):
<?xml
version="1.0"
encoding="utf-‐8"
?>
<ACHFile>
<SSS>TST</SSS>
<LocID>9505</LocID>
<ACHFileName>TST9505-‐[Link]</ACHFileName>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
8
of
83
<TotalNumRecords>3</TotalNumRecords>
<TotalDebitRecords>2</TotalDebitRecords>
<TotalDebitAmount>600.5</TotalDebitAmount>
<TotalCreditRecords>1</TotalCreditRecords>
<TotalCreditAmount>350.25</TotalCreditAmount>
<ACHRecords>
<ACHTransRecord>
<SSS>TST</SSS>
<LocID>9505</LocID>
<FrontEndTrace>J-‐00081</FrontEndTrace>
<OriginatorName>MYCOMPANY</
OriginatorName
>
<TransactionCode>PPD</TransactionCode>
<CustTransType>D</CustTransType>
<CustomerID>CUSTID123-‐1</CustomerID>
<CustomerName>DOE,
JOHN</CustomerName>
<CustomerRoutingNo>987654320</CustomerRoutingNo>
<CustomerAcctNo>00332358882</CustomerAcctNo>
<CustomerAcctType>C</CustomerAcctType>
<TransAmount>100.25</TransAmount>
<CheckOrCustID>9166388811</CheckOrCustID>
<CheckOrTransDate>03/24/2010</CheckOrTransDate>
<EffectiveDate>03/24/2010</EffectiveDate>
<Memo>FirstPay</Memo>
<OpCode>S</OpCode>
<AccountSet>1</AccountSet>
</ACHTransRecord>
<ACHTransRecord>
<SSS>TST</SSS>
<LocID>9505</LocID>
<FrontEndTrace>J-‐00082</FrontEndTrace>
<
OriginatorName
>MYCOMPANY</
OriginatorName
>
<TransactionCode>PPD</TransactionCode>
<CustTransType>D</CustTransType>
<CustomerID>CUSTID123-‐2</CustomerID>
<CustomerName>SMITH,
JANET</CustomerName>
<CustomerRoutingNo>987654320</CustomerRoutingNo>
<CustomerAcctNo>00332358882</CustomerAcctNo>
<CustomerAcctType>C</CustomerAcctType>
<TransAmount>500.25</TransAmount>
<CheckOrCustID>9166388811</CheckOrCustID>
<CheckOrTransDate>03/24/2010</CheckOrTransDate>
<EffectiveDate>03/24/2010</EffectiveDate>
<Memo>FirstPay</Memo>
<OpCode>S</OpCode>
<AccountSet>1</AccountSet>
</ACHTransRecord>
<ACHTransRecord>
<SSS>TST</SSS>
<LocID>9505</LocID>
<FrontEndTrace>J-‐00083</FrontEndTrace>
<
OriginatorName
>MYCOMPANY</
OriginatorName
>
<TransactionCode>PPD</TransactionCode>
<CustTransType>C</CustTransType>
<CustomerID>CUSTID123-‐3</CustomerID>
<CustomerName>YOUNG,
JOE</CustomerName>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
9
of
83
<CustomerRoutingNo>987654320</CustomerRoutingNo>
<CustomerAcctNo>00332358882</CustomerAcctNo>
<CustomerAcctType>C</CustomerAcctType>
<TransAmount>350.25</TransAmount>
<CheckOrCustID>9166388811</CheckOrCustID>
<CheckOrTransDate>03/24/2010</CheckOrTransDate>
<EffectiveDate>03/24/2010</EffectiveDate>
<Memo>FirstPay</Memo>
<OpCode>S</OpCode>
<AccountSet>1</AccountSet>
</ACHTransRecord>
</ACHRecords>
</ACHFile>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
10
of
83
2.3
Getting
Settlements
and
Returns
2.3.1
GetACHReturns
This
method
is
used
to
retrieve
outstanding
status
of
Returns
and
Settlements
from
the
ACH
system
for
a
transaction
or
set
of
transactions.
The
output
is
stored
in
ACHReturns
file
described
in
Section
3.5.
A
file
may
consist
of
one
or
more
list
or
array
of
return
records.
Each
return
record
is
formatted
as
an
ACHReturnRecord
(Section
3.4).
This
is
the
recommended
way
to
check
for
status
of
transactions.
Only
new
statuses
(not
previously
picked
up)
will
be
available
using
this
method.
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
GetACHReturnsResult
=
GetACHReturns(InpCompanyInfo),
where
GetACHReturnsResult
is
of
type
ACHReturns
(Section
3.5)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
Example:
The
InpCompanyInfo
can
have
the
following
value,
[Link]=”TST”
[Link]=”9505”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
and
the
GetACHReturnResult
object
may
have
the
following
value
after
the
method
call,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]
-‐>
“Retrieved
14
records
on
04/16/2010
[Link]
PM
Pacific
Time.
Server
Processing
Time:<0.0001
ms”
[Link]
-‐>
14
[Link][0].FrontEndTrace
-‐>
“X35948”
[Link][0].ResponseCode
-‐>
“1SNT”
[Link][0].TransAmount
-‐>
356.45
[Link][0].EffectiveDate
-‐>
“2010-‐03-‐05T[Link]”
[Link][1].FrontEndTrace
-‐>
“X35950”
[Link][1].ResponseCode
-‐>
“1SNT”
[Link][1].TransAmount
-‐>
50.25
[Link][1].EffectiveDate
-‐>
“2010-‐03-‐05T[Link]”
[Link][2].FrontEndTrace
-‐>
“X35951”
[Link][2].ResponseCode
-‐>
“2STL”
[Link][2].TransAmount
-‐>
750.25
[Link][2].EffectiveDate
-‐>
“2010-‐03-‐05T[Link]”
[Link][2].ActionDetail
-‐>
“A340016R
Credit
01
TS
00001”
.
.
.
.
.
.
.
.
.
.
[Link][14].FrontEndTrace
-‐>
“X78531”
.
.
.
.
.
.
.
.
.
.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
11
of
83
[Link][14].ActionDetail
-‐>
“A340016W
Credit
03
TS
00003”
Or
if
no
data
to
retrieve,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]
-‐>
“No
records
to
retrieve
at
this
time,
04/20/2010
[Link]
PM
Pacific
Time.
Server
Processing
Time:<0.0001
ms”
2.3.2
GetACHReturnsHist
This
method
is
used
to
retrieve
status
at
specified
date
range
of
Returns
and
Settlements
from
the
ACH
system
for
a
transaction
or
set
of
transactions.
The
output
is
stored
in
ACHReturns
file
described
in
Section
3.5.
A
file
may
consist
of
one
or
more
list
or
array
of
return
records.
Each
return
record
is
formatted
as
an
ACHReturnRecord
(Section
3.4).
This
method
is
useful
for
rebuilding
historical
data
in
the
event
of
hard
drive
failure
or
data
corruption.
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
GetACHReturnsHistResult
=
GetACHReturnsHist(InpCompanyInfo,ReturnDateFrom,ReturnDateTo),
where
GetACHReturnsHistResult
is
of
type
ACHReturns
(Section
3.5)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
ReturnDateFrom
and
ReturnDateTo
are
of
type
dateTime
(please
refer
to
sample
codes
for
correct
implementation
of
dateTime
depending
on
the
development
platform)
Example:
The
InpCompanyInfo
can
have
the
following
value,
[Link]=”TST”
[Link]=”9505”
[Link]=”MYCOMPANY”
[Link]=”SASD%!%$DGLJGWYRRDGDDUDFDESDHDD”
and
the
GetACHReturnHistResult
object
may
have
the
following
value
after
the
method
call,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]
-‐>
“Retrieved
142
records
on
04/16/2010
[Link]
PM
Pacific
Time.
Server
Processing
Time:<0.0001
ms”
[Link]
-‐>
142
[Link]
–>“2010-‐03-‐25T[Link]”
[Link]
–>“2010-‐03-‐29T[Link]”
[Link][0].FrontEndTrace
-‐>
“X35948”
[Link][0].ResponseCode
-‐>
“1SNT”
[Link][0].TransAmount
-‐>
356.45
[Link][0].EffectiveDate
-‐>
“2010-‐03-‐05T[Link]”
[Link][1].FrontEndTrace
-‐>
“X35950”
[Link][1].ResponseCode
-‐>
“1SNT”
[Link][1].TransAmount
-‐>
50.25
[Link][1].EffectiveDate
-‐>
“2010-‐03-‐05T[Link]”
[Link][2].FrontEndTrace
-‐>
“X35951”
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
12
of
83
[Link][2].ResponseCode
-‐>
“2STL”
[Link][2].TransAmount
-‐>
750.25
[Link][2].EffectiveDate
-‐>
“2010-‐03-‐05T[Link]”
[Link][2].ActionDetail
-‐>
“A340016R
Credit
01
TS
00001”
.
.
.
.
.
.
.
.
.
.
[Link][142].FrontEndTrace
-‐>
“X78531”
.
.
.
.
.
.
.
.
.
.
[Link][142].ActionDetail
-‐>
“A340016W
Credit
03
TS
00003”
Or
if
no
data
to
retrieve,
[Link]-‐>”TST”
[Link]-‐>”9502”
[Link]-‐>”SUCCESS”
[Link]
-‐>
“No
records
to
retrieve
at
this
time,
04/20/2010
[Link]
PM
Pacific
Time.
Server
Processing
Time:<0.0001
ms”
A
derivate
method
called
GetACHReturnsHistRC
can
be
used
to
retrieve
ACH
Settlements
and
Returns
by
response
code.
Response
codes
is
either
a
1SNT,
2STL,
3RET,
4INT,
5COR
or
9BNK
(see
Section
3.4.5).
Format:
GetACHReturnsHistRCResult
=
GetACHReturnsHistRC(InpCompanyInfo,ReturnDateFrom,ReturnDateTo,
InpResponseCode),
where
GetACHReturnsHistRCResult
is
of
type
ACHReturns
(Section
3.5)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
ReturnDateFrom
and
ReturnDateTo
are
of
type
dateTime
(please
refer
to
sample
codes
for
correct
implementation
of
dateTime
depending
on
the
development
platform)
InpResponseCode
is
of
type
String
(Section
3.4.5)
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
13
of
83
2.4.
Retrieving
Past
Connection
Results
and
Errors
2.4.1
GetResultFile
This
method
is
used
to
retrieve
past
results
of
connections.
The
output
is
stored
in
ResultFile
described
in
Section
3.7.
A
file
may
consist
of
one
or
more
list
or
array
of
result
records.
Each
result
record
is
formatted
as
a
TransResult
(Section
3.6).
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Format:
GetResultFileResult
=
GetResultFile(InpCompanyInfo,ResultDateFrom,ResultDateTo),
where
GetResultFileResult
is
of
type
ResultFile
(Section
3.7)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
ResultDateFrom
and
ResultDateTo
are
of
type
dateTime
(please
refer
to
sample
codes
for
correct
implementation
of
dateTime
depending
on
the
development
platform)
Example:
Calling
GetResultFile
may
have
following
values
for
the
GetResultFileResult
object,
[Link]
-‐>”TST”
[Link]
-‐>”9505”
[Link]
-‐>”SUCCESS”
[Link]-‐>”
Retrieved
15
connection
records
on
04/16/2010
[Link]
PM
Pacific
Time
….”
[Link]
–>“2010-‐03-‐25T[Link]”
[Link]
–>“2010-‐03-‐29T[Link]”
[Link]
-‐>15
[Link][0].CallMethod
-‐>
“SendACHTransBatch”
[Link][0].Status
-‐>
“SUCCESS”
[Link][0].FileName
-‐>
“TST9505-‐[Link]”
[Link][1].CallMethod
-‐>
“SendACHTransBatch”
[Link][1].Status
-‐>
“SUCCESS”
[Link][1].FileName
-‐>
“TST9505-‐[Link]”
[Link][2].CallMethod
-‐>
“SendACHTrans”
[Link][2].Status
-‐>
“SUCCESS”
[Link][2].FrontEndTrace
-‐>
“X9000123310454”
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
[Link][15].CallMethod
-‐>
“SendACHTransBatch”
[Link][15].Status
-‐>
“REJECTED”
[Link][15].FileName
-‐>
“TST9505-‐[Link]”
2.4.2
GetErrorFile
This
method
is
used
to
retrieve
past
errors
in
connections.
The
output
is
stored
in
ErrorFile
described
in
Section
3.9.
A
file
may
consist
of
one
or
more
list
or
array
of
error
records.
Each
error
record
is
formatted
as
an
ErrorRecord
(Section
3.8).
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
14
of
83
Format:
GetErrorFileResult
=
GetErrorFile(InpCompanyInfo,ErrorDateFrom,ErrorDateTo),
where
GetErrorFileResult
is
of
type
ErrorFile
(Section
3.9)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
ErrorDateFrom
and
ErrorDateTo
are
of
type
dateTime
(please
refer
to
sample
codes
for
correct
implementation
of
dateTime
depending
on
the
development
platform)
Example:
Calling
GetErrorFile
may
have
following
values
for
the
GetErrorFileResult
object,
[Link]
-‐>”TST”
[Link]
-‐>”9505”
[Link]
-‐>”SUCCESS”
[Link]-‐>”Retrieved
9
error
records
on
04/16/2010
[Link]
PM
Pacific
Time
….”
[Link]
–>“2010-‐03-‐25T[Link]”
[Link]
–>“2010-‐03-‐29T[Link]”
[Link]
-‐>9
[Link][0].CallMethod
-‐>
“SendACHTrans”
[Link][0].FrontEndTrace
-‐>
“XT-‐23201”
[Link][0].TotalNumErrors
-‐>
2
[Link][0].Errors[0]
-‐>
“Error#1:CustomerRoutingNo
is
a
required
field.”
[Link][0].Errors[1]
-‐>
“Error#2:Unable
to
complete
processing
of
data
due
to
error(s).”
[Link][1].CallMethod
-‐>
“SendACHTransBatch”
[Link][1].FileName
-‐>
“TST9505-‐[Link]”
[Link][1].TotalNumErrors
-‐>
2
[Link][1].Errors[0]
-‐>
“Error#1:
Invalid
CustomerAcctType,
Rec#1.”
[Link][1].Errors[1]
-‐>
“Error#2:Unable
to
complete
processing
of
data
due
to
error(s).”
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
[Link][9].CallMethod
-‐>
“SendACHTransBatch”
[Link][9].FileName
-‐>
“TST9505-‐[Link]”
[Link][9].TotalNumErrors
-‐>
3
[Link][9].Errors[0]
-‐>
“Error#1:
Invalid
CustomerAcctType,
Rec#1.”
[Link][9].Errors[1]
-‐>
“Error#2:
TransAmount
has
invalid
or
zero
value,
Rec#1.”
[Link][9].Errors[2]
-‐>
“Error#3:Unable
to
complete
processing
of
data
due
to
error(s).”
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
15
of
83
2.5.
Viewing
and
Deleting
Batch
Transaction
2.5.1
ViewACHTransBatch
This
method
is
used
to
view
or
read
an
ACH
Batch
File
specified
by
the
ACHFileName.
The
output
is
stored
in
an
ACHFile
described
in
Section
3.3.
A
file
may
consist
of
one
or
more
list
or
array
of
ACHTransRecords.
Each
transaction
record
is
formatted
as
an
ACHTransRecord
(Section
3.2).
To
view
the
Request/Response
description,
go
to
this
link:
[Link]
Format:
ViewACHTransBatchResult
=
ViewACHTransBatch(InpCompanyInfo,
InpACHFileName),
where
ViewACHTransBatchResult
is
of
type
ACHFile
(Section
3.3)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
InpACHFileName
is
of
type
String
2.5.2
DeleteACHTransBatch
This
method
is
used
to
delete
an
ACH
Batch
File
specified
by
the
ACHFileName
(if
it
still
possible
i.e.
file
not
sent
yet
to
ACH
for
processing
or
not
previously
deleted).
Format:
DeleteACHTransBatchResult
=
DeleteACHTransBatch(InpCompanyInfo,
InpACHFileName),
where
DeleteACHTransBatchResult
is
of
type
TransResult
(Section
3.6)
InpCompanyInfo
is
of
type
CompanyInfo
(Section
3.1)
InpACHFileName
is
of
type
String
To
view
the
Request/Response
description
of
this
operation
go
to
this
link:
[Link]
Special
Note:
Only
files
or
transactions
sent
via
the
SendACHTransBatch
and
SendACHTransBatchBIN
methods
can
be
deleted
using
this
method.
Deleting
a
single
transaction
(sent
using
SendACHTrans)
can
be
separately
done
using
the
ACHWorks-‐WEB
online
application,
an
optional
but
useful
feature
for
online
viewing
and
editing
of
transactions.
ACHWorks-‐WEB
requires
a
separate
license.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
16
of
83
3.
Data
Definitions
This
lists
the
data
types
for
input/output
in
using
the
ACHWorks-‐SOAP
web
service.
A
brief
description
is
provided
for
each
method
to
complement
the
service
description
(WSDL
url)
which
can
be
found
on
this
link:
[Link]
.
Please
see
Section
3.10
for
required
field
types
and
lengths.
3.1
CompanyInfo
The
CompanyInfo
serves
as
the
basic
company
credential
for
accessing
the
ACHWorks-‐SOAP
web
service.
This
is
a
required
input
for
each
method
or
operation.
It
consists
of
SSS,
LocID,
Company
and
CompanyKey
which
will
be
described
below.
3.1.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘TST’
is
commonly
used.
3.1.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘9502’
or
‘9505’
is
commonly
used.
3.1.3
Company
Company
is
an
alpha-‐numeric
user
ID
(used
as
username
for
the
service)
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘MY
COMPANY’
or
‘THAT
COMPANY’
is
commonly
used.
3.1.4
CompanyKey
CompanyKey
is
an
alpha-‐numeric
user
KEY
(used
as
password
for
the
service)
furnished
to
registered
merchants.
3.2
ACHTransRecord
The
ACHTransRecord
represents
the
basic
or
single
ACH
record
or
transaction.
It
is
used
as
input
for
sending
an
ACH
transaction
i.e.
using
the
SendACHTrans
method.
It
consists
of
SSS,
LocID,
FrontEndTrace,
OriginatorName,
TransactionCode,
CustTransType,
CustomerID,
CustomerName,
CustomerRoutingNo,
CustomerAcctNo,
TransAmount,
CheckOrCustID,
CheckOrTransDate,
EffectiveDate,
Memo,
OpCode,
and
AccountSet
which
will
be
described
below.
For
details
on
the
field
types
and
format
please
refer
to
Table
3.1.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
17
of
83
3.2.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘TST’
is
commonly
used.
3.2.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘9502’
or
‘9505’
is
commonly
used.
3.2.3
FrontEndTrace
The
FrontEndTrace
is
used
to
track
this
particular
record
or
transaction.
A
unique
value
should
be
used
for
this
field.
This
field
will
always
be
returned
for
referencing
this
record.
Important
Note:
The
FrontEndTrace
number
should
not
start
with
the
character
W
to
ensure
uniqueness
especially
when
using
the
SendACHTrans
method
(Transactions
entered
manually
through
ACHWorks-‐WEB
automatically
be
assigned
a
FrontEndTrace
beginning
with
the
char
“W”).
3.2.4
OriginatorName
The
OriginatorName
is
the
name
of
the
company
sending
the
transaction.
This
is
typically
the
name
of
the
company
that
owns
the
ACH
account
(or
it’s
abbreviation).
This
name
will
appear
on
th
receiver
(customer’s)
bank
statement.
It
is
important
that
the
OriginatorName
or
Abbreviation
is
recognizable
by
the
receiver
to
reduce
the
possibility
of
a
chargeback
for
unauthorized
transaction.
For
RCK
transactions,
this
is
the
original
payee
in
the
Check
i.e.
the
name
written
on
the
‘Pay
to
the
order
of’
line.
3.2.5
TransactionCode
The
TransactionCode
is
the
ACH
transaction
codes
such
as
PPD,
CCD,
TEL,
WEB,
RCK,
POS,
POP
and
ARC.
The
code
indicates
what
type
of
authorization
has
been
obtained
to
approve
the
transaction.
The
most
common
codes
are
PPD
which
is
a
signed
authorization
for
a
Debit
or
Credit
to
a
Personal
bank
account
and
CCD
which
is
a
signed
authorization
do
Debit
or
Credit
a
business
bank
account.
WEB
is
used
for
transactions
authorizations
obtained
from
consumers
through
the
internet
with
an
e-‐signature.
TEL
is
for
consumer
authorizations
obtained
over
the
telephone.
Please
contact
ACHWorks
for
assistance
in
classifying
transactions
codes
to
be
used.
3.2.6
CustTransType
CustTransType
is
the
transaction
type.
It
indicates
if
it
is
a
debit
or
a
credit
to
the
receiver’s
account,
‘D’
for
debit
and
‘C’
for
credit.
3.2.7
CustomerID
CustomerID
is
an
optional
field
for
assigning
a
unique
identifier
for
a
customer.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
18
of
83
3.2.8
CustomerName
CustomerName
is
the
name
of
the
customer.
Preferred
format
is
Lastname,
Firstname
and
all
caps.
The
value
is
trimmed
to
the
maximum
length
allowed
by
the
ACH
which
22
characters.
3.2.9
CustomerRoutingNo
This
is
the
customer’s
9-‐digit
Bank
Routing
Number.
3.2.10
CustomerAcctNo
This
is
the
customer’s
Bank
Account
Number.
3.2.11
CustomerAcctType
This
is
the
customer’s
Bank
Account
Type
either
‘C’
for
checking
account
or
‘S’
for
savings
account.
3.2.12
TransAmount
TransAmount
is
the
amount
of
the
transaction
in
US
dollars,
e.g.
575.45
3.2.13
CheckOrCustID
CheckOrCustID
is
the
check
number.
This
field
may
contain
the
CustomerID
if
no
value
is
provided.
3.2.14
CheckOrTransDate
CheckOrTransDate
is
the
original
date
printed
on
the
Check
or
usually
the
date
of
the
transaction.
3.2.15
EffectiveDate
EffectiveDate
is
the
date
that
you
want
this
transaction
submitted
to
the
ACH
system.
If
date
is
ahead
of
current
date,
the
transaction
will
be
warehoused
in
our
server.
3.2.16
Memo
The
memo
is
the
ten
character
field
which
will
appear
on
the
customer’s
bank
statement.
3.2.17
OpCode
OpCode
is
an
optional
code
which
is
either
‘S’
for
single
entry
(default)
or
‘R’
for
recurring
entry.
This
code
is
required
for
POS
and
WEB
TransactionCodes.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
19
of
83
3.2.18
AccountSet
This
value
is
furnished
for
registered
merchants.
A
merchant
may
have
multiple
Account
Set
numbers
for
each
of
the
merchant’s
bank
accounts
registered
with
ACHWorks,
a
corresponding
Account
Set
number
will
be
defined
in
the
server.
I.E.
Account
set
1
is
your
B
of
A
account,
Account
Set
2
is
your
Wells
Fargo
account,
etc.
3.3
ACHFile
The
ACHFile
represents
the
file
with
elements
or
fields
that
describe
an
ACH
file.
It
contains
the
batch
of
transactions
in
the
form
ACHRecords
(same
as
the
list
or
array
of
ACHTransRecord’s).
It
is
used
as
input
for
sending
batch
of
ACH
transactions
i.e.
using
the
SendACHTransBatch
method.
It
consists
of
SSS,
LocID,
ACHFileName,
TotalNumRecords,
TotalDebitRecords,
TotalCreditRecords,
TotalDebitAmount,
TotalCreditAmount
and
the
ACHRecords
which
will
be
described
below.
3.3.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘TST’
is
commonly
used.
3.3.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘9502’
or
‘9505’
is
commonly
used.
3.3.3
ACHFileName
ACHFileName
is
the
unique
filename
of
the
batch
with
the
following
format:
SSSLLLL-‐YYmmddAA
+
‘.XML’,
where
SSS
is
the
SSS
field
(see
3.3.1
above)
LLL
is
the
LocID
field
(3.3.2
above)
YYmmdd
(string
format
of
the
date
of
sending
the
file)
AA
is
an
alphanumeric
modifier
to
the
name
we
recommend
iterating
it
(AA,
AB,
AC,
A9
...
BA,
BB,
BC,
B9
...
ZZ,
Z9)
etc.
Important
Note:
If
you
want
the
system
to
automatically
create
a
unique
filename
for
you,
leave
the
ACHFileName
blank.
3.3.4
TotalNumRecords
TotalNumRecords
is
the
total
number
of
records
(ACHTransRecord)
in
the
batch
file.
3.3.5
TotalDebitRecords
TotalDebitRecords
is
the
total
number
of
debit
transaction
records
(ACHTransRecord)
in
the
batch
file.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
20
of
83
3.3.6
TotalCreditRecords
TotalCreditRecords
is
the
total
number
of
credit
transaction
records
(ACHTransRecord)
in
the
batch
file.
3.3.7
TotalDebitAmount
TotalDebitAmount
is
the
total
amount
of
debit
transaction
records
(ACHTransRecord)
in
the
batch
file.
3.3.8
TotalCreditAmount
TotalCreditAmount
is
the
total
amount
of
credit
transaction
records
(ACHTransRecord)
in
the
batch
file.
3.3.9
ACHRecords
ACHRecords
is
the
list
or
array
of
ACHTransRecord’s
in
the
batch
file
(ArrayOfACHTransRecord).
See
Section
3.2
above
for
the
data
structure
of
ACHTransRecord.
Again,
the
use
of
this
field
is
best
understood
by
looking
at
the
WSDL
and/or
the
classes
generated
from
WSDL;
and
looking
at
the
sample
codes
given
in
Appendix
A2
of
this
guide.
3.4
ACHReturnRecord
The
ACHReturnRecord
represents
the
basic
or
single
ACH
return
and/or
settlement
record.
It
is
a
unit
record
for
an
ACH
return
or
settlement
e.g.
using
the
GetACHReturns
method.
It
consists
of
SSS,
LocID,
SourceFile,
FrontEndTrace,
ResponseCode,
CustTransType,
BackEndSN,
CustomerName,
TransAmount,
EffectiveDate,
ActionDate
and
ActionDetail
which
will
be
described
below.
For
details
on
the
field
types
and
format
please
refer
to
Table
3.2.
3.4.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘TST’
is
commonly
used.
3.4.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
For
sample
codes
and
for
using
the
test
server,
the
value
‘9502’
or
‘9505’
is
commonly
used.
3.4.3
FrontEndTrace
The
FrontEndTrace
is
tracking
ID
of
this
particular
record
or
transaction
when
it
was
sent
or
submitted
to
the
ACH.
3.4.4
SourceFile
This
is
the
source
file
name
of
the
returns.
This
is
for
internal
use
and
can
be
used
for
tracking
purposes.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
21
of
83
3.4.5
ResponseCode
The
response
codes
values
are
defined
and
described
as
follows:
Value
Description
1SNT:
The
transaction
was
sent
to
the
ACH
system
2STL:
This
transaction
was
settled;
i.e.
as
a
result
of
this
transaction:
either
(a)
money
was
credited
to
you
or
your
customer,
depending
on
transaction
type;
or(
b)
money
was
credited
or
debited
to
you
as
a
result
of
a
return
on
this
transaction;
3RET:
A
return
from
the
ACH
was
received
for
this
transaction.
The
ActionDetail
(Section
3.4.11
below)
contains
the
Return
Code.
4INT:
ACHWorks
determined
that
this
transaction
cannot
be
processed
and
is
returned
to
you.
The
The
ActionDetail
(Section
3.4.11
below)
contains
the
Internal
Return
Code.
5COR:
A
correction
or
notice
of
change
was
received
from
the
ACH.
The
ActionDetail
(Section
3.4.11
below)
contains
the
notice
of
change
or
correction
code.
9BNK:
This
represent
Total
Debit
or
Credit
on
your
account
as
a
result
of
various
settlements
(2STL.
The
9BNK
transaction
should
match
your
bank
statement
exactly
and
can
be
used
to
reconcile
your
bank
statement
with
your
ACH
transactions.
3.4.6
CustTransType
CustTransType
is
the
transaction
type.
The
value
is
either
‘D’
for
debit
customer
account
or
‘C’
for
credit
customer
account.
If
the
ResponseCode
value
is
9BNK,
CustTransType
is
set
to
blank.
3.4.7
CustomerName
CustomerName
is
the
name
of
the
customer.
The
value,
when
transaction
is
first
sent,
is
trimmed
to
the
maximum
length
allowed
by
the
ACH
which
22
characters.
3.4.8
TransAmount
TransAmount
is
the
amount
of
the
transaction
in
US
dollars,
e.g.
575.45
3.4.9
EffectiveDate
EffectiveDate
is
the
date
when
the
transaction
was
first
submitted
to
the
ACH
system.
3.4.10
ActionDate
ActionDate
is
the
date
which
has
a
value
depending
on
the
ResponseCode
(Section
3.4.5).
It
is
very
useful
to
the
user
in
determining
the
order
of
events
when
reviewing
or
investigating
a
transaction.
ResponseCode
ActionDate
1SNT:
Date
transaction
is
sent
to
ACH
2STL:
Date
transaction
was
settled
3RET:
Date
transaction
was
returned
bay
ACH
Receiver
Bank
4INT:
Date
transaction
was
not
processed
and
returned
5COR:
Date
correction
was
received
from
the
ACH
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
22
of
83
9BNK:
Date
money
was
credited
or
debited
to
your
bank
3.4.11
ActionDetail
ActionDetail
contains
a
string
of
32
characters
and
has
a
value
depending
on
the
ResponseCode
(Section
3.4.5):
ResponseCode
ActionDetail
1SNT:
This
field
is
blank
2STL:
Contains
a
settlement
ID
by
which
this
transaction
was
settled,
and
a
debit
or
credit
was
done
into
your
bank
account.
The
format
for
this
is:
“AAAAAAAA
BBBBBB
CC
DD
EEEEE”
,
where
AAAAAAAA
=
8
chars,
is
the
settlement
ID
which
also
appears
on
your
Bank
statement.
You
can
use
this
to
reconcile
with
your
bank
Statement.
BBBBBB
=
6
chars,
either
“DEBIT”
or
“CREDIT”
which
refers
to
DEBIT/
CREDIT
to
your
bank
account
CC
=
2
chars,
your
AccountSet
(see
Section
3.2.18)
by
which
this
transaction
was
settled.
If
this
is
blank,
look
for
the
value
in
EEEEE
DD
=
2
chars,
either
“TS”
or
“RS”.
TS
refers
to
settlement
of
this
Transaction
when
it
clears.
RS
is
when
a
late
return
was
received
on
a
transaction
which
was
previously
settled.
EEEEE
=
your
AccountSet
(see
Section
3.2.18)
by
which
this
transaction
was
settled.
3RET:
Contains
the
Return
Code
from
ACH.
Some
of
the
most
common
Return
Codes
are:
R01
–
Insufficient
Funds
R02
–
Closed
Account
R03
–
No
Account
R04
-‐
Invalid
Account
Number
R09
–
Uncollected
Funds
Please
contact
ACHWorks
for
a
complete
list
of
Return
Codes.
4INT:
Contains
the
Internal
Return
Code
from
ACHWorks.
Some
of
the
most
common
Internal
Return
Codes
are:
X01
–
Insufficient
Funds
X02
–
Closed
Account
X03
–
No
Account
X04
-‐
Invalid
Account
Number
Please
contact
ACHWorks
for
a
complete
list
of
Internal
Return
Codes.
5COR:
Contains
the
correction
code
and
values
from
the
ACH.
Of
the
32
characters
of
the
ActionDetail,
the
first
3
characters
is
the
Correction
Code.
The
remaining
29
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
23
of
83
characters
contains
the
correction
value.
If
the
Correction
Code
is:
C03
(Incorrect
Routing
and
Acct
No),
the
correction
routing
number
is
contained
from
the
4th
to
the
12th
character.
The
correction
account
number
is
contained
from
the
16th
to
32nd
(the
last
character).
C06,
the
correction
account
number
is
contained
from
the
4th
to
the
20th
character.
The
correction
transaction
code
is
contained
from
24th
to
25th
character.
C07,
the
correction
routing
number
is
contained
from
the
4th
to
the
12th
character.
The
correction
account
number
is
contained
from
the
13th
to
the
29th
character.
The
correction
transaction
code
is
contained
from
30th
to
31st
character.
Please
contact
ACHWorks
for
a
complete
list
of
Correction
Codes.
9BNK:
Refer
to
a
settlement
ID
that
would
also
appear
on
your
bank
statement.
This
corresponds
to
a
collection
of
your
transactions
(2STL)
with
the
same
settlement
IDs.
Use
this
to
reconcile
with
your
bank
statement.
3.5
ACHReturns
The
ACHReturns
represents
the
file
with
elements
or
fields
that
describe
an
ACH
return
file.
It
contains
one
or
more
records
of
ACH
returns
as
ACHReturnRecords
(same
as
the
list
or
array
of
ACHReturnRecord’s).
It
serves
as
the
output
in
getting
ACH
returns
i.e.
using
the
GetACHReturns
or
GetACHReturnsHist
method.
It
consists
of
SSS,
LocID,
Status,
Details,
TotalNumRecords,
ReturnDateFrom,
ReturnDateTo,
TotalNumErrors,
Errors,
and
ACHReturnRecords
which
will
be
described
below.
3.5.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
3.5.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
3.5.3
Status
The
Status
describes
the
result
of
calling
the
GetACHReturns
and
GetACHReturnsHist
methods.
3.5.4
Details
This
field
desribe
the
details
of
the
Status
when
calling
the
GetACHReturns
and
GetACHReturnsHist
methods.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
24
of
83
3.5.5
TotalNumRecords
This
is
the
total
number
of
returns
or
ACHReturnRecords.
3.5.6
ReturnDateFrom
The
specified
start
return
date
for
getting
a
set
of
ACHReturnRecords
for
this
LocID.
3.5.7
ReturnDateTo
The
specified
end
return
date
for
getting
a
set
of
ACHReturnRecords
for
this
LocID.
3.5.8
TotalNumErrors
This
is
the
total
number
of
errors
encountered
as
a
result
of
getting
the
ACHReturnRecords.
3.5.9
Errors
List
of
errors
as
an
array
of
String.
3.5.10
ACHReturnRecords
List
of
all
the
ACH
returns
and/or
settlements
as
an
array
of
ACHReturnRecord
(ArrayOfACHReturnRecord).
See
Section
3.4
above
for
the
data
structure
of
ACHReturnRecord.
Again,
this
field
is
best
understood
by
looking
at
the
WSDL
and/or
the
classes
generated
from
WSDL;
and
looking
at
the
sample
codes
given
in
Appendix
A2
of
this
guide.
3.6
TransResult
TransResult
is
the
data
structure
of
the
result
or
response
when
calling
send
methods
or
operations
e.g.
SendACHTrans
or
SendACHTransBatch.
It
consists
of
SSS,
LocID,
Status,
Details,
CallMethod,
FileName,
FrontEndTrace,
TotalNumErrors
and
Errors
which
will
be
described
below.
3.6.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
This
value
is
returned
when
doing
a
‘send’
method
call.
3.6.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
This
value
is
returned
when
doing
a
‘send’
method
call.
3.6.3
Status
This
field
shows
the
connection
status
of
doing
a
‘send’
method
call.
The
value
is
either
a
‘SUCCESS’
or
a
‘REJECT’.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
25
of
83
3.6.4
Details
This
field
describe
in
detail
the
conection
status
in
doing
a
‘send’
method
call.
Example:
‘Rejected
due
to
errors
‘or
‘Transaction
records
received
and
queued
on
04/12/2010
[Link]
PM
Pacific
Time
[ACHFileName=TST9505-‐[Link]].
Server
Processing
Time:15.6245
ms’
3.6.5
CallMethod
This
returns
the
‘send’
method
used
i.e.
SendACHTrans,
SendACHTransBatch
or
SendACHTransBatchBIN.
3.6.6
CallDateTime
This
returns
the
time
stamp
of
the
‘send’
method
call.
3.6.7
FileName
This
field
returns
the
FileName
used
or
generated
for
doing
a
‘send’
method
call.
e.g.
TST9505-‐[Link]
3.6.8
FrontEndTrace
This
field
returns
the
FrontEndTrace
used
for
doing
a
SendACHTrans
method
call.
3.6.9
TotalNumErrors
This
field
returns
the
number
of
errors
encountered
in
a
‘REJECTED’
send
method
call.
This
value
is
zero
if
the
Status
is
a
‘SUCCESS’.
3.6.10
Errors
List
of
all
the
Errors
encountered
in
a
‘REJECTED’
send
method
call.
Example:
Error#1:FrontEndTrace X9000123310456 already used.
Error#2:Unable to complete processing of data due to error(s).
3.7
ResultFile
The
ResultFile
represents
the
file
with
elements
or
fields
that
describe
a
list
of
TransResult
from
specified
data
range.
It
contains
one
or
more
records
of
TransResults
(same
as
the
list
of
TransResult
or
ArrayOfTransResult).
It
serves
as
the
output
in
getting
past
connection
Results
and
Errors
i.e.
using
the
GetResultFile
method.
It
consists
of
SSS,
LocID,
Status,
Details,
TotalResultRecords,
ResultDateFrom,
ResultDateTo,
and
TransResults
which
will
be
described
below.
3.7.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
26
of
83
3.7.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
3.7.3
Status
This
is
the
Status
of
calling
the
GetResultFile
method,
either
a
‘REJECTED’
or
‘SUCCESS’
call.
3.7.4
Details
This
field
describe
in
detail
the
Status
of
calling
the
GetResultFile.
Example:
Retrieved 79 connection records on 04/12/2010 [Link] PM Pacific Time. Server Processing Time:<0.0001 ms
3.7.5
TotalResultRecords
The
total
number
or
result
records
or
array
count
of
TransResults
.
3.7.6
ResultDateFrom
The
specified
start
result
date
for
getting
a
set
of
TransResults
for
this
LocID.
3.7.7
ResultDateTo
The
specified
end
result
date
for
getting
a
set
of
TransResults
for
this
LocID.
3.7.8
TransResults
List
of
all
the
transaction
results
as
an
array
of
TransResult
(ArrayOfTransResult).
See
Section
3.6
above
for
the
data
structure
of
TransResult.
Again,
this
field
is
best
understood
by
looking
at
the
WSDL
and/or
the
classes
generated
from
WSDL;
and
looking
at
the
sample
codes
given
in
Appendix
A2
of
this
guide.
3.8
ErrorRecord
ErrorRecord
is
the
data
structure
of
an
error
when
calling
methods
or
operations
e.g.
SendACHTrans
or
SendACHTransBatch.
It
consists
of
SSS,
LocID,
Status,
Details,
CallMethod,
CallDateTime,
FileName,
FrontEndTrace,
TotalNumErrors
and
Errors
which
will
be
described
below.
3.8.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants.
This
field
shows
the
value
of
SSS
when
the
error
occurred.
3.8.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
This
field
shows
the
value
of
LocID
when
the
error
occurred.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
27
of
83
3.8.3
CallMethod
This
field
shows
the
method
used
when
the
error
occured.
3.8.4
CallDateTime
This
returns
the
time
stamp
of
the
error
when
it
occured.
3.8.5
FileName
The
FileName
used
or
generated
in
the
method
(if
applicable)
when
the
error
occured.
3.8.6
FrontEndTrace
The
FrontEndTrace
used
in
the
method
(if
applicable)
when
the
error
occured.
3.8.7
TotalNumErrors
This
is
the
total
number
of
errors
encountered
as
a
result
of
using
the
‘CallMethod’.
3.8.8
Errors
List
of
all
the
errors
encountered
as
a
result
of
a
‘REJECTED’
CallMethod.
3.9
ErrorFile
The
ErrorFile
represents
the
file
with
elements
or
fields
that
describe
a
list
of
ErrorRecord
from
specified
data
range.
It
contains
one
or
more
records
of
ErrorRecords
(same
as
the
list
of
ErrorRecord
or
ArrayOfErrorRecord).
It
serves
as
the
output
in
getting
past
connection
Errors
i.e.
using
the
GetErrorFile
method.
It
consists
of
SSS,
LocID,
Status,
Details,
TotalErrorRecords,
ErrorDateFrom,
ErrorDateTo,
and
ErrorRecords
which
will
be
described
below.
3.9.1
SSS
SSS
is
a
3-‐letter
code
furnished
to
registered
merchants
3.9.2
LocID
LocID
is
a
4-‐digit
alphanumeric
code
furnished
to
registered
merchants.
3.9.3
Status
This
is
the
Status
of
calling
the
GetErrorFile
method,
either
a
‘REJECTED’
or
‘SUCCESS’
call.
3.9.4
Details
This
field
describe
in
detail
the
Status
of
calling
the
GetErrorFile.
Example:
Retrieved 9 error records on 04/12/2010 [Link] PM Pacific Time. Server Processing Time:<0.0001 ms
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
28
of
83
3.9.5
TotalErrorRecords
The
total
number
or
error
records
or
array
count
of
ErrorRecords
.
3.9.6
ErrorDateFrom
The
specified
start
error
date
for
getting
a
set
of
ErrorRecords
for
this
LocID.
3.9.7
ErrorDateTo
The
specified
end
error
date
for
getting
a
set
of
ErrorRecords
for
this
LocID.
3.9.8
ErrorRecords
List
of
all
the
errors
as
an
array
of
ErrorRecord
(ArrayOfErrorRecord).
See
Section
3.8
above
for
the
data
structure
of
ErrorRecord.
Again,
this
field
is
best
understood
by
looking
at
the
WSDL
and/or
the
classes
generated
from
WSDL;
and
looking
at
the
sample
codes
given
in
Appendix
A2
of
this
guide.
3.10
Field
Types
and
Length
Listed
in
the
table
below
are
the
fields
with
the
required
types
and
lengths
for
data
entry/output.
The
web
service
allows
entry
of
some
of
the
string
types
e.g.
OriginatorName
or
CustomerName
to
exceed
the
required
length
but
the
value
is
trimmed
to
the
required
length
during
processing
and
final
storage.
Table
3.1
Fields
with
required
types
and
lengths.
Field
Type
Length
Remarks
SSS
String
3
Use
the
value
assigned
by
ACHWorks
LocID
String
4
Use
the
value
assigned
by
ACHWorks
FrontEndTrace
String
1-‐12
First
character
should
not
be
‘W’
OriginatorName
String
1-‐16
Originator
Name
(Individual
or
Company)
TransactionCode
String
3
Value
is
either
PPD,
CCD,
TEL,
WEB,
RCK,
POS,
etc.
CustTransType
String
1
Put
‘D’
for
Debit,
‘C’
for
Credit
CustomerID
String
1-‐12
Optional
field
for
ACHWorks-‐WEB
CustomerName
String
1-‐22
Format:
Lastname,
Firstname
or
Companyname
CustomerRoutingNo
String
9
Bank
Routing
No
CustomerAcctNo
String
4-‐17
Include
prefix
and
suffix
0’s,
include
hyphens
CustomerAcctType
String
1
Put
‘C’
for
Checking,
‘S’
for
Savings
TransAmount
Double
-‐
Amount
in
dollars,
e.g.
100.75,
MAX
=
999999.99
CheckOrCustID
String
1-‐15
Check
number
or
Customer
ID
CheckOrTransDate
ns:dateTime
-‐
Value
should
be
<=
EffectiveDate
EffectiveDate
ns:dateTime
-‐
Value
should
be
>=
CheckOrTransDate
Memo
String
1-‐10
This
appears
on
customer’s
bank
statement
OpCode
String
1
Put
‘R’
if
recurring,
Default
value
is
‘S’
AccountSet
String
1-‐3
Use
the
value(s)
assigned
by
ACHWorks
ACHFileName
String
20
Format:
SSSLLLL-‐[Link]
(see
Section
3.3.3)
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
29
of
83
4.
Contact
Information
For
more
information
and/or
questions
please
email
ACHWorks
support:
support@[Link]
or
call
us
at
+1
916
638
8811.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
30
of
83
APPENDICES
A1.
Service
Description
Test
WSDL
URL:
[Link]
(A
Live
WSDL
URL
will
be
provided
to
registered
merchants)
<?xml
version="1.0"
encoding="utf-‐8"
?>
-‐
<wsdl:definitions
xmlns:soap="[Link]
xmlns:tm="[Link]
xmlns:soapenc="[Link]
xmlns:mime="[Link]
xmlns:tns="[Link]
xmlns:s="[Link]
xmlns:soap12="[Link]
xmlns:http="[Link]
targetNamespace="[Link]
xmlns:wsdl="[Link]
<wsdl:documentation
xmlns:wsdl="[Link]
is
a
web
service
(web
API)
by
<a
href="[Link]
that
provides
a
complete
solution
for
Automated
Clearing
House
(ACH)
operations:
Sending
transactions
and
getting
status
of
returns
and
settlements.
Please
click
<a
href="[Link]
to
contact
us
for
more
information.
Last
updated
on:
03/25/2010.
Beta
Version.</wsdl:documentation>
-‐
<wsdl:types>
-‐
<s:schema
elementFormDefault="qualified"
targetNamespace="[Link]
-‐
<s:element
name="ConnectionCheck">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="CompanyInfo">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Company"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CompanyKey"
type="s:string"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="ConnectionCheckResponse">
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
31
of
83
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="ConnectionCheckResult"
type="s:string"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="SendACHTrans">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpACHTransRecord"
type="tns:ACHTransRecord"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="ACHTransRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FrontEndTrace"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="OriginatorName"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="TransactionCode"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustTransType"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerName"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerRoutingNo"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerAcctNo"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerAcctType"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TransAmount"
type="s:double"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CheckOrCustID"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="CheckOrTransDate"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="EffectiveDate"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Memo"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="OpCode"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="AccountSet"
type="s:string"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="SendACHTransResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SendACHTransResult"
type="tns:TransResult"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="TransResult">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
32
of
83
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Status"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Details"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CallMethod"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="CallDateTime"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FileName"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FrontEndTrace"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalNumErrors"
type="s:int"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Errors"
type="tns:ArrayOfString"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ArrayOfString">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="unbounded"
name="string"
nillable="true"
type="s:string"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="SendACHTransBatch">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpACHFile"
type="tns:ACHFile"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="ACHFile">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ACHFileName"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalNumRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalDebitRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalDebitAmount"
type="s:double"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalCreditRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalCreditAmount"
type="s:double"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ACHRecords"
type="tns:ArrayOfACHTransRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ArrayOfACHTransRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="unbounded"
name="ACHTransRecord"
nillable="true"
type="tns:ACHTransRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="SendACHTransBatchResponse">
-‐
<s:complexType>
-‐
<s:sequence>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
33
of
83
<s:element
minOccurs="0"
maxOccurs="1"
name="SendACHTransBatchResult"
type="tns:TransResult"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="SendACHTransBatchBin">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpBinFile"
type="s:base64Binary"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="SendACHTransBatchBinResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SendACHTransBatchBinResult"
type="tns:TransResult"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="SendIATACHTransBatch">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpACHFile"
type="tns:IATACHFile"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="IATACHFile">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ACHFileName"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalNumRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalDebitRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalDebitAmount"
type="s:double"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalCreditRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalCreditAmount"
type="s:double"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="IATOptions"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="IATACHRecords"
type="tns:ArrayOfIATACHTransRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ArrayOfIATACHTransRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="unbounded"
name="IATACHTransRecord"
nillable="true"
type="tns:IATACHTransRecord"
/>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
34
of
83
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="IATACHTransRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FrontEndTrace"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="OriginatorName"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="TransactionCode"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustTransType"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerName"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerRoutingNo"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerAcctNo"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerAcctType"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerAddress"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerBank"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerBankAddress"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerBenef"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerBenefAddress"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TransAmount"
type="s:double"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CheckOrCustID"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="CheckOrTransDate"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="EffectiveDate"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Memo"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="OpCode"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="AccountSet"
type="s:string"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="SendIATACHTransBatchResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SendIATACHTransBatchResult"
type="tns:TransResult"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetACHReturns">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetACHReturnsResponse">
-‐
<s:complexType>
-‐
<s:sequence>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
35
of
83
<s:element
minOccurs="0"
maxOccurs="1"
name="GetACHReturnsResult"
type="tns:ACHReturns"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="ACHReturns">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Status"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Details"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalNumRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ReturnDateFrom"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ReturnDateTo"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalNumErrors"
type="s:int"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Errors"
type="tns:ArrayOfString"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ACHReturnRecords"
type="tns:ArrayOfACHReturnRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ArrayOfACHReturnRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="unbounded"
name="ACHReturnRecord"
nillable="true"
type="tns:ACHReturnRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ACHReturnRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="SourceFile"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FrontEndTrace"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ResponseCode"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustTransType"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="BackEndSN"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CustomerName"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TransAmount"
nillable="true"
type="s:double"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="EffectiveDate"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ActionDate"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ActionDetail"
type="s:string"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="GetACHReturnsHist">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ReturnDateFrom"
type="s:dateTime"
/>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
36
of
83
<s:element
minOccurs="1"
maxOccurs="1"
name="ReturnDateTo"
type="s:dateTime"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetACHReturnsHistResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="GetACHReturnsHistResult"
type="tns:ACHReturns"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetACHReturnsBin">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="InpReturnFormat"
type="tns:ReturnsFormat"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:simpleType
name="ReturnsFormat">
-‐
<s:restriction
base="s:string">
<s:enumeration
value="ByRecord"
/>
<s:enumeration
value="ByFile"
/>
</s:restriction>
</s:simpleType>
-‐
<s:element
name="GetACHReturnsBinResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="GetACHReturnsBinResult"
type="s:base64Binary"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetACHReturnsHistBin">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ReturnDateFrom"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ReturnDateTo"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="InpReturnFormat"
type="tns:ReturnsFormat"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetACHReturnsHistBinResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="GetACHReturnsHistBinResult"
type="s:base64Binary"
/>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
37
of
83
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetResultFile">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ResultDateFrom"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ResultDateTo"
type="s:dateTime"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:element
name="GetResultFileResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="GetResultFileResult"
type="tns:ResultFile"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="ResultFile">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Status"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Details"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalResultRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ResultDateFrom"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ResultDateTo"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="TransResults"
type="tns:ArrayOfTransResult"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ArrayOfTransResult">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="unbounded"
name="TransResult"
nillable="true"
type="tns:TransResult"
/>
</s:sequence>
</s:complexType>
-‐
<s:element
name="GetErrorFile">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="InpCompanyInfo"
type="tns:CompanyInfo"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ErrorDateFrom"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ErrorDateTo"
type="s:dateTime"
/>
</s:sequence>
</s:complexType>
</s:element>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
38
of
83
-‐
<s:element
name="GetErrorFileResponse">
-‐
<s:complexType>
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="GetErrorFileResult"
type="tns:ErrorFile"
/>
</s:sequence>
</s:complexType>
</s:element>
-‐
<s:complexType
name="ErrorFile">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Status"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Details"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalErrorRecords"
type="s:int"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ErrorDateFrom"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="ErrorDateTo"
nillable="true"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="ErrorRecords"
type="tns:ArrayOfErrorRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ArrayOfErrorRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="unbounded"
name="ErrorRecord"
nillable="true"
type="tns:ErrorRecord"
/>
</s:sequence>
</s:complexType>
-‐
<s:complexType
name="ErrorRecord">
-‐
<s:sequence>
<s:element
minOccurs="0"
maxOccurs="1"
name="SSS"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="LocID"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="CallMethod"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="CallDateTime"
type="s:dateTime"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FileName"
type="s:string"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="FrontEndTrace"
type="s:string"
/>
<s:element
minOccurs="1"
maxOccurs="1"
name="TotalNumErrors"
type="s:int"
/>
<s:element
minOccurs="0"
maxOccurs="1"
name="Errors"
type="tns:ArrayOfString"
/>
</s:sequence>
</s:complexType>
</s:schema>
</wsdl:types>
-‐
<wsdl:message
name="ConnectionCheckSoapIn">
<wsdl:part
name="parameters"
element="tns:ConnectionCheck"
/>
</wsdl:message>
-‐
<wsdl:message
name="ConnectionCheckSoapOut">
<wsdl:part
name="parameters"
element="tns:ConnectionCheckResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendACHTransSoapIn">
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
39
of
83
<wsdl:part
name="parameters"
element="tns:SendACHTrans"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendACHTransSoapOut">
<wsdl:part
name="parameters"
element="tns:SendACHTransResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendACHTransBatchSoapIn">
<wsdl:part
name="parameters"
element="tns:SendACHTransBatch"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendACHTransBatchSoapOut">
<wsdl:part
name="parameters"
element="tns:SendACHTransBatchResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendACHTransBatchBinSoapIn">
<wsdl:part
name="parameters"
element="tns:SendACHTransBatchBin"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendACHTransBatchBinSoapOut">
<wsdl:part
name="parameters"
element="tns:SendACHTransBatchBinResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendIATACHTransBatchSoapIn">
<wsdl:part
name="parameters"
element="tns:SendIATACHTransBatch"
/>
</wsdl:message>
-‐
<wsdl:message
name="SendIATACHTransBatchSoapOut">
<wsdl:part
name="parameters"
element="tns:SendIATACHTransBatchResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsSoapIn">
<wsdl:part
name="parameters"
element="tns:GetACHReturns"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsSoapOut">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsHistSoapIn">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsHist"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsHistSoapOut">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsHistResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsBinSoapIn">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsBin"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsBinSoapOut">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsBinResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsHistBinSoapIn">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsHistBin"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetACHReturnsHistBinSoapOut">
<wsdl:part
name="parameters"
element="tns:GetACHReturnsHistBinResponse"
/>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
40
of
83
</wsdl:message>
-‐
<wsdl:message
name="GetResultFileSoapIn">
<wsdl:part
name="parameters"
element="tns:GetResultFile"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetResultFileSoapOut">
<wsdl:part
name="parameters"
element="tns:GetResultFileResponse"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetErrorFileSoapIn">
<wsdl:part
name="parameters"
element="tns:GetErrorFile"
/>
</wsdl:message>
-‐
<wsdl:message
name="GetErrorFileSoapOut">
<wsdl:part
name="parameters"
element="tns:GetErrorFileResponse"
/>
</wsdl:message>
-‐
<wsdl:portType
name="ACHWorksWSSoap">
-‐
<wsdl:operation
name="ConnectionCheck">
<wsdl:documentation
xmlns:wsdl="[Link]
validity
of
user/company
information</wsdl:documentation>
<wsdl:input
message="tns:ConnectionCheckSoapIn"
/>
<wsdl:output
message="tns:ConnectionCheckSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTrans">
<wsdl:documentation
xmlns:wsdl="[Link]
single
ACH
transaction
record</wsdl:documentation>
<wsdl:input
message="tns:SendACHTransSoapIn"
/>
<wsdl:output
message="tns:SendACHTransSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTransBatch">
<wsdl:documentation
xmlns:wsdl="[Link]
multiple
ACH
transaction
records</wsdl:documentation>
<wsdl:input
message="tns:SendACHTransBatchSoapIn"
/>
<wsdl:output
message="tns:SendACHTransBatchSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTransBatchBin">
<wsdl:documentation
xmlns:wsdl="[Link]
multiple
ACH
transaction
records
in
a
binary
file</wsdl:documentation>
<wsdl:input
message="tns:SendACHTransBatchBinSoapIn"
/>
<wsdl:output
message="tns:SendACHTransBatchBinSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="SendIATACHTransBatch">
<wsdl:documentation
xmlns:wsdl="[Link]
multiple
IAT
ACH
transaction
records</wsdl:documentation>
<wsdl:input
message="tns:SendIATACHTransBatchSoapIn"
/>
<wsdl:output
message="tns:SendIATACHTransBatchSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturns">
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
41
of
83
<wsdl:documentation
xmlns:wsdl="[Link]
returns
and
deletes
from
server</wsdl:documentation>
<wsdl:input
message="tns:GetACHReturnsSoapIn"
/>
<wsdl:output
message="tns:GetACHReturnsSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsHist">
<wsdl:documentation
xmlns:wsdl="[Link]
returns
from
given
date
range</wsdl:documentation>
<wsdl:input
message="tns:GetACHReturnsHistSoapIn"
/>
<wsdl:output
message="tns:GetACHReturnsHistSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsBin">
<wsdl:documentation
xmlns:wsdl="[Link]
binary
return
files
and
deletes
from
server</wsdl:documentation>
<wsdl:input
message="tns:GetACHReturnsBinSoapIn"
/>
<wsdl:output
message="tns:GetACHReturnsBinSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsHistBin">
<wsdl:documentation
xmlns:wsdl="[Link]
binary
return
files
from
given
date
range</wsdl:documentation>
<wsdl:input
message="tns:GetACHReturnsHistBinSoapIn"
/>
<wsdl:output
message="tns:GetACHReturnsHistBinSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="GetResultFile">
<wsdl:documentation
xmlns:wsdl="[Link]
result
records
at
specified
date
range</wsdl:documentation>
<wsdl:input
message="tns:GetResultFileSoapIn"
/>
<wsdl:output
message="tns:GetResultFileSoapOut"
/>
</wsdl:operation>
-‐
<wsdl:operation
name="GetErrorFile">
<wsdl:documentation
xmlns:wsdl="[Link]
error
records
at
specified
date
range</wsdl:documentation>
<wsdl:input
message="tns:GetErrorFileSoapIn"
/>
<wsdl:output
message="tns:GetErrorFileSoapOut"
/>
</wsdl:operation>
</wsdl:portType>
-‐
<wsdl:binding
name="ACHWorksWSSoap"
type="tns:ACHWorksWSSoap">
<soap:binding
transport="[Link]
/>
-‐
<wsdl:operation
name="ConnectionCheck">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
42
of
83
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTrans">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTransBatch">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTransBatchBin">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendIATACHTransBatch">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturns">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
43
of
83
-‐
<wsdl:operation
name="GetACHReturnsHist">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsBin">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsHistBin">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetResultFile">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetErrorFile">
<soap:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
44
of
83
-‐
<wsdl:binding
name="ACHWorksWSSoap12"
type="tns:ACHWorksWSSoap">
<soap12:binding
transport="[Link]
/>
-‐
<wsdl:operation
name="ConnectionCheck">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTrans">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTransBatch">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendACHTransBatchBin">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="SendIATACHTransBatch">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
45
of
83
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturns">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsHist">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsBin">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetACHReturnsHistBin">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
-‐
<wsdl:operation
name="GetResultFile">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
46
of
83
-‐
<wsdl:operation
name="GetErrorFile">
<soap12:operation
soapAction="[Link]
style="document"
/>
-‐
<wsdl:input>
<soap12:body
use="literal"
/>
</wsdl:input>
-‐
<wsdl:output>
<soap12:body
use="literal"
/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
-‐
<wsdl:service
name="ACHWorksWS">
<wsdl:documentation
xmlns:wsdl="[Link]
is
a
web
service
(web
API)
by
<a
href="[Link]
that
provides
a
complete
solution
for
Automated
Clearing
House
(ACH)
operations:
Sending
transactions
and
getting
status
of
returns
and
settlements.
Please
click
<a
href="[Link]
to
contact
us
for
more
information.
Last
updated
on:
03/25/2010.
Beta
Version.</wsdl:documentation>
-‐
<wsdl:port
name="ACHWorksWSSoap"
binding="tns:ACHWorksWSSoap">
<soap:address
location="[Link]
/>
</wsdl:port>
-‐
<wsdl:port
name="ACHWorksWSSoap12"
binding="tns:ACHWorksWSSoap12">
<soap12:address
location="[Link]
/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>.
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
47
of
83
A2.
Sample
Client
Codes
The
sample
codes
below
are
written
for
the
most
popular
and
recent
development
platforms
namely
PHP,
C#,
Visual
Basic
([Link]),
[Link]
and
JAVA.
Brief
descriptions
are
provided
to
provide
ease
in
understanding
the
required
input
and
output
and
their
formats.
Please
contact
us
if
you
want
a
digital
copy
of
the
sample
codes.
See
Section
4
for
contact
information.
A2.1
PHP
(Version
5)
[Link]
<?php
//ACHWORKS-‐SOAP
Ver4.0
ConnectionCheck
(Connection
Check)
//company
info
class
CompanyInfo
{
public
$SSS;
public
$LocID;
public
$Company;
public
$CompanyKey;
}
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
$myclient
=
new
SoapClient("[Link]
//Important:
use
InpCompanyInfo
in
the
soap
stru
not
CompanyInfo
$myresult
=
$myclient-‐>ConnectionCheck(array("InpCompanyInfo"=>$mycompanyinfo));
print($myresult-‐>ConnectionCheckResult);
?>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
48
of
83
[Link]
<?php
//ACHWORKS-‐SOAP
Ver3.0
SendACHTrans
(Sends
a
single
record)
//3.25.2010
-‐
rico
pamplona,
rpamplonaATachworksDOTcom
//company
info
class
CompanyInfo
{
public
$SSS;
public
$LocID;
public
$Company;
public
$CompanyKey;
}
class
ACHTransRecord
{
public
$SSS;
public
$LocID;
public
$FrontEndTrace;
public
$OriginatorName;
public
$TransactionCode;
public
$CustTransType;
public
$CustomerID;
public
$CustomerName;
public
$CustomerRoutingNo;
public
$CustomerAcctNo;
public
$CustomerAcctType;
public
$TransAmount;
public
$CheckOrCustID;
public
$CheckOrTransDate;
public
$EffectiveDate;
public
$Memo;
public
$OpCode;
public
$AccountSet;
}
//CompanyInfo
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
//ACHTransRecord
$myachtransrecord
=
new
ACHTransRecord;
$myachtransrecord
-‐>
SSS
=
"TST";
//ACHWorks
assigned
$myachtransrecord
-‐>
LocID
=
"9505";
//ACHWorks
assigned
$myachtransrecord
-‐>
FrontEndTrace
=
"W9000123310454";
//impt!!!Needs
a
unique
value
each
record
per
LocID
$myachtransrecord
-‐>
OriginatorName
=
"MYCOMPANY";
$myachtransrecord
-‐>
TransactionCode
=
"PPD";
//PPD,
CCD,
WEB,
TEL,
RCK,
etc.
$myachtransrecord
-‐>
CustTransType
=
"D";
//D
for
debit,
C
for
credit
$myachtransrecord
-‐>
CustomerID
=
"CustID12235";
$myachtransrecord
-‐>
CustomerName
=
"DOE,
JOHNNY";
$myachtransrecord
-‐>
CustomerRoutingNo
="987654320";
$myachtransrecord
-‐>
CustomerAcctNo
=
"0000388836291";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
49
of
83
$myachtransrecord
-‐>
CustomerAcctType
=
"C";
//C
for
checking,
S
for
Savings
$myachtransrecord
-‐>
TransAmount
=
100.75;
$myachtransrecord
-‐>
CheckOrCustID
=
"9166388811";
$myachtransrecord
-‐>
CheckOrTransDate
=
'2010-‐03-‐24';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord
-‐>
EffectiveDate
=
'2010-‐03-‐24';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord
-‐>
Memo
=
"Payment";
$myachtransrecord
-‐>
OpCode
=
"S";
//S
for
Single,
R
for
recurring
$myachtransrecord
-‐>
AccountSet
=
"1";
//ACHWorks
assigned
//SOAP
call
-‐
test
server
$myclient
=
new
SoapClient("[Link]
$myresult
=
$myclient-‐>SendACHTrans(array("InpCompanyInfo"=>$mycompanyinfo,"InpACHTransRecord"=>$myachtransrecord))-‐
>SendACHTransResult;
//print
status
and
details
print($myresult-‐>Status
.
",
"
.
$myresult-‐>Details
.
"<br>");
//print
errors
if
there
is
any
foreach
($myresult-‐>Errors-‐>string
as
$myerror)
{
print($myerror
.
"<br>");
}
?>
[Link]
<?php
//ACHWORKS-‐SOAP
Ver3.0
SendACHTransBatch
(Sends
multiple
records)
//3.25.2010
-‐
rico
pamplona,
rpamplonaATachworksDOTcom
//company
info
class
CompanyInfo
{
public
$SSS;
public
$LocID;
public
$Company;
public
$CompanyKey;
}
class
ACHTransRecord
{
public
$SSS;
public
$LocID;
public
$FrontEndTrace;
public
$OriginatorName;
public
$TransactionCode;
public
$CustTransType;
public
$CustomerID;
public
$CustomerName;
public
$CustomerRoutingNo;
public
$CustomerAcctNo;
public
$CustomerAcctType;
public
$TransAmount;
public
$CheckOrCustID;
public
$CheckOrTransDate;
public
$EffectiveDate;
public
$Memo;
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
50
of
83
public
$OpCode;
public
$AccountSet;
}
class
ACHFile
{
public
$SSS;
public
$LocID;
public
$ACHFileName;
public
$TotalNumRecords;
public
$TotalDebitRecords;
public
$TotalDebitAmount;
public
$TotalCreditRecords;
public
$TotalCreditAmount;
public
$ACHRecords;
}
//CompanyInfo
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
//sample
ACHTransRecord
1,2
&
3
(2
debits
and
1
credit)
//1
$myachtransrecord1
=
new
ACHTransRecord;
$myachtransrecord1
-‐>
SSS
=
"TST";
//ACHWorks
assigned
$myachtransrecord1
-‐>
LocID
=
"9505";
//ACHWorks
assigned
$myachtransrecord1
-‐>
FrontEndTrace
=
"W3000123456";
//impt!!!Needs
a
unique
value
each
record
per
LocID
$myachtransrecord1
-‐>
OriginatorName
=
"MYCOMPANY";
$myachtransrecord1
-‐>
TransactionCode
=
"PPD";
//PPD,
CCD,
WEB,
TEL,
RCK,
etc.
$myachtransrecord1
-‐>
CustTransType
=
"D";
//D
for
debit,
C
for
credit
$myachtransrecord1
-‐>
CustomerID
=
"CustID12235";
$myachtransrecord1
-‐>
CustomerName
=
"DOE,
JOHNNY";
$myachtransrecord1
-‐>
CustomerRoutingNo
=
"987654320";
$myachtransrecord1
-‐>
CustomerAcctNo
=
"04038883674";
$myachtransrecord1
-‐>
CustomerAcctType
=
"C";
//C
forchecking,
S
for
Savings
$myachtransrecord1
-‐>
TransAmount
=
100.25;
$myachtransrecord1
-‐>
CheckOrCustID
=
"9166388811";
$myachtransrecord1
-‐>
CheckOrTransDate
=
'2010-‐03-‐16';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord1
-‐>
EffectiveDate
=
'2010-‐03-‐16';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord1
-‐>
Memo
=
"Payment";
$myachtransrecord1
-‐>
OpCode
=
"S";
//S
for
Single,
R
for
Recurring
$myachtransrecord1
-‐>
AccountSet
=
"1";
//ACHWorks
assigned
//2
$myachtransrecord2
=
new
ACHTransRecord;
$myachtransrecord2
-‐>
SSS
=
"TST";
//ACHWorks
assigned
$myachtransrecord2
-‐>
LocID
=
"9505";
//ACHWorks
assigned
$myachtransrecord2
-‐>
FrontEndTrace
=
"W3000123457";
//impt!!!Needs
a
unique
value
each
record
per
LocID
$myachtransrecord2
-‐>
OriginatorName
=
"MYCOMPANY";
$myachtransrecord2
-‐>
TransactionCode
=
"PPD";
//PPD,
CCD,
WEB,
TEL,
RCK,
etc.
$myachtransrecord2
-‐>
CustTransType
=
"D";
//D
for
debit,
C
for
credit
$myachtransrecord2
-‐>
CustomerID
=
"CustID12235";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
51
of
83
$myachtransrecord2
-‐>
CustomerName
=
"DOE,
JANET";
$myachtransrecord2
-‐>
CustomerRoutingNo
=
"987654320";
$myachtransrecord2
-‐>
CustomerAcctNo
=
"0000388836291";
$myachtransrecord2
-‐>
CustomerAcctType
=
"C";
//C
forchecking,
S
for
Savings
$myachtransrecord2
-‐>
TransAmount
=
500.25;
$myachtransrecord2
-‐>
CheckOrCustID
=
"9166388811";
$myachtransrecord2
-‐>
CheckOrTransDate
=
'2010-‐03-‐16';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord2
-‐>
EffectiveDate
=
'2010-‐03-‐16';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord2
-‐>
Memo
=
"Payment";
$myachtransrecord2
-‐>
OpCode
=
"S";
//S
for
Single,
R
for
Recurring
$myachtransrecord2
-‐>
AccountSet
=
"1";
//ACHWorks
assigned
//3
$myachtransrecord3
=
new
ACHTransRecord;
$myachtransrecord3
-‐>
SSS
=
"TST";
//ACHWorks
assigned
$myachtransrecord3
-‐>
LocID
=
"9505";
//ACHWorks
assigned
$myachtransrecord3
-‐>
FrontEndTrace
=
"W1000123451";
//impt!!!Needs
a
unique
value
each
record
per
LocID
$myachtransrecord3
-‐>
OriginatorName
=
"MYCOMPANY";
$myachtransrecord3
-‐>
TransactionCode
=
"PPD";
//PPD,
CCD,
WEB,
TEL,
RCK,
etc.
$myachtransrecord3
-‐>
CustTransType
=
"C";
//D
for
debit,
C
for
credit
$myachtransrecord3
-‐>
CustomerID
=
"CustID12235";
$myachtransrecord3
-‐>
CustomerName
=
"SMITH,
JOE";
$myachtransrecord3
-‐>
CustomerRoutingNo
=
"987654320";
$myachtransrecord3
-‐>
CustomerAcctNo
=
"5500038883005";
$myachtransrecord3
-‐>
CustomerAcctType
=
"C";
//C
forchecking,
S
for
Savings
$myachtransrecord3
-‐>
TransAmount
=
350.25;
$myachtransrecord3
-‐>
CheckOrCustID
=
"9166388811";
$myachtransrecord3
-‐>
CheckOrTransDate
=
'2010-‐03-‐16';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord3
-‐>
EffectiveDate
=
'2010-‐03-‐16';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myachtransrecord3
-‐>
Memo
=
"Payment";
$myachtransrecord3
-‐>
OpCode
=
"S";
//S
for
Single,
R
for
Recurring
$myachtransrecord3
-‐>
AccountSet
=
"1";
//ACHWorks
assigned
//ACHFile
$myachfile
=
new
ACHFile;
$myachfile
-‐>
SSS
=
"TST";
$myachfile
-‐>
LocID
=
"9505";
$myachfile
-‐>
ACHFileName
=
"";
//leave
blank
to
automatically
name
the
file
$myachfile
-‐>
TotalNumRecords
=
3;
$myachfile
-‐>
TotalDebitRecords
=
2;
$myachfile
-‐>
TotalDebitAmount
=
600.50;
$myachfile
-‐>
TotalCreditRecords
=
1;
$myachfile
-‐>
TotalCreditAmount
=
350.25;
//$myachfile
-‐>
ACHRecords
=
array($myachtransrecord1,$myachtransrecord2,$myachtransrecord3);
//OR
$myachfile
-‐>
ACHRecords[]
=
$myachtransrecord1;
$myachfile
-‐>
ACHRecords[]
=
$myachtransrecord2;
$myachfile
-‐>
ACHRecords[]
=
$myachtransrecord3;
//SOAP
Call
-‐
test
server
$myclient
=
new
SoapClient("[Link]
$myresult
=
$myclient-‐>SendACHTransBatch(array("InpCompanyInfo"=>$mycompanyinfo,"InpACHFile"=>$myachfile))-‐
>SendACHTransBatchResult;
//print
status
and
details
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
52
of
83
print($myresult-‐>Status
.
",
"
.
$myresult-‐>Details
.
"<br>");
//print
errors
if
there
is
any
foreach
($myresult-‐>Errors-‐>string
as
$myerror)
{
print($myerror
.
"<br>");
}
?>
[Link]
<?php
//ACHWORKS-‐SOAP
Ver3.0
GetACHReturns
(gets
unretrieved
ach
return
and
settlement
records)
//3.25.2010
-‐
rico
pamplona,
rpamplonaATachworksDOTcom
//company
info
class
CompanyInfo
{
public
$SSS;
public
$LocID;
public
$Company;
public
$CompanyKey;
}
//CompanyInfo
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
//SOAP
call
-‐
test
server
$myclient
=
new
SoapClient("[Link]
$myresult
=
$myclient-‐>GetACHReturns(array("InpCompanyInfo"=>$mycompanyinfo))-‐>GetACHReturnsResult;
//print
status
and
details
print($myresult-‐>Status
.
",
"
.
$myresult-‐>Details
.
"<br>");
//print
ACHReturnRecords
if
there
is
any
foreach
($myresult-‐>ACHReturnRecords-‐>ACHReturnRecord
as
$myACHReturnRecord)
{
print("FrontEndTrace:"
.
$myACHReturnRecord-‐>FrontEndTrace
.
",
EffectiveDate:"
.
$myACHReturnRecord-‐>EffectiveDate
.
",
Name:"
.
$myACHReturnRecord-‐>CustomerName
.
",
Amount:"
.
$myACHReturnRecord-‐>TransAmount
.
",
ResponseCode:"
.
$myACHReturnRecord-‐>ResponseCode
.
",
ActionDetail:"
.
$myACHReturnRecord-‐>ActionDetail
.
"<br>");
}
?>
[Link]
<?php
//ACHWORKS-‐SOAP
Ver3.0
GetACHReturnsHist
(gets
ach
return
and
settlement
records
at
specified
date
range)
//3.25.2010
-‐
rico
pamplona,
rpamplonaATachworksDOTcom
//company
info
class
CompanyInfo
{
public
$SSS;
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
53
of
83
public
$LocID;
public
$Company;
public
$CompanyKey;
}
//CompanyInfo
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
$myDateFrom
=
'2010-‐01-‐01';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myDateTo
=
'2010-‐03-‐20';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
//SOAP
call
-‐
test
server
$myclient
=
new
SoapClient("[Link]
$myresult
=
$myclient-‐>GetACHReturnsHist(array("InpCompanyInfo"=>$mycompanyinfo,
"ReturnDateFrom"=>$myDateFrom,
"ReturnDateTo"=>$myDateTo))-‐>GetACHReturnsHistResult;
//print
status
and
details
print($myresult-‐>Status
.
",
"
.
$myresult-‐>Details
.
"<br>");
//print
ACHReturnRecords
if
there
is
any
foreach
($myresult-‐>ACHReturnRecords-‐>ACHReturnRecord
as
$myACHReturnRecord)
{
print("FrontEndTrace:"
.
$myACHReturnRecord-‐>FrontEndTrace
.
",
EffectiveDate:"
.
$myACHReturnRecord-‐>EffectiveDate
.
",
Name:"
.
$myACHReturnRecord-‐>CustomerName
.
",
Amount:"
.
$myACHReturnRecord-‐>TransAmount
.
",
ResponseCode:"
.
$myACHReturnRecord-‐>ResponseCode
.
",
ActionDetail:"
.
$myACHReturnRecord-‐>ActionDetail
.
"<br>");
}
?>
[Link]
<?php
//ACHWORKS-‐SOAP
Ver3.0
GetResultFile
(gets
send
transaction
results/responses
including
errors
at
specified
date
range)
//3.25.2010
-‐
rico
pamplona,
rpamplonaATachworksDOTcom
//company
info
class
CompanyInfo
{
public
$SSS;
public
$LocID;
public
$Company;
public
$CompanyKey;
}
//CompanyInfo
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
54
of
83
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
$myDateFrom
=
'2010-‐03-‐25';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myDateTo
=
'2010-‐03-‐26';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
//SOAP
call
-‐
test
server
$myclient
=
new
SoapClient("[Link]
$myresult
=
$myclient-‐>GetResultFile(array("InpCompanyInfo"=>$mycompanyinfo,
"ResultDateFrom"=>$myDateFrom,
"ResultDateTo"=>$myDateTo))-‐>GetResultFileResult;
//print
status
and
details
print($myresult-‐>Status
.
",
"
.
$myresult-‐>Details
.
"<br><br>");
//print
TransResults
if
there
is
any
print("PAST
CONNECTION
AND
TRANSACTION
RESULTS:<br>");
foreach
($myresult-‐>TransResults-‐>TransResult
as
$myTransResult)
{
print("DateTime:"
.
$myTransResult-‐>CallDateTime
.
",
Method:"
.
$myTransResult-‐>CallMethod
.
",
Status:"
.
$myTransResult-‐>Status
.
",
FileName:"
.
$myTransResult-‐>FileName
.
"<br>");
foreach
($myTransResult-‐>Errors-‐>string
as
$myError)
{
print("   
Error=>"
.
$myError
.
"<br>");
}
}
?>
[Link]
<?php
//ACHWORKS-‐SOAP
Ver3.0
GetErrorFile
(gets
send
transaction
errors
(only)
at
specified
date
range)
//3.25.2010
-‐
rico
pamplona,
rpamplonaATachworksDOTcom
//company
info
class
CompanyInfo
{
public
$SSS;
public
$LocID;
public
$Company;
public
$CompanyKey;
}
//CompanyInfo
$mycompanyinfo
=
new
CompanyInfo;
$mycompanyinfo
-‐>
SSS
=
"TST";
$mycompanyinfo
-‐>
LocID
=
"9505";
$mycompanyinfo
-‐>
Company
=
"THAT
COMPANY";
$mycompanyinfo
-‐>
CompanyKey
=
"RICO";
$myDateFrom
=
'2010-‐03-‐25';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
$myDateTo
=
'2010-‐03-‐26';
//include
leading
zero
for
mm
and
dd
e.g.
01
for
Jan
//SOAP
call
-‐
test
server
$myclient
=
new
SoapClient("[Link]
$myresult
=
$myclient-‐>GetErrorFile(array("InpCompanyInfo"=>$mycompanyinfo,
"ErrorDateFrom"=>$myDateFrom,
"ErrorDateTo"=>$myDateTo))-‐>GetErrorFileResult;
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
55
of
83
//print
status
and
details
print($myresult-‐>Status
.
",
"
.
$myresult-‐>Details
.
"<br><br>");
//print
ErrorRecords
if
there
is
any
print("PAST
CONNECTION
AND
TRANSACTION
ERRORS:<br>");
foreach
($myresult-‐>ErrorRecords-‐>ErrorRecord
as
$myErrorRecord)
{
print("DateTime:"
.
$myErrorRecord-‐>CallDateTime
.
",
Method:"
.
$myErrorRecord-‐>CallMethod
.
",
Status:"
.
$myErrorRecord-‐
>Status
.
",
FileName:"
.
$myErrorRecord-‐>FileName
.
",
No
of
Errors:
"
.
$myErrorRecord-‐>TotalNumErrors
.
"<br>");
foreach
($myErrorRecord-‐>Errors-‐>string
as
$myError)
{
print("   
Error=>"
.
$myError
.
"<br>");
}
}
?>
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
56
of
83
A2.2
Visual
Basic
([Link]/[Link])
connectioncheck
Sub
Button1Click(sender
As
Object,
e
As
EventArgs)
'named
nsACHWorksWS
as
the
namespace
when
adding
web
reference
Dim
myACHWS
As
[Link]
Dim
myCompanyInfo
As
[Link]
'instances
myACHWS
=
New
[Link]
myCompanyInfo
=
New
[Link]
'CompanyInfo
[Link]="TST"
[Link]="9505"
[Link]="THAT
COMPANY"
[Link]="RICO"
'call
ConnectionCheck
and
assign
result
to
textBox1
[Link]=[Link](myCompanyInfo)
End
Sub
sendachtrans
Sub
Button2Click(sender
As
Object,
e
As
EventArgs)
'named
nsACHWorksWS
as
the
namespace
when
adding
web
reference
Dim
myACHWS
As
[Link]
Dim
myCompanyInfo
As
[Link]
Dim
myACHTransRecord
As
[Link]
Dim
myACHTransResult
as
[Link]
'minstances
yACHWS
=
New
[Link]
mmyCompanyInfo
=
New
[Link]
yACHTransRecord
=
New
[Link]
myACHTransResult
=
New
[Link]
'mCompanyInfo
[Link]="TST"
[Link]="9505"
[Link]="THAT
COMPANY"
[Link]="RICO"
'mACHTransRecord
[Link]="TST"
'ACHWorks
assigned
[Link]="9505"
'ACHWorks
assigned
[Link]="VVB-‐0003"
'impt!!!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY"
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
57
of
83
[Link]="PPD"
'PPD,CCD,WEB,TEL,RCK,
etc
[Link]="D"
'D
for
debit,
C
for
credit
[Link]="CustID0001"
[Link]="DOE,
JOHN"
'Lastname,
FirstName
-‐
all
caps
[Link]="987654320"
'9-‐digit
Bank
Routing
No
[Link]="034332222"
'Bank
Account
No
[Link]="C"
'C
for
checking,
S
for
savings
[Link]=100.75
[Link]="9166388811"
[Link]="2010-‐03-‐24"
[Link]="2010-‐03-‐24"
[Link]="FirstPay"
[Link]="S"
'S
for
single,
R
for
recurring
[Link]="1"
'ACHWorks
assigned
'mcall
SendACHTrans
method
yACHTransResult=[Link](myCompanyInfo,myACHTransRecord)
'tassign
portion
of
result
to
textBox1
(e.g.
Status
and
Details)
[Link]=[Link]
+
",
"
+
[Link]
'lprint
errors
to
listBox
if
there
is
any
[Link]
I
f
[Link]>0
Then
For
i=0
To
[Link]-‐1
N
ext
i
[Link]([Link](i).ToString)
End
If
End
Sub
sendachtransbatch
Sub
Button3Click(sender
As
Object,
e
As
EventArgs)
Dim
myACHWS
As
[Link]
'named
nsACHWorksWS
as
the
namespace
when
adding
web
reference
Dim
myACHTransRecord1,myACHTransRecord2,myACHTransRecord3
As
[Link]
Dim
myACHFile
As
[Link]
Dim
myACHTransResult
As
[Link]
'minstances
yACHWS
=
New
[Link]
mmyCompanyInfo
=
New
[Link]
yACHTransRecord1
=
New
[Link]
mmyACHTransRecord2
=
New
[Link]
yACHTransRecord3
=
New
[Link]
mmyACHFile
=
new
[Link]
yACHTransResult
=
New
[Link]
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
58
of
83
'mCompanyInfo
[Link]="9505"
[Link]="TST”
[Link]="THAT
COMPANY"
[Link]="RICO"
'mACHFile
[Link]="TST"
[Link]="9505"
[Link]=""
'leave
blank
to
automatically
name
the
file
[Link]=3
[Link]=2
[Link]=600.50
[Link]=1
[Link]=350.25
[Link]
=
new
[Link](2){}
'(2)
is
3-‐1
''assign
records
to
file
ACHTransRecord
(1,
2
&
3)
'm1st
record
[Link]="TST"
'ACHWorks
assigned
[Link]="9505"
'ACHWorks
assigned
[Link]="VVB-‐0003"
'impt!!!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY"
[Link]="PPD"
'PPD,CCD,WEB,TEL,RCK,
etc
[Link]="D"
'D
for
debit,
C
for
credit
[Link]="CustID0001"
[Link]="DOE,
JOHN"
'Lastname,
FirstName
-‐
all
caps
[Link]="987654320"
'9-‐digit
Bank
Routing
No
[Link]="034332222"
'Bank
Account
No
[Link]="C"
'C
for
checking,
S
for
savings
[Link]=100.25
[Link]="9166388811"
[Link]="2010-‐03-‐24"
[Link]="2010-‐03-‐24"
[Link]="FirstPay"
[Link]="S"
'S
for
single,
R
for
recurring
[Link]="1"
'ACHWorks
assigned
[Link](0)=new
[Link]
'instance
[Link](0)=myACHTransRecord1
'instance
'm2nd
record
[Link]="TST"
'ACHWorks
assigned
[Link]="9505"
'ACHWorks
assigned
[Link]="VVB-‐0004"
'impt!!!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY"
[Link]="PPD"
'PPD,CCD,WEB,TEL,RCK,
etc
[Link]="D"
'D
for
debit,
C
for
credit
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
59
of
83
[Link]="CustID0002"
[Link]="DOE,
JANE"
'Lastname,
FirstName
-‐
all
caps
[Link]="987654320"
'9-‐digit
Bank
Routing
No
[Link]="111034332222"
'Bank
Account
No
[Link]="C"
'C
for
checking,
S
for
savings
[Link]=500.25
[Link]="9166388811"
[Link]="2010-‐03-‐24"
[Link]="2010-‐03-‐24"
[Link]="FirstPay"
[Link]="S"
'S
for
single,
R
for
recurring
[Link]="1"
'ACHWorks
assigned
[Link](1)=new
[Link]
'instance
[Link](1)=myACHTransRecord2
'm3rd
record
[Link]="TST"
'ACHWorks
assigned
[Link]="9505"
'ACHWorks
assigned
[Link]="WVB-‐0005"
'impt!!!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY"
[Link]="PPD"
'PPD,CCD,WEB,TEL,RCK,
etc
[Link]="C"
'credit
[Link]="CustID0003"
[Link]="SMITH,
JOE"
'Lastname,
FirstName
-‐
all
caps
[Link]="111034332222"
'Bank
Account
No
[Link]="987654320"
'9-‐digit
Bank
Routing
No
'tassign
portion
of
result
to
textBox1
(e.g.
Status
and
Details)
[Link]=[Link]
+
",
"
+
[Link]
'lprint
errors
to
listBox
if
there
is
any
[Link]
I
f
[Link]>0
Then
For
i=0
To
[Link]-‐1
N
ext
i
[Link]([Link](i).ToString)
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
60
of
83
End
Sub
End
If
getachreturns
Sub
Button4Click(sender
As
Object,
e
As
EventArgs)
Dim
myACHWS
As
[Link]
Dim
myCompanyInfo
As
[Link]
Dim
myACHReturns
As
[Link]
'minstances
yACHWS
=
New
[Link]
mmyCompanyInfo
=
New
[Link]
yACHReturns
=
New
[Link]
'mCompanyInfo
[Link]="TST"
[Link]="9505"
[Link]="THAT
COMPANY"
[Link]="RICO"
'mcall
GetACHReturns
method
yACHReturns
=
[Link](myCompanyInfo)
[Link]=[Link]
+
",
"
+
[Link]
'llist
returns
if
there
are
any
[Link]
I
f
[Link]>0
Then
For
i=0
To
[Link]-‐1
l
[Link]("FrontEndTrace:"
+
[Link](i).FrontEndTrace
+
_
",
Date:"
+
[Link](i).[Link]
+
_
"",
Name:"
+
[Link](i).CustomerName
+
_
,
Amount:"
+
[Link](i).[Link]
+
_
"",
ResponseCode:"
+
[Link](i).ResponseCode
+
_
,
ActionDetail:"
+
[Link](i).ActionDetail)
E
nd
If
Next
i
End
Sub
getachreturnshist
Sub
Button5Click(sender
As
Object,
e
As
EventArgs)
Dim
myACHWS
As
[Link]
Dim
myCompanyInfo
As
[Link]
Dim
myACHReturns
As
[Link]
Dim
myDateFrom,myDateTo
as
Date
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
61
of
83
'minstances
yACHWS
=
New
[Link]
mmyCompanyInfo
=
New
[Link]
yACHReturns
=
New
[Link]
'mCompanyInfo
[Link]="TST"
[Link]="9505"
[Link]="THAT
COMPANY"
[Link]="RICO"
'mdate
myDateTo
=
"2010-‐03-‐20"
yDateFrom
=
"2010-‐01-‐01”
'mcall
GetACHReturnsHist
method
yACHReturns
=
[Link](myCompanyInfo,myDateFrom,myDateTo)
[Link]=[Link]
+
",
"
+
[Link]
'llist
returns
if
there
are
any
[Link]
I
f
[Link]>0
Then
For
i=0
To
[Link]-‐1
l
[Link]("FrontEndTrace:"
+
[Link](i).FrontEndTrace
+
_
",
Date:"
+
[Link](i).[Link]
+
_
"",
Name:"
+
[Link](i).CustomerName
+
_
,
Amount:"
+
[Link](i).[Link]
+
_
"",
ResponseCode:"
+
[Link](i).ResponseCode
+
_
,
ActionDetail:"
+
[Link](i).ActionDetail)
E
nd
If
Next
i
End
Sub
getresultfile
Sub
Button6Click(sender
As
Object,
e
As
EventArgs)
Dim
myACHWS
As
[Link]
Dim
myCompanyInfo
As
[Link]
Dim
myResultFile
As
[Link]
Dim
myDateFrom,myDateTo
as
Date
'minstances
yACHWS
=
New
[Link]
mmyCompanyInfo
=
New
[Link]
yResultFile
=
New
[Link]
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
62
of
83
'mCompanyInfo
[Link]="TST"
[Link]="9505"
[Link]="THAT
COMPANY"
[Link]="RICO"
'mdate
yDateFrom
=
"2010-‐03-‐25"
myDateTo
=
"2010-‐03-‐26"
'mcall
GetResultFile
method
yResultFile
=
[Link](myCompanyInfo,myDateFrom,myDateTo)
'tassign
status/details
to
textbox
[Link]=[Link]
+
",
"
+
[Link]
'llist
past
connection
results
to
listBox1
[Link]
I
f
[Link]>0
Then
For
i=0
To
[Link]-‐1
",
Method:"
+
[Link](i).CallMethod
+
_
[Link]("DateTime:"
+
[Link](i).[Link]
+
_
"",
Status:"
+
[Link](i).Status
+
_
,
FileName:"
+
[Link](i).FileName)
F
or
j=0
To
[Link](i).TotalNumErrors-‐1
[Link](">"
+
[Link](i).Errors(j).ToString)
N
ext
i
Next
j
End
If
End
Sub
geterrorfile
Sub
Button7Click(sender
As
Object,
e
As
EventArgs)
Dim
myACHWS
As
[Link]
Dim
myCompanyInfo
As
[Link]
Dim
myErrorFile
As
[Link]
Dim
myDateFrom,myDateTo
as
Date
'minstances
yACHWS
=
New
[Link]
mmyCompanyInfo
=
New
[Link]
yErrorFile
=
New
[Link]
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
63
of
83
'mCompanyInfo
[Link]="TST"
[Link]="9505"
[Link]="THAT
COMPANY"
[Link]="RICO"
'mdate
yDateFrom
=
"2010-‐03-‐25"
myDateTo
=
"2010-‐03-‐26"
'mcall
GetErrorFile
method
yErrorFile
=
[Link](myCompanyInfo,myDateFrom,myDateTo)
'tassign
status/details
to
textbox
[Link]=[Link]
+
",
"
+
[Link]
'llist
past
connection
errors
to
listBox1
[Link]
I
f
[Link]>0
Then
For
i=0
To
[Link]-‐1
",
Method:"
+
[Link](i).CallMethod
+
_
[Link]("DateTime:"
+
[Link](i).[Link]
+
_
",
FileName:"
+
[Link](i).FileName
+
_
",
No
of
Errors:"
+
[Link](i).[Link])
F
or
j=0
To
[Link](i).TotalNumErrors-‐1
[Link](">"
+
[Link](i).Errors(j).ToString)
N
ext
i
Next
j
End
If
End
Sub
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
64
of
83
A2.3
C#
(.NET)
connectioncheck
void
Button1Click(object
sender,
EventArgs
e)
{
//named
nsACHWorksWS
as
the
namespace
when
adding
web
reference
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
//company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
//call
ConnectionCheck
method
[Link]=[Link](myCompanyInfo);
}
sendachtrans
void
Button2Click(object
sender,
EventArgs
e)
{
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
[Link]
myACHTransRecord
=
new
[Link]();
[Link]
myACHTransResult
=
new
[Link]();
/m/company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
/m/ACHTransRecord
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="CC#-‐0003";
//impt!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="D";
//D
for
debit,
C
for
credit
[Link]="CustID0001";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
65
of
83
[Link]="DOE,
JOHN";
//Lastname,
Firstname
-‐
all
caps
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="0002311331555";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=100.75;
[Link]="9166388811";
[Link]=[Link]("2010-‐03-‐24");
[Link]=[Link]("2010-‐03-‐24");
[Link]="FirstPay";
[Link]="S";
//S
for
single,
R
for
recurring
[Link]="1";
//ACHWorks
assigned
/m/call
SendACHTrans
method
yACHTransResult=[Link](myCompanyInfo,myACHTransRecord);
/t/assign
portion
of
result
to
textbox1
(e.g.
status
and
details)
[Link]=[Link]
+
",
"
+
[Link];
/l/print
errors
to
listBox
if
there
is
any
[Link]();
i{f
([Link]>0)
f
or
(int
i=0;
i<[Link];
i++)
[Link]([Link][i]);
}
}
sendachtransbatch
void
Button3Click(object
sender,
EventArgs
e)
{
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
[Link]
myACHTransRecord1
=
new
[Link]();
[Link]
myACHTransRecord2
=
new
[Link]();
[Link]
myACHTransRecord3
=
new
[Link]();
[Link]
myACHFile
=
new
[Link]();
[Link]
myACHTransResult
=
new
[Link]();
/m/company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
/m/ACHFile
[Link]="TST";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
66
of
83
[Link]="9505";
[Link]="";
//leave
blank
to
automatically
name
the
file
[Link]=3;
[Link]=2;
[Link]=600.50;
[Link]=1;
[Link]=350.25;
[Link]=new
[Link][3];
///ACHTransRecord(s)
/Record
1
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="CC#-‐00031";
//impt!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY";
[Link]="D";
//D
for
debit,
C
for
credit
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="CustID0001";
[Link]="DOE,
JOHN";
//Lastname,
Firstname
-‐
all
caps
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="0002311331555";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=100.25;
[Link]="9166388811";
[Link]=[Link]("2010-‐03-‐24");
[Link]=[Link]("2010-‐03-‐24");
[Link]="FirstPay";
[Link]="S";
//S
for
single,
R
for
recurring
[Link]="1";
//ACHWorks
assigned
[Link][0]=new
[Link]();
[Link][0]=myACHTransRecord1;
/m/Record
2
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="CC#-‐00032";
//impt!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="D";
//D
for
debit,
C
for
credit
[Link]="CustID0002";
[Link]="DOE,
JANE";
//Lastname,
Firstname
-‐
all
caps
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="400231133002";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=500.25;
[Link]="9166388811";
[Link]=[Link]("2010-‐03-‐24");
[Link]="FirstPay";
[Link]=[Link]("2010-‐03-‐24");
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
67
of
83
[Link][1]=myACHTransRecord2;
/m/Record
3
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="CC#-‐00033";
//impt!
needs
a
unique
value
each
record
per
LocID
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="C";
//D
for
debit,
C
for
credit
[Link]="SMITH,
JOE";
//Lastname,
Firstname
-‐
all
caps
[Link]="CustID0003";
/t/assign
portion
of
result
to
textbox1
(e.g.
status
and
details)
[Link]=[Link]
+
",
"
+
[Link];
/l/print
errors
to
listBox
if
there
is
any
[Link]();
i{f
([Link]>0)
f
or
(int
i=0;
i<[Link];
i++)
[Link]([Link][i]);
}
}
getachreturns
void
Button4Click(object
sender,
EventArgs
e)
{
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
[Link]
myACHReturns
=
new
[Link]();
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
68
of
83
/m/company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
myACHReturns=[Link](myCompanyInfo);
//call
GetACHReturns
method
[Link]=[Link]
+
",
"
+
[Link];
/l/list
returns
if
there
is
any
[Link]();
i{f
([Link]>0)
[Link]("FrontEndTrace:"
+
[Link][i].FrontEndTrace
+
for
(int
i=0;
i<[Link];
i++)
",
EffectiveDate:"
+
[Link][i].[Link]()
+
"",
Name:"
+
[Link][i].CustomerName
+
,
Amount:"
+
[Link][i].[Link]()
+
",
ActionDetail:"
+
[Link][i].[Link]()
+
",
ResponseCode:"
+
[Link][i].ResponseCode
+
",
ActionDate:"
+
[Link][i].[Link]());
}
}
getachreturnshist
void
Button5Click(object
sender,
EventArgs
e)
{
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
[Link]
myACHReturns
=
new
[Link]();
DateTime
myDateFrom,
myDateTo;
/m/company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
/m/date
yDateFrom=[Link]("2010-‐01-‐01");
myDateTo=[Link]("2010-‐03-‐20");
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
69
of
83
/m/call
GetACHReturnsHist
method
yACHReturns=[Link](myCompanyInfo,myDateFrom,myDateTo);
[Link]=[Link]
+
",
"
+
[Link];
/l/list
returns
if
there
is
any
[Link]();
i{f
([Link]>0)
[Link]("FrontEndTrace:"
+
[Link][i].FrontEndTrace
+
for
(int
i=0;
i<[Link];
i++)
",
EffectiveDate:"
+
[Link][i].[Link]()
+
"",
Name:"
+
[Link][i].CustomerName
+
,
Amount:"
+
[Link][i].[Link]()
+
",
ActionDetail:"
+
[Link][i].ActionDetail
+
",
ResponseCode:"
+
[Link][i].ResponseCode
+
",
ActionDate:"
+
[Link][i].[Link]());
}
}
getresultfile
void
Button6Click(object
sender,
EventArgs
e)
{
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
[Link]
myResultFile
=
new
[Link]();
DateTime
myDateFrom,
myDateTo;
/m/company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
/m/date
myDateTo=[Link]("2010-‐03-‐26");
yDateFrom=[Link]("2010-‐03-‐25");
myResultFile=[Link](myCompanyInfo,myDateFrom,myDateTo);
//call
GetResultFile
method
[Link]=[Link]
+
",
"
+
[Link];
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
70
of
83
/l/list
past
connection
results
[Link]();
i{f
([Link]>0)
f{or
(int
i=0;
i<[Link];
i++)
l
[Link]("DateTime:"
+
[Link][i].[Link]()
+
",
Method:"
+
[Link][i].CallMethod
+
"",
Status:"
+
[Link][i].Status
+
,
FileName:"
+
[Link][i].FileName);
f
or
(int
j=0;
j<[Link][i].TotalNumErrors;
j++)
[Link](">"
+
[Link][i].Errors[j]);
}
}
}
geterrorfile
void
Button7Click(object
sender,
EventArgs
e)
{
//instances
[Link]
myACHWS
=
new
[Link]();
[Link]
myCompanyInfo
=
new
[Link]();
[Link]
myErrorFile
=
new
[Link]();
DateTime
myDateFrom,
myDateTo;
/m/company
info
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
/m/date
yDateFrom=[Link]("2010-‐03-‐25");
myDateTo=[Link]("2010-‐03-‐26");
/m/call
GetErrorFile
method
yErrorFile=[Link](myCompanyInfo,myDateFrom,myDateTo);
[Link]=[Link]
+
",
"
+
[Link];
/l/list
error
records
[Link]();
i{f
([Link]>0)
for
(int
i=0;
i<[Link];
i++)
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
71
of
83
{
[Link]("DateTime:"
+
[Link][i].[Link]()
+
"",
Method:"
+
[Link][i].CallMethod
+
,
FileName:"
+
[Link][i].FileName
+
f
or
(int
j=0;
j<
[Link][i].TotalNumErrors;
j++)
",
No
of
Errors:"
+
[Link][i].[Link]());
}
[Link](">"
+
[Link][i].Errors[j]);
}
}
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
72
of
83
A2.4
Java
(1.5/1.6)
connectioncheck
private
void
jButton1MouseClicked([Link]
evt)
{
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
//put
value
of
ConnectionCheck
call
to
jTextField
[Link]([Link]().connectionCheck(myCompanyInfo));
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
}
}
sendachtrans
private
void
jButton2MouseClicked([Link]
evt)
{
//need
to
'import'
the
following:
//import
[Link].*;
//import
[Link].*;
//import
[Link];
//import
[Link];
//import
[Link];
//import
[Link];
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
ACHTransRecord
myACHTransRecord
=
new
ACHTransRecord();
TransResult
myACHTransResult
=
new
TransResult();
DatatypeFactory
myDTF;
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
73
of
83
//ACHTransRecord
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="JJ-‐0007";
//impt!
needs
a
unique
value
for
each
record
per
locid
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="D";
//D
for
debit,
C
for
credit
[Link]="CUSTID123";
[Link]="DOE,
JOHN";
//Lastname,
Firstname
-‐
all
caps
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="00332358882";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=100.75;
[Link]="9166388811";
try
{
myDTF
=
[Link]();
[Link]=[Link]("2010-‐03-‐24T[Link]");
[Link]=[Link]("2010-‐03-‐24T[Link]");
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
[Link]="FirstPay";
[Link]="S";
//S
for
single,
R
for
recurring
[Link]="1";
//ACHWorks
assigned
//call
SendACHTrans
method
myACHTransResult
=
[Link]().sendACHTrans(myCompanyInfo,
myACHTransRecord);
[Link]([Link]
+
",
"
+
[Link]);
//list
errors
if
there
are
any
if
([Link]>0)
{
DefaultListModel
myList
=
new
DefaultListModel();
[Link]([Link]);
for
(int
i=0;
i<[Link];
i++)
[Link]([Link](i));
[Link](myList);
}
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
}
}
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
74
of
83
sendachtransbatch
private
void
jButton3MouseClicked([Link]
evt)
{
//need
to
'import'
the
following:
//import
[Link].*;
//import
[Link].*;
//import
[Link];
//import
[Link];
//import
[Link];
//import
[Link];
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
ACHTransRecord
myACHTransRecord1
=
new
ACHTransRecord();
ACHTransRecord
myACHTransRecord2
=
new
ACHTransRecord();
ACHTransRecord
myACHTransRecord3
=
new
ACHTransRecord();
ACHFile
myACHFile
=
new
ACHFile();
TransResult
myACHTransResult
=
new
TransResult();
DatatypeFactory
myDTF;
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
//myACHFile
[Link]="TST";
[Link]="9505";
[Link]="";
//leave
blank
to
automatically
name
the
file
[Link]=3;
[Link]=2;
[Link]=600.50;
[Link]=1;
[Link]=350.25;
//initialize
records
[Link]
=
new
ArrayOfACHTransRecord();
//ACHTransRecord(s)
//Record
1
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="JJ-‐00081";
//impt!
needs
a
unique
value
for
each
record
per
locid
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="D";
//D
for
debit,
C
for
credit
[Link]="CUSTID123-‐1";
[Link]="DOE,
JOHN";
//Lastname,
Firstname
-‐
all
caps
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
75
of
83
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="00332358882";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=100.25;
[Link]="9166388811";
try
{
myDTF
=
[Link]();
[Link]=[Link]("2010-‐03-‐24T[Link]");
[Link]=[Link]("2010-‐03-‐24T[Link]");
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
[Link]="FirstPay";
[Link]="S";
//S
for
single,
R
for
recurring
[Link]="1";
//ACHWorks
assigned
//Record
2
[Link]="TST";
//ACHWorks
assigned
[Link]="9505";
//ACHWorks
assigned
[Link]="JJ-‐00082";
//impt!
needs
a
unique
value
for
each
record
per
locid
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="D";
//D
for
debit,
C
for
credit
[Link]="CUSTID123-‐2";
[Link]="SMITH,
JANET";
//Lastname,
Firstname
-‐
all
caps
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="00332358882";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=500.25;
[Link]="9166388811";
try
{
myDTF
=
[Link]();
[Link]=[Link]("2010-‐03-‐24T[Link]");
[Link]=[Link]("2010-‐03-‐24T[Link]");
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
[Link]="FirstPay";
[Link]="S";
//S
for
single,
R
for
recurring
[Link]="1";
//ACHWorks
assigned
//Record
3
[Link]="TST";
//ACHWorks
assigned
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
76
of
83
[Link]="9505";
//ACHWorks
assigned
[Link]="JJ-‐00083";
//impt!
needs
a
unique
value
for
each
record
per
locid
[Link]="MYCOMPANY";
[Link]="PPD";
//PPD,CCD,WEB,TEL,RCK,
etc.
[Link]="C";
//D
for
debit,
C
for
credit
[Link]="CUSTID123-‐3";
[Link]="YOUNG,
JOE";
//Lastname,
Firstname
-‐
all
caps
[Link]="987654320";
//9-‐digit
Bank
Routing
No
[Link]="00332358882";
//Bank
Account
No
[Link]="C";
//C
for
checking,
S
for
savings
[Link]=350.25;
[Link]="9166388811";
try
{
myDTF
=
[Link]();
[Link]=[Link]("2010-‐03-‐24T[Link]");
[Link]=[Link]("2010-‐03-‐24T[Link]");
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
[Link]="FirstPay";
[Link]="S";
//S
for
single,
R
for
recurring
[Link]="1";
//ACHWorks
assigned
//add
ACHTransRecords
to
ACHFile
[Link]().add(myACHTransRecord1);
[Link]().add(myACHTransRecord2);
[Link]().add(myACHTransRecord3);
//call
SendACHTransBatch
method
myACHTransResult
=
[Link]().sendACHTransBatch(myCompanyInfo,
myACHFile);
[Link]([Link]
+
",
"
+
[Link]);
//list
errors
if
there
are
any
if
([Link]>0)
{
DefaultListModel
myList
=
new
DefaultListModel();
[Link]([Link]);
for
(int
i=0;
i<[Link];
i++)
[Link]([Link](i));
[Link](myList);
}
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
77
of
83
}
}
getachreturns
private
void
jButton4MouseClicked([Link]
evt)
{
//need
to
'import'
the
following:
//import
[Link].*;
//import
[Link].*;
//import
[Link];
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
ACHReturns
myACHReturns
=
new
ACHReturns();
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
//call
GetACHReturns
method
myACHReturns
=
[Link]().getACHReturns(myCompanyInfo);
[Link]([Link]
+
",
"
+
[Link]);
//list
ACHReturns
if
there
are
any
if
([Link]>0)
{
DefaultListModel
myList
=
new
DefaultListModel();
[Link]([Link]);
for
(int
i=0;
i<[Link];
i++)
[Link]("FrontEndTrace:"
+
[Link]().get(i).frontEndTrace
+
",
EffectiveDate:"
+
[Link]().get(i).[Link]()
+
",
Name:"
+
[Link]().get(i).customerName
+
",
Amount:"
+
[Link]().get(i).[Link]()
+
",
ResponseCode:"
+
[Link]().get(i).responseCode
+
",
ActionDetail:"
+
[Link]().get(i).actionDetail
+
",
ActionDate:"
+
[Link]().get(i).[Link]());
[Link](myList);
}
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
78
of
83
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
}
}
getachreturnshist
private
void
jButton5MouseClicked([Link]
evt)
{
//need
to
'import'
the
following:
//import
[Link].*;
//import
[Link].*;
//import
[Link];
//import
[Link];
//import
[Link];
//import
[Link];
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
ACHReturns
myACHReturns
=
new
ACHReturns();
DatatypeFactory
myDTF;
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
try
{
//instance
myDTF
=
[Link]();
//call
GetACHReturnsHist
method
myACHReturns
=
[Link]().getACHReturnsHist(myCompanyInfo,[Link]("2
010-‐01-‐01T[Link]"),[Link]("2010-‐03-‐20T[Link]"));
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
//assign
portion
of
result
to
jTextField
[Link]([Link]
+
",
"
+
[Link]);
//list
ACHReturns
if
there
are
any
if
([Link]>0)
{
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
79
of
83
DefaultListModel
myList
=
new
DefaultListModel();
[Link]([Link]);
for
(int
i=0;
i<[Link];
i++)
[Link]("FrontEndTrace:"
+
[Link]().get(i).frontEndTrace
+
",
EffectiveDate:"
+
[Link]().get(i).[Link]()
+
",
Name:"
+
[Link]().get(i).customerName
+
",
Amount:"
+
[Link]().get(i).[Link]()
+
",
ResponseCode:"
+
[Link]().get(i).responseCode
+
",
ActionDetail:"
+
[Link]().get(i).actionDetail
+
",
ActionDate:"
+
[Link]().get(i).[Link]());
[Link](myList);
}
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
}
}
getresultfile
private
void
jButton6MouseClicked([Link]
evt)
{
//need
to
'import'
the
following:
//import
[Link].*;
//import
[Link].*;
//import
[Link];
//import
[Link];
//import
[Link];
//import
[Link];
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
ResultFile
myResultFile
=
new
ResultFile();
DatatypeFactory
myDTF;
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
80
of
83
try
{
//instance
myDTF
=
[Link]();
//call
GetResultFile
method
myResultFile
=
[Link]().getResultFile(myCompanyInfo,[Link]("2010-‐
03-‐25T[Link]"),[Link]("2010-‐03-‐26T[Link]"));
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
//assign
portion
of
result
to
jTextField
[Link]([Link]
+
",
"
+
[Link]);
//list
past
connection
results
if
there
are
any
if
([Link]>0)
{
DefaultListModel
myList
=
new
DefaultListModel();
[Link]([Link]);
for
(int
i=0;
i<[Link];
i++)
{
[Link]("DateTime:"
+
[Link]().get(i).[Link]()
+
",
Method"
+
[Link]().get(i).callMethod
+
",
Status"
+
[Link]().get(i).status
+
",
FileName:"
+
[Link]().get(i).fileName);
for
(int
j=0;
j<[Link]().get(i).totalNumErrors;
j++)
[Link](">"
+
[Link]().get(i).[Link]().get(j));
}
[Link](myList);
}
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
}
}
geterrorfile
private
void
jButton7MouseClicked([Link]
evt)
{
//need
to
'import'
the
following:
//import
[Link].*;
//import
[Link].*;
//import
[Link];
//import
[Link];
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
81
of
83
//import
[Link];
//import
[Link];
try
{
//instances
ACHWorksWS
myACHWS
=
new
ACHWorksWS();
CompanyInfo
myCompanyInfo
=
new
CompanyInfo();
ErrorFile
myErrorFile
=
new
ErrorFile();
DatatypeFactory
myDTF;
//assign
values
for
myCompanyInfo
[Link]="TST";
[Link]="9505";
[Link]="THAT
COMPANY";
[Link]="RICO";
try
{
//instance
myDTF
=
[Link]();
//call
GetResultFile
method
myErrorFile
=
[Link]().getErrorFile(myCompanyInfo,[Link]("2010-‐
03-‐25T[Link]"),[Link]("2010-‐03-‐26T[Link]"));
}
catch
(DatatypeConfigurationException
e)
{
[Link]("Date
exception
caught:
"
+
e);
}
//assign
portion
of
result
to
jTextField
[Link]([Link]
+
",
"
+
[Link]);
//list
past
connection
results
if
there
are
any
if
([Link]>0)
{
DefaultListModel
myList
=
new
DefaultListModel();
[Link]([Link]);
for
(int
i=0;
i<[Link];
i++)
{
[Link]("DateTime:"
+
[Link]().get(i).[Link]()
+
",
Method"
+
[Link]().get(i).callMethod
+
",
FileName:"
+
[Link]().get(i).fileName
+
",
No
Of
Errors:"
+
[Link]().get(i).totalNumErrors);
for
(int
j=0;
j<[Link]().getErrorRecord().get(i).totalNumErrors;
j++)
[Link](">"
+
[Link]().get(i).[Link]().get(j));
}
ACHWorks-‐SOAP
Ver
4.0
Guide
Copyright
©
ACHWorks
2010.
All
Rights
Reserved.
Page
82
of
83
[Link](myList);
}
}
catch
(Exception
e)
{
[Link]("Exception
caught:
"
+
e);
}
}
ACHWorks-‐SOAP Ver 4.0 Guide Copyright © ACHWorks 2010. All Rights Reserved. Page 83 of 83