dash Solutions V1
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
Introduction
dash Solutions (Prepaid Technologies Payment Solutions) REST API (Representational State Transfer - Application Programming Interface) provides an easy integration with third party applications and services using JSON, and uses HTTP response codes to indicate API errors.
It provides Restful APIs and hence is independent of programming languages. This allows partners or resellers to build custom applications with the API Architecture as base and interact programmatically yet securely to manage users, their accounts, and payments.
Authentication ==================
Authentication/Pre-requisites
- To use the APIs, one needs to authenticate using the login endpoint documented under User Management with valid credentials (a test user).
- Every subsequent request needs to include a sessionId to work.
API URL Structure =====================
- Use the following URL for any interactions with the REST Base URLs/{apiMethodName}/v1/{endpointName}
{apiMethodName} - The API method name
{endpointName} - The API endpoint name
HTTP Status Codes =====================
Code | Description |
---|---|
200 | SUCCESS - The API request was successful and completed without any errors. |
400 | BAD REQUEST - The input passed in the request is invalid or incorrect. The requestor has to change the input parameters and send the request again. |
401 | UNAUTHORIZED - The request is a special request and the user who has requested the operation is not entitled to perform the requested operation. |
403 | FORBIDDEN - The server understands the request but refuses to authorize it. |
404 | NOT FOUND - The requested resource could not be found. |
500 | INTERNAL ERROR - The request cannot be completed due an error that occurred on the server, while processing the request. |
503 | SERVICE UNAVAILABLE - The request cannot be completed due to an error on the service. |
Base URLs:
Session Management APIs
The API endpoint name for the set is 'userendpoint'
Login
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/login?loginID=string&password=string \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/login?loginID=string&password=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/login?loginID=string&password=string',
{
method: 'POST',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/login',
params: {
'loginID' => 'string',
'password' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/login', params={
'loginID': 'string', 'password': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/login', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/login?loginID=string&password=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/login", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /login
Pass User Identification (Username) to loginID parameter and User password to password parameter. After a successful login, a session(sessionId) is created for the logged in user and is authenticated to access the authorized APIs.
Tips:
- Response consists of user details, which is useful for User Management Activities.
- Response consists of Customer related details, which is used to fetch the Customer programs.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
loginID | query | string | true | User login identification text. |
password | query | string | true | User password text. |
Detailed descriptions
loginID: User login identification text.
password: User password text.
Example responses
200 Response
{
"userId": 0,
"loginId": "string",
"sessionId": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"customerId": 0,
"customerType": "string",
"customerName": "string",
"role": "string",
"isHost": false,
"isHostAdmin": false,
"deleted": false,
"canLoadCard": false,
"canViewLoadHistory": false,
"kind": "string",
"etag": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Logged in Successfully | User |
400 | Bad Request | Invalid login id or password/ Incorrect verification Code | None |
Response Schema
Logout
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/logout?sessionId=string
POST https://portal-api-uat.dashsolutions.com/_ah/api/logout?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/logout?sessionId=string',
{
method: 'POST'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/logout',
params: {
'sessionId' => 'string'
}
p JSON.parse(result)
import requests
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/logout', params={
'sessionId': 'string'
})
print(r.json())
<?php
require 'vendor/autoload.php';
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/logout', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/logout?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/logout", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /logout
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash valid for a user session |
Example responses
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Successfully logged out | None |
400 | Bad Request | Logout failed | None |
Response Schema
Customer Management APIs
The API endpoint name for the set is 'customerendpoint'
Get all customers[depricated]
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList?sessionId=string \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList?sessionId=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerList", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getCustomerList
This method is fetches customer's list based on session, it is deprecated. Use the 'getCustomerHierarchy' API for more specific and accurate result sets.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | "A unique ID generated by dash after successful login, valid for a user session." |
Detailed descriptions
sessionId: "A unique ID generated by dash after successful login, valid for a user session."
Example responses
200 Response
{
"items": [
{
"customerId": 0,
"name": "string",
"address1": "string",
"address2": "string",
"city": "string",
"state": "string",
"zip": 0,
"zip4": 0,
"ein": "string",
"website": "string",
"businessType": "string",
"businessYrs": 0,
"noEmployees": "string",
"contactName": "string",
"contactEmail": "string",
"contactPhone": "string",
"customerType": "string",
"topClientId": 0,
"clientId": "string",
"accountMgr": "string",
"accountMgrId": 0,
"launchDate": "string",
"parentId": 0,
"parentName": "string",
"showVirtualAccountDashboard": true,
"twoFactorEnabled": true,
"hideOtherCards": true,
"notificationEmail": "string",
"referredBy": "string",
"ftpPath": "string",
"ftpUserId": "string",
"ftpPassword": "string",
"phoneExtn": "string"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
403 | Forbidden | Forbidden | ErrorObj403 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [Customer] | false | none | none |
»» customerId | integer | false | none | Customer Id linked with the logged in user |
»» name | string | false | none | Name of the logged in Customer |
»» address1 | string | false | none | Address line 1 |
»» address2 | string | false | none | Address line 2 |
»» city | string | false | none | Residential address |
»» state | string | false | none | Residential State |
»» zip | integer | false | none | Residential zip |
»» zip4 | integer | false | none | "ZIP4 is an extended version of the standard U.S. ZIP code. Used to describe the users adress zip4" |
»» ein | string | false | none | Ein number (Employer Identification Number), also known as a Federal Tax Identification Number, is a unique nine-digit number. |
»» website | string | false | none | Website of the customer |
»» businessType | string | false | none | Bussiness type of the customer |
»» businessYrs | integer | false | none | Bussiness years of the customer |
»» noEmployees | string | false | none | Number of employees of the customer |
»» contactName | string | false | none | Contact name of the customer |
»» contactEmail | string | false | none | Contact email of the customer |
»» contactPhone | string | false | none | Contact phone of the customer |
»» customerType | string | false | none | Name of the customer |
»» topClientId | integer | false | none | A value from top clientIds retrieved from 'getTopClientList' API |
»» clientId | string | false | none | Client identification number |
»» accountMgr | string | false | none | Name of the account manager |
»» accountMgrId | integer | false | none | Id of the account manager |
»» launchDate | string | false | none | none |
»» parentId | integer | false | none | Parent customer Id |
»» parentName | string | false | none | Parent customer name |
»» showVirtualAccountDashboard | boolean | false | none | Shows virtual account dashbpard when set to true |
»» twoFactorEnabled | boolean | false | none | True if 2FA is enabled by the customer |
»» hideOtherCards | boolean | false | none | Other cards are hidden if set to true |
»» notificationEmail | string | false | none | Recieves notification via email when set to true |
»» referredBy | string | false | none | Name by whom the customer is refered by |
»» ftpPath | string | false | none | FTP path name |
»» ftpUserId | string | false | none | FTP user identifier |
»» ftpPassword | string | false | none | FTP password |
»» phoneExtn | string | false | none | Phone extension number |
Get customers by customerId
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy?sessionId=string&customerId=0 \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy?sessionId=string&customerId=0 HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy?sessionId=string&customerId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy',
params: {
'sessionId' => 'string',
'customerId' => 'integer'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy', params={
'sessionId': 'string', 'customerId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy?sessionId=string&customerId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerHierarchy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getCustomerHierarchy
Will fetch the list of customers present under the given cusomerId. The response consists of its parent as well - which is helpful for us to form a hierarchy tree.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | "A unique ID generated by dash after successful login, valid for a user session." |
customerId | query | integer | true | A unique customer identifier |
Detailed descriptions
sessionId: "A unique ID generated by dash after successful login, valid for a user session."
Example responses
200 Response
{
"items": [
{
"customerId": 0,
"name": "string",
"address1": "string",
"address2": "string",
"city": "string",
"state": "string",
"zip": 0,
"zip4": 0,
"ein": "string",
"website": "string",
"businessType": "string",
"businessYrs": 0,
"noEmployees": "string",
"contactName": "string",
"contactEmail": "string",
"contactPhone": "string",
"customerType": "string",
"topClientId": 0,
"clientId": "string",
"accountMgr": "string",
"accountMgrId": 0,
"launchDate": "string",
"parentId": 0,
"parentName": "string",
"showVirtualAccountDashboard": true,
"twoFactorEnabled": true,
"hideOtherCards": true,
"notificationEmail": "string",
"referredBy": "string",
"ftpPath": "string",
"ftpUserId": "string",
"ftpPassword": "string",
"phoneExtn": "string"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [Customer] | false | none | none |
»» customerId | integer | false | none | Customer Id linked with the logged in user |
»» name | string | false | none | Name of the logged in Customer |
»» address1 | string | false | none | Address line 1 |
»» address2 | string | false | none | Address line 2 |
»» city | string | false | none | Residential address |
»» state | string | false | none | Residential State |
»» zip | integer | false | none | Residential zip |
»» zip4 | integer | false | none | "ZIP4 is an extended version of the standard U.S. ZIP code. Used to describe the users adress zip4" |
»» ein | string | false | none | Ein number (Employer Identification Number), also known as a Federal Tax Identification Number, is a unique nine-digit number. |
»» website | string | false | none | Website of the customer |
»» businessType | string | false | none | Bussiness type of the customer |
»» businessYrs | integer | false | none | Bussiness years of the customer |
»» noEmployees | string | false | none | Number of employees of the customer |
»» contactName | string | false | none | Contact name of the customer |
»» contactEmail | string | false | none | Contact email of the customer |
»» contactPhone | string | false | none | Contact phone of the customer |
»» customerType | string | false | none | Name of the customer |
»» topClientId | integer | false | none | A value from top clientIds retrieved from 'getTopClientList' API |
»» clientId | string | false | none | Client identification number |
»» accountMgr | string | false | none | Name of the account manager |
»» accountMgrId | integer | false | none | Id of the account manager |
»» launchDate | string | false | none | none |
»» parentId | integer | false | none | Parent customer Id |
»» parentName | string | false | none | Parent customer name |
»» showVirtualAccountDashboard | boolean | false | none | Shows virtual account dashbpard when set to true |
»» twoFactorEnabled | boolean | false | none | True if 2FA is enabled by the customer |
»» hideOtherCards | boolean | false | none | Other cards are hidden if set to true |
»» notificationEmail | string | false | none | Recieves notification via email when set to true |
»» referredBy | string | false | none | Name by whom the customer is refered by |
»» ftpPath | string | false | none | FTP path name |
»» ftpUserId | string | false | none | FTP user identifier |
»» ftpPassword | string | false | none | FTP password |
»» phoneExtn | string | false | none | Phone extension number |
To get the CIP verification.
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: application/json
Accept: application/json
const inputBody = '{
"firstName": "string",
"lastName": "string",
"address": "string",
"zip": 0,
"dobMonth": 0,
"dobYear": 0,
"dobDay": 0,
"ssn": 0,
"ssnLast4": 0,
"city": "string",
"state": "string"
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck', headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getCIPCheck", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getCIPCheck
Pass below required parameters: - firstName - lastName - address - zip - dobMonth - dobYear - dobDay - city - state
Note: - returnCode will be 0 only if Server is down or there is a poor network connection. - diffQuestionList or questionList will not be null only in case of summaryResult is Partial and there can be a list of questions. - Based on the summaryResult from the response, you need to take the appropriate action. - summaryResult is Pass: - This message indicates that CIP verification completed successfully. - Subject is located. - summaryResult is "Fail": - This message indicates that the subject was not found. - summaryResult is "Partial": - Sometimes the CIP verification process locates records on more than one individual and similarities in the information located making it impossible to identify the correct individual. - To find the individual user, the API will return differentiator questions along with the ID results. The answer to the differentiating question identifies the correct record or records to use in the CIP verification process. - Next step needs to be performed only in case of Partial based on the result in response. If diffQuestionList is not null then make submitDifferentiatorAnswers API call and if questionList is not null then call submitAnswers API respectively.
Body parameter
{
"firstName": "string",
"lastName": "string",
"address": "string",
"zip": 0,
"dobMonth": 0,
"dobYear": 0,
"dobDay": 0,
"ssn": 0,
"ssnLast4": 0,
"city": "string",
"state": "string"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | object | true | none |
» firstName | body | string | true | First name |
» lastName | body | string | true | Last name |
» address | body | string | true | Street address (Max characters allowed is 40) |
» zip | body | integer | true | 5 Digit zip code. |
» dobMonth | body | integer | true | 2 Digit month of birth. |
» dobYear | body | integer | true | 4 Digit year of birth. |
» dobDay | body | integer | true | 2 Digit day of birth. |
» ssn | body | integer | false | 9 digit Social Security number. |
» ssnLast4 | body | integer | false | Last 4 digit of Social Security number. |
» city | body | string | true | City name. |
» state | body | string | true | State name. |
Example responses
200 Response
{
"returnCode": 0,
"data": {
"Idnumber": 0,
"Error": "string",
"summaryResult": "string",
"detailedMessages": [
{
"message": "string"
}
],
"diffQuestionList": [
{
"question": "In which city is STILLWOOD DR?",
"type": "city.of.residence",
"Options": [
"PARSHALL",
"KENOSHA",
"LAKE VILLAGE",
"KARVAL",
"LUPTON"
]
}
],
"questionList": [
{
"question": "In which city is STILLWOOD DR?",
"type": "city.of.residence",
"Options": [
"PARSHALL",
"KENOSHA",
"LAKE VILLAGE",
"KARVAL",
"LUPTON"
]
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» returnCode | integer | false | none | It can be 0,1 and -1 |
» data | CIPCheckResponse | false | none | none |
»» Idnumber | integer | false | none | Verify Identification number, Idnumber provides the info related to Partial result. |
»» Error | string | false | none | Error message |
»» summaryResult | string | false | none | You will get either one of three values [Pass, Fail, Partial] |
»» detailedMessages | [arrayCIPResponse] | false | none | Detailed description |
»»» message | string | false | none | Response message |
»» diffQuestionList | [arrayQuestionsCIPResponse] | false | none | List of questions to identify the individual from multiple user |
»»» question | string | false | none | Question text present in the Question list |
»»» type | string | false | none | Type of the question present in the Question list |
»»» Options | [string] | false | none | Answer text that needs to be passed. |
»» questionList | [arrayQuestionsCIPResponse] | false | none | List of questions based on configuration set for customer |
CustomerProgram Management APIs
The API endpoint name for the set is 'customerendpoint'
Retrieve various shipping options.
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes?sessionId=string
GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes?sessionId=string',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes',
params: {
'sessionId' => 'string'
}
p JSON.parse(result)
import requests
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes', params={
'sessionId': 'string'
})
print(r.json())
<?php
require 'vendor/autoload.php';
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFeeTypes", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getShippingFeeTypes
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
Example responses
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | None |
400 | Bad Request | Unable to retrieve the shipping fee types | None |
Response Schema
Retrieve different shipping methods.
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods?sessionId=string \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods?sessionId=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getShippingMethods", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getShippingMethods
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
Example responses
200 Response
{
"items": [
"UPS Ground",
"UPS Second Day",
"UPS Next Day Air",
"USPS First Class",
"USPS w/ Tracking"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | A list of available shipping methods | Inline |
400 | Bad Request | Unable to retrieve the shipping methods | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [string] | false | none | none |
Retrieve list of customer programs
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList?sessionId=string&customerId=0&showAutoCreated=true&showBranded=true \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList?sessionId=string&customerId=0&showAutoCreated=true&showBranded=true HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList?sessionId=string&customerId=0&showAutoCreated=true&showBranded=true',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList',
params: {
'sessionId' => 'string',
'customerId' => 'integer(int64)',
'showAutoCreated' => 'boolean',
'showBranded' => 'boolean'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList', params={
'sessionId': 'string', 'customerId': '0', 'showAutoCreated': 'true', 'showBranded': 'true'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList?sessionId=string&customerId=0&showAutoCreated=true&showBranded=true");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getCustomerProgramList", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getCustomerProgramList
Pass Session Identifier and Customer Identifier from the response received from the login API. Filter your customer programs based on your filter criteria based on the below parameters. ### Tips: 1. The response consists of a parameter called rowId, which is also called Customer Program Identifier (cpId, custProgId). 2. rowId is very useful while handling Card Management APIs.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successfull login, valid for a user session |
customerId | query | integer(int64) | true | Customer Identifier (customerId) response parameter you receive after successful login. |
showAutoCreated | query | boolean | true | Filter customer programs based on auto created. Pass true value for the auto created programs. |
showBranded | query | boolean | true | Filter customer programs based on brand. Pass true value for the branded programs. |
Detailed descriptions
sessionId: A unique ID generated by dash after successfull login, valid for a user session
customerId: Customer Identifier (customerId) response parameter you receive after successful login.
showAutoCreated: Filter customer programs based on auto created. Pass true value for the auto created programs.
showBranded: Filter customer programs based on brand. Pass true value for the branded programs.
Example responses
200 Response
{
"items": [
{
"rowId": 0,
"productId": 0,
"customerId": 0,
"planId": 0,
"commissionId": 0,
"einCheck": true,
"ofacCheck": true,
"bgCheck": true,
"launchDate": "string",
"websiteCheck": true,
"status": "string",
"productType": "string",
"productName": "string",
"hasVirtualFunding": true,
"isInstantIssue": true,
"permSubprogramId": 0,
"permSubProgramName": "string",
"tmpSubProgramId": 0,
"tmpPackageId": 0,
"tmpSubProgramName": "string",
"virtualSubprogramId": 0,
"virtualSubprogramName": "string",
"pricingPlanName": "string",
"commissionName": "string",
"commissionReferrerName": "string",
"permPackageName": "string",
"tmpPackageName": "string",
"invoicePymtOption": "string",
"VirtualPackageName": "string",
"shippingMethod": "string",
"fundingSource": "string",
"receiptAction": "string",
"customerName": "string",
"activeCount": 0,
"inventoryCount": 0,
"isDeleted": true,
"topParentId": 0,
"autoCreated": true,
"dueDiligenceNotes": "string",
"hideOtherCards": true,
"fundingId": 0,
"PlanId": 0,
"permPackageId": 0
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Invalid sessionId or CustmerId | None |
404 | Not Found | Failed to get customer program list | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [CustomerProgram] | false | none | [Every Onboarder customer is a sub program] |
»» rowId | integer | false | none | Customer program ID |
»» productId | integer | false | none | Unique ID that is tied with the product (card) |
»» customerId | integer | false | none | Unique identifier associated with the customer |
»» planId | integer | false | none | Plan ID |
»» commissionId | integer | false | none | Commission ID |
»» einCheck | boolean | false | none | EIN (Employer Identification Number), also known as a Federal Tax Identification Number check. |
»» ofacCheck | boolean | false | none | Set to true if the customer passes the OFAC check |
»» bgCheck | boolean | false | none | Set to true if the customer passes the background verification check |
»» launchDate | string | false | none | Launch date |
»» websiteCheck | boolean | false | none | Set to true if website verificaton passes |
»» status | string | false | none | Describes the status of the customer program |
»» productType | string | false | none | Type of the product |
»» productName | string | false | none | Name of the product |
»» hasVirtualFunding | boolean | false | none | Set to true if customer has opted for virtual funding |
»» isInstantIssue | boolean | false | none | Returns true if it is an instant issue card |
»» permSubprogramId | integer | false | none | Permanant subprogram ID |
»» permSubProgramName | string | false | none | Permanant subprogram name |
»» tmpSubProgramId | integer | false | none | Temporary subprogram ID |
»» tmpPackageId | integer | false | none | Temporary package ID |
»» tmpSubProgramName | string | false | none | Temporary subprogram name |
»» virtualSubprogramId | integer | false | none | Virtual subprogram ID |
»» virtualSubprogramName | string | false | none | Virtual subprogram name |
»» pricingPlanName | string | false | none | Customer program pricing plan name |
»» commissionName | string | false | none | Customer program commission name |
»» commissionReferrerName | string | false | none | Customer program commission referrer name |
»» permPackageName | string | false | none | Permanant package name |
»» tmpPackageName | string | false | none | Temporary package name |
»» invoicePymtOption | string | false | none | Invoice payment option description |
»» VirtualPackageName | string | false | none | Virtual package name |
»» shippingMethod | string | false | none | Shipping method if individual or bulk |
»» fundingSource | string | false | none | Funding source details |
»» receiptAction | string | false | none | Receipt action |
»» customerName | string | false | none | Customer name |
»» activeCount | integer | false | none | Active count |
»» inventoryCount | integer | false | none | Inventory count for the customer program |
»» isDeleted | boolean | false | none | True if deletion is set |
»» topParentId | integer | false | none | Top parent ID |
»» autoCreated | boolean | false | none | True if auto creation is set |
»» dueDiligenceNotes | string | false | none | Notes |
»» hideOtherCards | boolean | false | none | Hides other cards if set to true |
»» fundingId | integer | false | none | Funding ID |
»» PlanId | integer | false | none | Plan ID |
»» permPackageId | integer | false | none | Permanant package ID |
Find ATM locations using latitude and longitude values
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation?sessionId=string&latitude=string&longitude=string&pageOffset=0&pageLength=0
GET https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation?sessionId=string&latitude=string&longitude=string&pageOffset=0&pageLength=0 HTTP/1.1
Host: portal-api-uat.dashsolutions.com
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation?sessionId=string&latitude=string&longitude=string&pageOffset=0&pageLength=0',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation',
params: {
'sessionId' => 'string',
'latitude' => 'string',
'longitude' => 'string',
'pageOffset' => 'integer',
'pageLength' => 'integer'
}
p JSON.parse(result)
import requests
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation', params={
'sessionId': 'string', 'latitude': 'string', 'longitude': 'string', 'pageOffset': '0', 'pageLength': '0'
})
print(r.json())
<?php
require 'vendor/autoload.php';
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation?sessionId=string&latitude=string&longitude=string&pageOffset=0&pageLength=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getATMLocation", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getATMLocation
API endpoint name: 'customerendpoint'
The API is used to get the location of an ATM.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
latitude | query | string | true | Latitude of location. |
longitude | query | string | true | Longitude of location. |
pageOffset | query | integer | true | View/Visible from mentioned page offset. |
pageLength | query | integer | true | Total number of locations. |
Detailed descriptions
latitude: Latitude of location.
longitude: Longitude of location.
pageOffset: View/Visible from mentioned page offset.
Example responses
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | None |
400 | Bad Request | Bad Request Data | None |
Response Schema
Order Management APIs
The API endpoint name for the set is 'orderendpoint'
Order single/bulk/inventory
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/orderCards?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/orderCards?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"address1": "string",
"address2": "string",
"attn": "string",
"city": "string",
"custProgId": 0,
"isInstantIssue": true,
"qty": 0,
"shippingMethod": "string",
"cardType": "Physical",
"shippingFee": 0,
"cardFee": 0,
"state": "string",
"zip": "string",
"totalValue": 0,
"campaignName": "string",
"reasonCode": "string",
"externalIdentifier": "string",
"orderDetails": [
{
"firstName": "string",
"lastName": "string",
"phone": "string",
"ssn": "string",
"dateOfBirth": "string",
"email": "string",
"embossedMessage": "string",
"mailingAddr1": "string",
"mailingAddr2": "string",
"mailingCity": "string",
"mailingState": "string",
"mailingPostalCode": "string",
"shippingAddress1": "string",
"shippingAddress2": "string",
"shippingCity": "string",
"shippingState": "string",
"shippingZip": "string",
"shippingMethod": "string",
"purseNo": 0,
"otherInfo": "string",
"amount": 0,
"comment": "string",
"externalIdentifier": "string",
"clientDefinedField1": "string",
"clientDefinedField2": "string",
"clientDefinedField3": "string",
"clientDefinedField4": "string",
"clientDefinedField5": "string"
}
],
"orderProdType": "Personalized Payroll Order",
"customerId": 0,
"host": "Prepaid"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/orderCards?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/orderCards',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/orderCards', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/orderCards', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/orderCards?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/orderCards", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /orderCards
Instructions for Instant Issue(Inventory) Orders(IIC)
Order instant issue inventory by specifying the number of cards which will be shipped to the specified address.
### Note:
1. For the Corporate Purchasing product type, pass the value Instant Issue Purchase Order in orderProdType
.
2. To prevent duplicate orders, the user can pass the unique value in the externalIdentifier field. This is an optional field and duplicates will be checked at the program level.
Instructions for single/multiple Personalized orders
Order personalized cards all of which will be customized cards as per your specification. The order responses with an instant personalized proxy in case of single and with orderId in case of multiple. Further need to use getOrderDetailsByOrderId method with orderId to fetch the proxy information.
Order digital card
- Enable can order digital cards option at program level to order digital cards.
- To order a digital card, pass card type as Digital in cardType property and shippingMethod is optional. Or you can set null value to shippingMethod property.
Order with load
- Turn on the configuration at program level to load cards while ordering.
- To load, pass amount in amount property.
- Pass overall load amount of order in totalValue property.
- Pass External Identifier to externalIdentifier parameter.
- To prevent duplicate loads:
- Ensure that Duplicate Load Checker flag in customer program is turned on.
- User can pass externalIdentifier against proxy to prevent duplicate loads.
To prevent duplicate card orders
- Enable Make Other Field Required & Make Other Field Unique option at program level.
- Ensure that a unique value, such as an employeeID, is provided for the otherInfo field.
To prevent duplicate orders
- To prevent duplicate order, user can pass the unique value in the externalIdentifier field. This is an optional field and duplicates will be checked at program level.
Note
- dateOfBirth field is optional, we recommend providing it.
- Mailing address and shipping address are optional at the processing platform level. We recommend passing mailing address in case of mailing a replaced card to the cardholder.
- shippingMethod field is optional but in case of physical card order, we recommend passing it.
- For the Corporate Purchasing product type, pass the value Personalized Purchasing Order in orderProdType.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» address1 | body | string | true | none |
» address2 | body | string | true | none |
» attn | body | string | true | none |
» city | body | string | true | none |
» custProgId | body | integer | true | Customer program id retrieved from 'getCustomerProgramList' API |
» isInstantIssue | body | boolean | false | none |
» qty | body | integer | false | none |
» shippingMethod | body | string | false | Shipping method can be retrieved from 'getShippingMethods' API |
» cardType | body | string | false | If empty or null then card type will be considered as Physical. |
» shippingFee | body | number | true | Shipping fee can be retrieved from 'getShippingFee' API |
» cardFee | body | number | true | none |
» state | body | string | true | none |
» zip | body | string | true | none |
» totalValue | body | integer | false | none |
» campaignName | body | string | false | none |
» reasonCode | body | string | false | none |
» externalIdentifier | body | string | false | Optional field to prevent duplicate orders at program level |
» orderDetails | body | [object] | true | none |
»» firstName | body | string | true | none |
»» lastName | body | string | true | none |
»» phone | body | string | true | none |
»» ssn | body | string | true | none |
»» dateOfBirth | body | string | false | none |
body | string | false | none | |
»» embossedMessage | body | string | false | none |
»» mailingAddr1 | body | string | false | none |
»» mailingAddr2 | body | string | false | none |
»» mailingCity | body | string | false | none |
»» mailingState | body | string | false | none |
»» mailingPostalCode | body | string | false | none |
»» shippingAddress1 | body | string | false | none |
»» shippingAddress2 | body | string | false | none |
»» shippingCity | body | string | false | none |
»» shippingState | body | string | false | none |
»» shippingZip | body | string | false | none |
»» shippingMethod | body | string | false | none |
»» purseNo | body | integer | false | none |
»» otherInfo | body | string | false | Provide a unique value to ensure duplicate cards are not ordered. (To prevent duplicate orders) |
»» amount | body | number | false | none |
»» comment | body | string | false | none |
»» externalIdentifier | body | string | false | Use a unique value to prevent duplicate loads from occuring.(To prevent duplicate loads) |
»» clientDefinedField1 | body | string | false | Client defined fields 1 |
»» clientDefinedField2 | body | string | false | Client defined fields 2 |
»» clientDefinedField3 | body | string | false | Client defined fields 3 |
»» clientDefinedField4 | body | string | false | Client defined fields 4 |
»» clientDefinedField5 | body | string | false | Client defined fields 5 |
» orderProdType | body | string | true | none |
» customerId | body | integer | true | none |
» host | body | string | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Enumerated Values
Parameter | Value |
---|---|
» cardType | Physical |
» cardType | Digital |
» orderProdType | Personalized Payroll Order |
» orderProdType | Instant Issue Payroll Order |
» orderProdType | Reloadable-Corporate Reward Order |
» orderProdType | Non Reloadable-Corporate Reward Orde |
» orderProdType | Instant Corporate Reward Order |
» orderProdType | Direct Order - CORP |
» orderProdType | Personalized Purchasing Order |
» host | Prepaid |
» host | Fis |
Example responses
Order created successfully
{
"cardNum": "***********3142",
"proxyKey": "***********12",
"orderID": "271843",
"personID": "1100400000",
"cvx2": 740,
"expDate": "5/31/2027 11:59:59 PM",
"statusVal": 1,
"cardStatus": "READY",
"trn": "073972181",
"dda": "2557390448703",
"fundingId": 0,
"dstnFundingId": "0",
"isMeta": false,
"cardsDetails": {},
"digitalCardProxy": "5160446803875",
"tinyUrl": "https://uatdash.page.link/jedh1S",
"tinyUrlSms": "https://uatdash.page.link/RrhS"
}
{
"orderID": "5932614",
"fundingId": 0,
"dstnFundingId": "0",
"isMeta": false,
"cardsDetails": {}
}
{
"statusVal": 0,
"statusMsg": "Account:AccountExtraCreate Method ShippingExtraId cannot be validated"
}
400 Response
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Order created successfully | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Register a single/multiple card
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/registerCards?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/registerCards?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"campaignName": "string",
"custProgId": 0,
"customerId": 0,
"host": "Prepaid",
"orderDetails": [
{
"amount": 0,
"comment": "string",
"dateOfBirth": "string",
"email": "[email protected]",
"firstName": "string",
"lastName": "string",
"mailingAddr1": "string",
"mailingAddr2": "string",
"mailingCity": "string",
"mailingPostalCode": "string",
"mailingState": "string",
"panNumber": "string",
"phone": "string",
"proxyKey": "string",
"shippingAddress1": "string",
"shippingAddress2": "string",
"shippingCity": "string",
"shippingState": "string",
"shippingZip": "string",
"ssn": "string",
"otherInfo": "string",
"externalIdentifier": "string",
"clientDefinedField1": "string",
"clientDefinedField2": "string",
"clientDefinedField3": "string",
"clientDefinedField4": "string",
"clientDefinedField5": "string"
}
],
"qty": 0,
"reasonCode": "string",
"totalValue": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/registerCards?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/registerCards',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/registerCards', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/registerCards', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/registerCards?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/registerCards", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /registerCards
Register a single/multiple card.
To Prevent Duplicate Card Registration
- Enable Make Other Field Required & Make Other Field Unique option at program level.
- Ensure that a unique value, such as an employeeID, is provided for the otherInfo field. ### Notes
- Enable show full card number option at customer level to get full card number in response in cardNum property.
- In the response, you will get a tiny URL in tinyUrl property if email or SMS notification is enabled at program level for digital cards.
- dateOfBirth field is optional; we recommend providing it.
- Mailing address and shipping address are optional at the processing platform level. We recommend passing the mailing address in case of mailing a replaced card to the cardholder.
- Pass External Identifier to externalIdentifier parameter.
- To prevent duplicate register and loads:
- Ensure that Duplicate Load Checker flag in customer program is turned on.
- User can pass
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
body | body | object | true | none |
» campaignName | body | string | false | none |
» custProgId | body | integer | true | Customer program id retrieved from 'getCustomerProgramList' API |
» customerId | body | integer | true | The customer id linked with this user which can be retrieved from the response body of 'login' API |
» host | body | string | false | none |
» orderDetails | body | [object] | true | none |
»» amount | body | number | false | none |
»» comment | body | string | false | none |
»» dateOfBirth | body | string(date - mm/dd/yyyy) | false | none |
body | string(email) | false | none | |
»» firstName | body | string | true | none |
»» lastName | body | string | true | none |
»» mailingAddr1 | body | string | false | none |
»» mailingAddr2 | body | string | false | none |
»» mailingCity | body | string | false | none |
»» mailingPostalCode | body | string | false | none |
»» mailingState | body | string | false | Pass the state code in abbreviated form, e.g., AL for Alabama. |
»» panNumber | body | string | false | Card number. Pass either proxy number or card number |
»» phone | body | string | true | none |
»» proxyKey | body | string | true | ProxyKey is required |
»» shippingAddress1 | body | string | false | none |
»» shippingAddress2 | body | string | false | none |
»» shippingCity | body | string | false | none |
»» shippingState | body | string | false | Pass the state code in abbreviated form, e.g., AL for Alabama. |
»» shippingZip | body | string | false | none |
»» ssn | body | string | true | none |
»» otherInfo | body | string | false | Provide a unique value to ensure duplicate cards are not registered. |
»» externalIdentifier | body | string | false | Use a unique value to prevent duplicate loads from occuring. |
»» clientDefinedField1 | body | string | false | Client defined field 1 |
»» clientDefinedField2 | body | string | false | Client defined field 2 |
»» clientDefinedField3 | body | string | false | Client defined field 3 |
»» clientDefinedField4 | body | string | false | Client defined field 4 |
»» clientDefinedField5 | body | string | false | Client defined field 5 |
» qty | body | integer | false | We recommend passing the number of cards being registered: |
» reasonCode | body | string | false | none |
» totalValue | body | number | false | none |
Detailed descriptions
» qty: We recommend passing the number of cards being registered: - 1 in case of single. - Number of cards in case of multiple.
Enumerated Values
Parameter | Value |
---|---|
» host | Prepaid |
» host | Fis |
Example responses
200 Response
{
"cardNum": "************0037",
"proxyKey": "123123123123123",
"orderID": "271459",
"personID": "110000000",
"cvx2": 996,
"expDate": "1/31/2027 11:59:59 PM",
"statusVal": 1,
"fundingId": 0,
"dstnFundingId": 0,
"orderDetailId": 512773,
"isMeta": false,
"tinyUrl": "https://uatdash.page.link/RtTY",
"tinyUrlSms": "uatdash.page.link/RrhS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | card registered successfully | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
403 | Forbidden | Forbidden | ErrorObj403 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» cardNum | string | false | none | none |
» proxyKey | string | false | none | none |
» orderID | string | false | none | none |
» personID | string | false | none | none |
» cvx2 | number | false | none | none |
» expDate | string | false | none | none |
» statusVal | number | false | none | none |
» fundingId | number | false | none | none |
» dstnFundingId | number | false | none | none |
» orderDetailId | number | false | none | none |
» isMeta | boolean | false | none | none |
» tinyUrl | string | false | none | none |
» tinyUrlSms | string | false | none | none |
Retrieve order details by order Id
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId?sessionId=string&orderId=string \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId?sessionId=string&orderId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId?sessionId=string&orderId=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId',
params: {
'sessionId' => 'string',
'orderId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId', params={
'sessionId': 'string', 'orderId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId?sessionId=string&orderId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getOrderDetailsByOrderId", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getOrderDetailsByOrderId
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
orderId | query | string | true | A unique ID given to a card order |
Example responses
200 Response
{
"items": [
{
"orderDetailId": 392886,
"firstName": "FirstName",
"lastName": "LastName",
"amount": 0.01,
"dateOfBirth": "10/10/1998",
"ssn": "1231231231",
"mailingAddr1": "1st Line St",
"mailingAddr2": "XYZ Road",
"mailingCity": "New York",
"mailingState": "NY",
"mailingPostalCode": "12345",
"phone": "1231231231",
"shippingAddress1": "1st Line St",
"shippingAddress2": "XYZ Road",
"shippingCity": "New York",
"shippingState": "NY",
"shippingZip": "12345",
"panNumber": "6928",
"proxyKey": "3415060020922",
"trn": "000060020922",
"dda": "00000020922",
"expDate": "10/31/2027 11:59:59 PM",
"retryCount": 0,
"status": "Completed",
"bulkCardQuantity": 0,
"email": "[email protected]",
"otherInfo": "TEST1",
"employeeId": "Test1",
"futureOrderDetailId": 0,
"bounce": true,
"clicked": false,
"cardType": "PHYSICAL",
"smsSent": false,
"orderId": 243789,
"isOrderCancel": false,
"refNum": "CC0074D4145D",
"smsLinkClicked": false,
"tinyUrlEmail": "https://uatdash.page.link/4TdC",
"tinyUrlSms": "uatdash.page.link/RrhS",
"clientDefinedField1": "Test field 1",
"clientDefinedField2": "Test field 2",
"clientDefinedField3": "Test field 3",
"clientDefinedField4": "null",
"clientDefinedField5": "Test field 5"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [OrderDetailsByOrderId] | false | none | none |
»» orderDetailId | integer | false | none | Orderdetail Id |
»» firstName | string | false | none | First name of the customer |
»» lastName | string | false | none | Last name of the customer |
»» amount | number | false | none | Amount paid |
»» dateOfBirth | string | false | none | Date of Birth of the customer |
»» ssn | string | false | none | SSN of the customer |
»» mailingAddr1 | string | false | none | Mailing address line 1 of the customer |
»» mailingAddr2 | string | false | none | Mailing address line 2 of the customer |
»» mailingCity | string | false | none | Mailing address city of the customer |
»» mailingState | string | false | none | Mailing address state of the customer |
»» mailingPostalCode | string | false | none | Mailing address postal code of the customer |
»» phone | string | false | none | Phone number of the customer |
»» shippingAddress1 | string | false | none | Shipping address line 1 of the customer |
»» shippingAddress2 | string | false | none | Shipping address line 2 of the customer |
»» shippingCity | string | false | none | Shipping address line 1 of the customer |
»» shippingState | string | false | none | Shipping address state of the customer |
»» shippingZip | string | false | none | Shipping address zip of the customer |
»» panNumber | string | false | none | PAN number of the customer |
»» proxyKey | string | false | none | Proxy key number |
»» trn | string | false | none | Transaction number |
»» dda | string | false | none | DDA account number |
»» expDate | string | false | none | Expiration date of the card |
»» retryCount | integer | false | none | Order retry count |
»» status | string | false | none | Order status |
»» bulkCardQuantity | integer | false | none | If the order is a bulk order, the quantity of it |
string | false | none | Email address of the customer | |
»» otherInfo | string | false | none | Additional information |
»» employeeId | string | false | none | Employee unique identifier |
»» futureOrderDetailId | integer | false | none | Future card order ID |
»» bounce | boolean | false | none | Set to true if bounced |
»» clicked | boolean | false | none | Set to true if clicked |
»» cardType | string | false | none | Type of card if digital or physical |
»» smsSent | boolean | false | none | Set to true if order SMS is sent |
»» orderId | integer | false | none | Order ID |
»» isOrderCancel | boolean | false | none | Set to true if card order is cancelled |
»» refNum | string | false | none | Order reference number |
»» smsLinkClicked | boolean | false | none | Set to true if SMS link is clicked |
»» tinyUrlEmail | string | false | none | Tiny URL email |
»» tinyUrlSms | string | false | none | Tiny URL SMS (if enabled) |
»» clientDefinedField1 | string | false | none | Custom defined field |
»» clientDefinedField2 | string | false | none | Custom defined field |
»» clientDefinedField3 | string | false | none | Custom defined field |
»» clientDefinedField4 | string | false | none | Custom defined field |
»» clientDefinedField5 | string | false | none | Custom defined field |
Load funds
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/loadCards?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/loadCards?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"custProgId": 0,
"customerId": 0,
"filename": "string",
"fundingId": 0,
"host": "Prepaid",
"orderDetails": [
{
"amount": 0,
"comment": "string",
"firstName": "string",
"lastName": "string",
"otherInfo": "string",
"externalIdentifier": "string",
"clientDefinedField1": "string",
"clientDefinedField2": "string",
"clientDefinedField3": "string",
"clientDefinedField4": "string",
"clientDefinedField5": "string"
}
],
"processDate": "string",
"qty": 0,
"valueLoadFee": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/loadCards?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/loadCards',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/loadCards', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/loadCards', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/loadCards?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/loadCards", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /loadCards
To load funds to a specific Card
Required fields are mentioned below: - Pass the other/employeeId value to otherInfo parameter - Pass Customer Program Identifier value to custProgId parameter - Pass Customer Identifier value to customerId parameter - Pass Funding Identifier value to fundingId parameter - Pass the Amount value to amount parameter in $
Optional fields are mentioned below: - Pass comment as per the requirement to comment parameter - Pass Card Holder First name to firstName parameter - Pass Card Holder Last name to lastName parameter - Pass the host as per the requirement to host parameter, you can pass either Prepaid or Fis - Pass External Identifier to externalIdentifier parameter
Tips:
- You get the Customer Identifier in login API response as customerId parameter.
- To get the Funding Id use getVirtualAccountList API.
- You get the Customer Program Identifier in getCustomerProgramList API response as rowId parameter.
- For Instant Issue Card, if you attempt to load an unregistered card, the request will fail with the message Card not assigned. Load failed.
- To prevent duplicate loads:
- Ensure that Duplicate Load Checker flag in customer program is turned on.
- User can pass externalIdentifier against proxy to prevent duplicate
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
body | body | object | true | none |
» custProgId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» customerId | body | integer | true | none |
» filename | body | string | false | Name of the file, if applicable else pass null |
» fundingId | body | integer | true | Fundingid which can be retrieved from 'getVirtualAccountList' API |
» host | body | string | false | none |
» orderDetails | body | [object] | true | none |
»» amount | body | number | true | Upto two decimal places, eg. 1.01 |
»» comment | body | string | false | Comment |
»» firstName | body | string | false | First name of Cardholder |
»» lastName | body | string | false | Last name of Cardholder |
»» otherInfo | body | string | true | Pass other info or employeeId passed while ordering or registering card |
»» externalIdentifier | body | string | false | Unique External Identifier value to prevent duplicates. |
»» clientDefinedField1 | body | string | false | Client defined fields 1 |
»» clientDefinedField2 | body | string | false | Client defined fields 1 |
»» clientDefinedField3 | body | string | false | Client defined fields 1 |
»» clientDefinedField4 | body | string | false | Client defined fields 1 |
»» clientDefinedField5 | body | string | false | Client defined fields 1 |
» processDate | body | string | false | Date of processing, if applicable |
» qty | body | integer | false | Quantity of cards to be loaded |
» valueLoadFee | body | number | false | Fee for value load |
Enumerated Values
Parameter | Value |
---|---|
» host | Prepaid |
» host | Fis |
Example responses
Success or error response for single load card order
{
"returnCode": 0,
"status": "success",
"message": "Card loaded successfully",
"data": "271460",
"cardBalance": "0.02",
"txnRefNumber": "CC0099AFE01A"
}
{
"returnCode": -1,
"status": "error",
"message": "No Proxy Number for Card Found|1|-2147220401| 0000000000000",
"data": "271460"
}
{
"returnCode": -1,
"status": "error",
"message": "Duplicate load detected for External ID | External ID is required"
}
400 Response
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success or error response for single load card order | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Unload funds
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"applyDate": "string",
"custProgId": 0,
"customerId": 0,
"filename": "string",
"fundingId": 0,
"host": "Prepaid",
"orderDetails": [
{
"amount": "string",
"comment": "string",
"firstName": "string",
"lastName": "string",
"panNumber": "string",
"proxyKey": "string"
}
],
"qty": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/unloadCards", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /unloadCards
To unload cash from a specific Card
Conditional fields are mentioned below. One of them is required: - Pass the Card number value to panNumber parameter. - Pass the Proxy number value to proxyKey parameter.
Required fields are mentioned below: - Pass Customer Program Identifier value to custProgId parameter. - Pass Customer Identifier value to customerId parameter. - Pass Funding Identifier value to fundingId parameter. - Pass the Amount value to amount parameter in $.
Optional fields are mentioned below: - Pass comment as per the requirement to comment parameter. - Pass Card Holder First name to firstName parameter. - Pass Card Holder Last name to lastName parameter. - Pass the host as per the requirement to host parameter, you can pass either Prepaid or Fis.
Tips:
- You get the Customer Identifier in login API response as customerId parameter.
- To get the Funding Id, use getVirtualAccountList API.
- You get the Customer Program Identifier in getCustomerProgramList API response as rowId parameter.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» applyDate | body | string | false | apply date specifies the date on which the amount should be loaded |
» custProgId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» customerId | body | integer | true | The customer id linked with this user which can be retrieved from the response body of login API |
» filename | body | string | false | Name of the file uploaded |
» fundingId | body | integer | true | fundingid which can be retrieved from 'getVirtualAccountList' API |
» host | body | string | false | none |
» orderDetails | body | [object] | true | none |
»» amount | body | string | true | Upto two decimal places, eg. 1.01 |
»» comment | body | string | false | Comment |
»» firstName | body | string | false | First Name on card |
»» lastName | body | string | false | Last name on card |
»» panNumber | body | string | false | Card number. Pass either proxy number or card number |
»» proxyKey | body | string | false | Proxy number. Pass either proxy number or card number in panNumber field. |
» qty | body | integer | false | Quantity |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Enumerated Values
Parameter | Value |
---|---|
» host | Prepaid |
» host | Fis |
Example responses
SUCCESS
{
"refNum": "CC00B36E1311",
"statusVal": 1,
"amount": "0.01",
"cardBalance": "0.05",
"fundingId": 0,
"dstnFundingId": 0,
"status": "SUCCESS",
"isMeta": false,
"message": "Card unload successfully",
"returnCode": "SUCCESS"
}
{
"fundingId": 0,
"dstnFundingId": 0,
"status": "BATCH_IN_PROGRESS",
"isMeta": false,
"message": "Your value unload have been saved and will be processed soon.",
"returnCode": "SUCCESS"
}
{
"returnCode": "ERROR",
"status": "COMPLETED_WITH_ERRORS",
"message": "Invalid Proxy number|0|10754"
}
400 Response
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Acknowledge load by order Id
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt?sessionId=string&orderId=string \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt?sessionId=string&orderId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt?sessionId=string&orderId=string',
{
method: 'POST',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt',
params: {
'sessionId' => 'string',
'orderId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt', params={
'sessionId': 'string', 'orderId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt?sessionId=string&orderId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/acknowledgeReceipt", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /acknowledgeReceipt
The receipt of the orders of the type 'Load After Receipt' can be acknowledged by using this API.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
orderId | query | string | true | A unique ID given to a card order |
Example responses
SUCCESS
{
"returnCode": "200",
"status": "Success"
}
{
"returnCode": "-1",
"status": "error",
"message": "Order not found"
}
401 Response
{
"error": {
"domain": "global",
"reason": "required",
"message": "Session not found - **************************************************9002"
},
"code": 401,
"message": "Session not found - **************************************************9002"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Load approval by order Id
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad?adminSessionId=string&orderId=string \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad?adminSessionId=string&orderId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad?adminSessionId=string&orderId=string',
{
method: 'POST',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad',
params: {
'adminSessionId' => 'string',
'orderId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad', params={
'adminSessionId': 'string', 'orderId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad?adminSessionId=string&orderId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/approveFundLoad", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /approveFundLoad
Requires configuration at program level to approve loads(Account manager can assist on this feature)
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
adminSessionId | query | string | true | A unique ID generated by dash after successful login, valid for an admin user session. |
orderId | query | string | true | A unique ID given to a card order |
Example responses
200 Response
{
"returnCode": 200,
"message": "Success"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» returnCode | integer | false | none | return code value |
» message | string | false | none | return message |
Retrieve the shipping fee
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee?qty=0&shipMethod=string \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee?qty=0&shipMethod=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee?qty=0&shipMethod=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee',
params: {
'qty' => 'integer',
'shipMethod' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee', params={
'qty': '0', 'shipMethod': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee?qty=0&shipMethod=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getShippingFee", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getShippingFee
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
qty | query | integer | true | Specifies the quantity of the card order |
shipMethod | query | string | true | Shipping method retrieved from 'getShippingMethods' API, describes the type of shipping, bulk or individual. |
Example responses
200 Response
{
"shippingFee": 21.6
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
204 | No Content | No Content | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» shippingFee | integer | false | none | none |
Retrieve tracking number by order Id
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo?sessionId=string&orderId=0 \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo?sessionId=string&orderId=0 HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo?sessionId=string&orderId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo',
params: {
'sessionId' => 'string',
'orderId' => 'integer'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo', params={
'sessionId': 'string', 'orderId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo?sessionId=string&orderId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getOrderTrackingInfo", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getOrderTrackingInfo
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
orderId | query | integer | true | A unique identifier for a card order |
Example responses
200 Response
{
"orderId": 243806,
"trackingNumber": "CC00901031FB"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | OrderTrackingDetails |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Resend Digital Email or SMS
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"proxyKey": "string",
"resendMethod": "string",
"alertType": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/sendDigitalCardAlert", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /sendDigitalCardAlert
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» proxyKey | body | string | true | Proxy key which can be retrieved from 'searchAccount' API |
» resendMethod | body | string | true | Resend method type 'Email/SMS' |
» alertType | body | string | true | Alert type. To Resend Initial Email/SMS pass it as 'Initial' |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"returnCode": -1,
"status": "error",
"message": "Email not sent due to disabled email configuration"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» returnCode | integer | false | none | error code default -1 |
» status | string | false | none | Status |
» message | string | false | none | Error message |
Get shipping information by proxyKey
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation?sessionId=string&proxyKey=string&customerProgramId=0 \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation?sessionId=string&proxyKey=string&customerProgramId=0 HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation?sessionId=string&proxyKey=string&customerProgramId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation',
params: {
'sessionId' => 'string',
'proxyKey' => 'string',
'customerProgramId' => 'integer'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation', params={
'sessionId': 'string', 'proxyKey': 'string', 'customerProgramId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation?sessionId=string&proxyKey=string&customerProgramId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getShippingInformation", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getShippingInformation
To get shipping information for shipping card
- Pass the Proxy number value to proxyKey parameter
- Pass Customer Program Id value to customerProgramId parameter
Tips:
- You get only the available data in the API response
- In case the card is not yet shipped, only the proxyKey will be returned in the API response
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | A unique ID generated by dash after successful login, valid for a user session. |
proxyKey | query | string | true | Proxy key of the card |
customerProgramId | query | integer | true | Customer program Id of the card |
Example responses
200 Response
{
"proxyKey": "0000000423952",
"trackingNumber": "CC00901031FB",
"shippingDate": "20/05/2022",
"shippingType": "individualShip",
"shippingMethod": "USPS First Class"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | ShippingInformation |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
500 | Internal Server Error | Server side error | ErrorObj500 |
503 | Service Unavailable | Service unavailable | ErrorObj503 |
Card Management APIs
The API endpoint name for the set is 'fisendpoint'
Update card status
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"proxyKey": "string",
"cardNum": "string",
"cardStatus": "ACTIVATE"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/changeCardStatus", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /changeCardStatus
To change the card status
- Pass Customer Program Identifier value to cpId parameter.
- Either pass Proxy number value to proxyKey parameter or pass Card number value to cardNum.
- Pass new status value to cardStatus parameter.
Tips:
- You can get cpId from getCustomerProgramList API, as parameter named rowId.
- You can get proxyKey from searchAccount API.
- List of card statuses: [ ACTIVATE, READY, LOSTSTOLEN, SUSPEND, UNSUSPEND, CLOSE ].
Note:
- Before marking the card LOST, SUSPEND, or CLOSED, make sure you unload the balance from that card using **unloadCardbyProxy
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | rowId retrieved from 'getCustomerProgramList' API |
» proxyKey | body | string | false | Proxy key which can be retrieved from 'searchAccount' API. Pass either proxy number or card number. |
» cardNum | body | string | false | Card number. Pass either proxy number or card number |
» cardStatus | body | string | true | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Enumerated Values
Parameter | Value |
---|---|
» cardStatus | ACTIVATE |
» cardStatus | READY |
» cardStatus | LOST |
» cardStatus | SUSPEND |
» cardStatus | UNSUSPEND |
» cardStatus | CLOSED |
Example responses
200 Response
{
"orderId": "271496",
"statusVal": 1,
"cardStatus": "ACTIVATE",
"fundingId": 0,
"dstnFundingId": 0,
"orderDetailId": 514892,
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | CardStatus |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
500 | Internal Server Error | Server side error | ErrorObj500 |
503 | Service Unavailable | Service unavailable | ErrorObj503 |
Retrieve account/card details
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"skipCreateRecord": 0,
"cpId": 0,
"clientID": 0,
"proxyKey": "string",
"cardNum": "string",
"first": "string",
"last": "string",
"ssn": 0,
"others": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/searchAccount", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /searchAccount
To get Card info
- Pass Customer Program Identifier value to cpId parameter.
- You can pass any of the below parameters based on your search requirement:
- Pass Proxy number value to proxyKey parameter.
- Pass Card number value to cardNum parameter.
- Pass First Name value to first parameter.
- Pass Last Name value to last parameter.
- Pass Social Security Number value to ssn parameter.
To get Virtual account info
- Pass Client Identifier value to clientID parameter.
- You can pass any of the below parameters based on your search requirement:
- Pass Proxy number value to proxyKey parameter.
- Pass Card number value to cardNum parameter.
- Pass First Name value to first parameter.
- Pass Last Name value to last parameter.
- Pass Social Security Number value to ssn parameter.
Tips:
- You can get cpId from getCustomerProgramList API, as parameter named
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» skipCreateRecord | body | integer | false | Set skipCreateRecord to 1 if you want additional parameters; otherwise, set it to 0. Additional parameters are described at the bottom of the response object. |
» cpId | body | integer | false | Set the customer program Id, mandatory if clientID is not set. |
» clientID | body | integer | false | Set the Client Id, mandatory if cpId is not set or if virtual account. |
» proxyKey | body | string | false | Set the proxy key to search |
» cardNum | body | string | false | Set the card number to search |
» first | body | string | false | use to search by first name |
» last | body | string | false | use to search by last name |
» ssn | body | integer | false | use to search by SSN |
» others | body | string | false | Other Information |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"cardNum": "00000000000037",
"proxyKey": "12312312312311",
"proxyType": "3",
"subProgID": "553691",
"pkgID": "706112",
"relation": "0",
"first": "FirstName",
"last": "LastName",
"addr1": "5TH STREET PARK AVENUE",
"addr2": "",
"addr3": "",
"city": "NEW JERSEY",
"state": "NJ",
"zipCode": "12345",
"country": "840",
"phone": "1234568888",
"voiceExt": "",
"ssn": "1111111111",
"dob": "01/01/1990",
"others": "Test",
"email": "[email protected]",
"personID": "1099727045",
"statusVal": 1,
"clientName": "PT MetaBank Payroll",
"cardTypeName": "Payroll Plus",
"pkgDesc": "White Plastic ASI",
"PAN": "4380000000006928",
"trn": "073900081",
"dda": "2556300000002",
"fundingId": 0,
"dstnFundingId": 0,
"status": "2",
"statusDescription": "ACTIVE",
"bin": "438963",
"middle": "",
"registrationDate": "1/22/2024 7:30:31 AM",
"validationCompl": "1/22/2024 7:30:31 AM",
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | SearchAccount |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Retrieve card/funding balance
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance?sessionId=string \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance?sessionId=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalance", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getCardBalance
To get Card balance
First way to get Card balance
- Pass Proxy number value to proxyKey parameter.
- Pass Customer Identifier number value to cpId parameter.
- Pass default NULL value to fundingId parameter.
Second way to get Card balance
- Pass Card number value to accNum parameter.
- Pass default NULL value to fundingId parameter.
To get Virtual account balance
First way to get Virtual account balance
- Pass the Proxy number value to proxyKey parameter.
- Pass the Funding Id value to fundingId parameter.
Second way to get Virtual account balance
- Pass Card number value to accNum parameter.
- Pass default NULL value to fundingId parameter.
Tips:
- To get the Funding Id, use getVirtualAccountList API.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
proxyKey | query | string | false | Need to get Proxy Number for card balance as well as virtual account balance. Pass either proxy number or card number. |
accNum | query | string | false | Need to get Card Number Or Virtual Account number for card balance as well as virtual account balance. Pass either proxy number or card number. |
fundingId | query | integer | false | FundingId value from getVirtualAccountList API. Default value is NULL. |
cpId | query | integer | false | rowId value from getCustomerProgramList API. |
purseNo | query | integer | false | Get balance of purse |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
proxyKey: Need to get Proxy Number for card balance as well as virtual account balance. Pass either proxy number or card number.
accNum: Need to get Card Number Or Virtual Account number for card balance as well as virtual account balance. Pass either proxy number or card number.
fundingId: FundingId value from getVirtualAccountList API. Default value is NULL.
purseNo: Get balance of purse
Example responses
200 Response
{
"statusVal": 1,
"cardBalance": 0,
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» statusVal | integer | false | none | Status value |
» cardBalance | integer | false | none | card balance |
» fundingId | integer | false | none | FundingId default 0 |
» dstnFundingId | integer | false | none | Designation funding id default 0 |
» isMeta | boolean | false | none | IsMeta value default false |
Load funds to cards[Depricated]
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/loadCard?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/loadCard?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"custId": 0,
"fundingId": 0,
"cardNum": "string",
"amount": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/loadCard?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/loadCard',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/loadCard', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/loadCard', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/loadCard?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/loadCard", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /loadCard
We recommend using Orderendpoint loadCards API
To load cash to a Card
- Pass Customer Identifier value to custId parameter.
- Pass Funding Identifier value to fundingId parameter.
- Pass the Card number value to cardNum parameter.
- Pass the Amount value to amount parameter in $.
Tips:
- You get the Customer Identifier in login API response as customerId parameter.
- To get the Funding Id, use getVirtualAccountList API.
- For Instant Issue Card, if you attempt to load an unregistered card, the request will fail with the message Card not assigned. Load failed.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» custId | body | integer | true | The customer id linked with this user which can be retrieved from the response body of login API |
» fundingId | body | integer | true | fundingid which can be retrieved from 'getVirtualAccountList' API |
» cardNum | body | string | true | Card number received from 'searchAccount' API |
» amount | body | integer | true | Amount to be loaded in the card |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"refNum": "CC00425339ED",
"statusVal": 1,
"amount": "0.02",
"cardBalance": "0.07",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Bad-Request
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
{
"error": {
"description": "error description",
"domain": "global",
"reason": "badRequest",
"message": "Card not assigned. Load failed."
},
"code": 400,
"message": "Card not assigned. Load failed."
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | CardLoad_Unload |
400 | Bad Request | Bad-Request | Inline |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Unload funds from a card[Depricated]
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"customerId": 0,
"fundingId": 0,
"proxyKey": "string",
"amount": 0,
"comment": "string",
"firstName": "string",
"lastName": "string",
"host": "Prepaid"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/unloadCard", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /unloadCard
Not recommended - legacy API, we recommend using Orderendpoint unLoadCards API
To unload cash from a specific Card
Required fields are mentioned below: - Pass Customer Identifier value to custId parameter. - Pass Funding Identifier value to fundingId parameter. - Pass the Proxy Number value to proxyKey parameter. - Pass the Amount value to amount parameter in $.
Optional fields are mentioned below: - Pass comment as per the requirement to comment parameter. - Pass Card Holder First name to firstName parameter. - Pass Card Holder Last name to lastName parameter. - Pass the host as per the requirement to comment parameter, you can pass either Prepaid or Fis.
Tips:
- You get the Customer Identifier in login API response as customerId parameter.
- To get the Funding Id, use getVirtualAccountList API.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | rowId value from getCustomerProgramList API. |
» customerId | body | integer | true | The customer id linked with this user can be retrieved from the response body of the login API. |
» fundingId | body | integer | true | fundingid which can be retrieved from 'getVirtualAccountList'API |
» proxyKey | body | string | true | Proxy number retrieved from 'search account' API |
» amount | body | integer | true | Amount to be loaded in the card |
» comment | body | string | false | none |
» firstName | body | string | false | First name of card holder |
» lastName | body | string | false | Last name of card holder |
» host | body | string | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Enumerated Values
Parameter | Value |
---|---|
» host | Prepaid |
» host | Fis |
Example responses
200 Response
{
"refNum": "CC00425339ED",
"statusVal": 1,
"amount": "0.02",
"cardBalance": "0.07",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | CardLoad_Unload |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Reissue card
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard?sessionId=string \
-H 'Content-Type: */*'
POST https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
const inputBody = '{
"cpId": 0,
"proxyKey": "string",
"cardNum": "string"
}';
const headers = {
'Content-Type':'*/*'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/reissueCard", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /reissueCard
To Reissue Card
- You can pass any of the below parameters based on your requirement:
- Pass Proxy number value to proxyKey parameter.
- Pass Card number value to cardNum parameter.
- Pass Customer Program id value to cpId parameter.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» proxyKey | body | string | false | proxy number of the virtual account. Pass either proxy number or card number |
» cardNum | body | string | false | Card number of the virtual account. Pass either proxy number or card number |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | |
txnlogId - integer | None | ||
400 | Bad Request | Failed to reissue card | None |
Response Schema
Replace cards
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"cardNum": "string",
"newCardNum": "string",
"proxyKey": "string",
"newProxyKey": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/replaceCard", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /replaceCard
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» cardNum | body | string | false | Card number retrieved from 'search account' API. Mandatory if proxyKey is not provided. |
» newCardNum | body | string | false | Instant issue card which can be used to replace an existing card (If provided, PackageID will be ignored). |
» proxyKey | body | string | false | Proxy key of the card you want to replace. Mandatory if card number is not provided. |
» newProxyKey | body | string | false | Instant issue Proxy key which can be used to replace an existing card (If provided, PackageID will be ignored). |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"cardNum": "************0037",
"proxyKey": "0000000423952",
"txnlogId": 0,
"statusVal": 1,
"confirmCode": "",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | CardReplace |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
403 | Forbidden | Forbidden | ErrorObj403 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Retrieve Load History
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"proxyKey": "string",
"cardNum": "string",
"customerId": 0,
"startDate": "string",
"numDays": 0,
"cardNumOnly": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getTxnHistory", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getTxnHistory
Tips
To get Transaction history
Either pass
- Proxy number value to proxyKey parameter and
- Customer Program Id value to cpId parameter
- Customer Id value to customerId parameter
Or
- Card Number value to cardNum parameter
Example: To retrieve last 7 days transactions. You need to pass the startDate as today's date and numOfDays as 7.
To retrieve load history of all associated cards
- Pass 1 as value to cardNumOnly to get data for only card number or proxkey provided.
- Pass 0 as value to cardNumOnly to get transactions for all related cards to the PAN Proxy or CAN Proxy (includes additional cards, secondary cards, etc).
- If no value provided to cardNumOnly it will set default as 1 and will return data for only card number or proxkey provided.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | false | Row id retrieved from 'getCustomerProgramList' API. cpId is mandatory if proxyKey is set |
» proxyKey | body | string | false | proxy number retrieved from 'search account' API. Pass either proxy number or card number. |
» cardNum | body | string | false | Cardnumber of the virtual account or Card number of Card. Pass either proxy number or card number. |
» customerId | body | integer | false | The customer id linked with this user which can be retrieved from the response body of login API.mandatory if proxyKey is set |
» startDate | body | string | true | Specify the date from which you want the statement. The format should be 'mm/dd/yyyy'. If StartDate is not passed or if the value provided is not valid (i.e., wrong format, future date, etc.), it will default to the current date. |
» numDays | body | integer | true | The history will be fetched depending on 'numDays' specified |
» cardNumOnly | body | integer | false | Specify whether to fetch provided card number or proxykey data or all associated cards data |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"cardNum": "**********8034",
"proxyKey": "129345159458",
"purseNo": "14",
"refNum": "CC00142F158D",
"comment": "Test load",
"txnDate": 0,
"amount": 0,
"fundingId": 0,
"dstnFundingId": 0,
"postDate": "05/07/2024",
"txnDesc": "Value Load",
"isMeta": false
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [TransactionHistory] | false | none | none |
» cardNum | string | false | none | Card number |
» proxyKey | string | false | none | Proxy Key |
» purseNo | string | false | none | Purse Number |
» refNum | string | false | none | Reference number |
» comment | string | false | none | Comments |
» txnDate | integer | false | none | Date of the transaction |
» amount | integer | false | none | Amount of transaction |
» fundingId | integer | false | none | Funding ID |
» dstnFundingId | integer | false | none | Destination funding ID |
» postDate | string | false | none | Post date |
» txnDesc | string | false | none | Description of transaction |
» isMeta | boolean | false | none | Returns true if isMeta is set to true |
Retrieve mon/non-mon transactions
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"clientID": 0,
"proxyKey": "string",
"startDate": "string",
"numDays": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getCardHistory", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getCardHistory
API to fetch both monetary and non-monetary transaction details for an account/card.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» clientID | body | integer | true | Client Identifier |
» proxyKey | body | string | true | Proxy Key retrieved from 'search account' API |
» startDate | body | string | true | none |
» numDays | body | integer | true | The history will be fetched depending on 'numDays' specified |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"cardNum": "************8034",
"refNum": "CC00142F158D",
"txnDate": 0,
"amount": "0",
"fundingId": 0,
"dstnFundingId": 0,
"txnType": "Non-Mon Update",
"postDate": "05/07/2024",
"txnDesc": "Reset uses for the fee track",
"merchant": "",
"responseCode": "",
"responseDescription": "",
"txnResult": "Completed OK",
"localAmount": "",
"localTranCurrCode": "",
"isMeta": false,
"utcPostDate": "2024-05-08T00:46:15.080Z",
"utcInsertedDate": "2024-05-08T00:46:15.080Z"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [CardHistory] | false | none | none |
» cardNum | string | false | none | Replaced current card number |
» refNum | string | false | none | Reference number |
» txnDate | integer | false | none | Date of the transaction |
» amount | string | false | none | Amount of transaction |
» fundingId | integer | false | none | Funding ID |
» dstnFundingId | integer | false | none | Destination finding ID |
» txnType | string | false | none | Type of transaction |
» postDate | string | false | none | Post date |
» txnDesc | string | false | none | Description of transaction |
» merchant | string | false | none | Merchant details |
» responseCode | string | false | none | Response Code |
» responseDescription | string | false | none | Response Description |
» txnResult | string | false | none | Result of transaction |
» localAmount | string | false | none | Transaction amount in the local currency of the merchant |
» localTranCurrCode | string | false | none | Local currency code of the merchant |
» isMeta | boolean | false | none | none |
» utcPostDate | string | false | none | UTC (Transaction code) post date |
» utcInsertedDate | string | false | none | UTC (Transaction code) inserted date |
Modify cardholder information
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"firstName": "string",
"lastName": "string",
"personID": "string",
"ssn": "string",
"dob": "string",
"phone": "string",
"resAddr1": "string",
"resAddr2": "string",
"resAddr3": "string",
"resCity": "string",
"resState": "string",
"resZip": "string",
"addr1": "string",
"addr2": "string",
"addr3": "string",
"city": "string",
"state": "string",
"email": "string",
"zipCode": "string",
"others": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/updateCardHolderInfo", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /updateCardHolderInfo
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» firstName | body | string | false | none |
» lastName | body | string | false | none |
» personID | body | string | true | none |
» ssn | body | string | false | none |
» dob | body | string | false | none |
» phone | body | string | false | none |
» resAddr1 | body | string | false | none |
» resAddr2 | body | string | false | none |
» resAddr3 | body | string | false | none |
» resCity | body | string | false | none |
» resState | body | string | false | none |
» resZip | body | string | false | none |
» addr1 | body | string | false | none |
» addr2 | body | string | false | none |
» addr3 | body | string | false | none |
» city | body | string | false | none |
» state | body | string | false | none |
body | string | false | none | |
» zipCode | body | string | false | none |
» others | body | string | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"personID": "11111111",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» personID | string | false | none | none |
» fundingId | integer | false | none | none |
» dstnFundingId | integer | false | none | none |
» isMeta | boolean | false | none | none |
Retrieve statement list
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"proxyKey": "string",
"cardNum": "string",
"cpId": "string",
"clientID": "string",
"fundingId": 0,
"customerId": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getStatementList", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getStatementList
To get Card statement id
You can pass any of the below parameters based on your requirement:
- Pass Proxy number value to proxyKey parameter. In case of Proxy number cpId or clientID is necessary.
- Pass Card number value to cardNum parameter.
Pass default NULL value to fundingId parameter.
Pass default NULL value to cpId parameter.
Pass default NULL value to clientID parameter.
### To get Virtual account statement id
- Pass the Funding Id value to fundingId parameter.
### Tips: 1. To get the Funding Id, use getVirtualAccountList API.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» proxyKey | body | string | false | proxy number of the virtual account. Pass either proxy number or card number |
» cardNum | body | string | false | Card number of the virtual account. Pass either proxy number or card number |
» cpId | body | string | false | Row id retrieved from getCustomerProgramList API. Set if proxy key is used, mandatory if clientID is not set. |
» clientID | body | string | false | Set the Client Id if proxy key is used, mandatory if cpId is not set. |
» fundingId | body | integer | false | fundingid which can be retrieved from getVirtualAccountList API. Default value is NULL. |
» customerId | body | integer | false | The customer id linked with this user which can be retrieved from the response body of login API |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"stmtId": "string",
"closingDate": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | FIS API GetStatementList failed | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [StatementList] | false | none | none |
» stmtId | string | false | none | Id of the statement |
» closingDate | string | false | none | closing date of the statement |
Retrieve statement by Id
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getStatement?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getStatement?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"proxyKey": "string",
"cardNum": "string",
"cpId": "string",
"clientID": "string",
"customerId": 0,
"fundingId": 0,
"stmtId": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getStatement?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getStatement',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getStatement', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getStatement', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getStatement?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getStatement", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getStatement
To get Card statement
You can pass any of the below parameters based on your requirement:
- Pass Proxy number value to proxyKey parameter. In case of Proxy number cpId or clientID is necessary.
- Pass Card number value to cardNum parameter.
Pass default NULL value to fundingId parameter.
Pass default NULL value to cpId parameter.
Pass default NULL value to clientID parameter.
To get Virtual account statement
- Pass the Funding Id value to fundingId parameter.
Tips:
- To get the Funding Id, use getVirtualAccountList API.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» proxyKey | body | string | false | proxy number of the virtual account. Pass either proxy number or card number |
» cardNum | body | string | false | Card number of the virtual account. Pass either proxy number or card number |
» cpId | body | string | false | Row id retrieved from getCustomerProgramList API. Set if proxy key is used, mandatory if clientID is not set. |
» clientID | body | string | false | Set the Client Id if proxy key is used, mandatory if cpId is not set. |
» customerId | body | integer | false | The customer id linked with this user which can be retrieved from the response body of login API |
» fundingId | body | integer | false | fundingid which can be retrieved from getVirtualAccountList API. Default value is NULL. |
» stmtId | body | string | true | stmtId which can be retrieved from 'getStatementList' API |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"txnDate": "string",
"postDate": "string",
"refNum": 0,
"txnDetail": "string",
"debitAmt": "string",
"creditAmt": "string",
"txnID": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | FIS API GetStatement failed | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [Statements] | false | none | none |
» txnDate | string | false | none | Transaction date |
» postDate | string | false | none | Post date |
» refNum | integer | false | none | Reference number |
» txnDetail | string | false | none | Transaction detail |
» debitAmt | string | false | none | Debit amount from the account |
» creditAmt | string | false | none | Credit amount from the account |
» txnID | string | false | none | Transaction ID, a unique ID for every transaction |
Retrieve card/account balance[Depricated]
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy?sessionId=string&proxyNum=string&custProgId=0 \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy?sessionId=string&proxyNum=string&custProgId=0 HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy?sessionId=string&proxyNum=string&custProgId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy',
params: {
'sessionId' => 'string',
'proxyNum' => 'string',
'custProgId' => 'integer'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy', params={
'sessionId': 'string', 'proxyNum': 'string', 'custProgId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy?sessionId=string&proxyNum=string&custProgId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getCardBalanceByProxy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getCardBalanceByProxy
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
proxyNum | query | string | true | Alternative number to identify a card |
custProgId | query | integer | true | Row id retrieved from 'getCustomerProgramList' API |
purseNo | query | integer | false | Get balance of purse |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
purseNo: Get balance of purse
Example responses
200 Response
{
"cardBalance": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to retrieve balance by proxy number | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» cardBalance | string | false | none | Amount on card |
Retrieve card holder information
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 0,
"clientID": "string",
"personID": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getCardHolderInfo", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getCardHolderInfo
Note: The “shipDate” response will be provided for physical card orders from our ArrowEye fulfillment center. This data will only be available in our production environment
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» clientID | body | string | false | client ID retrieved from 'getCustomerProgramList' API |
» personID | body | string | true | person Id |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"first": "First name",
"last": "Last name",
"suffix": "Suffix",
"nameOnCard": "Name on card",
"addr1": "5TH STREET PARK AVENUE",
"addr2": "",
"addr3": "",
"city": "NEW JERSEY",
"state": "NJ",
"zipCode": "12345",
"country": "840",
"ssn": "1111111111",
"dob": "1/1/1990",
"email": "[email protected]",
"resAddr1": "5TH STREET PARK AVENUE",
"resAddr2": "",
"resAddr3": "",
"resCity": "NEW JERSEY",
"resState": "NJ",
"resZip": "12345",
"resCountry": "840",
"personID": "12345525",
"fundingId": 0,
"dstnFundingId": 0,
"shipDate": "2024/11/07",
"isMeta": false,
"accountOpenDate": "2021-11-01T09:25:58"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | CardHolderInfo |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Retrieve card info status
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"clientID": "31982",
"proxyKey": "5146952466619"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getCardInfoStatus", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getCardInfoStatus
Provides the information about the card, like card expiry date, card status.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» clientID | body | string | true | Client Identifier of that specific program, present in the response of getCustomerProgramList API line item. |
» proxyKey | body | string | true | Proxy key present in the response of searchAccount API line item. |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"expDate": "06/21",
"statusVal": 1,
"cardStatus": "string",
"fundingId": 0,
"dstnFundingId": 0,
"status": 2,
"statusDescription": "Active",
"updated": "6/21/2019 5:01:43 AM",
"fullExpDate": "6/30/2021 11:59:59 PM",
"isMeta": false
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» expDate | string | false | none | Expiration date of card |
» statusVal | integer | false | none | none |
» cardStatus | string | false | none | Status of card |
» fundingId | integer | false | none | none |
» dstnFundingId | integer | false | none | none |
» status | integer | false | none | none |
» statusDescription | string | false | none | none |
» updated | string | false | none | last card updated date and time |
» fullExpDate | string | false | none | Complete expiration date and time of card |
» isMeta | boolean | false | none | none |
Load a card by proxy[Depricated]
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"fundingId": 0,
"cpId": 0,
"amount": "string",
"customerId": 0,
"comment": "string",
"proxyKey": "string",
"purseNo": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/loadCardByProxy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /loadCardByProxy
We recommend using Orderendpoint loadCards API
Tips:
- For Instant Issue Card, if you attempt to load an unregistered card, the request will fail with the message Card not assigned. Load failed.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» fundingId | body | integer | true | none |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» amount | body | string | true | none |
» customerId | body | integer | true | none |
» comment | body | string | false | none |
» proxyKey | body | string | true | none |
» purseNo | body | integer | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
LoadCardByProxy failed
{
"errorCode": "400",
"errorMessage": "LoadCardByProxy failed"
}
{
"errorCode": "400",
"errorMessage": "Card not registered"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | None |
400 | Bad Request | LoadCardByProxy failed | Inline |
Response Schema
Transfer funds
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"fundingId": "string",
"dstnFundingId": "string",
"amount": "string",
"customerId": 0,
"paymentType": "string",
"comment": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/transferFunds", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /transferFunds
Transfer funds form one virtual account to other. 'Funding id' of the virtual account can be found in the response body of Get Virtual Account List
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» fundingId | body | string | true | fundingid which can be retrieved from 'getVirtualAccountList' API |
» dstnFundingId | body | string | true | none |
» amount | body | string | true | none |
» customerId | body | integer | true | none |
» paymentType | body | string | false | Payment type is 'Virtual' |
» comment | body | string | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"amount": "string",
"refNum": "string",
"cardBalance": "string",
"statusVal": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | FundTransfer |
400 | Bad Request | Transfer of funds failed | None |
Response Schema
Transfer funds by proxy
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"proxyKey": "string",
"cpId": "string",
"amount": "string",
"newProxyKey": "string",
"newCpId": "string",
"customerId": 0,
"paymentType": "string",
"comment": "string",
"srcAccount": "string",
"dstnAccount": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByProxy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /transferFundsByProxy
Transfer funds form one card to another card.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» proxyKey | body | string | false | Proxy number |
» cpId | body | string | false | Row id retrieved from 'getCustomerProgramList' API |
» amount | body | string | true | none |
» newProxyKey | body | string | false | none |
» newCpId | body | string | false | none |
» customerId | body | integer | true | none |
» paymentType | body | string | false | Payment type is 'Card' |
» comment | body | string | false | none |
» srcAccount | body | string | false | Source account nickname comes from 'getOrderListByCustomerAndStatus' API |
» dstnAccount | body | string | false | Destination account nickname comes from 'getOrderListByCustomerAndStatus' API |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"refNum": "string",
"statusVal": 0,
"amount": 0,
"cardBalance": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Transfer of funds by proxy failed | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» refNum | string | false | none | Reference number |
» statusVal | integer | false | none | Status value |
» amount | integer | false | none | none |
» cardBalance | integer | false | none | balance amount in the card |
Transfer funds by card number
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cardNum": "string",
"newCardNum": "string",
"amount": "string",
"comment": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/transferFundsByCardNum", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /transferFundsByCardNum
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cardNum | body | string | true | none |
» newCardNum | body | string | true | none |
» amount | body | string | true | none |
» comment | body | string | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"amount": "string",
"refNum": "string",
"cardBalance": "string",
"statusVal": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | FundTransfer |
400 | Bad Request | Transfer of funds failed | None |
Response Schema
Retrieve package list by subprogram
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram?sessionId=string&subprogramID=string&addToDB=true \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram?sessionId=string&subprogramID=string&addToDB=true HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram?sessionId=string&subprogramID=string&addToDB=true',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram',
params: {
'sessionId' => 'string',
'subprogramID' => 'string',
'addToDB' => 'boolean'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram', params={
'sessionId': 'string', 'subprogramID': 'string', 'addToDB': 'true'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram?sessionId=string&subprogramID=string&addToDB=true");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getPkgListBySubprogram", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getPkgListBySubprogram
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
subprogramID | query | string | true | Subprogram ID of the customer |
addToDB | query | boolean | true | Set to true to save packages to database |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"subProgID": "string",
"pkgID": "string",
"pkgDesc": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | failed to retrive the package list | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [PackageList] | false | none | none |
» subProgID | string | false | none | Sub program Id |
» pkgID | string | false | none | Package Id |
» pkgDesc | string | false | none | Package description |
Retrieve virtual account list
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList?sessionId=string&customerId=0&searchHierarchy=true \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList?sessionId=string&customerId=0&searchHierarchy=true HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList?sessionId=string&customerId=0&searchHierarchy=true',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList',
params: {
'sessionId' => 'string',
'customerId' => 'integer',
'searchHierarchy' => 'boolean'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList', params={
'sessionId': 'string', 'customerId': '0', 'searchHierarchy': 'true'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList?sessionId=string&customerId=0&searchHierarchy=true");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualAccountList", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getVirtualAccountList
To proceed with transaction related operations the first step is to retrieve the list of virtual accounts. These are accounts through which all the transactions take place.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
customerId | query | integer | true | A unique identifier given to a customer |
searchHierarchy | query | boolean | true | Shows a hierarchy of virtual accounts if set to true |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"fundingId": 0,
"customerId": 0,
"proxy": "string",
"packageId": 0,
"subprogramId": 0,
"clientId": 0,
"isMasterVA": true,
"firstName": "string",
"lastName": "string",
"ddaAct": "string",
"trn": "string",
"name": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | failed to retrive the virtual account list | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [VirtualAccountList] | false | none | none |
» fundingId | integer | false | none | Funding Id |
» customerId | integer | false | none | Customer Id |
» proxy | string | false | none | Proxy nuber of the card |
» packageId | integer | false | none | Package id |
» subprogramId | integer | false | none | Sub program Id |
» clientId | integer | false | none | Client Id |
» isMasterVA | boolean | false | none | Returns true if isMasterVA is true |
» firstName | string | false | none | First name |
» lastName | string | false | none | Last name |
» ddaAct | string | false | none | DDA number |
» trn | string | false | none | Routing number |
» name | string | false | none | none |
Retrieve virtual account history
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"clientID": "string",
"proxyKey": "string",
"startDate": "string",
"numDays": "string",
"customerId": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getVirtualActHistory", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getVirtualActHistory
Get transaction details of specific virtual account. The results will be filtered according to 'startDate' and 'numDays' specified in the request body. The 'proxyKey' can be found in the response body of Get Virtual Account List.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» clientID | body | string | false | none |
» proxyKey | body | string | false | none |
» startDate | body | string | false | none |
» numDays | body | string | false | none |
» customerId | body | integer | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"userID": "string",
"cardNum": "string",
"refNum": "string",
"comment": "string",
"txnDate": "string",
"amount": "string",
"merchantNameLoc": "string",
"postDate": "string",
"txnDesc": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | failed to retrive the virtual account history | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [VirtualAccountHistory] | false | none | none |
» userID | string | false | none | User ID |
» cardNum | string | false | none | Card number |
» refNum | string | false | none | Reference number for the transaction |
» comment | string | false | none | Comments |
» txnDate | string | false | none | Transaction date |
» amount | string | false | none | Transaction amount |
» merchantNameLoc | string | false | none | Combination of the cardholder name and six digits of the card number |
» postDate | string | false | none | Transaction post date |
» txnDesc | string | false | none | Transaction description |
Update Pin
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"proxyKey": "string",
"cpId": 0,
"newPin": "string",
"oldPin": "string",
"comment": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/changePinByProxy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /changePinByProxy
This is used to change the Pin of the card by providing cpId, proxy, oldPin, and newPin. If the oldPin sent is empty, then the system will set the newPin to the card.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» proxyKey | body | string | true | Proxy number of the card |
» cpId | body | integer | true | Row id retrieved from 'getCustomerProgramList' API |
» newPin | body | string | true | New Pin number to be set |
» oldPin | body | string | false | Old Pin number |
» comment | body | string | false | none |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
{
"proxyKey": "string",
"statusVal": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to change pin by proxy number | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» proxyKey | string | false | none | Proxy number |
» statusVal | integer | false | none | status value |
Retrieve virtual account by customer
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer?sessionId=string&customerId=0 \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer?sessionId=string&customerId=0 HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer?sessionId=string&customerId=0',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer',
params: {
'sessionId' => 'string',
'customerId' => 'integer'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer', params={
'sessionId': 'string', 'customerId': '0'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer?sessionId=string&customerId=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getAllVirtualAccountsByCustomer", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getAllVirtualAccountsByCustomer
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
customerId | query | integer | true | A unique identifier given to a customer |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
200 Response
[
{
"fundingId": 0,
"customerId": 0,
"proxy": "string",
"packageId": 0,
"subprogramId": 0,
"clientId": 0,
"isMasterVA": true,
"firstName": "string",
"lastName": "string",
"ddaAct": "string",
"trn": "string",
"name": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | failed to retrive the virtual account list by customer | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [VirtualAccountList] | false | none | none |
» fundingId | integer | false | none | Funding Id |
» customerId | integer | false | none | Customer Id |
» proxy | string | false | none | Proxy nuber of the card |
» packageId | integer | false | none | Package id |
» subprogramId | integer | false | none | Sub program Id |
» clientId | integer | false | none | Client Id |
» isMasterVA | boolean | false | none | Returns true if isMasterVA is true |
» firstName | string | false | none | First name |
» lastName | string | false | none | Last name |
» ddaAct | string | false | none | DDA number |
» trn | string | false | none | Routing number |
» name | string | false | none | none |
Set Card holder enrollment
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"msgType": "SMS",
"cardNum": "string",
"msgAddress": "string",
"country": 840,
"languageID": 1,
"doNotDisturb": 0
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/setCardholderEnrollmentWithAddlParams", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /setCardholderEnrollmentWithAddlParams
Creates or updates cardholder's messaging enrollment (SMS, Email), change the email address for messages, or the phone number for texts, opt for different messages.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» msgType | body | string | true | Message type to identify a service. like SMS,Email |
» cardNum | body | string | true | Card number to enroll - (16 Digit) |
» msgAddress | body | string | true | Mobile number (or email address) to use if there is a problem sending the alert |
» country | body | number | true | Country code of registered mobile number Use ISO 3166 Numeric Codes. Depending on options selected 840 might be the only value supported for your program. |
» languageID | body | number | true | Unique value which identifies a particular language selected by the cardholder during enrollment, value provided by FIS (Use 1 for English). |
» doNotDisturb | body | number | false | Should be 1 or 0. |
Detailed descriptions
» doNotDisturb: Should be 1 or 0. 0 = Disables DoNotDisturb option for the SMS enrollment. 1 = Enables DoNotDisturb option for the SMS enrollment. To enroll in this feature, on configuration level (Client, Program or Subprogram) it has to be supported. Only applicable to SMS
Example responses
200 Response
{
"statusVal": 0,
"statusMsg": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Message received by FIS | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» statusVal | integer | false | none | status value |
» statusMsg | string | false | none | This field will hold the Card Holder Enrollment data in XML format. Please refer to the file "getCardholderEnrollmentSample.xml" in the API description above for the XML structure. |
Retrieve Card holder enrollment
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"personID": "string",
"cardNum": "string",
"msgType": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getCardholderEnrollmentWithAddlParams", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getCardholderEnrollmentWithAddlParams
Retrieves messaging enrollment information for cardholder by card number and message type.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» personID | body | string | true | Person Id |
» cardNum | body | string | true | Card number |
» msgType | body | string | true | Message type to identify a service. like SMS,Email,RTN |
Example responses
200 Response
{
"statusVal": 0,
"statusMsg": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Message received by FIS | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» statusVal | integer | false | none | status value |
» statusMsg | string | false | none | This field will hold the Card Holder Enrollment data in xml format. Please refer to the file "getCardholderEnrollmentSample.xml" in the API description above for the xml structure. |
Transfer funds from card to card
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"senderCardNumber": "string",
"senderProxyKey": "string",
"receiverCardNumber": "string",
"receiverProxyKey": "string",
"clientID": "345848",
"comment": "string",
"amount": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/acct2AcctTransferFunds", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /acct2AcctTransferFunds
To transfer funds from a sender cardnumber to a receiver cardnumber.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» senderCardNumber | body | string | false | Card number of sender |
» senderProxyKey | body | string | false | Proxy Key of sender is required if senderCardNumber is not used |
» receiverCardNumber | body | string | false | Card number of receiver |
» receiverProxyKey | body | string | false | Proxy Key of receiver is required if receiverCardNumber is not used |
» clientID | body | string | false | client Identifier should be provided only if proxyKey is used. |
» comment | body | string | true | Comment |
» amount | body | string | true | Amount to be transfer |
Example responses
200 Response
{
"retrievalRefNo": "string",
"statusVal": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Message received by FIS | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» retrievalRefNo | string | false | none | Retrieval Reference Number of the transaction |
» statusVal | integer | false | none | status value |
Create account comment
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cardNum": "string",
"reasonCode": "string",
"comment": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/createAccountComment", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /createAccountComment
Insert a non-monetary record for the referenced cardnumber
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» cardNum | body | string | true | Card number |
» reasonCode | body | string | true | Please refer to the file "ReasonCodes.xlsx" in the API description above for reason codes. |
» comment | body | string | true | The comment to attach |
Example responses
200 Response
{
"statusValue": 0,
"successful": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to create comment | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» statusValue | integer | false | none | 1 = Success; 0= Failure with reason |
» successful | string | false | none | 0=No, 1=Yes |
Create account comment by proxy key
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"proxyKey": "string",
"subProgID": "string",
"comment": "string",
"reasonCode": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/createAccountCommentByProxy", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /createAccountCommentByProxy
Insert a non-monetary record for the card associated to the referenced proxy
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» proxyKey | body | string | true | Proxy number |
» subProgID | body | string | true | sub program Id |
» comment | body | string | true | The comment to attach |
» reasonCode | body | string | true | Please refer to the file "ReasonCodes.xlsx" in the API description above for reason codes. |
Example responses
200 Response
{
"statusValue": 0,
"confirmCode": "string",
"proxyKey": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to create comment | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» statusValue | integer | false | none | 1 = Success; 0= Failure with reason |
» confirmCode | string | false | none | FIS generated confirmation number |
» proxyKey | integer | false | none | Proxy number of card to which comment was attached |
Assign secondary card
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"clientID": "345848",
"proxyKey": "6240083446069",
"pkgID": "707225",
"subProgID": "785786",
"shippingId": "15",
"personID": 1089319942
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/assignSecondaryCardFees", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /assignSecondaryCardFees
Associate a secondary physical card to an existing account.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» clientID | body | string | true | client Identifier |
» proxyKey | body | string | true | Proxy number of Primary card |
» pkgID | body | string | true | Package Identifier associated to the secondary card |
» subProgID | body | string | true | sub program Identifier |
» shippingId | body | string | false | Shipping Identifier |
» personID | body | number | false | Person Identifier present under the response of searchAccount API |
Example responses
200 Response
{
"cardNum": "string",
"proxyKey": 0,
"statusValue": 0,
"confirmCode": "string",
"totalFees": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to assign secondary card | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» cardNum | string | false | none | Secondary card number |
» proxyKey | integer | false | none | secondary cardnum proxykey |
» statusValue | integer | false | none | 1 = Success; 0= Failure with reason |
» confirmCode | string | false | none | Confirm code |
» totalFees | string | false | none | Total Fees |
Create a person identifier
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/createPerson?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/createPerson?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"clientID": "string",
"firstName": "string",
"lastName": "string",
"addr1": "string",
"city": "string",
"ssn": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/createPerson?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/createPerson',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/createPerson', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/createPerson', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/createPerson?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/createPerson", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /createPerson
Create a person Identifier to an existing cardholder.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» clientID | body | string | true | client Identifier |
» firstName | body | string | true | Cardholder's first name |
» lastName | body | string | true | Cardholder's last name |
» addr1 | body | string | true | Cardholder's address line-1 |
» city | body | string | true | Cardholder's mailing city |
» ssn | body | string | true | Cardholder's SSN or unique identifier |
Example responses
200 Response
{
"personID": "string",
"statusValue": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to create person Identifier | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» personID | string | false | none | Secondary person Identifier |
» statusValue | integer | false | none | 1 = Success; 0= Failure with reason |
Retrieve DDA and TRN.
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cardNum": "string",
"proxyKey": "string",
"clientID": "string"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getDirectAccessInfoByCard", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getDirectAccessInfoByCard
To get DDA and TRN info
First way to get DDA and TRN info - Pass the proxy number value to proxyKey parameter. - Pass the ClientId value to clientId parameter.
Second way to get DDA and TRN info - Pass the card number value to cardNum parameter.
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier(sessionId) parameter you receive after successful login |
body | body | object | true | none |
» cardNum | body | string | true | Card number |
» proxyKey | body | string | true | Proxy key of the card |
» clientID | body | string | true | Unique Client Id |
Example responses
200 Response
{
"cardNum": "string",
"subProgID": "string",
"statusVal": 0,
"cardStatus": "string",
"trn": "string",
"dda": "string",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Failed to get direct access info by card | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» cardNum | string | false | none | Card number |
» subProgID | string | false | none | none |
» statusVal | integer | false | none | none |
» cardStatus | string | false | none | none |
» trn | string | false | none | none |
» dda | string | false | none | none |
» fundingId | integer | false | none | none |
» dstnFundingId | integer | false | none | none |
» isMeta | boolean | false | none | none |
Retrieve related cards
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 17296,
"cardNumber": "4389630005205643",
"proxyKey": "5522055323645",
"showPersonSummary": "0"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getRelatedCards", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getRelatedCards
To get related cards by proxy or card number
First way to get related cards by card number
- Pass Card number value to cardNumber parameter.
- Pass customer program Id value to cpId parameter.
- Pass "0" or "1" to showPersonSummary parameter.
Second way to get related cards by proxy
- Pass proxy key value to proxyKey parameter.
- Pass customer program Id value to cpId parameter.
- Pass "0" or "1" to showPersonSummary parameter.
Tips:
- To get person details, pass "1" to showPersonSummary parameter.
- For initial Physical or digital card, we have relation as 0.
- For replaced card, we have relation as 0.
- For Additional cardholder card, we have relation as 6.
FIS Relation Type
- 0: Self (Accountholder)
- 1: Spouse (Spouse accountholder)
- 3: Parent (Parent of the Cardholder)
- 6: Friend (Friend or 'other' relationship, typically used for Secondary cards)
- 18: Companion (Used for the Companion/Relationship program - cardholder who receives funds from the Administrator and has limited card load functionality)
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row Id retrieved from "getCustomerProgramList" API |
» cardNumber | body | string | false | Card number received from "searchAccount" API |
» proxyKey | body | string | false | Proxy key received from "searchAccount" API |
» showPersonSummary | body | string | false | Person details |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
SUCCESS
[
{
"cardNum": "4389630005253668",
"proxyKey": "5317532041661",
"panProxy": "5522055323645",
"Status": "1",
"statusName": "READY",
"statusDescription": "Ready for activation",
"expDate": "11/27",
"lExpDate": "11/27",
"additionalCard": "0",
"cardType": "PHYSICAL",
"dda": "2552764056404",
"trn": "073972181"
}
]
[
{
"cardNum": "4389630005253668",
"proxyKey": "5317532041661",
"panProxy": "5522055323645",
"Status": "1",
"statusName": "READY",
"statusDescription": "Ready for activation",
"expDate": "11/27",
"lExpDate": "11/27",
"additionalCard": "0",
"cardType": "PHYSICAL",
"dda": "2552764056404",
"trn": "073972181",
"personID": "1100743463",
"holderID": "1100743463",
"buyerLoaderID": "1100743463",
"programTitle": "MetaBank Payroll",
"programName": "MetaBank Payroll",
"subProgramTitle": "Payroll Plus",
"cardTypeName": "NORMAL",
"cardTypeDescription": "Card type description",
"relation": "Person relation to the account holder",
"relationDescription": "Person relation to the account holder",
"salutation": "Honorific such as Dr/Mr/Mrs",
"first": "Person first name provided while ordering or registering card",
"middle": "Person midlle name provided while ordering or registering card",
"last": "Person last name provided while ordering or registering card",
"suffix": "Suffix such as Jr/Sr/II",
"title": "Title of person provided while ordering or registering card",
"nameOnCard": "Persons name on card provided while ordering or registering card",
"vip": "Flag to indicate if cardholder is to receive VIP traetment"
}
]
400 Response
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
Response Schema
Retrieve latest card, bal & status
Code samples
# You can also use wget
curl -X POST https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus?sessionId=string \
-H 'Content-Type: */*' \
-H 'Accept: application/json'
POST https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus?sessionId=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Content-Type: */*
Accept: application/json
const inputBody = '{
"cpId": 18563,
"cardNumber": "4389630016262658",
"proxyKey": "3468629087653",
"showPersonSummary": "0"
}';
const headers = {
'Content-Type':'*/*',
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus?sessionId=string',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => '*/*',
'Accept' => 'application/json'
}
result = RestClient.post 'https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus',
params: {
'sessionId' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': '*/*',
'Accept': 'application/json'
}
r = requests.post('https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus', params={
'sessionId': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => '*/*',
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('POST','https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus?sessionId=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"*/*"},
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://portal-api-uat.dashsolutions.com/_ah/api/getLatestCardBalStatus", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
POST /getLatestCardBalStatus
To get card balance, its status, and the related cards by proxy or card number
First way to get details by card number
- Pass Card number value to cardNumber parameter.
- Pass customer program Id value to cpId parameter.
- Pass "0" or "1" to showPersonSummary parameter.
Second way to get details by proxy
- Pass proxy key value to proxyKey parameter.
- Pass customer program Id value to cpId parameter.
- Pass "0" or "1" to showPersonSummary parameter.
Tips:
- To get person details, pass "1" to showPersonSummary parameter.
- For initial Physical or digital card, we have relation as 0.
- For replaced card, we have relation as 0.
- For Additional cardholder card, we have relation as 6.
FIS Relation Type
- 0: Self (Accountholder)
- 1: Spouse (Spouse accountholder)
- 3: Parent (Parent of the Cardholder)
- 6: Friend (Friend or 'other' relationship, typically used for Secondary cards)
- 18: Companion (Used for the Companion/Relationship program - cardholder who receives funds from the Administrator and has limited card load functionality)
Body parameter
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
body | body | object | true | none |
» cpId | body | integer | true | Row ID retrieved from "getCustomerProgramList" API |
» cardNumber | body | string | false | Card number received from "searchAccount" API |
» proxyKey | body | string | false | Proxy key received from "searchAccount" API |
» showPersonSummary | body | string | false | Person details |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
Example responses
SUCCESS
{
"statusVal": 1,
"accountBalance": "2.00",
"expDate": "03/28",
"cardStatus": "ACTIVE",
"status": "2",
"statusDescription": "Active",
"cards": [
{
"cardNum": "4389630025896157",
"proxyKey": "9910969002157",
"panProxy": "3468629087653",
"Status": "2",
"statusName": "ACTIVE",
"statusDescription": "Active",
"expDate": "03/28",
"lExpDate": "02/33",
"additionalCard": "0",
"cardType": "DIGITAL"
}
]
}
{
"statusVal": 1,
"accountBalance": "2.00",
"expDate": "03/28",
"cardStatus": "ACTIVE",
"status": "2",
"statusDescription": "Active",
"cards": [
{
"cardNum": "4389630025896157",
"proxyKey": "9910969002157",
"panProxy": "3468629087653",
"Status": "2",
"statusName": "ACTIVE",
"statusDescription": "Active",
"expDate": "03/28",
"lExpDate": "02/33",
"additionalCard": "0",
"cardType": "DIGITAL",
"personID": "1101596427",
"holderID": "1101596427",
"buyerLoaderID": "1101596427",
"programTitle": "MetaBank Payroll",
"programName": "MetaBank Payroll",
"subProgramTitle": "Payroll Plus",
"cardTypeName": "NORMAL",
"cardTypeDescription": "Normal card",
"relation": "0",
"relationDescription": "SELF",
"salutation": "",
"first": "PRATHAMESH",
"middle": "S",
"last": "SHEWALE",
"suffix": "MR",
"title": "",
"nameOnCard": "",
"vip": ""
}
]
}
400 Response
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
503 | Service Unavailable | Service unavailable | ErrorObj503 |
Response Schema
Receipt images for transaction ref
Code samples
# You can also use wget
curl -X GET https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt?sessionId=string&cpId=0&proxyKey=string&transactionRefNum=string \
-H 'Accept: application/json'
GET https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt?sessionId=string&cpId=0&proxyKey=string&transactionRefNum=string HTTP/1.1
Host: portal-api-uat.dashsolutions.com
Accept: application/json
const headers = {
'Accept':'application/json'
};
fetch('https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt?sessionId=string&cpId=0&proxyKey=string&transactionRefNum=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json'
}
result = RestClient.get 'https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt',
params: {
'sessionId' => 'string',
'cpId' => 'integer',
'proxyKey' => 'string',
'transactionRefNum' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt', params={
'sessionId': 'string', 'cpId': '0', 'proxyKey': 'string', 'transactionRefNum': 'string'
}, headers = headers)
print(r.json())
<?php
require 'vendor/autoload.php';
$headers = array(
'Accept' => 'application/json',
);
$client = new \GuzzleHttp\Client();
// Define array of request body.
$request_body = array();
try {
$response = $client->request('GET','https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}
// ...
URL obj = new URL("https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt?sessionId=string&cpId=0&proxyKey=string&transactionRefNum=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://portal-api-uat.dashsolutions.com/_ah/api/getTxnReceipt", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
GET /getTxnReceipt
To get the transaction receipt image link
- Pass customer program Id value to cpId parameter
- Pass card proxy key value to proxyKey parameter
- Pass transaction reference number to transactionRefNum parameter
### Note - Transaction receipt link is valid for only 5 minutes.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
sessionId | query | string | true | Session Identifier (sessionId) parameter you receive after successful login. |
cpId | query | integer | true | Customer program Id(cpId) parameter you will receive from getCustomerProgramList API, as parameter named rowId. |
proxyKey | query | string | true | Card proxy number(proxyKey) to identify a card. |
transactionRefNum | query | string | true | Transaction reference number (transactionRefNum) parameter you will get from getCardHistory API, as parameter named refNum. |
Detailed descriptions
sessionId: Session Identifier (sessionId) parameter you receive after successful login.
cpId: Customer program Id(cpId) parameter you will receive from getCustomerProgramList API, as parameter named rowId.
proxyKey: Card proxy number(proxyKey) to identify a card.
transactionRefNum: Transaction reference number (transactionRefNum) parameter you will get from getCardHistory API, as parameter named refNum.
Example responses
200 Response
{
"receiptImageUrl": "https://prepaiddev.blob.core.windows.net/receipts/TransactionImg.jpg?sv=2019-07-07&sr=b&sig=JF8PX%2FCeiLeFhfOzGry8siMiSdG25bo%2BOPWMNxf8EB0%3D&se=2024-12-10T17%3A14%3A38Z&sp=r"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | SUCCESS | Inline |
400 | Bad Request | Bad-Request | ErrorObj400 |
401 | Unauthorized | Un-Authorized | ErrorObj401 |
404 | Not Found | Not Found | ErrorObj404 |
500 | Internal Server Error | Server side error | ErrorObj500 |
503 | Service Unavailable | Service unavailable | ErrorObj503 |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» receiptImageUrl | string | false | none | Transaction receipt link |
Schemas
User
{
"userId": 0,
"loginId": "string",
"sessionId": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"customerId": 0,
"customerType": "string",
"customerName": "string",
"role": "string",
"isHost": false,
"isHostAdmin": false,
"deleted": false,
"canLoadCard": false,
"canViewLoadHistory": false,
"kind": "string",
"etag": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userId | integer(int64) | false | none | Unique identifier of the logged in user |
loginId | string | false | none | Logged in username |
sessionId | string | false | none | Unique session identifier after successful login |
firstName | string | false | none | User's first name |
lastName | string | false | none | User's last name |
string | false | none | User's email | |
customerId | integer | false | none | The customer Id linked to the logged in user |
customerType | string | false | none | Customer type that can be retrieved by 'getCustomerTypes' API |
customerName | string | false | none | Customer Name |
role | string | false | none | Role of the customer |
isHost | boolean | false | none | Returns true if the role is host |
isHostAdmin | boolean | false | none | Returns true if the role is host admin |
deleted | boolean | false | none | Returns true if the role is host |
canLoadCard | boolean | false | none | Returns true if can load card is true |
canViewLoadHistory | boolean | false | none | Returns true if can view load history is true |
kind | string | false | none | Used to indicate the type or category of the resource |
etag | string | false | none | Entity tag is used for caching and version control |
CustomerProgram
{
"rowId": 0,
"productId": 0,
"customerId": 0,
"planId": 0,
"commissionId": 0,
"einCheck": true,
"ofacCheck": true,
"bgCheck": true,
"launchDate": "string",
"websiteCheck": true,
"status": "string",
"productType": "string",
"productName": "string",
"hasVirtualFunding": true,
"isInstantIssue": true,
"permSubprogramId": 0,
"permSubProgramName": "string",
"tmpSubProgramId": 0,
"tmpPackageId": 0,
"tmpSubProgramName": "string",
"virtualSubprogramId": 0,
"virtualSubprogramName": "string",
"pricingPlanName": "string",
"commissionName": "string",
"commissionReferrerName": "string",
"permPackageName": "string",
"tmpPackageName": "string",
"invoicePymtOption": "string",
"VirtualPackageName": "string",
"shippingMethod": "string",
"fundingSource": "string",
"receiptAction": "string",
"customerName": "string",
"activeCount": 0,
"inventoryCount": 0,
"isDeleted": true,
"topParentId": 0,
"autoCreated": true,
"dueDiligenceNotes": "string",
"hideOtherCards": true,
"fundingId": 0,
"PlanId": 0,
"permPackageId": 0
}
Every Onboarder customer is a sub program
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
rowId | integer | false | none | Customer program ID |
productId | integer | false | none | Unique ID that is tied with the product (card) |
customerId | integer | false | none | Unique identifier associated with the customer |
planId | integer | false | none | Plan ID |
commissionId | integer | false | none | Commission ID |
einCheck | boolean | false | none | EIN (Employer Identification Number), also known as a Federal Tax Identification Number check. |
ofacCheck | boolean | false | none | Set to true if the customer passes the OFAC check |
bgCheck | boolean | false | none | Set to true if the customer passes the background verification check |
launchDate | string | false | none | Launch date |
websiteCheck | boolean | false | none | Set to true if website verificaton passes |
status | string | false | none | Describes the status of the customer program |
productType | string | false | none | Type of the product |
productName | string | false | none | Name of the product |
hasVirtualFunding | boolean | false | none | Set to true if customer has opted for virtual funding |
isInstantIssue | boolean | false | none | Returns true if it is an instant issue card |
permSubprogramId | integer | false | none | Permanant subprogram ID |
permSubProgramName | string | false | none | Permanant subprogram name |
tmpSubProgramId | integer | false | none | Temporary subprogram ID |
tmpPackageId | integer | false | none | Temporary package ID |
tmpSubProgramName | string | false | none | Temporary subprogram name |
virtualSubprogramId | integer | false | none | Virtual subprogram ID |
virtualSubprogramName | string | false | none | Virtual subprogram name |
pricingPlanName | string | false | none | Customer program pricing plan name |
commissionName | string | false | none | Customer program commission name |
commissionReferrerName | string | false | none | Customer program commission referrer name |
permPackageName | string | false | none | Permanant package name |
tmpPackageName | string | false | none | Temporary package name |
invoicePymtOption | string | false | none | Invoice payment option description |
VirtualPackageName | string | false | none | Virtual package name |
shippingMethod | string | false | none | Shipping method if individual or bulk |
fundingSource | string | false | none | Funding source details |
receiptAction | string | false | none | Receipt action |
customerName | string | false | none | Customer name |
activeCount | integer | false | none | Active count |
inventoryCount | integer | false | none | Inventory count for the customer program |
isDeleted | boolean | false | none | True if deletion is set |
topParentId | integer | false | none | Top parent ID |
autoCreated | boolean | false | none | True if auto creation is set |
dueDiligenceNotes | string | false | none | Notes |
hideOtherCards | boolean | false | none | Hides other cards if set to true |
fundingId | integer | false | none | Funding ID |
PlanId | integer | false | none | Plan ID |
permPackageId | integer | false | none | Permanant package ID |
Customer
{
"customerId": 0,
"name": "string",
"address1": "string",
"address2": "string",
"city": "string",
"state": "string",
"zip": 0,
"zip4": 0,
"ein": "string",
"website": "string",
"businessType": "string",
"businessYrs": 0,
"noEmployees": "string",
"contactName": "string",
"contactEmail": "string",
"contactPhone": "string",
"customerType": "string",
"topClientId": 0,
"clientId": "string",
"accountMgr": "string",
"accountMgrId": 0,
"launchDate": "string",
"parentId": 0,
"parentName": "string",
"showVirtualAccountDashboard": true,
"twoFactorEnabled": true,
"hideOtherCards": true,
"notificationEmail": "string",
"referredBy": "string",
"ftpPath": "string",
"ftpUserId": "string",
"ftpPassword": "string",
"phoneExtn": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
customerId | integer | false | none | Customer Id linked with the logged in user |
name | string | false | none | Name of the logged in Customer |
address1 | string | false | none | Address line 1 |
address2 | string | false | none | Address line 2 |
city | string | false | none | Residential address |
state | string | false | none | Residential State |
zip | integer | false | none | Residential zip |
zip4 | integer | false | none | "ZIP4 is an extended version of the standard U.S. ZIP code. Used to describe the users adress zip4" |
ein | string | false | none | Ein number (Employer Identification Number), also known as a Federal Tax Identification Number, is a unique nine-digit number. |
website | string | false | none | Website of the customer |
businessType | string | false | none | Bussiness type of the customer |
businessYrs | integer | false | none | Bussiness years of the customer |
noEmployees | string | false | none | Number of employees of the customer |
contactName | string | false | none | Contact name of the customer |
contactEmail | string | false | none | Contact email of the customer |
contactPhone | string | false | none | Contact phone of the customer |
customerType | string | false | none | Name of the customer |
topClientId | integer | false | none | A value from top clientIds retrieved from 'getTopClientList' API |
clientId | string | false | none | Client identification number |
accountMgr | string | false | none | Name of the account manager |
accountMgrId | integer | false | none | Id of the account manager |
launchDate | string | false | none | none |
parentId | integer | false | none | Parent customer Id |
parentName | string | false | none | Parent customer name |
showVirtualAccountDashboard | boolean | false | none | Shows virtual account dashbpard when set to true |
twoFactorEnabled | boolean | false | none | True if 2FA is enabled by the customer |
hideOtherCards | boolean | false | none | Other cards are hidden if set to true |
notificationEmail | string | false | none | Recieves notification via email when set to true |
referredBy | string | false | none | Name by whom the customer is refered by |
ftpPath | string | false | none | FTP path name |
ftpUserId | string | false | none | FTP user identifier |
ftpPassword | string | false | none | FTP password |
phoneExtn | string | false | none | Phone extension number |
OrderDetailsByOrderId
{
"orderDetailId": 392886,
"firstName": "FirstName",
"lastName": "LastName",
"amount": 0.01,
"dateOfBirth": "10/10/1998",
"ssn": "1231231231",
"mailingAddr1": "1st Line St",
"mailingAddr2": "XYZ Road",
"mailingCity": "New York",
"mailingState": "NY",
"mailingPostalCode": "12345",
"phone": "1231231231",
"shippingAddress1": "1st Line St",
"shippingAddress2": "XYZ Road",
"shippingCity": "New York",
"shippingState": "NY",
"shippingZip": "12345",
"panNumber": "6928",
"proxyKey": "3415060020922",
"trn": "000060020922",
"dda": "00000020922",
"expDate": "10/31/2027 11:59:59 PM",
"retryCount": 0,
"status": "Completed",
"bulkCardQuantity": 0,
"email": "[email protected]",
"otherInfo": "TEST1",
"employeeId": "Test1",
"futureOrderDetailId": 0,
"bounce": true,
"clicked": false,
"cardType": "PHYSICAL",
"smsSent": false,
"orderId": 243789,
"isOrderCancel": false,
"refNum": "CC0074D4145D",
"smsLinkClicked": false,
"tinyUrlEmail": "https://uatdash.page.link/4TdC",
"tinyUrlSms": "uatdash.page.link/RrhS",
"clientDefinedField1": "Test field 1",
"clientDefinedField2": "Test field 2",
"clientDefinedField3": "Test field 3",
"clientDefinedField4": "null",
"clientDefinedField5": "Test field 5"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
orderDetailId | integer | false | none | Orderdetail Id |
firstName | string | false | none | First name of the customer |
lastName | string | false | none | Last name of the customer |
amount | number | false | none | Amount paid |
dateOfBirth | string | false | none | Date of Birth of the customer |
ssn | string | false | none | SSN of the customer |
mailingAddr1 | string | false | none | Mailing address line 1 of the customer |
mailingAddr2 | string | false | none | Mailing address line 2 of the customer |
mailingCity | string | false | none | Mailing address city of the customer |
mailingState | string | false | none | Mailing address state of the customer |
mailingPostalCode | string | false | none | Mailing address postal code of the customer |
phone | string | false | none | Phone number of the customer |
shippingAddress1 | string | false | none | Shipping address line 1 of the customer |
shippingAddress2 | string | false | none | Shipping address line 2 of the customer |
shippingCity | string | false | none | Shipping address line 1 of the customer |
shippingState | string | false | none | Shipping address state of the customer |
shippingZip | string | false | none | Shipping address zip of the customer |
panNumber | string | false | none | PAN number of the customer |
proxyKey | string | false | none | Proxy key number |
trn | string | false | none | Transaction number |
dda | string | false | none | DDA account number |
expDate | string | false | none | Expiration date of the card |
retryCount | integer | false | none | Order retry count |
status | string | false | none | Order status |
bulkCardQuantity | integer | false | none | If the order is a bulk order, the quantity of it |
string | false | none | Email address of the customer | |
otherInfo | string | false | none | Additional information |
employeeId | string | false | none | Employee unique identifier |
futureOrderDetailId | integer | false | none | Future card order ID |
bounce | boolean | false | none | Set to true if bounced |
clicked | boolean | false | none | Set to true if clicked |
cardType | string | false | none | Type of card if digital or physical |
smsSent | boolean | false | none | Set to true if order SMS is sent |
orderId | integer | false | none | Order ID |
isOrderCancel | boolean | false | none | Set to true if card order is cancelled |
refNum | string | false | none | Order reference number |
smsLinkClicked | boolean | false | none | Set to true if SMS link is clicked |
tinyUrlEmail | string | false | none | Tiny URL email |
tinyUrlSms | string | false | none | Tiny URL SMS (if enabled) |
clientDefinedField1 | string | false | none | Custom defined field |
clientDefinedField2 | string | false | none | Custom defined field |
clientDefinedField3 | string | false | none | Custom defined field |
clientDefinedField4 | string | false | none | Custom defined field |
clientDefinedField5 | string | false | none | Custom defined field |
OrdersIIC
{
"orderId": 271842,
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": 0,
"cardsDetails": {}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
orderId | integer | false | none | ID given to the order placed |
fundingId | integer | false | none | Funding Id default 0 |
dstnFundingId | integer | false | none | Destination Funding Id default 0 |
isMeta | integer | false | none | Meta default value false |
cardsDetails | object | false | none | Array of card details |
OrdersPayrollMultiple
{
"orderId": "271842",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": 0,
"cardsDetails": {}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
orderId | string | false | none | Id given to the order placed |
fundingId | integer | false | none | Funding Id default 0 |
dstnFundingId | integer | false | none | Destination Funding Id default 0 |
isMeta | integer | false | none | Meta default value false |
cardsDetails | object | false | none | Array of card details |
ErrorObj400
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
},
"code": 400,
"message": "Please provide [Property Name]"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerErrorObj400 | false | none | none |
code | integer | false | none | 400 Error |
message | string | false | none | Error message |
InnerErrorObj400
{
"domain": "global",
"reason": "badRequest",
"message": "Please provide [Property Name]"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | Error reason |
message | string | false | none | Error message |
ErrorObj401
{
"error": {
"domain": "global",
"reason": "required",
"message": "Session not found - **************************************************9002"
},
"code": 401,
"message": "Session not found - **************************************************9002"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerErrorObj401 | false | none | none |
code | integer | false | none | 401 Error |
message | string | false | none | Error message |
InnerErrorObj401
{
"domain": "global",
"reason": "required",
"message": "Session not found - **************************************************9002"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | none |
message | string | false | none | Error message |
ErrorObj404
{
"error": {
"domain": "global",
"reason": "notFound",
"message": "Data not found ..."
},
"code": 404,
"message": "Data not found ..."
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerErrorObj404 | false | none | none |
code | integer | false | none | 404 Error |
message | string | false | none | Error message |
InnerErrorObj404
{
"domain": "global",
"reason": "notFound",
"message": "Data not found ..."
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | Error reason |
message | string | false | none | Error message |
ErrorObj403
{
"error": {
"domain": "global",
"reason": "forbidden",
"message": "The selected card has already been assigned to a customer. Please try another card."
},
"code": 403,
"message": "The selected card has already been assigned to a customer. Please try another card."
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerErrorObj403 | false | none | none |
code | integer | false | none | 403 Error |
message | string | false | none | Error message |
InnerErrorObj403
{
"domain": "global",
"reason": "forbidden",
"message": "The selected card has already been assigned to a customer. Please try another card."
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | Error Reason |
message | string | false | none | Error message |
ErrorObj500
{
"error": {
"domain": "global",
"reason": "backendError",
"message": "Value cannot be null. (Parameter 's')"
},
"code": 500,
"message": "Value cannot be null. (Parameter 's')"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerErrorObj500 | false | none | none |
code | integer | false | none | 500 Error |
message | string | false | none | Error message |
InnerErrorObj500
{
"domain": "global",
"reason": "backendError",
"message": "Value cannot be null. (Parameter 's')"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | Error reason |
message | string | false | none | Error message |
ErrorObj503
{
"error": {
"domain": "global",
"reason": "Processing platform exception",
"message": "FIS error code 0 error message Invalid or Missing card number.|0|-1"
},
"code": 503,
"message": "FIS error code 0 error message Invalid or Missing card number.|0|-1"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerErrorObj503 | false | none | none |
code | integer | false | none | 503 Error |
message | string | false | none | Error message |
InnerErrorObj503
{
"domain": "global",
"reason": "Processing platform exception",
"message": "FIS error code 0 error message Invalid or Missing card number.|0|-1"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | Error reason |
message | string | false | none | Error message |
OrderTrackingDetails
{
"orderId": 243806,
"trackingNumber": "CC00901031FB"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
orderId | integer | false | none | Orderid |
trackingNumber | string | false | none | TrackingNumber of the order |
ShippingInformation
{
"proxyKey": "0000000423952",
"trackingNumber": "CC00901031FB",
"shippingDate": "20/05/2022",
"shippingType": "individualShip",
"shippingMethod": "USPS First Class"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
proxyKey | string | false | none | ProxyKey of the order |
trackingNumber | string | false | none | TrackingNumber of the order |
shippingDate | string | false | none | ShippingDate of the order |
shippingType | string | false | none | ShippingType of the order |
shippingMethod | string | false | none | ShippingMethod of the order |
RelatedCards
[
{
"cardNum": "4389630005253668",
"proxyKey": "5317532041661",
"panProxy": "5522055323645",
"Status": "1",
"statusName": "READY",
"statusDescription": "Ready for activation",
"expDate": "11/27",
"lExpDate": "11/27",
"additionalCard": "0",
"cardType": "PHYSICAL",
"dda": "2552764056404",
"trn": "073972181"
}
]
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [RelatedCard] | false | none | none |
RelatedCard
{
"cardNum": "4389630005253668",
"proxyKey": "5317532041661",
"panProxy": "5522055323645",
"Status": "1",
"statusName": "READY",
"statusDescription": "Ready for activation",
"expDate": "11/27",
"lExpDate": "11/27",
"additionalCard": "0",
"cardType": "PHYSICAL",
"dda": "2552764056404",
"trn": "073972181"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card number of card |
proxyKey | string | false | none | Proxy key of card |
panProxy | string | false | none | Primary cards PAN proxy |
Status | string | false | none | Card status |
statusName | string | false | none | Short name of status |
statusDescription | string | false | none | Long name of status |
expDate | string | false | none | Physical card expiration date |
lExpDate | string | false | none | Logical card expiration date |
additionalCard | string | false | none | Value is 0 if the account holder is the cardholder, otherwise 1. |
cardType | string | false | none | Card type physical or digital |
dda | string | false | none | Direct access number of card |
trn | string | false | none | Direct access routing number of card |
CardLoad_Unload
{
"refNum": "CC00425339ED",
"statusVal": 1,
"amount": "0.02",
"cardBalance": "0.07",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
refNum | string | false | none | Transaction reference number |
statusVal | integer | false | none | status of the transaction |
amount | string | false | none | Amount to be loaded/unloaded in/from the card |
cardBalance | string | false | none | Balance amount in the card |
fundingId | integer | false | none | Funding ID |
dstnFundingId | integer | false | none | Destination funding ID |
isMeta | boolean | false | none | Returns true if isMeta is set to true |
CardStatus
{
"orderId": "271496",
"statusVal": 1,
"cardStatus": "ACTIVATE",
"fundingId": 0,
"dstnFundingId": 0,
"orderDetailId": 514892,
"isMeta": false
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
orderId | string | false | none | Order Id |
statusVal | integer | false | none | status of the transaction (0) in case of success |
cardStatus | string | false | none | status of card |
fundingId | integer | false | none | Funding ID |
dstnFundingId | integer | false | none | Destination funding ID |
orderDetailId | integer | false | none | Order detail Id |
isMeta | boolean | false | none | none |
CardReplace
{
"cardNum": "************0037",
"proxyKey": "0000000423952",
"txnlogId": 0,
"statusVal": 1,
"confirmCode": "",
"fundingId": 0,
"dstnFundingId": 0,
"isMeta": false
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Replaced current card number |
proxyKey | string | false | none | New ProxyKey systematically generated or New ProxyKey for the 'newcardnum' Provided. |
txnlogId | integer | false | none | Status of the transaction |
statusVal | integer | false | none | Status value |
confirmCode | string | false | none | none |
fundingId | integer | false | none | Funding ID |
dstnFundingId | integer | false | none | Destination funding ID |
isMeta | boolean | false | none | none |
CardHistory
{
"cardNum": "************8034",
"refNum": "CC00142F158D",
"txnDate": 0,
"amount": "0",
"fundingId": 0,
"dstnFundingId": 0,
"txnType": "Non-Mon Update",
"postDate": "05/07/2024",
"txnDesc": "Reset uses for the fee track",
"merchant": "",
"responseCode": "",
"responseDescription": "",
"txnResult": "Completed OK",
"localAmount": "",
"localTranCurrCode": "",
"isMeta": false,
"utcPostDate": "2024-05-08T00:46:15.080Z",
"utcInsertedDate": "2024-05-08T00:46:15.080Z"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Replaced current card number |
refNum | string | false | none | Reference number |
txnDate | integer | false | none | Date of the transaction |
amount | string | false | none | Amount of transaction |
fundingId | integer | false | none | Funding ID |
dstnFundingId | integer | false | none | Destination finding ID |
txnType | string | false | none | Type of transaction |
postDate | string | false | none | Post date |
txnDesc | string | false | none | Description of transaction |
merchant | string | false | none | Merchant details |
responseCode | string | false | none | Response Code |
responseDescription | string | false | none | Response Description |
txnResult | string | false | none | Result of transaction |
localAmount | string | false | none | Transaction amount in the local currency of the merchant |
localTranCurrCode | string | false | none | Local currency code of the merchant |
isMeta | boolean | false | none | none |
utcPostDate | string | false | none | UTC (Transaction code) post date |
utcInsertedDate | string | false | none | UTC (Transaction code) inserted date |
TransactionHistory
{
"cardNum": "**********8034",
"proxyKey": "129345159458",
"purseNo": "14",
"refNum": "CC00142F158D",
"comment": "Test load",
"txnDate": 0,
"amount": 0,
"fundingId": 0,
"dstnFundingId": 0,
"postDate": "05/07/2024",
"txnDesc": "Value Load",
"isMeta": false
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card number |
proxyKey | string | false | none | Proxy Key |
purseNo | string | false | none | Purse Number |
refNum | string | false | none | Reference number |
comment | string | false | none | Comments |
txnDate | integer | false | none | Date of the transaction |
amount | integer | false | none | Amount of transaction |
fundingId | integer | false | none | Funding ID |
dstnFundingId | integer | false | none | Destination funding ID |
postDate | string | false | none | Post date |
txnDesc | string | false | none | Description of transaction |
isMeta | boolean | false | none | Returns true if isMeta is set to true |
StatementList
{
"stmtId": "string",
"closingDate": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
stmtId | string | false | none | Id of the statement |
closingDate | string | false | none | closing date of the statement |
CardHolderInfo
{
"first": "First name",
"last": "Last name",
"suffix": "Suffix",
"nameOnCard": "Name on card",
"addr1": "5TH STREET PARK AVENUE",
"addr2": "",
"addr3": "",
"city": "NEW JERSEY",
"state": "NJ",
"zipCode": "12345",
"country": "840",
"ssn": "1111111111",
"dob": "1/1/1990",
"email": "[email protected]",
"resAddr1": "5TH STREET PARK AVENUE",
"resAddr2": "",
"resAddr3": "",
"resCity": "NEW JERSEY",
"resState": "NJ",
"resZip": "12345",
"resCountry": "840",
"personID": "12345525",
"fundingId": 0,
"dstnFundingId": 0,
"shipDate": "2024/11/07",
"isMeta": false,
"accountOpenDate": "2021-11-01T09:25:58"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
first | string | false | none | Cardholder first name |
last | string | false | none | Cardholder Last name |
suffix | string | false | none | cardholder name suffix |
nameOnCard | string | false | none | Cardholder name on card |
addr1 | string | false | none | Cradholder address line 1 |
addr2 | string | false | none | Cardholder address line 2 |
addr3 | string | false | none | Cardholder address line 3 |
city | string | false | none | Cardholder address city name |
state | string | false | none | Cardholder address state name |
zipCode | string | false | none | Cardholder address zipcode |
country | string | false | none | Cardholder address country |
ssn | string | false | none | Cardholder SSN |
dob | string | false | none | Cardholder date of birth |
string | false | none | Cardholder email address | |
resAddr1 | string | false | none | Cardholder residential address line 1 |
resAddr2 | string | false | none | Cardholder residential address line 2 |
resAddr3 | string | false | none | Cardholder residential address line 3 |
resCity | string | false | none | Cardholder residential address city name |
resState | string | false | none | Cardholder residential address state name |
resZip | string | false | none | Cardholder residential address zipcode |
resCountry | string | false | none | Cardholder residential address country name |
personID | string | false | none | Cardholder person ID |
fundingId | integer | false | none | Cardholder funding ID for the card |
dstnFundingId | integer | false | none | Cardholder destination funding ID |
shipDate | string | false | none | The date of shipment, provided for Physical card orders only. |
isMeta | boolean | false | none | Returns true if isMeta is true |
accountOpenDate | string | false | none | The account creation date on processiong platform. |
Statements
{
"txnDate": "string",
"postDate": "string",
"refNum": 0,
"txnDetail": "string",
"debitAmt": "string",
"creditAmt": "string",
"txnID": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
txnDate | string | false | none | Transaction date |
postDate | string | false | none | Post date |
refNum | integer | false | none | Reference number |
txnDetail | string | false | none | Transaction detail |
debitAmt | string | false | none | Debit amount from the account |
creditAmt | string | false | none | Credit amount from the account |
txnID | string | false | none | Transaction ID, a unique ID for every transaction |
FundTransfer
{
"amount": "string",
"refNum": "string",
"cardBalance": "string",
"statusVal": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
amount | string | false | none | Amount transferred |
refNum | string | false | none | Reference number |
cardBalance | string | false | none | Card balance after the transfer |
statusVal | integer | false | none | status value |
PackageList
{
"subProgID": "string",
"pkgID": "string",
"pkgDesc": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
subProgID | string | false | none | Sub program Id |
pkgID | string | false | none | Package Id |
pkgDesc | string | false | none | Package description |
VirtualAccountList
{
"fundingId": 0,
"customerId": 0,
"proxy": "string",
"packageId": 0,
"subprogramId": 0,
"clientId": 0,
"isMasterVA": true,
"firstName": "string",
"lastName": "string",
"ddaAct": "string",
"trn": "string",
"name": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
fundingId | integer | false | none | Funding Id |
customerId | integer | false | none | Customer Id |
proxy | string | false | none | Proxy nuber of the card |
packageId | integer | false | none | Package id |
subprogramId | integer | false | none | Sub program Id |
clientId | integer | false | none | Client Id |
isMasterVA | boolean | false | none | Returns true if isMasterVA is true |
firstName | string | false | none | First name |
lastName | string | false | none | Last name |
ddaAct | string | false | none | DDA number |
trn | string | false | none | Routing number |
name | string | false | none | none |
VirtualAccountHistory
{
"userID": "string",
"cardNum": "string",
"refNum": "string",
"comment": "string",
"txnDate": "string",
"amount": "string",
"merchantNameLoc": "string",
"postDate": "string",
"txnDesc": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userID | string | false | none | User ID |
cardNum | string | false | none | Card number |
refNum | string | false | none | Reference number for the transaction |
comment | string | false | none | Comments |
txnDate | string | false | none | Transaction date |
amount | string | false | none | Transaction amount |
merchantNameLoc | string | false | none | Combination of the cardholder name and six digits of the card number |
postDate | string | false | none | Transaction post date |
txnDesc | string | false | none | Transaction description |
SearchAccount
{
"cardNum": "00000000000037",
"proxyKey": "12312312312311",
"proxyType": "3",
"subProgID": "553691",
"pkgID": "706112",
"relation": "0",
"first": "FirstName",
"last": "LastName",
"addr1": "5TH STREET PARK AVENUE",
"addr2": "",
"addr3": "",
"city": "NEW JERSEY",
"state": "NJ",
"zipCode": "12345",
"country": "840",
"phone": "1234568888",
"voiceExt": "",
"ssn": "1111111111",
"dob": "01/01/1990",
"others": "Test",
"email": "[email protected]",
"personID": "1099727045",
"statusVal": 1,
"clientName": "PT MetaBank Payroll",
"cardTypeName": "Payroll Plus",
"pkgDesc": "White Plastic ASI",
"PAN": "4380000000006928",
"trn": "073900081",
"dda": "2556300000002",
"fundingId": 0,
"dstnFundingId": 0,
"status": "2",
"statusDescription": "ACTIVE",
"bin": "438963",
"middle": "",
"registrationDate": "1/22/2024 7:30:31 AM",
"validationCompl": "1/22/2024 7:30:31 AM",
"isMeta": false
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card Number |
proxyKey | string | false | none | Proxy Key |
proxyType | string | false | none | Proxy Type |
subProgID | string | false | none | Subprogram Id |
pkgID | string | false | none | Package Id |
relation | string | false | none | Relation |
first | string | false | none | First Name |
last | string | false | none | Last Name |
addr1 | string | false | none | Address line 1 |
addr2 | string | false | none | Address line 2 |
addr3 | string | false | none | Address line 3 |
city | string | false | none | City |
state | string | false | none | State |
zipCode | string | false | none | Zip Code |
country | string | false | none | Country |
phone | string | false | none | Phone Number |
voiceExt | string | false | none | Voice Ext |
ssn | string | false | none | Social Security Number |
dob | string | false | none | Date of Birth |
others | string | false | none | Other Information |
string | false | none | ||
personID | string | false | none | Person Id |
statusVal | integer | false | none | Status Value |
clientName | string | false | none | Client Name |
cardTypeName | string | false | none | Type of card |
pkgDesc | string | false | none | Package Description |
PAN | string | false | none | Pan number |
trn | string | false | none | Transaction |
dda | string | false | none | DDA account number |
fundingId | integer | false | none | Funding ID |
dstnFundingId | integer | false | none | Destination funding ID |
status | string | false | none | Card status ID(if skipCreateRecord field is set to 1) |
statusDescription | string | false | none | Card status short-hand version (if skipCreateRecord field is set to 1) |
bin | string | false | none | BIN of card number (return if skipCreateRecord field is set to 1) |
middle | string | false | none | Cardholder's middle initial(return if skipCreateRecord field is set to 1) |
registrationDate | string | false | none | Date of registration(if skipCreateRecord field is set to 1 ) |
validationCompl | string | false | none | The ValidationCompl field output represents the date CIP was passed(if skipCreateRecord field is set to 1) |
isMeta | boolean | false | none | none |
CIPCheckResponse
{
"Idnumber": 0,
"Error": "string",
"summaryResult": "string",
"detailedMessages": [
{
"message": "string"
}
],
"diffQuestionList": [
{
"question": "In which city is STILLWOOD DR?",
"type": "city.of.residence",
"Options": [
"PARSHALL",
"KENOSHA",
"LAKE VILLAGE",
"KARVAL",
"LUPTON"
]
}
],
"questionList": [
{
"question": "In which city is STILLWOOD DR?",
"type": "city.of.residence",
"Options": [
"PARSHALL",
"KENOSHA",
"LAKE VILLAGE",
"KARVAL",
"LUPTON"
]
}
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Idnumber | integer | false | none | Verify Identification number, Idnumber provides the info related to Partial result. |
Error | string | false | none | Error message |
summaryResult | string | false | none | You will get either one of three values [Pass, Fail, Partial] |
detailedMessages | [arrayCIPResponse] | false | none | Detailed description |
diffQuestionList | [arrayQuestionsCIPResponse] | false | none | List of questions to identify the individual from multiple user |
questionList | [arrayQuestionsCIPResponse] | false | none | List of questions based on configuration set for customer |
arrayCIPResponse
{
"message": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
message | string | false | none | Response message |
submitAnswerResponse
{
"Idnumber": 0,
"Error": "string",
"summaryResult": "string",
"detailedMessages": [
{
"message": "string"
}
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Idnumber | integer | false | none | Verify Identification number, Idnumber provides the info related to Partial result. |
Error | string | false | none | none |
summaryResult | string | false | none | You will get either one of three values [Pass, Fail, Partial] |
detailedMessages | [arrayCIPResponse] | false | none | Detailed description |
questionArraySample
{
"type": "string",
"answer": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | false | none | Type of the question present in the Question list |
answer | string | false | none | Answer text that needs to be passed. |
arrayQuestionsCIPResponse
{
"question": "In which city is STILLWOOD DR?",
"type": "city.of.residence",
"Options": [
"PARSHALL",
"KENOSHA",
"LAKE VILLAGE",
"KARVAL",
"LUPTON"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
question | string | false | none | Question text present in the Question list |
type | string | false | none | Type of the question present in the Question list |
Options | [string] | false | none | Answer text that needs to be passed. |
CardholderEnrollment
{
"CardholderEnrollmentData": {
"EnrollmentUid": "string",
"TimeZone": "string",
"TimeZoneLocation": "string",
"DoNotDisturb": 0
},
"StatusData": {
"StatusType": {
"Status": 0,
"StatusName": "string"
}
},
"AddressData": {
"Address": {
"MsgAddress": 0,
"CarrierID": 0,
"CountryCode": 0,
"Country": "string",
"CountryPhoneCode": 0,
"AddressType": "string"
}
},
"PersonData": {
"Person": {
"Personid": "string"
}
},
"LanguageData": {
"Language": {
"LanguageId": 0,
"LanguageName": "string"
}
},
"MessageData": {
"Message": {
"MsgTriggerId": "string",
"ConfigLevelid": "string",
"MsgType": "string",
"MsgId": "string",
"MsgDescription": "string",
"AddlParam": "string"
}
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CardholderEnrollmentData | object | false | none | none |
» EnrollmentUid | string | false | none | Unique value to identify a particular enrollment |
» TimeZone | string | false | none | TimeZone ID, if it is enrolled |
» TimeZoneLocation | string | false | none | Description of the timeZone |
» DoNotDisturb | integer | false | none | 0 = DoNotDisturb is NOT configured for the specific enrollment) 1 = DoNotDisturb is configured for the specific enrollment |
StatusData | object | false | none | none |
» StatusType | object | false | none | none |
»» Status | integer | false | none | Status ID and descriptions 1=Pending Confirmation by Cardholder 2=Actively enrolled 3=Inactive enrollment |
»» StatusName | string | false | none | Status Name |
AddressData | object | false | none | none |
» Address | object | false | none | none |
»» MsgAddress | integer | false | none | Unique value to identify a particular msgaddress Mobile number of cardholder |
»» CarrierID | integer | false | none | CarrierID of the registered MsgAddress. Applicable for SMS only |
»» CountryCode | integer | false | none | Country code of registered mobile number. Applicable for SMS only |
»» Country | string | false | none | Country name of registered mobile number |
»» CountryPhoneCode | integer | false | none | Phone code of the country |
»» AddressType | string | false | none | Address Type of the MsgAddress |
PersonData | object | false | none | none |
» Person | object | false | none | none |
»» Personid | string | false | none | Unique personid, value provided by FIS |
LanguageData | object | false | none | none |
» Language | object | false | none | none |
»» LanguageId | integer | false | none | Language ID and descriptions selected by cardholder during enrollment |
»» LanguageName | string | false | none | Language Name |
MessageData | object | false | none | none |
» Message | object | false | none | none |
»» MsgTriggerId | string | false | none | Sets of data which identify events selected by cardholder during enrollment GUID ID assigned to message by FIS |
»» ConfigLevelid | string | false | none | GUID ID assigned to configuration by FIS. This can uniquely identifies the configuration. |
»» MsgType | string | false | none | Requested MsgType |
»» MsgId | string | false | none | ID assigned to Message by FIS |
»» MsgDescription | string | false | none | Description of the message |
»» AddlParam | string | false | none | Depends on the msgID; For LowBalance, threshold amount will be populated. |
LatestBalanceStatusRelatedCard
{
"cardNum": "4389630025896157",
"proxyKey": "9910969002157",
"panProxy": "3468629087653",
"Status": "2",
"statusName": "ACTIVE",
"statusDescription": "Active",
"expDate": "03/28",
"lExpDate": "02/33",
"additionalCard": "0",
"cardType": "DIGITAL"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card number of card |
proxyKey | string | false | none | Proxy key of card |
panProxy | string | false | none | Primary cards PAN proxy |
Status | string | false | none | Card status |
statusName | string | false | none | Short name of status |
statusDescription | string | false | none | Long name of status |
expDate | string | false | none | Physical card expiration date |
lExpDate | string | false | none | Logical card expiration date |
additionalCard | string | false | none | Value is 0 if the account holder is the cardholder, otherwise 1. |
cardType | string | false | none | Card type physical or digital |
InnerUnauthorizedErrorObj401
{
"domain": "global",
"reason": "required",
"message": "Cannot access details outside hierarchy"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | Domain of the error occurance |
reason | string | false | none | Error reason |
message | string | false | none | Error message |
LoadCardSuccessResponse
{
"returnCode": 0,
"status": "success",
"message": "Card loaded successfully",
"data": "271460",
"cardBalance": "0.02",
"txnRefNumber": "CC0099AFE01A"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
returnCode | integer | false | none | It can be 0, -1 |
status | string | false | none | It depends on return code. For example: - returnCode = 0 then status = "success" - returnCode = -1 then status = "error" |
message | string | false | none | Success message |
data | string | false | none | Order ID |
cardBalance | string | false | none | Balance amount in the card |
txnRefNumber | string | false | none | Transaction reference number |
ExternalIDErrorResponse
{
"returnCode": -1,
"status": "error",
"message": "Duplicate load detected for External ID | External ID is required"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
returnCode | integer | false | none | It can be 0, -1 |
status | string | false | none | It depends on return code. For example: - returnCode = 0 then status = "success" - returnCode = -1 then status = "error" |
message | string | false | none | Possible error messages |
ProcessingPlatformErrorObj
{
"returnCode": -1,
"status": "error",
"message": "No Proxy Number for Card Found|1|-2147220401| 0000000000000",
"data": "271837"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
returnCode | integer | false | none | It can be 0, -1 |
status | string | false | none | It depends on return code. For example: - returnCode = 0 then status = "success" - returnCode = -1 then status = "error" |
message | string | false | none | Possible error messages |
data | string | false | none | orderid |
ProcessingPlatformUnloadErrorObj
{
"returnCode": "ERROR",
"status": "COMPLETED_WITH_ERRORS",
"message": "Invalid Proxy number|0|10754"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
returnCode | string | false | none | Error code for FIS error |
status | string | false | none | Description of the error |
message | string | false | none | Description of the error |
OrderCardSuccessResponse
{
"cardNum": "***********3142",
"proxyKey": "***********12",
"orderID": "271843",
"personID": "1100400000",
"cvx2": 740,
"expDate": "5/31/2027 11:59:59 PM",
"statusVal": 1,
"cardStatus": "READY",
"trn": "073972181",
"dda": "2557390448703",
"fundingId": 0,
"dstnFundingId": "0",
"isMeta": false,
"cardsDetails": {},
"digitalCardProxy": "5160446803875",
"tinyUrl": "https://uatdash.page.link/jedh1S",
"tinyUrlSms": "https://uatdash.page.link/RrhS"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card number |
proxyKey | string | false | none | Proxy number |
orderID | string | false | none | Id given to the order placed |
personID | string | false | none | none |
cvx2 | integer | false | none | cvv number |
expDate | string | false | none | Expiration date of card |
statusVal | integer | false | none | none |
cardStatus | string | false | none | none |
trn | string | false | none | none |
dda | string | false | none | none |
fundingId | integer | false | none | none |
dstnFundingId | object | false | none | none |
isMeta | boolean | false | none | none |
cardsDetails | object | false | none | none |
digitalCardProxy | string | false | none | none |
tinyUrl | string | false | none | none |
tinyUrlSms | string | false | none | none |
OrderErrorCodeObj
{
"statusVal": 0,
"statusMsg": "Account:AccountExtraCreate Method ShippingExtraId cannot be validated"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
statusVal | integer | false | none | Process failures |
statusMsg | string | false | none | Status |
UnloadOrderResponse
{
"refNum": "CC00B36E1311",
"statusVal": 1,
"amount": "0.01",
"cardBalance": "0.05",
"fundingId": 0,
"dstnFundingId": 0,
"status": "SUCCESS",
"isMeta": false,
"message": "Card unload successfully",
"returnCode": "SUCCESS"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
refNum | string | false | none | Transaction reference number |
statusVal | integer | false | none | Status code |
amount | string | false | none | OrderId |
cardBalance | string | false | none | balance amount in the card |
fundingId | integer | false | none | Funding id default 0 |
dstnFundingId | integer | false | none | Designation funding id default 0 |
status | string | false | none | It depends on return code. For example: - returnCode = 0 then status = "SUCCESS" - returnCode = -1 then status = "ERROR" |
isMeta | boolean | false | none | IsMeta value default false |
message | string | false | none | Success message |
returnCode | string | false | none | status value |
MultipleUnloadOrderResponse
{
"fundingId": 0,
"dstnFundingId": 0,
"status": "BATCH_IN_PROGRESS",
"isMeta": false,
"message": "Your value unload have been saved and will be processed soon.",
"returnCode": "SUCCESS"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
fundingId | integer | false | none | Funding id default 0 |
dstnFundingId | integer | false | none | Designation funding id default 0 |
status | string | false | none | It depends on return code, For Ex. returnCode = 0 then status = "success", returnCode = -1 then status = "error" |
isMeta | boolean | false | none | IsMeta value default false |
message | string | false | none | Success message |
returnCode | string | false | none | status value |
AcknowledgeReceipt200
{
"returnCode": 200,
"message": "Success"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
returnCode | integer | false | none | return code value |
message | string | false | none | return message |
AcknowledgeReceiptError
{
"returnCode": -1,
"status": "error",
"message": "Order not found"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
returnCode | integer | false | none | return code value |
status | string | false | none | status message |
message | string | false | none | return message |
LoadValidationError400
{
"error": {
"domain": "global",
"reason": "badRequest",
"message": "Card not assigned. Load failed."
},
"code": 400,
"message": "Card not assigned. Load failed."
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | InnerLoadValidationError400 | false | none | error description |
code | integer | false | none | 400 Error |
message | string | false | none | Error message |
InnerLoadValidationError400
{
"domain": "global",
"reason": "badRequest",
"message": "Card not assigned. Load failed."
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
domain | string | false | none | none |
reason | string | false | none | none |
message | string | false | none | Message |
LoadByProxyValidationError400
{
"errorCode": "400",
"errorMessage": "LoadCardByProxy failed"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
errorCode | string | false | none | Error code |
errorMessage | string | false | none | Error message |
CardNotRegisteredError400
{
"errorCode": "400",
"errorMessage": "Card not registered"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
errorCode | string | false | none | Error code |
errorMessage | string | false | none | Error message |
RelatedCardsWithPersionDetails
[
{
"cardNum": "4389630005253668",
"proxyKey": "5317532041661",
"panProxy": "5522055323645",
"Status": "1",
"statusName": "READY",
"statusDescription": "Ready for activation",
"expDate": "11/27",
"lExpDate": "11/27",
"additionalCard": "0",
"cardType": "PHYSICAL",
"dda": "2552764056404",
"trn": "073972181",
"personID": "1100743463",
"holderID": "1100743463",
"buyerLoaderID": "1100743463",
"programTitle": "MetaBank Payroll",
"programName": "MetaBank Payroll",
"subProgramTitle": "Payroll Plus",
"cardTypeName": "NORMAL",
"cardTypeDescription": "Normal card",
"relation": "0",
"relationDescription": "SELF",
"salutation": "",
"first": "SAMIULLA",
"middle": "",
"last": "MOMIN",
"suffix": "Jr",
"title": "MR",
"nameOnCard": "SAMIULLA MOMIN",
"vip": ""
}
]
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [RelatedCardsWithPersionDetail] | false | none | none |
RelatedCardsWithPersionDetail
{
"cardNum": "4389630005253668",
"proxyKey": "5317532041661",
"panProxy": "5522055323645",
"Status": "1",
"statusName": "READY",
"statusDescription": "Ready for activation",
"expDate": "11/27",
"lExpDate": "11/27",
"additionalCard": "0",
"cardType": "PHYSICAL",
"dda": "2552764056404",
"trn": "073972181",
"personID": "1100743463",
"holderID": "1100743463",
"buyerLoaderID": "1100743463",
"programTitle": "MetaBank Payroll",
"programName": "MetaBank Payroll",
"subProgramTitle": "Payroll Plus",
"cardTypeName": "NORMAL",
"cardTypeDescription": "Normal card",
"relation": "0",
"relationDescription": "SELF",
"salutation": "",
"first": "SAMIULLA",
"middle": "",
"last": "MOMIN",
"suffix": "Jr",
"title": "MR",
"nameOnCard": "SAMIULLA MOMIN",
"vip": ""
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card number of card |
proxyKey | string | false | none | Proxy key of card |
panProxy | string | false | none | Primary cards PAN proxy |
Status | string | false | none | Card status |
statusName | string | false | none | Short name of status |
statusDescription | string | false | none | Long name of status |
expDate | string | false | none | Physical card expiration date |
lExpDate | string | false | none | Logical card expiration date |
additionalCard | string | false | none | Value is 0 if the account holder is the cardholder, otherwise 1 |
cardType | string | false | none | Card type physical or digital |
dda | string | false | none | Direct access number of card |
trn | string | false | none | Direct access routing number of card |
personID | string | false | none | Person id linked to the card |
holderID | string | false | none | The personid of the account (PAN) holder |
buyerLoaderID | string | false | none | The personid of the account loader (only if loaded by a person other than the holder) |
programTitle | string | false | none | Program Title |
programName | string | false | none | Program name |
subProgramTitle | string | false | none | Subprogram title |
cardTypeName | string | false | none | Card type |
cardTypeDescription | string | false | none | Card type description |
relation | string | false | none | Person relation to the account holder |
relationDescription | string | false | none | Person relation to the account holder |
salutation | string | false | none | Honorific such as Dr/Mr/Mrs |
first | string | false | none | Person first name provided while ordering or registering card |
middle | string | false | none | Person midlle name provided while ordering or registering card |
last | string | false | none | Person last name provided while ordering or registering card |
suffix | string | false | none | Suffix such as Jr/Sr/II |
title | string | false | none | Title of person provided while ordering or registering card |
nameOnCard | string | false | none | Persons name on card provided while ordering or registering card |
vip | string | false | none | Flag to indicate if cardholder is to receive VIP traetment |
BalanceStatusResponse
{
"statusVal": 1,
"accountBalance": "2.00",
"expDate": "03/28",
"cardStatus": "ACTIVE",
"status": "2",
"statusDescription": "Active",
"cards": [
{
"cardNum": "4389630025896157",
"proxyKey": "9910969002157",
"panProxy": "3468629087653",
"Status": "2",
"statusName": "ACTIVE",
"statusDescription": "Active",
"expDate": "03/28",
"lExpDate": "02/33",
"additionalCard": "0",
"cardType": "DIGITAL"
}
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
statusVal | integer | false | none | none |
accountBalance | string | false | none | Current balance of card |
expDate | string | false | none | card expiration date |
cardStatus | string | false | none | Current card status |
status | string | false | none | Short name of status |
statusDescription | string | false | none | Long name of status |
cards | [LatestBalanceStatusRelatedCard] | false | none | none |
BalanceStatusWithPersonSummaryResponse
{
"statusVal": 1,
"accountBalance": "2.00",
"expDate": "03/28",
"cardStatus": "ACTIVE",
"status": "2",
"statusDescription": "Active",
"cards": [
{
"cardNum": "4389630025896157",
"proxyKey": "9910969002157",
"panProxy": "3468629087653",
"Status": "2",
"statusName": "ACTIVE",
"statusDescription": "Active",
"expDate": "03/28",
"lExpDate": "02/33",
"additionalCard": "0",
"cardType": "DIGITAL",
"personID": "1101596427",
"holderID": "1101596427",
"buyerLoaderID": "1101596427",
"programTitle": "MetaBank Payroll",
"programName": "MetaBank Payroll",
"subProgramTitle": "Payroll Plus",
"cardTypeName": "NORMAL",
"cardTypeDescription": "Normal card",
"relation": "0",
"relationDescription": "SELF",
"salutation": "",
"first": "PRATHAMESH",
"middle": "S",
"last": "SHEWALE",
"suffix": "MR",
"title": "",
"nameOnCard": "",
"vip": ""
}
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
statusVal | integer | false | none | none |
accountBalance | string | false | none | Current balance of card |
expDate | string | false | none | card expiration date |
cardStatus | string | false | none | Current card status |
status | string | false | none | Short name of status |
statusDescription | string | false | none | Long name of status |
cards | [LatestBalanceStatusRelatedCardWithPersonData] | false | none | none |
LatestBalanceStatusRelatedCardWithPersonData
{
"cardNum": "4389630025896157",
"proxyKey": "9910969002157",
"panProxy": "3468629087653",
"Status": "2",
"statusName": "ACTIVE",
"statusDescription": "Active",
"expDate": "03/28",
"lExpDate": "02/33",
"additionalCard": "0",
"cardType": "DIGITAL",
"personID": "1101596427",
"holderID": "1101596427",
"buyerLoaderID": "1101596427",
"programTitle": "MetaBank Payroll",
"programName": "MetaBank Payroll",
"subProgramTitle": "Payroll Plus",
"cardTypeName": "NORMAL",
"cardTypeDescription": "Normal card",
"relation": "0",
"relationDescription": "SELF",
"salutation": "",
"first": "PRATHAMESH",
"middle": "S",
"last": "SHEWALE",
"suffix": "MR",
"title": "",
"nameOnCard": "",
"vip": ""
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
cardNum | string | false | none | Card number of card |
proxyKey | string | false | none | Proxy key of card |
panProxy | string | false | none | Primary cards PAN proxy |
Status | string | false | none | Card status |
statusName | string | false | none | Short name of status |
statusDescription | string | false | none | Long name of status |
expDate | string | false | none | Physical card expiration date |
lExpDate | string | false | none | Logical card expiration date |
additionalCard | string | false | none | Value is 0 if the account holder is the cardholder, otherwise 1 |
cardType | string | false | none | Card type physical or digital |
personID | string | false | none | Person id linked to the card |
holderID | string | false | none | The personid of the account (PAN) holder |
buyerLoaderID | string | false | none | The personid of the account loader (only if loaded by a person other than the holder) |
programTitle | string | false | none | Program title |
programName | string | false | none | Program name |
subProgramTitle | string | false | none | Subprogram title |
cardTypeName | string | false | none | Card type |
cardTypeDescription | string | false | none | Description for the card type |
relation | string | false | none | Person relation to the account holder |
relationDescription | string | false | none | Person relation to the account holder |
salutation | string | false | none | Honorific such as Dr/Mr/Mrs |
first | string | false | none | Person first name provided while ordering or registering card |
middle | string | false | none | Person midlle name provided while ordering or registering card |
last | string | false | none | Person last name provided while ordering or registering card |
suffix | string | false | none | Suffix such as Jr/Sr/II |
title | string | false | none | Title of person provided while ordering or registering card |
nameOnCard | string | false | none | Persons name on card provided while ordering or registering card |
vip | string | false | none | Flag to indicate if cardholder is to receive VIP traetment |