Testing CIF Modification - Request JSON Not De-Serializing Correctly

71 Views Asked by At

Getting this error w/Customer/CustMod:

"Description": "Unable to successfully complete requested action. See detail section for more information in the standard jXchange fault format.", "MessageSource": "Service Gateway", "Details": [ { "Code": "225", "Category": "Error", "Description": "Invalid CIF number", "Element": "CustId", "ElementValue": " 0", "Location": "CFCUSTMOD" } ] }

...however, my request header looks like this (following the SOAP object model) and I have obscured the CIF to be fictitious and removed relevant header info but it was a live CIF:

{ "CustModRq": { "ActIntentKey": null, "CustDetail": { "AnnIncmAmt": "15000", "AssetTotAmt": null, "BirthDt": null, "CustCrtRsnCode": null, "Custom": null, "CustOrgDt": null, "CustType": null, "Deceased": null, "DeceasedDt": null, "EducLvl": null, "EmplName": null, "EmplTitle": "jXchange Guru", "Gender": null, "HouseHoldName": null, "HouseHoldNum": null, "LastConDt": null, "LastMainDt": null, "NAICSCode": null, "OccType": null, "StdIndustCode": null }, "CustId": "L012345", "Dlt": null, "MsgRqHdr": { "AuthenProdCred": "", "AuthenUsrCred": null, "jXchangeHdr": { "AuditUsrId": "Test", "AuditWsId": "Test", "AuthenUsrId": null,

Not sure why it won't deserialize this correctly. I have also seen this on the customer search where your parser doesn't pick up the MaxRec value even though it's set to 100 so I cannot search.

Is there something else I'm missing or is the SOAP documentation out of date?

FYI - I'm using the Mulesoft JSON implementation but still following the SOAP object structure.

1

There are 1 best solutions below

1
JMartin On

The error you are displaying at the top is stating that the CIF is invalid meaning you are passing in an incorrect CustId. This does not indicate that there is a serialization problem with the request. We do offer sample Postman JSON payloads on our Developer Portal SOAP Documentation (https://jackhenry.dev/open-enterprise-api-docs/enterprise-soap-api/documentation/) look for the DMZ Rest-Legacy Tests.postman_collection.

Additionally, the MaxRec for the search is found in the endpoint not passed in as a value. An example of this can be seen on our Getting Started with jXchange REST Legacy page (https://jackhenry.dev/open-enterprise-api-docs/enterprise-soap-api/getting-started-with-jxchange-rest-legacy/). The Count= part of the endpoint is the MaxRec part of the request. Here is the endpoint from that page for your conveinence. (https://jackhenry.dev/open-enterprise-api-docs/enterprise-soap-api/getting-started-with-jxchange-rest-legacy/)

Upon review we noticed that the *Srch use of the Count= as the MaxRec is not clear and will work to update the page to make that more understandable.