Skip to main content

Add Item Error


Introduction

Financial Institutions and Partners have the ability configure settings to help mitigate risk within the mRDC mobile application. In this guide we will be walking you through how to handle a rejected items due to these settings within an mRDC batch and how to display the rejection message to the user.

Getting Started

Tasks covered in this guide

  • How to handle an AddItem error within the mRDC batch.

Required prerequisites before you continue

  • You will need to obtain your test credentials to try any of the examples in this guide. You should receive these from the Integrations team near the start of your project.
  • Review the Single Check Deposit Guide for an understanding on how to start the deposit workflow.
  • Download the mRDC Web Service WSDL file from the Downloads menu.
Add Item Error Workflow

Step 1 The user will add check(s) into the batch. Send the AddItem request.

AddItem Request Example

	{
"__type":"AddItemRequest:#JackHenry.Eps.Mobile.RDC",
"RequestDate":"/Date(1692650646000-0500)/",
"RequestId":"6S54FD652154654F154654S3D2F1SD3",
"Credentials":{
"SecurityToken":"String Content",
"PhoneKey":"1"
},
"BatchReference":"B:HC925R1",
"LocationReference":"L:T2PR",
"Amount":500.00,
"FrontImage":"FrontImage",
"BackImage":"BackImage"
}

The AddItem Response will return the error message. The EPS system will create the item in the batch in the rejected state. Display the error message to the user that explains the reason for the reject.

AddItem Response Example

{
"RequestId": "5d6as5d4a6s5d4a6s5d4",
"Result": 2,
"ResultCode": null,
"ResultMessage": null,
"ValidationResults": [
{
"Code": "Item-2002",
"Message": "The amount you entered did not match the amount detected. Please re-enter amount and retake photo."
}
],
"Credentials": {
"PhoneKey": "5sd4a65sd4a6s5d4a6",
"SecurityToken": "String Content"
},
"Item": null
}

Step 2 The user should be able to review the rejected item details in the list of the items within the batch and have the option to delete the rejected item. Send the GetItems request.

GetItems Request example

{
"__type":"GetItemsRequest:#JackHenry.Eps.Mobile.RDC",
"RequestId":"da5sd146a5sd46as5d46651451236251",
"RequestDate":"/Date(1692636069000-0500)/",
"BatchReference":"B:HC925R1",
"Credentials":{
"PhoneKey":"s65d4a6s5d4as65d4as6",
"SecurityToken":"String Content"
}
}

Display the list of the items within the batch to the user from the GetItems Response.

Log the following information from the GetItemsResponse for use in subsequent requests:

  • "SecurityToken" - New token should be used in the next request.
  • "ItemReference" - The unique value assigned to each item.

GetItems Response example

{
"RequestId": "da5sd146a5sd46as5d46651451236251",
"Result": 1,
"ResultCode": null,
"ResultMessage": null,
"ValidationResults": [],
"Credentials": {
"PhoneKey": "s65d4a6s5d4as65d4as6",
"SecurityToken": "String Content"
},
"Items": [
{
"Amount": 0.0000,
"BatchReference": "B:5QHHSV1",
"Customer": null,
"DataFields": [
{
"FieldName": "String Content",
"FieldType":FieldType.Transaction,
"IsRequired": false,
"Text": "String Content",
"Validation": "String Content",
"ValidationMessage": "String Content",
"Value": "String Content"
}
],
"Events": [
{
"Date": "/Date(1709241420187-0600)/",
"Description": "Rejected"
},
{
"Date": "/Date(1709241420013-0600)/",
"Description": "Created"
}
],
"IQAStatus": "Nothing",
"ItemReference": "I:JDJSJH5",
"ProcessingStatus": null,
"ProcessingStatusDescription": null,
"Status": "ItemStatus09",
"StatusDescription": "Rejected",
"TransactionReferenceNumber": null
}
]
}

Step 3 If the user elects to delete the rejected item within the batch, send the UpdateItem request using the Delete criteria.

UpdateItem Delete Request Example

{
"__type":"UpdateItemRequest:#JackHenry.Eps.Mobile.RDC",
"Criteria":{
"__type":"UpdateItemCriteriaDeleteItem:#JackHenry.Eps.Mobile.RDC",
"ItemReference":"I:JDJSJH5"
},
"RequestId":"sda54sd65as4d65s4d6a54s",
"RequestDate":"/Date(1692636069000-0500)/",
"Credentials":{
"PhoneKey":"d4sa65d4s6a5d46as54d",
"SecurityToken":"String Content"
}
}

UpdateItem Delete Response Example

Log the following information from the UpdateItem Response for use in subsequent requests:

  • "SecurityToken" - New token should be used in the next request.
{
"RequestId": "sda54sd65as4d65s4d6a54s",
"Result": 1,
"ResultCode": null,
"ResultMessage": null,
"ValidationResults": [],
"Credentials": {
"PhoneKey": "d4sa65d4s6a5d46as54d",
"SecurityToken": "String Content"
},
"Item": {
"Amount": 0.0000,
"BatchReference": "B:5QHHSV1",
"Customer": null,
"DataFields": [
{
"FieldName": "String Content",
"FieldType":FieldType.Transaction,
"IsRequired": false,
"Text": "String Content",
"Validation": "String Content",
"ValidationMessage": "String Content",
"Value": "String Content"
}
],
"Events": [
{
"Date": "/Date(1709242881300-0600)/",
"Description": "Deleted"
},
{
"Date": "/Date(1709241420187-0600)/",
"Description": "Rejected"
},
{
"Date": "/Date(1709241420013-0600)/",
"Description": "Created"
}
],
"IQAStatus": "Nothing",
"ItemReference": "I:JDJSJH5",
"ProcessingStatus": null,
"ProcessingStatusDescription": null,
"Status": "ItemStatus05",
"StatusDescription": "Deleted",
"TransactionReferenceNumber": null
}
}

Step 4 To review the rejected item no longer displays in the list of items within the batch, send the GetItems request.

GetItems Request example

{
"__type":"GetItemsRequest:#JackHenry.Eps.Mobile.RDC",
"RequestId":"da5sd146a5sd46as5d46651451236251",
"RequestDate":"/Date(1692636069000-0500)/",
"BatchReference":"B:HC925R1",
"Credentials":{
"PhoneKey":"s65d4a6s5d4as65d4as6",
"SecurityToken":"String Content"
}
}

GetItems Response example

{
"RequestId": "da5sd146a5sd46as5d46651451236251",
"Result": 1,
"ResultCode": null,
"ResultMessage": null,
"ValidationResults": [],
"Credentials": {
"PhoneKey": "s65d4a6s5d4as65d4as6",
"SecurityToken": "String Content"
},
"Items": []
}
Next steps
  • Review the API Reference

Please review the API Reference to see all APIs and their technical specifications.

  • Explore other guides

We have other guides to show how to leverage our APIs in other common use cases so if this one doesn’t cover what you are looking for, give another guide a try. If your situation or question is not covered in the current guide, consult another resource.

  • Get certified and move into production

Ready to put your new code into production use? Refer to this process guide that explains our certification steps and how to contact us to get started.