Update Transaction

Overview

The update-transaction API combines the submitted transaction with the default data, resulting in a single updated transaction. This API calls the Expere EZ Config Default Data APIs https://<hostname>/DefaultData/api/v1/integration/accounts/{accountId}/organizations/{organizationId} and https://<hostname>/DefaultData/api/v1/integration/accounts/{accountId}/products/{productId}; Expere EZ Config Default Data passes the transaction XML and organization and product to the Expere update-transaction companion API.

Request

Table 1. Method
Method URL Description
POST https://<hostname>/EZConfig/accounts/{accountId}/update-transaction Used to pass the account ID ("accountId") and request parameters to obtain an updated Transaction XML using the XML provided in the request and merging Expere EZ Config data for the requested Organization ID and/or Products (including assigned policy's defaulted data).
Table 2. Parameters
Name Type Constraints Description
accountId integer required The "accountId" parameter is used to help authenticate the user.
transactionXml string required The "transactionXml" parameter is the request XML to be updated with default data from the requested Organization and/or Product.
organizationId integer optional – if ProductId exists in the request otherwise required The "OrganizationId" parameter retrieves the organization associated with the account.
products array of product IDs optional – if OrganizationId exists in the request otherwise required The "Products" parameter retrieves the product(s) associated with the account. (Multiple product IDs may be provided and are listed in an array.)
Note: Providing multiple products works in conjunction with the Deposit LOB. To merge the product data with the appropriate transaction account, the schema path /txn/Accounts/Account/productDesc/ must specify the specific Product Name.
Note: Data points not matching across products will result in error messages being returned. See Response Body B, below.
Note: You must use either the "OrganizationId" or "Products" parameters with the API. You can also use both parameters.

Response

The update-transaction response returns an updated transaction XML.

Response Message: the response message displays an HTTP Status Code of either 200, 400, 401, 404, or 500 with the respective Reason.

HTTP Status Code Reason Response Model Headers
200 Success
400 Bad Request

Response Body A: provides the updated transaction XML.

{
  "transactionXml": "<p:Txn xmlns:p=\"http://schemas.bankerssystems.com/2004/ExpereTxn\">\n  <p:Borrowers>\n
<p:Borrower index=\"1\">\n      <p:Phones>\n      <p:Phone index=\"1\">\n        <p:Desc>Home</p:Desc>\n
<p:PhoneNumber>301-123-4567</p:PhoneNumber>\n        <p:PrimaryPhoneInd>1</p:PrimaryPhoneInd>\n      </p:Phone>\n
</p:Phones>\n      <p:CitizenType>1</p:CitizenType>\n      <p:DateOfBirth>19600711</p:DateOfBirth>\n
<p:FirstName>Jane</p:FirstName>\n      <p:GenderType>F</p:GenderType>\n      <p:LastName>Doe</p:LastName>\n
<p:PartyType>1</p:PartyType>\n      <p:RembrandtID>1</p:RembrandtID>\n      <p:SSN>123-45-6789</p:SSN>\n
</p:Borrower>\n  </p:Borrowers>\ 
…
</p:OrgMailingAddressStreetAddress1><p:OrgState>ME</p:OrgState></p:Txn>"
}

Response Code A: provides the user with the appropriate HTTP status code based on the request:

200

Response Body B: provides the following error messaging when unmatched data points are found. Note the error returns the first conflicting value.

There was a problem with updating transaction.
[name:Error Policy #1,type:Policy,product:Error Product #1 has /Txn/PrivacyNoticeGroupUserDefinedDesc = Name111] 
and [name:Error Policy #2,type:Policy,product:Error Product #2 has /Txn/PrivacyNoticeGroupUserDefinedDesc = Name222] 
have conflicting values

Response Code B: provides the user with the appropriate HTTP status code based on the request:

400

Response Headers: the response header provides

  access-control-allow-credentials:  true
  access-control-allow-origin: 
  cache-control: no-cache
  content-type: application/json; charset=utf-8
  date: Wed, 29 May 2019 13:50:02 GMT
  pragma: no-cache
  server: Kestrel
  transfer-encoding": "chunked",
  x-frame-options: SAMEORIGIN
  x-powered-by: ASP.NET
Note: For the following Xpaths:
  • "/Txn/Deposit/Accounts/Account/Fees/Fee/FeeName"
  • "/Txn/Deposit/Accounts/Account/MinimumBalanceFees/MinimumBalanceFee/NameDesc"
Expere now supports the presence of multiple, duplicated fee names in a merged transaction. Multiple, duplicate fee names should be present within a merged Expere transaction and in the order that they were entered in Expere EZ Config Default Data.

These Default Data fees are merged only if the Expere transaction does not contain these fees. If the Expere transaction does contain these fees, the Default Data fees are not merged with the Expere transaction.