logo

Transactions

Transactions
A transaction represents a movement of assets or cash in a financial account. Institutions represent transactions in many different ways, but Quovo standardizes them to make them accessible for you.  When you sync a connection, Quovo will pull in all available transactions on each account. While it depends on the institution, most of our accounts will receive transactions dating back more than a year. This depth of transactions will help maximize the amount of performance reporting, accounting, and planning you can do.  Note that foreign transactions are always returned in their local currencies.
Transactions can be retrieved at a few different levels. Make a GET request to the /transactions endpoint at the desired level, as shown below:
curl -X GET \
	-H "Authorization: Bearer a724809d37d0a21b7e9257f45cee416f5aec61993ab4b09e" \
	"https://api.quovo.com/v3/accounts/384752/transactions"

Filtering Transactions

Besides pagination, which is covered here, there are a few other parameters you can include in your request that can help you filter transactions, including   start_date   and   start_id  .  You can use the   start_date   if you only want to fetch transactions that clear after a specific date. Since the IDs of a transaction increase incrementally, you can use the   start_id   to fetch specific transactions. We recommend doing this if you want to see the transactions you have yet to record.
Response Fields
The /transactions endpoint contains the basic information about the transactions in an account as well as Quovo identifiers. Some attributes are used more frequently in banking transactions, whereas others are used primarily for investment transactions. Some of the attributes in the /transactionsendpoint, such as the   price  ,   quantity  , and   value  , work the same as they do in the /holdings endpoint. In this section, we’ll go through the other elements of a transaction.

Basic Information

Every transaction will have the standard information about its Quovo data such as IDs for the transaction, connection, account, and user.  These details are for reference and organizational purposes.  

Transaction Memo

Transaction memos are a brief description of what the transaction was for. They are taken directly from the institution. We use the   memo  , along with other fields, to apply   types   and   subtypes   to transactions. We also use the   memo   to decide the   cashflow_category   on cash transactions.

Date

For investments, the   date   represents the trade date of the transactions.  For cash transactions, the   date   represents the date when the transaction was initiated.  
Banking Transactions
Quovo provides a   cashflow_category   and   cashflow_subcategory   on all cash transactions in Banking accounts. These transactions have a   type   of “C” and are present in accounts with a  category   of “banking.” The   cashflow_category   is a Quovo generated field that identifies what the cash transaction was used for. To determine the category, Quovo will look at different elements in the transaction details and the account type.  The value of the fields can include categories such as “Entertainment,” “Paycheck/Salary,” or “Food and Beverages.” The   cashflow_subcategory   is a more granular subset of the category.  For example, in the “Food and Beverages” category, you’ll have subcategories such as “Restaurants” or “Bars”.  There is a one to many relationship between the category and subcategory meaning a category has many subcategories but a subcategory will only belong to one category.  Visit our Data Dictionary for a full list of our categories.  You can use these categories to build a variety of personal finance modules.
You’ll be able to update these two fields by making a PUT call to https://api.quovo.com/v3/transaction/{id} and passing the Quovo   cashflow_category   or   cashflow_subcategory  . By default, we will update the categories on all similar or matching transactions that fall under that user.  You can also pass the parameter   ignore_matching   : true to only update the category on a single transaction.
One other note for banking transactions: the   price   and   quantity   will be 0. Since these are cash transactions, we’ll only populate the    value    with the total amount of the transaction: Here is a sample response for a banking transaction:
{
    "transactions": [
        {
            "account_id": 384752,
            "cashflow_category": "Bills/Utilities",
            "cashflow_subcategory": "Gas Bill"
            "connection_id": 877247,
            "currency": null,
            "date": "2017-05-01",
            "fees": 0,
            "forex_rate": 1.0,
            "id": 199436905,
            "is_cancel": false,
            "is_pending": false,
            "memo": "ConEd 1234 Main St",
            "price": 0,
            "quantity": 0,
            "subtype": "WITH",
            "symbol": null,
            "symbol_name": null,
            "type": "C",
            "user_id": 162703,
            "value": -100.0
        }
    ]
}

Investment Transactions

All transactions are typed at a broad level (  type  ) and a granular level (  subtype  ).  These types are most helpful when describing the treatment of investment transactions. The transaction type and subtype can help you decide how to treat the transaction when making calculations, such as account performance or value over time.
The transaction type is the broad category that describes the nature of the transaction.  Some examples of response values include “B” (Buy), “S” (Sell), “T” (Transfer), and “I” (Dividends/Interest/Fees).  It is a general category that can be used if you are making simple decisions on how to treat a transaction.
The transaction subtype on the other hand describes the specific action that the transaction is making.  Examples of response values include “BUYL” (Buy Long), “SPLT” (Split), and “STO” (Sell to Open).  As you can see, these values could be of use for performance reporting or daily account reconciliation. They give you a level of granularity that can allow for complex accounting work.  
You can see the full list of our transaction types and subtypes here.  
Note: A subtype can belong to many different types. Take the subtype “ACFE” (Account Fee) for example. These fees can can be typed as “C” (Cash) if it is a fee in a cash account or “I” (Dividends/Interest/Fees) if the fee is tied to a holding with a public symbol.