Orion: Accessing Daily Reconciliation Data through the API

The Interface Reconciliation App provides you with a snapshot into the daily reconciliation, providing status, counts and notes. This information is invaluable to your operation staff, so they know in a timely manner of any potential issues as they come up. That got me to wonder about how we can expand on the usefulness of this reconciliation status data for such task as kicking off your own reconciliation process, morning report generation, and custom portal access to the current day’s data.

In this post I am going to show how to access the interface reconciliation data through the API, providing what you need to automate your tasks.

The simplest way to check the overall status of the current reconciliation is the following API endpoint.

GET v1/Confirm/InterfaceReconciliations/Status

This endpoint returns the overall reconciliation status for the current reconciliation and can be used as a trigger for additional processing, as shown below:

        
            {
            "isReconciled": true,
            "reconcileTime": "2018-04-12T12:59:53.193-05:00",
            "showInTom": false
            }
        
        

If you need the counts of unconfirmed accounts, transactions, and positions, the following endpoint will do the trick.

GET v1/Confirm/InterfaceReconciliations/Counts?startDate={startDate}&endDate={endDate}

Returns summary counts of unconfirmed records, as shown below:

            
        {
        "unconfirmedAccounts": 0,
        "unconfirmedPositions": 0,
        "unconfirmedTransactions": 0
        }
        
        

If you require more details about the reconciliation for each download source, you can use the following endpoint.

GET v1/Confirm/InterfaceReconciliations?isActive={isActive}&startDate={startDate}&endDate={endDate}&transactionStatus={transactionStatus}&positionStatus={positionStatus}&costBasisStatus={costBasisStatus}

Returns a list of interface reconciliations that the logged in user has access to, as shown below:

            
        [{
        "downloadSourceId": 1,
        "createdDate": "2018-04-12",
        "downloadSourceName": "sample string 2",
        "transactionStatus": "sample string 3",
        "positionStatus": "sample string 4",
        "completeDate": "2018-04-12T19:49:16.2372115-05:00",
        "transactionFileCount": 1,
        "transactionNotConfirmedCount": 1,
        "transactionConfirmedCount": 1,
        "transactionExcludedCount": 1,
        "transactionCount": 5,
        "positionFileCount": 1,
        "positionNotConfirmedCount": 1,
        "positionConfirmedCount": 1,
        "positionExcludedCount": 1,
        "positionCount": 6,
        "downloadFileNotesCount": 7,
        "downloadSourceNotesCount": 8,
        "nameFileCount": 1,
        "nameNotConfirmedCount": 1,
        "nameConfirmedCount": 1,
        "nameExcludedCount": 1,
        "nameStatus": "sample string 9",
        "nameCount": 10,
        "costBasisFileCount": 1,
        "costBasisNotConfirmedCount": 1,
        "costBasisConfirmedCount": 1,
        "costBasisExcludedCount": 1,
        "costBasisStatus": "sample string 11",
        "costBasisCount": 12,
        "notesCount": 15,
        "nameNumberConfirmed": "1/10",
        "transactionNumberConfirmed": "1/5 - 20%",
        "positionNumberConfirmed": "1/6 - 17%"
        },
        ]
        
        

As you can see, you can acquire a great deal of information about your daily reconciliation through the API that can be used to automate tasks that are currently manual. I hope you found this post informative.

Let's discuss your project .... Give us a call or drop us a line