css api documentation v3 10-2020...jun 21, 2016 · css impact financial ecosystems 3 api...
TRANSCRIPT
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 1
CSS IMPACT Financial Ecosystems
API Documentation CSS, Inc.
Oct - 2020
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 2
TABLE OF CONTENTS CSS IMPACT FINANCIAL ECOSYSTEMS REST API ..................................................... 3
COMMON ELEMENTS .......................................................................................................... 3 ENDPOINTS ........................................................................................................................................... 3 AUTHENTICATION AND CONFIDENTIALITY ...................................................................................... 4 API ACCESS ........................................................................................................................................... 4 METHODS ............................................................................................................................................. 4 RETURN VALUES ................................................................................................................................... 5 USER-DEFINED WINDOWS SERVICE ................................................................................................... 6
MAKE PAYMENT SERVICE .................................................................................................... 7 RETRIEVE PAYMENT ARRANGEMENT SERVICE .............................................................................. 11 RESPONSE .......................................................................................................................................... 13
UPDATE PAYMENT ARRANGMENET SERVICE .................................................................. 14 CALL RESULTS SERVICE .................................................................................................................... 18 VALIDATE ONLY MODE ..................................................................................................................... 19 PAYLOAD ............................................................................................................................................ 19 RUN STRATEGY ON DEMAND SERVICE ........................................................................................... 29 PAYLOAD ............................................................................................................................................ 29 RESPONSE .......................................................................................................................................... 31 RUN ELECTRONIC DATA INTERFACE SERVICE ................................................................................ 32 PAYLOAD ............................................................................................................................................ 33 RESPONSE .......................................................................................................................................... 34
MORNING DAILY SERVICE ................................................................................................. 34 PAYLOAD ............................................................................................................................................ 35 RESPONSE .......................................................................................................................................... 36
AFTERNOON DAILY SERVICE ............................................................................................. 36 PAYLOAD ............................................................................................................................................ 37 RESPONSE .......................................................................................................................................... 38
MATCH LINKS SERVICE ...................................................................................................... 38 PAYLOAD ............................................................................................................................................ 38
RESPONSE .............................................................................................................................................. 40
DUNNING PROCESS SERVICE ............................................................................................ 40 PAYLOAD ............................................................................................................................................ 40
RESPONSE .............................................................................................................................................. 42
DEMOGRAPHICS LOOKUP SERVICE .................................................................................. 42 PAYLOAD ............................................................................................................................................ 43 RESPONSE .......................................................................................................................................... 45
AI CALL LOOKUP SERVICE ................................................................................................. 51
LOGIN URLS RESOURCE .......................................................................................... 54
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 3
CSS IMPACT FINANCIAL ECOSYSTEMS REST API Created On: June 21, 2016 Updated: May 13, 2020 This document describes the RESTful web services Application Programming Interface (API) for CSS Impact! HD 2.0 (Impact). Using this API, callers can access Impact business logic, data, and processing to support automation and integration. The API is built on open standards (HTTP, SSL, Basic Authentication) and industry conventions (REST). The Impact API is a request/response model whereby an HTTP request will produce an HTTP response. The API is partitioned by URL with each URL mapping to a particular Impact entity such as an account or a demographic. Each request must be authenticated using Basic Authentication and the communication must be confidential and encrypted through SSL.
COMMON ELEMENTS This section describes API elements that apply to all calls. ENDPOINTS Each Impact customer is provided its own test server. This test server is the target endpoint of all Impact API requests. In this document, the hostname “test-server.cssimpact.com” will be used for clarity. This hostname does not point to a real server and must be substituted for a customer-specific host value. Using test-server.cssimpact.com as a host, each Impact API request begins with the following https://{host}:{port}/css-impact-web-services/api
The scheme is always https. Host is the hostname of the test server. Port is either 8080 or 8443. /css-impact-web-services/api is a fixed path “/css-impact-web-services/api”. For example,
https://test-server.cssimpact.com:8443/css-impact-web-services/api/udws/account/AGX?dbtNo=100000923
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 4
Has a scheme of https, a host of test-server.cssimpact.com, and a port of 8443. The port is followed by the fixed “/css-impact-web-services/api” path. The remainder of the path and query string (/udws/account/AGX?dbtNo=100000923) is specific to the call. AUTHENTICATION AND CONFIDENTIALITY Each Impact API request must include a valid username and password from the Impact User Screen. This username / password is submitted using standard Basic Authentication. This technique passes the credentials in an HTTP header “Authorization” where the value is the fixed string “Basic” plus a Base64-encoded string of the form username:password. username:password is a user code from the User Screen, a colon “:”, and a password from the User Screen. In a raw request, this looks like
Authorization: Basic QVYxMDM6MTcxODMx
Where the string starting with QVY… is an encoding of a username:password. All requests to Impact API that are not on a private VPN must be made using the HTTPS protocol to maintain a confidential connection. API ACCESS In addition to the Basic Authentication described in the previous section, integrators must provide an API Key along with each request. The API Key is passed in a custom HTTP Header. An example follows.
Impact-API-Key: IMPACT10145
The API Key is generated by an Impact administrator. Both the API Key and the Basic Authentication credentials must be supplied or a 401 or 403 error will result. METHODS The Impact API supports the following HTTP methods and general conventions. GET – Queries for data but does not change any entities PUT – Updates data of an existing entity
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 5
DELETE – Removes an existing entity POST – Creates entities and executes back-end processes All requests will accept parameters as part of the path. GET will also accept parameters in a query string. POST requests will also accept parameters in the request body. RETURN VALUES The Impact API uses HTTP status codes to communicate the results of the RESTful call. The following are returned in successful invocations 200 – Ok 204 – No content The following are returned in error conditions 400 – Bad request; usually invalid parameters 401, 403 – Authentication errors 404 – Not found; the service was not found or one or more referenced entities were not found 500 – General server error; an unspecified error was generated in the Impact business logic This version of the Impact API returns JSON and accepts JSON in the body of POST requests. Requests resulting in an error will contain a JSON object with error details. This error object includes an errorType which is a further refinement of an error condition. There are four error types which work with the HTTP codes.
• UNSPECIFIED_ERROR – The default
• VALIDATION_ERROR – A 400 error cause by passing bad arguments to the call
• PROCESSING_ERROR – A 400 or 500 error that was caused by invalid arguments or and bad configuraiton
• SYSTEM_ERROR – A 500 error that indicates an untrapped problem with the call
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 6
USER-DEFINED WINDOWS SERVICE GET /udws/account/{udwCode} A User Defined Window (UDW) is a collection of custom fields that can be associated with an entity in Impact. Since the defintion is custom, the specific fields returned by the service will vary. The UDW is specified as a path parameter. Additional parameters that select the specific UDW instance are passed on the query string. Currently, only Account Level UDWs are supported. The UDW Service URL contains the fixed path /udws/account and the variable udwCode. See the following sample URL.
https://test-server.cssimpact.com:8443/css-impact-web-services/api/udws/account/AGX?dbtNo=100000923
Where https://test-server.cssimpact.com:8443/css-impact-web-services/api is the common prefix for all services. /udws/account selects the Account Level UDW Service. “AGX” is a udwCode. The query string contains a single parameter “dbtNo” which selects the account. The following is a sample HTTP request
GET https://test-server.cssimpact.com:8443/css-impact-web-services/api/udws/account/AGX?dbtNo=100000923 HTTP/1.1
Accept-Encoding: gzip,deflate
Authorization: Basic QVYxMDM6MTcxODMx
Host: test-server.cssimpact.com:8443
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.5.1 (Java/1.8.0_74)
The following response was returned
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1
Date: Tue, 21 Jun 2016 14:06:58 GMT
Content-Type: application/json
Transfer-Encoding: chunked
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 7
[{
"test_date_field":"100410",
"udwCode":"AGX",
"dbtNo":"100000923",
"test_alpha_field_2":"FIRST",
"test_alpha_field_3":"19AV-CV-09-4629",
"test_alspha_field_1":"DAKOTA"
}]
Recall that the return value will be completely customized for the Impact customer. “test_alpha_field_2”, etc will not likely be part of an actual response.
MAKE PAYMENT SERVICE POST /payments/makepayment
https://test-server.cssimpact.com:8443/css-impact-web-services/api/payments/makepayment
Where https://test-server.cssimpact.com:8443/css-impact-web-services/api is the common prefix for all services. /payments/makepayment identifies this service. The Make Payment Service is parameterized by a JSON message passed in the request body. Field Name Description Format
dbtNo Account number
9 digit number
amount Amount to be charged
Numeric string
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 8
feeAmount Fee amount added to charge
Numeric string
postDate Date of posting
yyyyMMdd
accountNumber Credit card or bank account number
Numeric
holderName Name of cardholder
Text
holderAddr Address 1 of cardholder
Text
holderCity City of cardholder
Text
holderState US state of cardholder
Text
holderZip Postal code of cardholder
Text
holderPhone Phone number of cardholder
Text
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 9
entryDate Date of transaction
yyyyMMdd
entryTime Time of transaction
HHmm
type Credit card indicator
“2” for ACH or “4” for credit card
ccExpDate Expiration date of credit card
MMyy (for credit card)
ccAuthCode Security code of credit card
Integer (for credit card)
routingNumber Bank routing number
Numeric (for ACH)
branchNumber Bank branch number
Numeric (for ACH); must be “0” if not specified for ACH only
source Source system initiator of payment
Text, 40 character max identifier; default is WEBSVC
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 10
achSECCode [ACH Only] NACHA designator of how transaction is authorized
POP,POS,PPD,TEL,WEB
The following is a sample request for a credit card payment
POST https://test-server.cssimpact.com:8443/css-impact-web-services/api/payments/makepayment HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 426
Host: 192.0.0.140:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.5.1 (Java/1.8.0_74)
{
"dbtNo": "000000006",
"amount": "25.00",
"feeAmount": "2.00",
"postDate": "20160610",
"accountNumber": "5412102988179999",
"holderName": "Ron Roberts",
"holderAddr": "1928 Tivoli St",
"holderCity": "Simi Valley",
"holderState": "CA",
"holderZip": "93065",
"holderPhone": "",
"entryDate": "20160610",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 11
"entryTime": "1400",
"type": "4",
"ccExpDate": "0718",
"ccAuthCode": "123"
}
And a successful response to this request will be
{"message": "Transaction Successful - Not Posted to Payment Provider Yet"}
The successful responses will vary based on the Impact configuration. Alternatively, a successful response could also be
{"message": "Transaction Successful – AuthCode: 123456", “retval”: “123456”}
This response includes the retval field which is a call-specific return value. In this case, the Make Payment Service will return an authorization code in retval. RETRIEVE PAYMENT ARRANGEMENT SERVICE GET /payments/paymentArrangements/{dbtNo}/{type} The Retrieve Payment Arrangement Service retrieves an abbreviated version of the Payment Arrangement of the specified type for the specified account. The Retrieve Payment Arrangement Service requires two path parameters: dbtNo and type. dbtNo identifies the account of the Payment Arrangement. type will generally be “1” unless this is a Loan Payment. The response will be a 200 Ok and a JSON document using the following fields . Field Name Descr. Format
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 12
initialPaymentDate Date on which a down payment is made (optional)
yyyy-MM-dd'T'HH:mm:ss:SSSZ
initialPaymentAmount
Down payment
Decimal
recurringPaymentAmount
Per interval payment
Decimal
recurringDayMonth Day of month of recurring payment
Integer
recurringStartDate Date on which the recurring payments will starts
yyyy-MM-dd'T'HH:mm:ss:SSSZ
dbtNo Account number
Integer
type Payment Arrangement Type (1 is regular, 2 is loan)
Integer
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 13
recurringNumberOfMonths
The number of months of the payment plan (can be 0)
Integer
accountLastFour The last four digits of the method of payment such as a credit card number
Integer
RESPONSE The following is a sample response of the Get Payment Arrangement Service. {
"dbtNo": "000003932",
"type": "1",
"status": null,
"initialPaymentDate": null,
"initialPaymentAmount": 0.0,
"recurringPaymentAmount": 45.0,
"recurringDayOfMonth": 6,
"recurringNumberOfMonths": 0,
"recurringStartDate": "2012-05-23T04:00:00.000+0000",
"recurringEndDate": "2016-06-23T04:00:00.000+0000",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 14
"accountLastFour": null,
"paymentInfo": null
}
UPDATE PAYMENT ARRANGMENET SERVICE
PUT /payments/paymentArrangements/{dbtNo}/{type} The Update Payment Arrangement Service updates and existing Payment Arrangement with the following data elements
1. First scheduled payment date
2. Down payment amount and date
3. Payment method information such as credit card number
The Update Payment Arrangement Service requires two path parameters: dbtNo and type. dbtNo identifies the account to be updated. type will generally be “1” unless this is a Loan Payment Arrangement. The Update Payment Arrangement Service is parameterized by a JSON message passed in the request body. Field Name Description. Format
initialPaymentDate Date on which a down payment is made (optional); only yyyy-MM-dd will be used, avoiding timezone differences that produce dates different than what the user entered; timezone is required and may be used in a future release
yyyy-MM-dd'T'HH:mm:ss:SSSZ
initialPaymentAmount* Down payment (optional) Decimal
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 15
recurringPaymentAmount Per interval payment Decimal
recurringDayMonth Day of month of recurring payment
Integer
recurringStartDate Date on which the recurring payments will starts; only yyyy-MM-dd will be used, avoiding timezone differences that produce dates different than what the user entered; timezone is required and may be used in a future release
yyyy-MM-dd'T'HH:mm:ss:SSSZ
ppaAccepted Whether or not the user accepts the payment arrangement; sets a special Impact flag
Boolean (true,false); default is false
pprCode Payment plan rule code (optional); if not supplied, default to existing rule applied to payment arrangement
String (3 character)
generateDownPaymentPhonePay Generates a phone pay from the down payment; will be false if no initialPayment, no initialPaymentAmount
Boolean (true,false); default is false
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 16
interestRate Interest rate to use for payment arrangement
Decimal (default is to use account interest rate)
paymentInfo.accountNumber Credit card number or bank account number
16 digits
paymentInfo.routingNumber Bank account number (not used for credit card)
Integer
paymentInfo.type 4 for credit card payments; 2 for ACH
Integer
paymentInfo.ccExpDate Expiration date of credit card (not used for ACH)
MMYY
paymentInfo.ccAuthCode Verification code of credit card (not used for ACH)
Integer
paymentInfo.debit Indicates the card transaction is for a debit card; ignored for check
Boolean (true, false); default is false
* If an initialPaymentAmount is 0 but an intialPaymentDate is set and it is earlier than the recurringStartDate, the update will flag the arrangement as having a down payment that has already been met. This will cause the generateDownPaymentPhonePay flag to be ignored.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 17
Sample Request #1 The following is a sample request to update a Payment Arrangement. The Payment Arrangement will be rebuilt with a down payment of $125 and will generate a phone pay. This request provides a PPR Rule “MN1” which will override what was set previously. {
"initialPaymentDate": "2017-04-28T05:00:00.000+0500",
"initialPaymentAmount": 500.0,
"recurringPaymentAmount": 510.0,
"recurringDayOfMonth": 31,
"recurringStartDate": "2017-05-31T05:00:00.000+0500",
"ppaAccepted": true,
"pprCode": "MN1",
"generateDownPaymentPhonePay": true,
"paymentInfo": {
"accountNumber": "4242424242424242",
"type": "4",
"ccExpDate": "0718",
"ccAuthCode": "123"
}
}
A successful response is indicated by a 204 No Content status code.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 18
Sample Request #2 The following is a sample request to update a Payment Arrangement. This will use the original pprRule set on the Payment Arrangement when the Payment Arrangement was created. No down payment is set for this request.
{
"initialPaymentDate": null,
"initialPaymentAmount": 0.0,
"recurringPaymentAmount": 100.0,
"recurringDayOfMonth": 2,
"recurringStartDate": "2011-02-02T05:00:00.000+0000",
"ppaAccepted": true,
"paymentInfo": {
"accountNumber": "4242424242424242",
"type": "4",
"ccExpDate": "0718",
"ccAuthCode": "123"
}
}
CALL RESULTS SERVICE POST /dialer/callResults The Call Results Service provides third-party vendors with the ability to update the Impact database based on the outcome of a call. This information includes
1. A code describing the outcome of the call,
2. Metrics about the call,
3. Call identification, and
4. A link to a recording of the call.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 19
The Call Results Service can operate in a batch mode and will accept up to 500 records in a single JSON submission. For submitting a single call's results, define a one-element JSON array. Because of the need for high availability, the actual processing of call results is performed on a message queue. There may be a delay processing the request. The expected response code for a successful request is 204 No Content. A validation error will result with a 400 if basic data type conformance checks are not met.
Note that a 204 No Content will be used if there is a business logic-level problem. These errors are captured in Impact. VALIDATE ONLY MODE Because of the large number of fields in the payload, the service can operated in Validate Only Mode. This means that Impact will inspect the payload for basic conformance to data types and codes. To enable this mode, add a validateOnly=true request parameter as in POST /dialer/callResults?validateOnly=true A 204 No Content indicates that the request passes validation. PAYLOAD The Call Results Service is parameterized by a JSON message passed in the request body. The following table describes the JSON fields and their expected values. For fields identified as flags, the values are either true or false.
Field Name Description Sample Value
dbtNo An account number in Impact
000000064
demIdtyNo A contact identifier belonging to the account
89
phoneNum Phone number 2402888381
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 20
Field Name Description Sample Value
callDate Date and time that the call was placed
03/01/2017 05:51:01:977
dispCode A result code defined by the external system
SALE
filename A URL for a call recording
https://www.cssimpact.com/call.wav
callDirection Inbound or Outbound indicating whether the dialer (Outbound) or the caller (Inbound) initiated the call
Outbound
callType Manual or Campaign describing the origination of the call
Manual
calldurationsecs
Duration of the call in seconds
74
callID External interface identifier of the call record
9125
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 21
Field Name Description Sample Value
tenantID External interface identifier of the billing customer
150
campName Text identifier describing activity under which the call is operating
TEST
campaignID Numeric identifier describing activity under which the call is operating
1324
leadID Numeric identifier describing the batch under which the call is operating
412
leadRow External interface identifier of the call source record
4
dialedNumber Phone number dialed
2402888381
transferredToAgent
Flag indicating whether the call was transfered
false
agentID Numeric interface of the agent
555
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 22
Field Name Description Sample Value
dispositionID Call result code from the external system
90
dispositionName
Text description of result code from the external system
SALE
systemDisposition
Raw call result code from the external system
SALE
user Agent name ncastillo
contact Flag indicating contact was made
false
success Flag indicating that the operation was successful
false
dropped Flag indicating whether the call was dropped
false
talkTimeSecs Time in seconds spent talking
0
workTimeSecs Time in seconds spent in work mode
0
connected Flag indicating that the call connected
false
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 23
Field Name Description Sample Value
abandon Flag indicating that the call was abandonned
false
queue Flag indicating that the call was queued
false
queueDurationSecs
Time in seconds that call was queued
0
holdDurationSecs
Time in seconds that the call was held
0
wrapupSecs Time in seconds that the agent was wrapping up the call
0
ansMach Flag indicating that an answering machine was dialed
false
noAns Flag indicating that that there was no answer
false
cept Flag indicating that cept tones were received
false
busy Flag indicating that the line was busy
false
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 24
Field Name Description Sample Value
fax Flag indicating that a fax line was dialed
false
outOfService Flag indicating that the number was out of service
false
usedTTS Flag indicating that a TTS was used
false
recordedCall Flag indicating that the call was recorded
false
outboundANI Outbound phone number identifier to be used in display
5124667387
waitTimeSecs Time in seconds spent waiting
0
notes Additional freetext notes
note
revenue Revenue collected as part of cal
0
isCell Flag indicating that phone number is for a cell phone
true
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 25
Sample HTTP Headers
These are sample HTTP headers that describe the JSON payload. Sample security headers are also included.
POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/dialer/callResults HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
Sample Payload
The following JSON payload shows the submission of two call result records to Impact. [{
"dbtNo": "000000064",
"demIdtyNo": "89",
"phoneNum": "2402888381",
"callDate": "03/01/2017 05:51:01:977",
"dispCode": "SALE",
"filename": "http://www.bekwam.com/wav/130_rock_8beat_002.wav",
"callDirection": "Outbound",
"callType": "Manual",
"calldurationsecs": "74",
"callID": "9125",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 26
"tenantID": "150",
"campName": "TEST",
"campaignID": "1324",
"leadID": "412",
"leadRow": "4",
"dialedNumber": "2402888381",
"transferredToAgent": "false",
"agentID": "555",
"dispositionID": "90",
"dispositionName": "SALE",
"systemDisposition": "SALE",
"user": "ncruz",
"contact": "false",
"success": "false",
"dropped": "false",
"talkTimeSecs": "0",
"workTimeSecs": "0",
"connected": "false",
"abandon": "false",
"queue": "false",
"queueDurationSecs": "0",
"holdDurationSecs": "0",
"wrapupSecs": "0",
"ansMach": "true",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 27
"noAns": "false",
"cept": "false",
"busy": "false",
"fax": "false",
"outOfService": "false",
"usedTTS": "false",
"recordedCall": "false",
"outboundANI": "5034571197",
"waitTimeSecs": "0",
"notes": "note",
"revenue": "0",
"isCell": "true"
},
{
"dbtNo": "000000064",
"demIdtyNo": "89",
"phoneNum": "2402888381",
"callDate": "03/01/2017 05:51:01:977",
"dispCode": "SALE",
"filename": "http://www.bekwam.com/wav/130_rock_8beat_002.wav",
"callDirection": "Outbound",
"callType": "Manual",
"calldurationsecs": "74",
"callID": "9126",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 28
"tenantID": "150",
"campName": "TEST",
"campaignID": "1324",
"leadID": "412",
"leadRow": "4",
"dialedNumber": "2402888381",
"transferredToAgent": "false",
"agentID": "555",
"dispositionID": "90",
"dispositionName": "SALE",
"systemDisposition": "SALE",
"user": "ncruz",
"contact": "false",
"success": "false",
"dropped": "false",
"talkTimeSecs": "0",
"workTimeSecs": "0",
"connected": "false",
"abandon": "false",
"queue": "false",
"queueDurationSecs": "0",
"holdDurationSecs": "0",
"wrapupSecs": "0",
"ansMach": "true",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 29
"noAns": "false",
"cept": "false",
"busy": "false",
"fax": "false",
"outOfService": "false",
"usedTTS": "false",
"recordedCall": "false",
"outboundANI": "5034571197",
"waitTimeSecs": "0",
"notes": "note",
"revenue": "0",
"isCell": "true"
}]
RUN STRATEGY ON DEMAND SERVICE POST /strategies/{sodCode}/running A Strategy On Demand (SOD) is a set of custom business rules used to transform data within Impact. These rules are authored by manipulating shapes in the Impact UI. Once the rules and transformation are tested, they can be called from an external source such as an enterprise scheduler like Control-M, a web application, or a Windows bat script. PAYLOAD The Run SOD Service uses a path parameter to designate the SOD to be run. Some SODs will return data that is the result of the business rules evaluation. There is an optional limit parameter which can be used to reduce the number of records returned by the service. This parameter is specified as JSON in the body of the POST request.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 30
Even if the limit parameter is not specified (or even relevant), a JSON body must be specified. For fields identified as flags, the values are either true or false.
Field Name
Description Sample Value
limit A number indicating a maximum number of records to be returned; only relevant in data-returning SODs (optional)
10
Sample HTTP Headers These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/ strategies/TFXS/running HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
Sample Payload #1 – Limit {
"limit": 10
}
Sample Payload #2 – Empty Body
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 31
An empty body must be submitted if the limit is not specified. {}
RESPONSE The response of the Run SOD Service is JSON. The following sample is from a Workflow SOD which runs a set of business rules and data transformations externally. The Workflow SOD does not return evaluation results.
Field Name Description Sample Value
limit Repeats passed-in value (see payload); can be null
10
sodCode Repeats QUERY_STRING parameter
TFXS
dialerResults Structured data used only in DLRSOD requests
moreRecords + call records
selectResults FOR FUTURE USE -
resultCount The number of results returned
10
processId A correlation identifier
An integer identifier used to correlate the request with Impact
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 32
Field Name Description Sample Value
system tables
Sample Response #1 - Workflow
{
"limit" : null,
"sodCode" : "TFXS",
"dialerResults" : {
"moreRecords" : false,
"results" : [ ]
},
"selectResults" : {
"results" : [ ]
},
"resultCount" : 0,
"processId" : 136862
}
RUN ELECTRONIC DATA INTERFACE SERVICE POST /edis/{ediCode}/running?type={ediType} The Electronic Data Interface (EDI) is a mapping of data fields between a source and a target. The source may be from an external system via a flat file or from an internal
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 33
RDBMS table. An EDI can be an Import that loads data into Impact or an Export that extracts data from Impact. EDIs are typed by function: PROCESS, TRANSACTION, NEW_DEBTOR.
5. PROCESS – A basic EDI involving core tables
6. TRANSACTION – A transaction-oriented EDI
7. NEW_DEBTOR – A new account-oriented EDI
The EDI is authored in the application and published. Publishing makes it available to the Run EDI Web Service where it can be executed externally. PAYLOAD The Run EDI Service uses a path parameter to designate the EDI to be run. An additional QUERY_STRING parameter further refines the execution; there can be several different types of imports or exports under the same ediCode. The service also requires two parameters be passed in as JSON in the POST body: usrCode and inputFileOnServer. usrCode tracks the operation in the Impact system tables. inputFileOnServer refers to the source or target file for imports and exports, respectively. Field Name Description Sample Value usrCode An impact user that
appears in the Impact system tables when the EDI is run; maximum 40 chars
MYUSR
InputFileOnServer A relative path to the configured EDI documents location (generally C:\EDI); absolute paths are not accepted for security reasons
Import/Transaction_Import_Comma_ Translate.csv
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 34
Sample HTTP Headers
These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/edis/TRCIMP/running?type=TRANSACTION HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
Sample Payload {
"usrCode": "AV103",
"inputFileOnServer": "Import/Transaction_Import_Comma_Translate.csv"
}
RESPONSE The response will be an empty JSON document unless there is an error
MORNING DAILY SERVICE POST /processes/morning The Morning Daily Process is a combination of several subprocesses that includes
• Updating work dates,
• Initiating recurring phone pays,
• Scoring accounts,
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 35
• Updating interest, and
• Cleaning up working tables.
The Morning Daily Service can be initiated externally to integrate with enterprise schedulers or other business processes. This can be a long-running process and should be made from a machine with a good network connection. PAYLOAD The Morning Daily Service accepts a pair of parameters in the body as JSON in the POST body. usrCode tracks a user name in the Impact system tables. schCode, or Scheduler Code, provides additional per-instance tracking.
Field Name
Description Sample Value
usrCode An Impact user that appears in the Impact system tables when the EDI is run; maximum 40 chars
MYUSR
schCode Scheduler code (usually 1) Additional tracking information
Sample HTTP Headers These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/ /processes/morning HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 36
Connection: Keep-Alive
Sample Payload
{
"usrCode": "AV103",
"schCode": "1"
}
RESPONSE The returned response will be empty with a return code of 200 or 204.
AFTERNOON DAILY SERVICE POST /processes/afternoon The Afternoon Daily Process is a combination of several subprocesses that includes
• Processing letters,
• Processing post-dated checks,
• Processing rollouts,
• Processing payment arrangements,
• Processing legal accounts, and
• Other functions.
The Afternoon Daily Service can be initiated externally to integrate with enterprise schedulers or other business processes. This can be a long-running process and should be made from a machine with a good network connection.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 37
PAYLOAD The Afternoon Daily Service accepts a pair of parameters in the body as JSON in the POST body. usrCode tracks a user name in the Impact system tables. schCode, or Scheduler Code, provides additional per-instance tracking. Field Name Description Sample Value
usrCode An Impact user that appears in the Impact system tables when the EDI is run; maximum 40 chars
MYUSR
schCode Scheduler code (usually 1) Additional tracking information
Sample HTTP Headers
These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/ /processes/afternoon HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 38
Sample Payload
{
"usrCode": "AV103",
"schCode": "1"
}
RESPONSE The returned response will be empty with a return code of 200 or 204.
MATCH LINKS SERVICE POST /processes/matchLinks The Match Links Service is used to gather related accounts under a master account according to a set of scoring business rules. The Match Links Service can be initiated externally to integrate with enterprise schedulers or other business processes. This can be a long-running process and should be made from a machine with a good network connection. PAYLOAD The Match Links Service accepts a pair of parameters in the body as JSON in the POST body. usrCode tracks a user name in the Impact system tables. schCode, or Scheduler Code, provides additional per-instance tracking.
Field Name
Description Sample Value
usrCode An Impact user that appears in the Impact system tables when the EDI is run; maximum 40 chars
MYUSR
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 39
Field Name
Description Sample Value
schCode Scheduler code (usually 1) Additional tracking information
fromDate Lower bound (inclusive) of Referral Date of account; yyyyMMdd
20180101
thruDate Upper bound (inclusive) of Referral Date of account; yyyyMMdd; must be greater or equal to fromDate
20180102
Sample HTTP Headers These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/ /processes/matchLinks HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 40
Sample Payload
{
"usrCode": "AV103",
"schCode": "1",
“fromDate”: “30180301”,
“thruDate”: “30180310”
}
RESPONSE
The returned response will be empty with a return code of 200 or 204.
DUNNING PROCESS SERVICE POST /processes/dunning The Dunning Service is used to process letters. Dunning Service can be initiated externally to integrate with enterprise schedulers or other business processes. This can be a long-running process and should be made from a machine with a good network connection. PAYLOAD The Dunning Service accepts a pair of parameters in the body as JSON in the POST body. usrCode tracks a user name in the Impact system tables. schCode, or Scheduler Code, provides additional per-instance tracking.
Field Name
Description Sample Value
usrCode An Impact user that appears in the Impact system tables
MYUSR
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 41
Field Name
Description Sample Value
when the EDI is run; maximum 40 chars
schCode Scheduler code (usually 1) Additional tracking information
fromDate Date bound of start criteria; yyyyMMdd
20171201
fromTime Hours and minutes bound of start criteria; 24 hour time
1000
thruDate Date bound of end criteria; yyyyMMdd
20171202
thruHH Hours and minutes bound of end criteria; 24 hour time
1000
letterCode Letter code to run ALF
recreate Flag to indicate whether to recreate existing letters (“Y”) or not (“N”)
Y
Sample HTTP Headers These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/ /processes/dunning HTTP/1.1
Accept-Encoding: gzip,deflate
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 42
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
Sample Payload
{
"usrCode": "AV103",
"schCode": "1",
"fromDate": "30180301",
"fromTime": "1000",
"thruDate": "30180310",
"thruTime": "1000",
"letterCode": "ALF",
"recreate": "Y"
}
RESPONSE
The returned response will be empty with a return code of 200 or 204.
DEMOGRAPHICS LOOKUP SERVICE GET /demographics The Demographics Lookup Service retrieves Demographics Record based on passed-in criteria.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 43
PAYLOAD The Demographics Service accepts several QUERY_STRING parameters. While different combinations are permitted to reduce the returned set, at least one parameter must be specified. There is no “all accounts” use case supported.
Field Name Description Sample Value
dbtNo Account number 000000006
demId Demographic record on account
A0
taxId External identification number of account (ex, SSN)
123121232
demIdtyNo Unique demographics identifier; will result in single record being returned
12127
demGroupId Grouping of demographics
123
phoneNo Phone number on accounts
2025551212
demPortalUserName Alternative username used
AV103
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 44
Field Name Description Sample Value
in payment portal
status Account status ACT
Sample HTTP Headers These are sample HTTP headers that describe the JSON payload. Sample security headers are also included. POST https://someserver.cssimpact.com:8443/css-impact-web-services/api/ / demographics?dbtNo=000000006&demId=A0HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Basic QVYxMDM6d123NDE4Tk4k
Impact-API-Key: 999999101
Content-Length: 2365
Host: someserver.cssimpact.com:8443
Connection: Keep-Alive
Sample Query #1 – Current Demographic Lookup /demographics?dbtNo=000000006&demId=A0 Sample Query #2 – Lookup a Demographic /demographics?demIdtyNo=12727 Sample Query #3 – Active Accounts Matching Phone Number /demographics?phoneNo=2025551212&status=ACT
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 45
RESPONSE The returned response will a JSON array containing zero or more matching accounts.
Field Name Description Sample Value
debtNo Account number 000000006
id Demographic record on account A0
demIdentityNo
Internal id of demographic record
123121232
name Last name and first name of debtor
SMITH, JOHN
phone1 Phone number on account 202551212
phone1Type Home (1), work (2), cell (3), fax (4), spouse home (5), spouse work (6), other (7), land line (8)
1
phone2 Phone number on account 202551212
phone2Type Home (1), work (2), cell (3), fax (4), spouse home (5), spouse work (6), other (7), land line (8)
1
ext1 Optional phone extension 101
ext2 Optional phone extension 101
ssnTaxId External identification number of account (ex, SSN)
desk Desk of account RDS
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 46
Field Name Description Sample Value
addressLine1 Line 1 address of demographic 123 Main St.
addressLine2 Line 2 address of demographic Suite 700
city City of demographic Woodland Hills
state State of demographic CA
zipCode Zip of demographic 20009
county County of demographc LA
country Country of demographic US
clientAccount1
Client reference number 10010010101
clientAccount2
Additional client reference number
REF-001
driverLicense Drivers license number on demographic
W1985098
dob Date of birth 01/01/1970
referralAmount
Amount of referral 1000.00
otherTotal Amount of other items 100.0
interestTotal Interest amount on account 10.0
receivedTotal Received amount on account 55.0
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 47
Field Name Description Sample Value
totalDue Total due on account 1240.0
status Account status NEW
solDate Statute of limitations date 2018-01-01
solState Statute of limitations state PA
dbtFields Up to 24 custom fields stored with account
clientCode Client code of account TESTCC
companyCode
Company code of account TEST
clientName1 Client name of demographic SMITH, JOHN
clientName2 Additional client name on account
SMITH, JOHN
creditorName
Name of creditor ABC, INC
originalCreditor
Name of original creditor ABC, INC
Sample Response
[
{
"debtNo" : "000000006",
"demIdentityNo" : "21724",
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 48
"id" : "A0",
"name" : "test",
"phone1" : "2401822729",
"phone1Type" : null,
"phone2" : "8186198537",
"phone2Type" : null,
"ext1" : null,
"ext2" : null,
"ssnTaxId" : "555121234",
"desk" : "ZTD",
"addressLine1" : null,
"addressLine2" : null,
"city" : "VAN NUYS",
"state" : "CA",
"zipCode" : "91406",
"county" : null,
"country" : null,
"clientAccount1" : "999990035",
"clientAccount2" : "TEST",
"driverLicense" : null,
"dob" : null,
"referralAmount" : 1276.15,
"otherTotal" : 0.0,
"interestTotal" : 0.0,
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 49
"receivedTotal" : 0.0,
"totalDue" : 1276.15,
"status" : "NEW",
"solDate" : "2018-04-16",
"solState" : "PA",
"dbtFields" : {
"field_01" : "TEST",
"field_02" : null,
"field_03" : null,
"field_04" : "A0",
"field_05" : null,
"field_06" : null,
"field_07" : null,
"field_08" : null,
"field_09" : null,
"field_10" : null,
"field_11" : null,
"field_12" : null,
"field_13" : null,
"field_14" : null,
"field_15" : null,
"field_16" : null,
"field_17" : null,
"field_18" : null,
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 50
"field_19" : null,
"field_20" : null,
"field_21" : null,
"field_22" : null,
"field_23" : null,
"field_24" : "20170303"
},
"clientCode" : "TESTEE",
"companyCode" : "CONT",
"clientName1" : "TEST CLIENT",
"clientName2" : "CLIENT NAME 2",
"companyName" : "CONTINGENCY -ORCC",
"creditorName" : null,
"originalCreditor" : null
}
]
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 51
AI CALL LOOKUP SERVICE GET /ai/calls?phone={phone} The AI Call Lookup Service retrieves a record of information captured during the AI phase of a phone call. The key is phone number The AI Call Lookup Service contains the path /ai/calls with a QUERY_STRING containing the phone number. See the following sample URL. https://test-server.cssimpact.com:8443/css-impact-web-services/api/ai/calls?phoneNo=3015555555 The AI Call Lookup Service returns a JSON object with the following fields. Field Name Description Format
accountNo Account number 9 digit number
demIdtyNo Secondary account number
Numeric
incomingPhone Phone number recorded by AI; matches QUERY_STRING value
Numeric string
accountPhone Phone number associated with account; may not match QUERY_STRING value
Numeric string
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 52
methodOfPayment AI retrieved method of payment
Text
amount AI-retrieved amount of
Numeric
timestamp Time of AI contact ISO-8061
The following is a sample request for an AI Calls Lookup Service
GET https://test-server.cssimpact.com:8443/css-impact-web-services/api/ai/calls?phone=3015555555 HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 426
Host: 192.0.0.140:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.5.1 (Java/1.8.0_74)
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 53
The following is a sample response for an AI Calls Lookup Service
HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: application/json
Content-Length: 338
Date: Sun, 26 Sep 2019 23:50:34 GMT
{
"accountNo": "000000006",
“demIdtyNo”: 12427,
“incomingPhone”: “3015555555”,
“accountPhone”: “3015555555”,
“methodOfPayment”: “CC”,
"amount": "25.00",
“timestamp”: “2019-09-26T23:00:00”
}
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 54
LOGIN URLS RESOURCE POST /loginURLs/{secCode} The Login URLs Service is used to adjust the list of URLs presented to a user upon login. An external system can look at the resource usage of servers and arrange the list based on least used resources. The payload for the service is an ordered list of alias / url pairs. These URLs are managed through Security Code. A user’s Security Code will determine the URLs that they will be presented at login. The Login URLs Resource accepts the following parameters Field Name Descr. Format
secCode A path parameter containing a Security Code
3 digit alphanumeric
alias A business-defined alias for a server URL
Text
url A WildFly server URL
Text, but must be of the form scheme://host:port
Ex https://dev.cssimpact.com:8443 or http://192.168.0.1:8080
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 55
The following is a sample request for the Login URLs Resource
POST http://localhost:8080/css-impact-web-services/api/loginURLs/TST HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Content-Length: 97
Host: localhost:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.5.2 (Java/12.0.1)
[
{ "alias": "DEV-01", "url": "http://dev01" },
{ "alias": "DEV-02", "url": "http://dev02" }
]
The service will respond with a 204 No Content status code if successful. If the secCode is not found in Impact, a 404 Not Found error will be returned. If the payload is empty or if the payload includes servers that are not confirming login URLs, a 400 error will be returned. A confirming login URL has the form scheme://host:port. There must not be a path.
-
CSS IMPACT Financial Ecosystems API DOCUMENTATION 56
END OF DOCUMENT