Sigma for Connect Platforms

    Use Sigma to report on transactional data about your Connect platform. If you need help after reading this, search our documentation or check out answers to common questions. You can even chat live with other developers in #stripe on freenode.

    Connect platforms can use Stripe Sigma to report on their own Stripe account’s transactional data. Depending on how your platform creates charges and transfers for your users, this can also include data about connected accounts.

    Destination charges are created by your platform on behalf of connected accounts and can be reported in a similar way to reporting on your own charges. For example, you could analyze the flow of funds from a destination charge to a connected account, join the transfer_id column of the charges table to the id column in the transfers table.

    The following example does this and joins these two tables together. The charge and transfer amounts, as well as destination account IDs, are returned.

    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
    2017-06-27 ch_eTA1WC7cY7vSoZK 1,000 1,000 acct_ApMri7v00DmZPWj
    2017-06-27 ch_Q6J8EfWkNplXwIn 800 800 acct_K5NJJhtFjT2JwJd
    2017-06-27 ch_Av0Z8i9eqbZuRDP 1,000 800 acct_RxTK98kGzOqs5FX
    2017-06-27 ch_dVseyKRTSK0kOKX 1,100 950 acct_yXzKe3c696kGxbg
    2017-06-27 ch_LvbvIIf7lH89bfQ 1,100 1,100 acct_5fCBwThuUG8qUNS

    For a more detailed breakdown of destination charges, make use of our query template for destination charges that uses the balance_transactions and transfers tables.

    Direct charges

    When your platform creates a direct charge on a connected account, it appears only on the connected account, not on your platform. This is analogous to the connected account making the charge request itself.

    You cannot report on direct charges to connected accounts as the charge is not ultimately processed by your platform. Since there is no charge created on your platform, no data is available in the charges table.

    If you assess an application fee on direct charges, this information is available for you to report on using the application_fees table. You can use this to analyze your platform’s revenue from direct charges without access to the charge data itself. Refer to our Direct charges template query to learn more.

    Separate charges and transfers

    Reporting on separate charges and transfers is similar to how you report on destination charges. All charges are created on your platform’s account, with funds separately transferred to connected accounts using transfer groups. Both the charges and transfers table include a transfer_group column, allowing you to write queries using this data. The transfers table also contains a column for source_transaction_id which may be used in some implementations of separate charges and transfers.

    A query template for separate charges and transfers is available for you to use.