Class PostingRequest
Properties
| NAME | TYPE | LENGTH | DESCRIPTION | EXAMPLES |
|---|---|---|---|---|
| ECVersion | String | N/A | Applicable for all ECAlertEventId IDs (see below). Version of the API | "ECVersion ": "P.1.1" |
| ECAlertEventId | String (Integer) | 10 | Applicable for all ECAlertEventId IDs. The alert event ID for the request. The description for other parameters may refer to these IDs as not all parameters are applicable to all event IDs:
| "ECAlertEventId": "8" |
| ECAlertLogId | String (Integer) | 10 | Applicable for all ECAlertEventId IDs. The unique ID for the alert event request. The two main uses for this ID are:
| "ECAlertLogId": "121252" |
| ECAlertLogDTTMMilitary | String (Datetime) | N/A | Applicable for all ECAlertEventId IDs. Timestamp for when the Alert Log entry was created; formatted in military time (PT time zone). Format: YYYY-MM-DDTHH:MM:SS | "ECAlertLogDTTMMilitary": "2019-11-04T09:30:44" |
| DataItems | DataItems[] | Applicable for all ECAlertEventId IDs. Array of *DataItems *pertaining to the transaction. | "DataItems": [ { "Name": "ECAcceptedBy", "Value": "Test FI" } ] | |
| SubItems | SubItems[] | Applicable for all ECAlertEventId IDs. Array of *SubItems *pertaining to the transaction. | "SubItems": [ { "ItemType": "DEPOSITITEM" "DataItems": [ { "Name": "ECTransactionDate", "Value": "November 04, 2019 9:30 AM PT" } ] } ] |
DataItems
| NAME | TYPE |
|---|---|
| Name | String |
| Value | String |
SubItems
| NAME | TYPE | DESCRIPTION | EXAMPLES |
|---|---|---|---|
| ItemType | String | Applicable for all ECAlertEventId IDs. Static value of "DEPOSITITEM" | "ItemType": "DEPOSITITEM" |
| DataItems | DataItems[] | Applicable for all ECAlertEventId IDs. Array of DataItems pertaining to the transaction. | "DataItems": [ <!-- Parameters outlined below --> ] |
DataItems Attributes
| Attribute Name | Type | Descriptions | EXAMPLES |
|---|---|---|---|
| ECAcceptedBy | String | Applicable for all ECAlertEventId IDs. The name of the Financial Institution that accepted the deposit. The Financial Institution name is presented here as is configured in our system and may be adjusted at any time by request from the Financial Institution. We do not recommend hard coding any functionality off the name provided here. | { "Name": "ECAcceptedBy", "Value": "Test FI" } |
| ECAcquirerID | String(Integer) | Applicable for all ECAlertEventId IDs. The Acquirer ID (also sometimes referred to as the Partner ID) is a unique ID assigned by JHA/Ensenta that is specific to the Financial Institution’s specific product instance within JHA/Ensenta’s platform. The ID is different for each environment (UAT and Production). An Acquirer ID for your solution’s development team will be provided as part of the initial integration to Smart Alerts for certification purposes and will be specific to the UAT environment only. For onboarding a specific Financial Institution, a separate Acquirer ID will be assigned by Ensenta for each environment (UAT and Production). If this interface is planned to be used for multiple products/instances, it is recommended to maintain a lookup table on your end using ECAcquirerID as the unique id which can then be used to define any details around your solution that Financial Institutions may desire to be handled differently. Examples:
| { "Name": "ECAcquirerID", "Value": "8257" } |
| ECReceiptNumber | String | Applicable for all ECAlertEventId IDs. The Receipt Number is a value that uniquely represents the transaction. | { "Name": "ECReceiptNumber", "Value": "92903163" } |
| ECUnmaskedAcctHolderNum | String | Applicable for all ECAlertEventId IDs. Commonly referred to as the Account Holder Number, this is a unique identifier that typically represents the individual End-User or business/merchant. Banks:
Credit Unions:
This value is commonly determined by the Financial Intuition, the SSO vendor (how the user logs into the product to make the deposit), and JHA/Ensenta. Work with your JHA/Ensenta project manager to identify the format for Account Holder Number. | { "Name": "ECUnmaskedAcctHolderNum", "Value": "5555544444" } |
| ECUnmaskedAcctNum | String | Applicable for all ECAlertEventId IDs. Commonly referred to as the Account Number, the format of the account number may need to be manipulated by your solution to support downstream processing of the transaction. If supporting multiple Financial Institutions with your solution, it is recommended to allow for flexibility in manipulating the account number that you receive as there may be other requirements in how this value is leveraged for files that JHA/Ensenta outputs for the Financial Institution. JHA/Ensenta will work with you to identify the account number formatting for the Financial Institution. | { "Name": "ECUnmaskedAcctNum", "Value": "12345=10S" } |
| ECAcctTypeCd | String | Applicable for all ECAlertEventId IDs. A code that identifies the type of account (as passed to Ensenta via the SSO). Possible Values:
Note: Check with the Financial Institution (FI) how they define Money Market accounts as some FIs will handle them as Savings and some as Checking. | { "Name": "ECAcctTypeCd", "Value": "01" } |
SubItems.DataItems Attributes
| Attribute Name | Type | Descriptions | EXAMPLES |
|---|---|---|---|
| ECTransactionDate | String (Datetime) | Applicable for all ECAlertEventId IDs. Date that the check was submitted. The standard format is: YYYY-MM-DDTHH:MM:SS NOTE: The format of this value may be different if the financial institution has requested that it be changed, as it affects other parts of their setup. | { "Name": "ECTransactionDate", "Value": "2019-11-04T09:30:44" } |
| ECHoldCode | String | Applicable for all ECAlertEventId IDs. While optional, the Hold Code is a code applied to the check based on the Financial Institution’s configuration and can be used to determine the Funds Availability that you should apply when posting to the core. Relating back to the ECAcquirerID from above, since the Financial Institution may have multiple products they are looking to leverage this solution with, it is recommended that you maintain a lookup table for each Acquirer ID with possible hold codes applicable to the setup. Work with the Financial Institution to define the applicable Funds Availability based on hold code within your solution (or elsewhere as appropriate). Example use case: I have my end-users split into three buckets: Bronze, Silver, and Gold. I want to apply different funds availability based on which group the end-user belongs to. On the JHA/Ensenta end, we can have different hold codes applied for deposits made by users in the different groups and can go more granular than that. Our standard hold codes are "L" (Local) and "I" (Immediate), but we can create custom hold codes if needed. If you are planning to leverage hold codes, revisit section Days/work Hours of Proofing Staff as it may impact how the Financial Institution needs funds availability to be applied. | { "Name": "ECHoldCode", "Value": "L" } |
| ECStatusId | String(Integer) | Applicable for all ECAlertEventId IDs. This value is not generally used unless creating a more granular workflow that ties in the status in combination with the above ECAlertEventId and potentially ECHoldCode. ECStatusID is the current status identifier of the deposit as it is received and finalized within EZAdmin. The Status ID is an indication of which "queue" the check currently is in. Which queue the check is currently in is initially dictated by the Financial Institution’s configuration and then updated based on their staff’s proofing action. Submitted (applicable to ECAlertEventId "2"):
Approved (applicable to ECAlertEventId "5", "6", and "7"):
NOTE: Only applicable for ECAlertEventId "5" if the Financial Institution is leveraging optional functionality described in section Alert Volume.
Returned/Rejected (applicable to ECAlertEventId "8"):
| { "Name": "ECStatusId", "Value": "5" } |
| ECCheckNumber | String | Applicable for all ECAlertEventId IDs. The check number from the MICR of the check:
NOTE: If supporting Multiple Status Alert Events and the Financial Institution re-visits a check that they previously approved or rejected and makes an update, be aware that an updated alert event is only sent if an update is made to the status and/or amount of the check. If the only change is an update to the MICR, an updated alert event will NOT be sent. | { "Name": "ECCheckNumber", "Value": "000001" } |
| ECOriginalAmountNoCurrency | String(Numeric) | Applicable for all ECAlertEventId IDs. Original amount of the deposit (as submitted by the end-user); intended to be informational. The below ECApprovedAmountNoCurrency should be used for the current amount of the check. | { "Name": "ECOriginalAmountNoCurrency", "Value": "10.00" } |
| ECApprovedAmountNoCurrency | String(Numeric) | Applicable for all ECAlertEventId IDs. The current amount of the deposit after any adjustments. | { "Name": "ECApprovedAmountNoCurrency", "Value": "10.00" } |
| ECRejectReasonCode | String | Only applicable for ECAlertEventId = 8 (Deposit Item Rejected). The reject reason code (also known as return reason code) is the code that represents the reason the Financial Institution is not able to accept the check. The parameters ECRejectReason and ECRejectReasonOverride below are related to the reject reason code. The Financial Institution may have customized the reject reason codes, but for the standard list, see Standard Reject Reasons. | { "Name": "ECRejectReasonCode", "Value": "N" } |
| ECRejectReason | String | Only applicable for ECAlertEventId = 8 (Deposit Item Rejected). The reject reason (also known as the return reason) is the internal description associated with the reject reason code from ECRejectReasonCode above. The Financial Institution may have customized the reject reasons, but for the standard list, see Standard Reject Reasons. | { "Name": "ECRejectReason", "Value": "Altered/Fictitious Item" } |
| ECRejectReasonOverride | String | Only applicable for ECAlertEventId = 8 (Deposit Item Rejected). The reject reason override (also known as return reason override) is the external description (end-user facing) associated with the reject reason code from ECRejectReasonCode above (it will match with ECRejectReason if an override description was not defined). The Financial Institution may have customized the reject reason overrides, but for the standard list, see Standard Reject Reasons. | { "Name": "ECRejectReasonOverride", "Value": "Altered/Fictitious Item" } |
| ECCheckFrontBase64 | String | Applicable for all ECAlertEventId IDs. This is the Base64 string of front image. Will be the binarized (black and white) version of the image in tiff format. | { "Name":"ECCheckFrontBase64", "Value":"<!-- Base64 Image -->" } |
| ECCheckBackBase64 | String | Applicable for all ECAlertEventId IDs. This is the Base64 string of back image. Will be the binarized (black and white) version of the image in tiff format. | { "Name":"ECCheckBackBase64", "Value":"<!-- Base64 Image -->" } |
Standard Reject Reasons
| Reason Code (ECRejectReasonCode) | Description (ECRejectReason) | Description Override (ECRejectReasonOverride) |
|---|---|---|
| 1 | Numeric and written amounts different | |
| 2 | Missing 'For Mobile Deposit Only' with endorsement | |
| 8 | Endorsement does not meet requirements | |
| 9 | IRD User Defined-See Return Text Overlay | |
| A | NSF – Not Sufficient Funds | |
| B | UCF – Uncollected Funds Hold | |
| C | Stop Payment | |
| D | Closed Account | |
| E | UTLA – Unable to Locate Account | |
| F | Frozen/Blocked Account | |
| G | Stale Dated | |
| H | Post Dated | |
| I | Endorsement Missing | |
| J | Endorsement Irregular | |
| K | Signature(s) Missing | |
| L | Signature(s) Irregular | |
| M | Non-Cash Item (Non Negotiable) | |
| N | Altered/Fictitious Item | |
| O | Unable to process (e.g. Mutilated Item) | |
| P | Item Exceeds Dollar Limit | |
| Q | Not Authorized | |
| R | Branch/Account Sold (Wrong Bank) | |
| S | Refer to Maker | |
| T | Stop Payment Suspect | |
| U | Unusable Image | |
| V | Image Fails Security Check | |
| W | Cannot Determine Amount | |
| Y | FI Prohibited Item | |
| Z | My Deposit Prohibited Item |
Examples
{
"ECVersion": "P.1.1",
"ECAlertEventId": "2",
"ECAlertLogId": "122946",
"ECAlertLogDTTMMilitary": "2019-11-04T09:30:44",
"DataItems": [
{
"Name": "ECAcceptedBy",
"Value": "Test FI"
},
{
"Name": "ECAcquirerID",
"Value": "8257"
},
{
"Name": "ECReceiptNumber",
"Value": "93083182"
},
{
"Name": "ECUnmaskedAcctHolderNum",
"Value": "55555"
},
{
"Name": "ECUnmaskedAcctNum",
"Value": "12345"
},
{
"Name": "ECAcctTypeCd",
"Value": "01"
}
],
"SubItems": [
{
"ItemType": "DEPOSITITEM"
"DataItems": [
{
"Name": "ECTransactionDate",
"Value": "November 04, 2019 9:30 AM PT"
},
{
"Name": "ECHoldCode",
"Value": "L"
},
{
"Name": "ECStatusId",
"Value": "6"
},
{
"Name": "ECCheckNumber",
"Value": "000001"
},
{
"Name": "ECOriginalAmountNoCurrency",
"Value": "5.00"
},
{
"Name": "ECApprovedAmountNoCurrency",
"Value": "5.00"
},
{
"Name": "ECRejectReasonCode",
"Value": ""
},
{
"Name": "ECRejectReason",
"Value": ""
},
{
"Name": "ECRejectReasonOverride",
"Value": ""
},
{
"Name": "ECCheckFrontBase64",
"Value": "<!-- Base64 Image -->"
},
{
"Name": "ECCheckBackBase64",
"Value": "<!-- Base64 Image -->"
}
],
}
]
}