Skip to main content

Stripe

Stripe is an online payment processor that is specifically geared towards online payments. Stripe’s APIs enable secure processing of payments across various global payment methods and currencies. Their APIs and the Dashboard centralise reporting, provide real-time data on charges, fees, refunds, and transfers.

Striim can read data from Stripe using its Stripe Reader, which ingests Stripe data and emits WAEvents that can be processed with continuous queries or directed to a Striim target.

Typical use cases for reading from Stripe include:

  • To create dashboards or reports based on the payment data of customers to detect fraud, rate of payment declines, payout reconciliations, and revenue recognition.

  • Automatically importing transactions into accounting software like NetSuite, Xero and Quickbooks Desktop.

You can read from Stripe, and write to any target supported by Striim.

Feature summary

Feature

Supported?

Notes

Objects

   Standard objects

   Custom objects

-

Authentication

   Basic Authentication

   OAuth Authentication

Standard OAuth via connection profiles.

   Custom Authentication Methods

API key with Stripe account ID.

Security and Governance

   TLS 1.2

   Connection Profile

Supports OAuth and API key–based profiles.

   Sherlock AI

   Sentinel AI

Operations

   Initial Load

   Pull-based Incremental Load

   Automated mode

-

Building Applications / Programmability

   Wizards

   Flow Designer

   Striim TQL

Schema Handling

   Initial Schema Creation

Works with supported targets (Striim targets that accept WAEvents).

   Output as WAEvents

This reader publishes WAEvents by default.

   Schema Evolution

-

Runtime

   Resilience

Configurable automatic retries.

   Recovery - A1P (at-least once processing) & E1P

A1P recovery supported; duplicates may occur after recovery. E1P not supported.

   Parallel Execution

   Metrics & Auditing

Operational considerations for Stripe Reader

The following guidance and metrics can help you deploy and operate Stripe integrations in Striim.

Metrics monitored by the Stripe Reader

Metric

Description

Number of DDLs

Number of data definition language operations

Number of inserts

Number of insert operations

For more information, see Monitoring Guide.

Stripe Reader limitations

  • The Stripe Reader cannot populate data for the following columns because this data can only be retrieved by expanding the API response using the expand[] query parameter.

    • Coupons

    • Customers

    • PaymentIntent

    • PaymentLinks

    • Plans

    • Prices

    • Quotes

  • The Customers and Invoices tables do not capture updates unless these tables are fully resynced at each polling interval. Leave the Incremental Load Marker property empty to cause full resyncs for these or any other tables.

  • When a table has both an ID field and a Created timestamp field, using the Created timestamp field as the incremental load marker for incremental load operations is a best practice. Using the ID field as the incremental load marker can lead to data loss when an incremental load operation causes high-volume data ingestion. To correct this state, remove the incremental load marker for the affected table and perform a resync.

Note

When you authenticate using OAuth, you grant Striim read permissions to your Stripe account. Because they require a higher level of permissions, the Stripe Reader can't read the following tables when you choose to authenticate using OAuth.

  • Accounts

  • BankAccounts

  • BalanceChangeFromActivitySummaryReport

  • BalanceSummaryReport

  • EndingBalanceReconciliationSummaryReport

  • ItemizedBalanceChangeFromActivityReport

  • ItemizedEndingBalanceReconciliationReport

  • ItemizedPayoutReconciliationReport

  • ItemizedPayoutsReport

  • ItemizedReconciliationForASinglePayoutReport

  • PayoutsReconciliationSummaryForASinglePayoutReport

  • PayoutsReconciliationSummaryReport

  • PayoutsSummaryReport

  • Reports

  • ValueLists

  • ValueListItems