Query Connect data
Use Sigma and Data Pipeline to retrieve information about Connect.
Connect platforms can report on their connected accounts using Sigma or Data Pipeline. You can write queries that run across your entire platform in much the same way as your own Stripe account.
Additional groups of Connect-specific tables within the schema are located in the Connect sections of the schema. If you don’t operate a Connect platform, these tables are not displayed.
Connected account information
The connected_
table provides a list of Account objects with information about connected accounts. This table is used for account-level information across all accounts on your platform, such as business name, country, or the user’s email address.
The following example uses the connected_
table to retrieve a list of five accounts for individuals located in the US that have payouts disabled because Stripe does not have the required verification information to verify their account.
select id, email, legal_entity_address_city as city, legal_entity_address_line1 as line1, legal_entity_address_postal_code as zip, legal_entity_address_state as state, legal_entity_dob_day as dob_day, legal_entity_dob_month as dob_month, legal_entity_dob_year as dob_year,
All the required fields for individual accounts in the US are retrieved as columns. This allows you to see what information has been provided, and what is needed, for each account. This can be seen in the example report below (some columns have been omitted for brevity).
id | city | … | id_provided | document_id | |
---|---|---|---|---|---|
acct_cckXnwY… | jenny.rosen@example.com | San Francisco | … | true | file_uMHJZ43… |
acct_kkxKB5b… | sophia.garcia@example.com | … | false | file_7sp9A1l… | |
acct_rJSAVRc… | natalie.davis@example.com | Seattle | … | true | file_bbnxrsT… |
acct_gEIHK7B… | ella.thompson@example.com | Austin | … | false | file_Pts5QgD… |
acct_XxNCaS6… | james.smith@example.com | … | false | file_xjjUBhd… |
Accounts with requirements
The connected_
table also contains information about the requirements
and future_
for connected accounts. Use the table to retrieve lists of accounts that have requirements currently due and will be disabled soon. Use the future_
columns to handle verification updates.
The following example uses the connected_
table to retrieve a list of accounts that have upcoming verification updates.
select id, business_name, requirements_currently_due, future_requirements_currently_due from connected_accounts where future_requirements_currently_due != ''
The requirements_
, requirements_
, requirements_
, future_
, future_
, and future_
are comma-separated lists of requirements on the account.
id | business_name | requirements_currently_due | future_requirements_currently_due |
---|---|---|---|
acct_1PSFdP757BpXnKN6 | RocketRides | business_profile.url | |
acct_1LnwB8Hu31I77bZG | Kavholm | individual.email,settings.payments.statement_descriptor | |
acct_1UMr0e5fbLmlHbZ0 | FurEver | external_account | settings.payments.statement_descriptor |
acct_1qqvKs7mRKVNb4Xe | Pasha | business_profile.url | company.tax_id |
Transactional data for connected accounts
Transactional and subscription data for connected accounts is contained within the connected_
tables. The available data for connected accounts is organized and structured in the same way as data for your own account.
For instance, the balance_
table, located in the Payments section, contains balance transaction data for your Stripe account. The connected_
table, located in the Connect - Payments section, contains balance transaction data for your connected accounts. Each Connect-specific table has an additional account
column containing the identifier of a connected account. This can be used when joining tables to build advanced queries.
The following example is based upon the default query that’s loaded into the editor. Instead of retrieving the ten most recent balance transactions on your account, it does so across all of your platform’s connected accounts.
select date_format(created, '%m-%d-%Y') as day, account, -- Added to include corresponding account identifier id, amount, currency, source_id, type from connected_account_balance_transactions -- Changed to use Connect-specific table order by day desc limit 5
day | account | id | amount | currency | source_id | type |
---|---|---|---|---|---|---|
acct_wiejTYD… | txn_aOPxp2I… | -1,000 | usd | re_LqzE4f4… | refund | |
acct_lCgvFLx… | txn_n01syum… | 1,000 | usd | ch_XV3ldSY… | charge | |
acct_igGqDW1… | txn_085doef… | 1,000 | usd | ch_HJWUHWW… | charge | |
acct_OnpTlLI… | txn_UctQouO… | 1,000 | eur | ch_4d4NXj0… | charge | |
acct_Hhmp4v4… | txn_QTU6ud0… | -1,000 | usd | re_MTKwhW3… | refund |
Refer to our transactions and subscriptions documentation to learn more about querying transactional and subscription data. You can then supplement or adapt your queries with Connect-specific information to report on connected accounts.
Query charges on connected accounts
Use Sigma or Data Pipeline to report on the flow of funds to your connected accounts. How you do this depends on your platform’s approach to creating charges.
Direct charges
If your platform creates direct charges on a connected account, they appear on the connected account, not on your platform. This is analogous to a connected account making a charge request itself. Platforms can use the Connect-specific tables (for example, connected_
or connected_
) to report on direct charges.
Access the direct charges query template to retrieve itemized information about application fees earned through direct charges, and reports on the connected account, transfer, and payment that is created.
Destination charges
If your platform creates destination charges on behalf of connected accounts, charge information is available within your own account’s data. A separate transfer of the funds to the connected account is automatically created, which creates a payment on that account. For example, the destination charges query template reports on transfers related to destination charges made by your platform. One way to analyze the flow of funds from a destination charge to a connected account is by joining the transfer_
column of the charges
table to the id
column of the transfers
table. This example includes the original charge identifier and amount, the amount transferred to the connected account, and the connected account’s identifiers and resulting payment.
select date_format(date_trunc('day', charges.created), '%y-%m-%d') as day, charges.id, charges.amount as charge_amount, transfers.amount as transferred_amount, transfers.destination_id from charges inner join transfers on transfers.id=charges.transfer_id order by day desc limit 5
day | id | charge_amount | transferred_amount | destination_id |
---|---|---|---|---|
ch_acct_J26Vj4t… | 1,000 | 1,000 | acct_AiNYq88… | |
ch_acct_JeHdeXU… | 800 | 800 | acct_HOdwKd9… | |
ch_acct_NMZeUXu… | 1,000 | 800 | acct_d0TzPiz… | |
ch_acct_6VxLQ20… | 1,100 | 950 | acct_xoW1X8o… | |
ch_acct_lxYRcap… | 1,100 | 1,100 | acct_Pqunk2e… |
Payment and transfer information for Connected accounts is also available within Connect-specific tables (for example, connected_
).
Separate charges and transfers
Report on separate charges and transfers using a similar approach to destination charges. All charges are created on your platform’s account, with funds separately transferred to connected accounts using transfer groups. A payment is created on the connected account that references the transfer and transfer group.
Both the charges
and transfers
table include a transfer_
column. Payment, transfer, and transfer group information is available within the Connect-specific connected_
table.