Modern Treasury offers a number of interfaces to receive and respond to changes in your data. Push to Warehouse enables regular syncing of Modern Treasury data directly to your existing data warehouse or database. You can now leverage this data as a single source of truth to power your reporting and analytics, without the need for dedicated engineering resources to ingest and store the data.

# Benefits of Push to Warehouse

## Regularly sync to your warehouse

Data is automatically synced to your warehouse on a regular cadence, allowing any tools or reports built on top of your warehouse to update automatically.

## Centralize your data

Centralize all your business data into your data warehouse, making it accessible for reporting, analytics, business intelligence, and internal workflows.

## Data is normalized

Data is delivered in normalized and properly typed tables, making analysis easier for your data team. The schema of the data is designed to follow API object schema, making it easy to use data in your warehouse and integration interchangeably.

## Choose which objects are synced

Choose which objects you want synced, helping you optimize data storage and transmission costs in your warehouse.

## Easily trigger full re-syncs of your data

Should you migrate or add destinations or simply want a clean, complete copy of your data, you can easily trigger a full re-sync to your warehouse.

Instead of polling Modern Treasury APIs or relying on webhooks to replicate a full copy of the objects in Modern Treasury, you can receive an efficient sync of data directly to your database.

# Supported Warehouses

Modern Treasury currently supports syncing data to the following destinations:

  • Athena

  • Azure Blob Storage

  • BigQuery

  • ClickHouse

  • Databricks

  • Firebolt

  • Google Cloud Storage

  • MySQL

  • Postgres

  • Redshift

  • S3

  • SingleStore

  • Snowflake

  • SQL Server

## Missing Destination?

If your data warehouse is not listed, please [contact Modern Treasury](🔗) with your desired warehouse. New warehouses may be available upon request.

# Supported Objects

In general, Modern Treasury will sync all your data, including Ledgers, Payments, Compliance, and Webhook Events to your warehouse. In the event you do not want all the data, you can select which objects you would like to receive.

# Object Attributes & Schema

By design, the Push to Warehouse table schema aims to emulate the API schema as closely as possible. Our API Reference includes detailed descriptions of each object type and its constituent attributes.

Each Push to Warehouse table includes a `raw_json` column, which contains a JSON-serialized representation of each object in precisely the same format that we use for API responses and Webhook payloads. The remainder of the columns for each table (with the exception of the **version** metadata attribute) are produced by "flattening" the raw JSON values as a convenience measure.

# Setting it up

To learn about activating and setting up this feature, reach out to [[email protected]](🔗).

Setup involves configuring access for Modern Treasury to push data into your destination. Transfers will automatically occur on a regular basis as objects in Modern Treasury are created or updated.

# Schema Changes

Our Push to Warehouse schema continuously evolves as we add support for new product features and occasionally deprecate old ones.

To facilitate this evolution in a predictable and controlled manner, we apply all schema changes during a standing monthly maintenance window on the **third Tuesday of each month, from 5-7 PM Pacific Time**.

We relay details regarding the scope and impact of the set of changes that we intend to make during each maintenance window at least one week ahead of time, via maintenance notices on our Status Page.

How to Subscribe to Push to Warehouse Maintenance Notices

  • Navigate to our Status Page at [](🔗).

  • Click the “Get Updates” button in the top right corner of the page, and select your preferred delivery mechanism for updates.

  • Depending on the delivery mechanism you select, you can optionally filter notifications by component type (e.g. you can opt to receive email, Slack, or Teams alerts for _only_ our Push to Warehouse product).

In most cases, the changes we make during maintenance windows are not disruptive to customers, and often we make no changes at all. However, there are sometimes instances where we need to re-sync historical data or pause regularly scheduled transfers to customer warehouses. We take care to specifically note when actions like this are necessary.


## Can I select which objects sync to my warehouse?

Yes, you may choose specific objects to sync to your warehouse. This will cutdown on the amount of data to be transmitted and stored in your warehouse. To do so, please contact [[email protected]](🔗).

## Is sensitive information synced to my warehouse?

Push to Warehouse respects the configuration of your organization, following your selection of [Data Privacy Controls](🔗). Given that the Push to Warehouse schema matches the API object schemas, the integration will only sync data exposed via API.


Most objects in Modern Treasury support `metadata`, a free-form key-value pair data store. Metadata is useful for filtering and reporting, and it is synced to your warehouse. If you are storing sensitive information in metadata, please note that it will be synced to your warehouse in the format it was received.

## What if I enable Data Privacy Controls after data has been synced to my warehouse?

When you enable [Data Privacy Controls](🔗) and data has already been synced to your warehouse, only newly created or updated records will be impacted. This will result in [controlled attributes](🔗) being removed or redacted from your warehouse.

If you want a full re-sync of data that respects the newly configured controls, please contact [[email protected]](🔗).

## Is Push to Warehouse a replacement for Webhook Events?

No. Typically, Push to Warehouse is not a replacement for webhook events. Webhook events deliver real-time state changes while Push to Warehouse delivers the objects themselves on a slower cadence. Although there are exceptions, in general real-time use cases, such as updating the UI for an end-user, should leverage Webhook Events. Push to Warehouse is better suited to support asynchronous, non-real-time workflows such as prior-day business intelligence reporting.

Both Push to Warehouse and Webhook Events are asynchronous data pipelines that should be considered "stale" by the time data arrives at the destination. The source of truth for the current state of all objects is the API and dashboard.