CData Python Connector for Stripe

Build 26.0.9655

CData Python Connector for Stripe

Overview

The CData Python Connector for Stripe allows developers to write Python scripts with connectivity to Stripe. The connector wraps the complexity of accessing Stripe data in an interface commonly used by Python connectors to common database systems.

Key Features

  • WHL installation packages that enable installation with "pip install".
  • Supported for Python 3.10 or newer on Windows, Linux, and macOS.
  • Write and execute SQL queries to fetch and update data in Stripe.
  • Custom dialect class that enables SQLAlchemy 1.3 and 1.4 to use this connector.

Getting Started

See Getting Started to install the connector to your Python distribution and to create a basic connection to Stripe.

Using the Python Connector/Using from Tools

See Using the Connector for examples of executing basic SELECT, INSERT, UPDATE, DELETE, and EXECUTE queries with the module's provided classes.

See Using from Tools to connect Stripe data to tools such as Pandas or Petl.

SQLAlchemy ORM

SQLAlchemy can be leveraged to model the tables in Stripe with mapped classes. See From SQLAlchemy for instructions for configuring the Python connector with SQLAlchemy.

Pandas

Pandas' DataFrames can be used alongside the connector to generate analytical graphics. See From Pandas for a guide.

Schema Discovery

See Schema Discovery to query the provided system tables, which allows users to discover the available tables, views, and stored procedure, alongside additional information about their columns or parameters.

Advanced Features

Advanced Features details additional features supported by the connector, such as defining user defined views, ssl configuration, remoting, caching, firewall/proxy settings, and advanced logging.

SQL Compliance

See SQL Compliance for a syntax reference and code examples outlining the supported SQL.

Data Model

See Data Model for the available database objects. This section also provides more detailed information on querying specific Stripe entities.

Connection String Options

The Connection properties describe the various options that can be used to establish a connection.

CData Python Connector for Stripe

Getting Started

Connecting to Stripe

For information on the available WHL files for supported environments, and how to install the appropriate file for your Python distribution, see Package Installation.

For information on the module to import, and how to configure the necessary connection properties in a connection string, see Establishing a Connection.

Other available connection properties can be used to configure other aspects of the connector capabilities.

Python Version Support

The CData Python Connector for Stripe can be installed and used in Python 3.10 or newer.

Stripe Version Support

See Also

  • Using the Connector: Establish connections and query Stripe through Python code.
  • From SQLAlchemy: Use SQLAlchemy to establish a connection with dialect URL, and interact with Stripe data using mapped classes and Sessions.

CData Python Connector for Stripe

Package Installation

Dependencies

The Python connectors require that Python 3.10 or newer be installed.

Installation

The CData Python Connector for Stripe is available as a WHL file for Windows, Linux, and Mac. Each connector is built using the Python 3.10 Stable ABI (indicated by the abi3 tag in the filename), so a single wheel supports any Python 3.10 or newer installation — there is no need to match your exact Python minor version. Use the "pip install" command with the appropriate WHL file for your platform.

Windows:

pip install cdata_stripe_connector-26.0.9655-cp310-abi3-win_amd64.whl

Linux:

pip install cdata_stripe_connector-26.0.9655-cp310-abi3-linux_x86_64.whl

macOS:

pip install cdata_stripe_connector-26.0.9655-cp310-abi3-macosx_12_0_arm64.whl

The macOS wheel supports arm64 (Apple Silicon) architectures only on macOS 12 and newer.

Regardless of the environment, certain distributions might require that the "pip3 install" command be used instead, to differentiate from a Python 2 distribution that might exist already. After installation, confirm whether the connector is successfully installed by running the "pip list" command. If "cdata_stripe_connector" is present in the list output by the command, then the installation was successful.

Upgrading

When upgrading, "pip install" does not automatically clean up old JRE files. To avoid leftover files that could cause JVM errors, uninstall the previous version before installing the new one.

Licensing

After the installation is complete, a separate step is needed to activate a license for the connector. Among the CData assets in the distribution's site packages, there is an install-license tool that activates this license. From within the distribution's site-packages folder, after navigating to the "cdata/installlic_stripe" folder, simply use a command like the below to activate the license. Omitting the <key> argument activates a trial license:

  • Windows:
    ./install-license.exe <key>
  • Linux / Mac:
    ./install-license.sh <key>

Sometimes, file access issues may cause pip to install the connector in a fallback file path that is not the python distribution's main or primary site-packages location. This can make it difficult to find where the connector was installed, and from there, the license activator. In that event, this python script below will print out the full file path of the connector's native file. This file will be stored in the mentioned cdata folder, from which the installlic_stripe folder is trivial to find:

import os
import cdata.stripe
path = os.path.abspath(cdata.stripe.__file__)
print(path)

Uninstallation

If the connector needs to be uninstalled for any reason, do so by running the pip uninstall command, as in the example below:

pip uninstall cdata-stripe-connector

CData Python Connector for Stripe

Establishing a Connection

The objects available within our connector are accessible from the "cdata.stripe" module. To use the module's objects directly:

  1. Import the module as follows:
    import cdata.stripe as mod
  2. To establish a connection string, call the connect() method from the connector object using an appropriate connection string, such as:
    mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")

Connecting to Stripe

Stripe supports authentication via either a live API key or via OAuth.

Note: For refining the data returned from Stripe after you connect and authenticate, you might want to set AccountId to the Connected Account Id for which you want to obtain data. To get the account Id of that account, navigate to the Stripe dashboard and find the menu entry for connected accounts. Click that list. Stripe displays a dropdown list of all currently connected accounts.

Live API Key

Connecting via live API key requires you to set the two following configuration parameters:

To obtain the value of the live API key:

  1. Login to the Stripe dashboard.
  2. Navigate to Developers > API keys > Secret key > Reveal live API Key.

Please note that Stripe does not allow access to the entities in the 'StripeV2' data model using secret keys created under test mode. Secret keys created in either live mode or in sandbox mode are allowed.

Furthermore, access to the entities in the 'StripeV2' data model is not allowed through restricted keys.

OAuth

Stripe supports OAuth authentication only. To enable this authentication from all OAuth flows, you must set AuthScheme to OAuth.

The following subsections describe how to authenticate to Stripe from three common authentication flows:

  • Desktop: a connection to a server on the user's local machine, frequently used for testing and prototyping. Authenticated via either embedded OAuth or custom OAuth.
  • Web: access to data via a shared website. Authenticated via custom OAuth only.
  • Headless Server: a dedicated computer that provides services to other computers and their users, which is configured to operate without a monitor and keyboard. Authenticated via embedded OAuth or custom OAuth.

For information about how to create a custom OAuth application, and why you might want to create one even for auth flows that have embedded OAuth credentials, see Creating a Custom OAuth Application.

For a complete list of connection string properties available in Stripe, see Connection.

Desktop Applications

CData provides an embedded OAuth application that simplifies authentication at the desktop. You can also authenticate from the desktop via a custom OAuth application, which you configure and register at the Stripe console. For further information, see Creating a Custom OAuth Application.

Before you connect, set the following variables:

  • InitiateOAuth = GETANDREFRESH. Used to automatically get and refresh the OAuthAccessToken.
  • Custom OAuth applications only:
    • OAuthClientId = the client Id assigned when you registered your custom OAuth application.
    • OAuthClientSecret = the client secret assigned when you registered your custom OAuth application.
    • CallbackURL = the redirect URI defined when you registered your custom OAuth application.

When you connect, the connector opens Stripe's OAuth endpoint in your default browser. Log in and grant permissions to the application.

After you grant permissions to the application, the connector completes the OAuth process:

  1. The connector obtains an access token from Stripe and uses it to request data.
  2. The OAuth values are saved in the path specified in OAuthSettingsLocation. These values persist across connections.

When the access token expires, the connector refreshes it automatically.

Web Applications

Authenticating via the Web requires you to create and register a custom OAuth application with Stripe, as described in Creating a Custom OAuth Application. You can then use the connector to get and manage the OAuth token values.

This section describes how to get the OAuth access token, how to have the driver refresh the OAuth access token automatically, and how to refresh the OAuth access token manually.

Get the OAuth access token:

  1. Set the following connection properties to obtain the OAuthAccessToken:

  2. Call stored procedures to complete the OAuth exchange:
    • Call the GetOAuthAuthorizationURL stored procedure. Set the AuthMode input to WEB and the CallbackURL to the Redirect URI you specified in your application settings. The stored procedure returns the URL to the OAuth endpoint.
    • Navigate to the URL that the stored procedure returned in Step 1. Log in and authorize the web application. You are redirected back to the callback URL.
    • Call the GetOAuthAccessToken stored procedure. Set the AuthMode input to WEB. Set the Verifier input to the code parameter in the query string of the redirect URI.

After you obtain the access and refresh tokens, you can connect to data and refresh the OAuth access token automatically.

Automatic refresh of the OAuth access token:

To have the connector automatically refresh the OAuth access token, do the following:

  1. The first time you connect to data, set the following connection parameters:
  2. On subsequent data connections, set the following:

Manual refresh of the OAuth access token:

The only value needed to manually refresh the OAUth access token is the OAuth refresh token.

  1. To manually refresh the OAuthAccessToken after the ExpiresIn period (returned by GetOAuthAccessToken) has elapsed, call the RefreshOAuthAccessToken stored procedure.
  2. Set the following connection properties:

  3. Call RefreshOAuthAccessToken with OAuthRefreshToken set to the OAuth refresh token returned by GetOAuthAccessToken.
  4. After the new tokens have been retrieved, set the OAuthAccessToken property to the value returned by RefreshOAuthAccessToken. This opens a new connection.

Store the OAuth refresh token so that you can use it to manually refresh the OAuth access token after it has expired.

Headless Machines

If you need to log in to a resource that resides on a headless machine, you must authenticate on another device that has an internet browser. You can do this in either of the following ways:

  • Option 1: Obtain the OAuthVerifier value.
  • Option 2: Install the connector on a machine with an internet browser and transfer the OAuth authentication values after you authenticate through the usual browser-based flow.

After you execute either Option 1 or Option 2, configure the driver to automatically refresh the access token on the headless machine.

Option 1: Obtaining and Exchanging a Verifier Code

To obtain a verifier code, you must authenticate at the OAuth authorization URL. Do the following:

  1. Authenticate from the machine with an internet browser, and obtain the OAuthVerifier connection property.

    If you are using the embedded OAuth application, call the GetOAuthAuthorizationURL stored procedure. Open the URL returned by the stored procedure in a browser.

    If you are using a custom OAuth application, set the following properties:

  2. Call the GetOAuthAuthorizationURL stored procedure. The stored procedure returns the CallbackURL established when the custom OAuth application was registered. (See Creating a Custom OAuth Application.)

    Copy this URL and paste it into a new browser tab.

  3. Log in and grant permissions to the connector. The OAuth application redirects you the redirect URI, with a parameter called code appended. Note the value of this parameter; you will need it later, to configure the OAuthVerifier connection property.

  4. Exchange the OAuth verifier code for OAuth refresh and access tokens. On the headless machine, set the following connection properties to obtain the OAuth authentication values:

    • InitiateOAuth = REFRESH.
    • OAuthVerifier = the noted verifier code (the value of the code parameter in the redirect URI).
    • OAuthSettingsLocation = persist the encrypted OAuth authentication values to the specified file.
    • Custom OAuth applications only:
      • OAuthClientId = the client Id in your custom OAuth application settings.
      • OAuthClientSecret = the client secret in the custom OAuth application settings.

  5. Test the connection to generate the OAuth settings file.

  6. After you re-set the following properties, you are ready to connect:

    • InitiateOAuth = REFRESH.
    • OAuthSettingsLocation = the file containing the encrypted OAuth authentication values. To enable the automatic refreshing of the access token, be sure that this file gives read and write permissions to the connector.
    • Custom OAuth applications only:
      • OAuthClientId = the client Id assigned when you registered your application.
      • OAuthClientSecret = the client secret assigned when you registered your application.

Option 2: Transferring OAuth Settings

Prior to connecting on a headless machine, you must install and create a connection with the driver on a device that supports an internet browser. Set the connection properties as described above in "Desktop Applications".

After completing the instructions in "Desktop Applications", the resulting authentication values are encrypted and written to the path specified by OAuthSettingsLocation. The default filename is OAuthSettings.txt.

Test the connection to generate the OAuth settings file, then copy the OAuth settings file to your headless machine.

To connect to data via the headless machine, set the following connection properties:

  • InitiateOAuth = REFRESH
  • OAuthSettingsLocation = the path to the OAuth settings file you copied from the machine with the browser. To enable automatic refreshing of the access token, ensure that this file gives read and write permissions to the connector.
  • Custom OAuth applications only:
    • OAuthClientId = the client Id assigned when you registered your custom OAuth application.
    • OAuthClientSecret = the client secret assigned when you registered your custom OAuth application.

CData Python Connector for Stripe

Configuring JNI

Java Native Interface (JNI) is a standard programming interface for writing Java native methods and embedding the Java virtual machine into native applications.

The connector leverages the JNI for improved performance on Mac and Linux.

Configure the Config INI File

The Linux and Mac editions of the Stripe python connector are configured with an ini file. This file is used to set several parameters, including JNI behavior. This file is to be located in:

{path_to_distribution_site-packages}/cdata/config.ini

Ensure that any configuration properties you set in the ini file fall under the following section name (adjust the 311 number if you are using an different python version from 3.11):

  • For Linux:
    [stripe.cpython-311-x86_64-linux-gnu.so]
  • For Mac:
    [stripe.cpython-311-darwin.so]

Configure the JNI connector's behavior by editing the properties in the connector's config.ini file. The connector can be configured as follows:

  • LOGFILE: Set this the same way as the CDATA_LOGFILE envrionment variable below.
  • JAVA_HOME: Configure the path to the JVM library location used to launch the JVM.
  • CLASS_PATH: Use a colon-separated list to configure the paths to the third-party jar libraries.

Configure Environment Variables

Additionally, set the following environment variables:

  • CDATA_JAVA_HOME: Configure the path to the JVM library location used to launch the JVM.
  • CDATA_JVM_OPTIONS: Place JVM options here.
  • CDATA_LOGFILE: Set this in the following scheme: <SCHEME>://<TAG>[|<LEVEL>]

    • SCHEME: The options are STDOUT, FILE.
      • STDOUT: Both the native wrapper and odbc core log into stdout. The Logfile and Verbosity properties can override the behavior of ODBC core.
      • FILE: The native wrapper logs into <FILENAME> while the odbc core logs into <FILENAME>.driver.log. The Logfile and Verbosity properties can override the behavior of ODBC core.
    • TAG
      • For STDOUT, set this to 1. For FILE, set this to the filename.
    • LEVEL
      • Set to one of: FATAL | ERROR | WARNING | INFO | DEBUG

The following are some examples of this syntax:

  • STDOUT://1|DEBUG
  • FILE:///tmp/my_py.log|DEBUG

Custom Logger

The Python connector supports a custom logging mechanism for redirecting log output to any destination, such as a cloud storage service or logging framework. Use setCustomLoggerFactory() to register a factory function that creates a logger instance for each connection.

The factory function receives the context string from the Logfile connection property (the portion after CUSTOM://) and must return an object with a writeLog(verbosity, message) method.

To enable custom logging:

  1. Call setCustomLoggerFactory() with your factory function before opening connections.
  2. Set Logfile to CUSTOM:// followed by a context string to identify the connection.
  3. Set Verbosity to the desired log level.

The following example demonstrates a custom logger factory that creates a separate logger instance per connection:

import cdata.stripe as mod
import time

class MyLogger:
    def __init__(self, loggerId):
        self.loggerId = loggerId
    def writeLog(self, verbosity, message):
        print("[MyLogger " + self.loggerId + "] " + message)

def createLogger(context):
    return MyLogger(context[len("MyLoggerId="):])

mod.setCustomLoggerFactory(createLogger)

conn1 = mod.connect("...;Logfile=CUSTOM://MyLoggerId=1;Verbosity=2;")
# do something with conn1
time.sleep(1)  # Wait for logs to flush from conn1

conn2 = mod.connect("...;Logfile=CUSTOM://MyLoggerId=2;Verbosity=2;")
# do something with conn2
time.sleep(1)  # Wait for logs to flush from conn2

CData Python Connector for Stripe

Creating a Custom OAuth Application

Creating a Custom OAuth Application

CData embeds OAuth Application Credentials with CData branding that can be used when connecting to Stripe via a desktop application or a headless machine.

However, you must create a custom OAuth application to connect to Stripe via the Web. And since custom OAuth applications seamlessly support all three commonly-used auth flows, you might want to create custom OAuth applications (use your own OAuth Application Credentials) for those auth flows anyway.

Custom OAuth applications are useful if you want to:

  • control branding of the authentication dialog;
  • control the redirect URI that the application redirects the user to after the user authenticates; or
  • customize the permissions that you are requesting from the user.

Procedure

Creating a custom OAuth application entails:

  • creating a custom application,
  • creating an OAuth installation link,
  • publishing the application to the Stripe App Marketplace,
  • installing and authorizing the application, and
  • exchanging your OAuth authorization code for an access token.

Note: All of the following instructions are performed via the Stripe Command Line Interface (CLI).

Create the Application

  1. In the Stripe CLI, enter:
    stripe apps create <application_name>
    Stripe creates stripe-app.json, a manifest file for the new application.
  2. Edit the application manifest file:
    • Set stripe_api_access_type to oauth.
    • Set disribution_type to public.
    • Configure your allowed_redirect_uris to indicate the URLs to which users are redirected after installing your custom OAuth application. The first one in the list is used as the default redirect.
    • Add all the permissions your custom application requires.

      Your application manifest should now look similar to this:

      {
      	"id": "com.example.my-application",
      	"version": "0.0,1",
      	"name": "Your Stripe Application",
      	"icon": "./[YOUR_APPLICATION]_icon_32.png",
      	"permissions": [
      		// Your application permissions here
      	],
      	"stripe_api_access_type": "oauth",
      	"distribution_type": "public",
      	"allowed_redirect_uris": [
      		// Your redirect uris here
      	]
      }

  3. If desired, add UI exensions to your application. You may want to add a settings view to enable your users to configure settings, or to link to your application's documentation.
  4. To upload your application to Stripe, enter:
    stripe apps upload
  5. To test your new custom application:
    • Navigate to your application's details page.
    • Open the External test tab.
    • Click Get started. This initiates an external test.
    • Navigate to the Test OAuth section and acess the authorize links. Use these links to test your application against different accounts.

Create the OAuth Install Link

From your web page, redirect to your OAuth install link with these parameters:
https://marketplace.stripe.com/oauth/v2/authorize?
client_id=${clientId}&redirect_url=${redirectUrl}&state=$(state).

Note: To prevent CSRF attacks, add the recommended state parameter and pass along a unique token as the value. For further information, see https://docs.stripe.com/stripe-apps/api-authentication/oauth#url-parameters.

Publish the Application

When you are ready to publish your custom OAuth application to the Stripe App Marketplace, submit it for review.

When you submit the application for review, you must provide the Marketplace install URL. This URL must link to a page that can initiate the onboarding and installation process with clear instructions using OAuth install links from the previous step.

(OAuth install links do not work until the application is published, but the Marketplace staff can use the link you provide to install and test your application.)

Install and Authorize the Application

  1. In your browser, open your OAuth install link. If necessary, adjust the query parameters to change the redirect URL to one that your custom application supports.
  2. View and accept the permissions to install the application.

The application installation process begins. When installation is complete, the user is either redirected to the first callback URL you defined in the app manifest, or to a specific URL parameter.

Exchange the Authorization Code for an Access Token

Your callback URL receives an OAuth authorization code parameter that is only valid for five minutes, and can only be used once. The backend of your custom application exchanges this code for an API access token and the refresh token.

Your backend code implements the exchange via an OAuth client library, using this command:

$	curl -X POST https://api.stripe.com/v1/oauth/token \
>	  -u sk_live_***: \
>	  -d code=ac_*** \
>	  -d grant_type=authorization_code
If the command is successful, Stripe displays a response similar to the following:
{
  "access_token": "{{ ACCESS_TOKEN }}”,
  "livemode": true,
  "refresh\_token": "{{ REFRESH_TOKEN }}”,
  "scope": "stripe_apps",
  "stripe_publishable_key": "pk_live_***”,
  "stripe\_user\_id": "acct\_***”,
  "token_type": "bearer"
}

Refresh the Access Token

Access tokens expire in one hour, and refresh tokens expire after one year. Refresh tokens are also rolled on every exchange, so the expiration time for the new refresh tokens is always a year from the date that it was first generated or rolled.

If you exchange a refresh token for an access token within one year, you should never hit the refresh token expiration date.

To exchange the access token for a refresh token, enter the following curl command:

$	curl -X POST https://api.stripe.com/v1/oauth/token \
>	  -u sk_live_***: \
>	  -d refresh\_token={{ REFRESH_TOKEN }} \
>	  -d grant_type=refresh_token
If the command is successful, you receive a response similar to:
{
  "access_token": "{{ ACCESS_TOKEN }}”,
  "livemode": true,
  "refresh\_token": "{{ REFRESH_TOKEN }}”,
  "scope": "stripe_apps",
  "stripe_publishable_key": "pk_live_***”,
  "stripe\_user\_id": "acct\_***”,
  "token_type": "bearer"
}

Once you obtain a new refresh token, the previous refresh token expires. Store the new refresh token securely in your backend, and use the refresh token to obtain a new access token any time you must access the Stripe API on behalf of the Stripe user.

To validate the access token, enter a request to the Stripe API, similar to:

$	curl https://api.stripe.com/v1/customers \
>	  -u "{{ ACCESS_TOKEN }}"

CData Python Connector for Stripe

Changelog

General Changes

DateVersionSourceCategoryTypeDescription
2026-05-2726.0.9643GeneralConnectionRemoved
  • Removed the deprecated ReplaceInvalidTypesWithNull connection property. Use the ReplaceInvalidValuesWithNull property instead.
2026-05-2726.0.9643StripeData ModelChanged
  • Renamed the SupportedTransferCurrenciesAggregate column to SupportedTransferCountriesAggregate in the CountrySpecs view.
2026-05-2726.0.9643StripeConnectionAdded
  • Added a new value, Dahlia, to the Schema connection property. The default value is Dahlia.
2026-05-2226.0.9638PythonRemoved
  • Remove support for Intel x64 architecture on macOS
2026-05-0726.0.9623GeneralData ModelAdded
  • Added the ColumnCapabilities column to the sys_tablecolumns system table. This column is a bit mask denoting the column's write capabilities.
2026-05-0726.0.9623PythonChanged
  • Updated embedded JRE to jre-17.0.19+10 (Linux x64 / MacOs x64).
2026-05-0726.0.9623StripeData ModelRemoved
  • Removed the SettingsAggregate and TransferSchedule columns in the Accounts table.
  • Removed the Transaction column in the Disputes table.
  • Removed the ApplicationFee column in the Transfers table.
2026-05-0726.0.9623StripeData ModelAdded
  • Added the following columns to the Accounts table: SettingsBacsDebitPaymentsDisplayName, SettingsBacsDebitPaymentsServiceUserNumber, SettingsBrandingIcon, SettingsBrandingLogo, SettingsBrandingPrimaryColor, SettingsBrandingSecondaryColor, SettingsCardIssuingTosAcceptanceDate, SettingsCardIssuingTosAcceptanceIp, SettingsCardIssuingTosAcceptanceUserAgent, SettingsCardPaymentsDeclineOnAvsFailure, SettingsCardPaymentsDeclineOnCvcFailure, SettingsCardPaymentsStatementDescriptorPrefix, SettingsCardPaymentsStatementDescriptorPrefixKana, SettingsCardPaymentsStatementDescriptorPrefixKanji, SettingsDashboardDisplayName, SettingsDashboardTimezone, SettingsInvoicesDefaultAccountTaxIds, SettingsPaymentsStatementDescriptor, SettingsPaymentsStatementDescriptorKana, SettingsPaymentsStatementDescriptorKanji, SettingsPayoutsDebitNegativeBalances, SettingsPayoutsScheduleDelayDays, SettingsPayoutsScheduleInterval, SettingsPayoutsScheduleMonthlyAnchor, SettingsPayoutsScheduleWeeklyAnchor, SettingsPayoutsStatementDescriptor, and SettingsSepaDebitPaymentsCreditorId.
2026-04-1626.0.9602StripeData ModelRemoved
  • Removed the Upcoming pseudocolumn from the Invoices table.
2026-04-1526.0.9601GeneralQuery ExecChanged
  • String comparisons using GREATER, LESS, and CONTAINS operators are now case-insensitive by default.
2026-04-0826.0.9594StripeSecurityChanged
  • TLS 1.3 is now supported by default for HTTP connections.
2026-02-1325.0.9540StripeChanged
  • Changed the data type of the DiscountCouponPercentOff column from integer to decimal in the Customers and Subscriptions tables.
2026-01-1325.0.9509GeneralAdded
  • Added support for the REGEXP_REPLACE() string function.
2026-01-0225.0.9498StripeAdded
  • Added the Created column to the Authorizations view.
2025-12-2125.0.9486PythonAdded
  • Added support for custom loggers in Python connectors on Linux and macOS.
2025-12-0525.0.9470GeneralAdded
  • Added support for the INSERT INTO SELECT statement, with driver-side execution for providers that do not support the operation natively.
2025-10-3025.0.9434PythonChanged
  • Updated embedded JRE to jre-17.0.17+10 (Linux x64 / MacOs x64).
2025-10-0625.0.9410GeneralAdded
  • Support for parsing datetime formats using ".S" and ",S" for milliseconds and nanoseconds.
2025-09-1225.0.9386GeneralAdded
  • Added the IsInsertable, IsUpdateable, and IsDeleteable columns to the sys_tables table.
2025-09-1025.0.9384GeneralChanged
  • All columns in statically defined Views are now reported as read-only.
2025-09-0325.0.9377GeneralChanged
  • Corrected the behavior when IN criteria with NULL values are used in the projection part. It now returns NULL instead of 0. For example, "NULL IN (1,2)" returns "NULL".
2025-09-0125.0.9375GeneralAdded
  • Added support for using the CAST function with infinity values. This function can cast "inf" and "-inf" to DOUBLE, FLOAT, or REAL.
2025-08-2125.0.9364GeneralChanged
  • Report behavior change:
    • Fixed inconsistent string value comparisons in non-table queries.
    • For example, "SELECT 'A' = 'a'" previously returned false, but it now returns true.
2025-08-1325.0.9356GeneralChanged
  • Changed the maximum number of pages held in memory from 15 to 5 for the page providers to decrease heap usage.
2025-07-1425.0.9326StripeAdded
  • Added new columns:
    • CheckoutSession view: DiscountsAggregate.
    • Invoices view: AutomaticTaxDisabledReason.
    • Payouts view: TraceIdStatus and TraceIdValue.
    • Refunds view: DestinationDetailsBlikNetworkDeclineCode and DestinationDetailsSwishNetworkDeclineCode.
    • SetupAttempts view: PaymentMethodDetailsKakaoPay and PaymentMethodDetailsKrCard.
    • SubscriptionSchedules view: DefaultSettingsAutomaticTaxDisabledReason.
    • Subscriptions view: AutomaticTaxDisabledReason.
    • TestClocks view: StatusDetailsAdvancingTargetFrozenTime.
    • Transactions view: MerchantDataTaxId.
  • Updated description and added enum values to the Type field in the TaxIds table:
    • Added enum values: am_tin, ao_tin, ba_tin, bb_tin, bs_tin, cd_nif, gn_nif, kh_tin, li_vat, me_pib, mk_vat, mr_nif, np_pan, sn_ninea, sr_fin, tj_tin, ug_tin, zm_tin, and zw_tin.
  • Added new entities:
    • Tables: BillingAlerts and CreditGrants.
    • Views: InvoiceRenderingTemplates.
2025-07-1125.0.9323StripeAdded
  • Added support for the Scope connection property.
2025-07-1125.0.9323StripeRemoved
  • Removed the key=true attribute from the Id column in report specific views.
2025-07-0925.0.9321StripeChanged
  • Changed the FeaturesAggregate column name to MarketingFeaturesAggregate in the Products table.
2025-07-0925.0.9321StripeRemoved
  • Removed the RenderingOptions column from the Invoices table.
2025-07-0725.0.9319PythonRemoved
  • Removed the 32-bit version of Windows Python.
2025-07-0225.0.9314PythonRemoved
  • Removed support for Python 3.9.
2025-06-2525.0.9307GeneralRemoved
  • Removed the "ADLS Gen 1" value from the ConnectionType property.
2025-06-2525.0.9307PythonAdded
  • Added support for Python 3.13 in Windows, Linux, and Mac editions.
2025-06-2525.0.9307PythonRemoved
  • Removed support for Python 3.8 as it is no longer supported.
2025-06-2025.0.9302GeneralAdded
  • Created the following functions:
    • TEXT_ENCODE: encodes a string into a different charset (UTF8 → UTF7 and returns a binary array as the result).
    • TEXT_DECODE: takes a binary array and decodes it back into a string when provided the charset.
    • BASE64_ENCODE: takes a binary array and encodes it as a base64 string (varchar).
    • BASE64_DECODE: takes a base 64-encoded string and decodes it into a binary array.
2025-06-1825.0.9300GeneralChanged
  • The internal code for exception handling has been refactored. Exception messages returned during certain error conditions may now have different wording or formatting.
2025-06-0425.0.9286StripeAdded
  • Added a Schema connection property with the allowed values of Stripe and StripeV2, where the default value is Stripe.
  • Added a new schema called StripeV2, which includes the following elements:
    • EventDestinations table
    • ThinEvents view
    • CreateBillingMeterEvent, CreateBillingMeterEventAdjustment, DisableEventDestination, EnableEventDestination, PingEventDestination, GetOAuthAccessToken, GetOAuthAuthorizationURL, and RefreshOAuthAccessToken stored procedures.
2025-05-2725.0.9278GeneralRemoved
  • Removed the "Proprietary" enum option from ProxyAuthscheme.
2025-05-1625.0.9267StripeAdded
  • Added the Meters and CryptoOnrampSessions tables.
  • Added the CryptoOnrampQuotes, InvoicePayments, and Mandates views.
  • Added the CreateBillingMeterEvent stored procedure.
2025-05-1225.0.9263PythonChanged
  • Updated embedded JRE to jre-17.0.15+6 (Linux x64 / MacOS x64) and jre-17.0.15+6 (MacOS aarch64).
2025-02-1524.0.9177GeneralAdded
  • Added support for converting unsigned integer types to the nearest signed data type that has enough precision to hold the unsigned value.This is done for JDBC only because it does not have support for unsigned data types.
2024-11-2724.0.9097GeneralAdded
  • Added ThreadId to LogModule output. Logfile lines now include the Thread ID associated with the action being performed.
2024-08-3024.0.9008StripeAdded
  • Added support for the ReportTypes view.
2024-07-0524.0.8952StripeAdded
  • Added support for the CreditNoteLineItemsDiscounts view.
  • Added support for the TestClocks table.
2024-07-0224.0.8949StripeAdded
  • Added the "SubscriptionsAggregate" column in the "Customers" table.
2024-06-2824.0.8945StripeRemoved
  • Removed the Recipient column from the Cards table.
  • Removed the Destination column from the Charges table.
  • Removed the AttributesAggregate and Caption columns from the Products table.
  • Removed the Orders and Skus views since they were deprecated from the API.
2024-06-2224.0.8939StripeRemoved
  • Removed the Auto AuthScheme option. The default value for the AuthScheme connection property is now APIKey.
2024-06-2024.0.8937StripeAdded
  • Added the DataObject column to the Events view.
2024-06-0524.0.8922PythonAdded
  • Added support for Python 3.12.
2024-05-1724.0.8903StripeAdded
  • Added LiveMode column to AvailableBalance and PendingBalance tables.
  • Added 21 columns to the Charges table.
  • Added PaymentMethodOptions column to the CheckoutSession table.
  • Added 40 columns to the Events table.
  • Added 20 columns to the InvoiceLineItems table.
  • Added Lines column to the Invoices table.
  • Added 42 columns to the SubscriptionItems table.
  • Added 27 columns to the Subscriptions table.
2024-05-1724.0.8903StripeRemoved
  • Removed SourceAggregate column from the Charges table.
  • Removed Request and DataObject columns from the Events table.
2024-05-1424.0.8900StripeAdded
  • Added the CreditNoteLineItems and CreditNotePreviewLineItems views.
2024-05-0924.0.8895GeneralChanged
  • The ROUND function previously did not accept negative precision values. That feature has now been restored.
2024-03-2223.0.8847StripeAdded
  • Added column DataObject for Events view.
2024-03-1523.0.8840GeneralAdded
  • Created a new SQL function called STRING_COMPARE that provides java's String.compare() ability to SQL queries. Returns a number representative of the compared value of two strings
2024-02-0923.0.8805StripeAdded
  • Added views ApplicationFeeRefunds, ApplicationFees, Authorizations, Cardholders, IssuingCards, IssuingDisputes, Transactions, SetupAttempts, SetupIntents, FileLinks, SubscriptionSchedules, CheckoutSessionLineItems, CustomerBalanceTransactions, PaymentMethodDomains.
  • Added stored procedure DeleteCustomerDiscount and DeleteSubscriptionDiscount
  • Added CancelSubscription and ResumeSubscription stored procedure.
2024-02-0223.0.8798StripeAdded
  • Added the FinalizeInvoice Stored Procedure.
2024-02-0123.0.8797StripeAdded
  • Added the CancelPaymentIntent, CapturePaymentIntent and ConfirmPaymentIntent Stored Procedures.
2024-01-3123.0.8796StripeAdded
  • Added the support for delete in Invoices table for deleting the draft invoices.
  • Added the VoidInvoice Stored Procedure.
2024-01-1923.0.8784StripeChanged
  • Changed the data type of Amount, SourceTypeCard, SourceTypesBankAccount and SourceTypesBitcoinReceiver columns from int to long in AvailableBalance view.
  • Changed the data type of Available column from int to string in CashBalance view. As the value is returned as a hash instead of an integer.
2023-12-2223.0.8756StripeChanged
  • PaymentIntent, Products and ShippingRates are now supported as tables.
2023-12-2223.0.8756StripeAdded
  • Added AutomaticPaymentMethodsAllowRedirects, PaymentMethodConfigurationDetailsId, PaymentMethodConfigurationDetailsParent columns in PaymentIntent table.
  • Added Confirm, OffSession, ErrorOnRequiresAction, Mandate, MandateDataCustomerAcceptanceType, MandateDataCustomerAcceptanceAcceptedAt, MandateDataCustomerAcceptanceOffline, MandateDataCustomerAcceptanceOnlineIPAddress, MandateDataCustomerAcceptanceOnlineUserAgent, RadarOptionsSession and ReturnURL pseudo-column in PaymentIntent table.
  • Added FeaturesAggregate column in Products table.
  • Added DeliveryEstimateMaximumUnit, DeliveryEstimateMaximumValue, DeliveryEstimateMinimumUnit, DeliveryEstimateMinimumValue and MetadataAggregate column in ShippingRates table.
2023-12-2123.0.8755StripeAdded
  • Added SourcesAggregate, TaxAutomaticTax, TaxIPAddress, TaxCountry, TaxState and TaxSource column to Customers table.
  • Added TaxValidateLocation pseudo column to Customers table.
2023-12-2123.0.8755StripeChanged
  • Changed the datatype of LiveMode column from integer to boolean in CustomerSubscriptions view.
  • Changed the key of CustomerSubscriptions view from CustomerId to Id.
2023-12-2123.0.8755StripeRemoved
  • Removed CustomerSources and CustomerTax views.
2023-12-2023.0.8754StripeChanged
  • Changed the name of column SourceTypesFpx to SourceTypesBitcoinReceiver in AvailableBalance and PendingBalance views.
  • Changed the name of column SourceTypesCardAggregate to SourceTypesAggregate in PendingBalance view.
2023-12-1823.0.8752StripeAdded
  • Added column CVC for Cards table
2023-12-1823.0.8752StripeRemoved
  • Removed column ResultLinksData from Reports
2023-12-1423.0.8748StripeRemoved
  • Removed CustomerDiscounts and SubscriptionDiscounts views.
2023-12-1423.0.8748StripeAdded
  • Added DiscountId, DiscountCheckoutSession, DiscountCustomer, DiscountStart, DiscountEnd, DiscountInvoice, DiscountInvoiceItem, DiscountPromotionCode, DiscountSubscription, DiscountCouponCreatedAt, DiscountCouponCurrency, DiscountCouponName, DiscountCouponDuration, DiscountCouponDurationInMonths, DiscountCouponAmountOff, DiscountCouponPercentOff, DiscountCouponValid, DiscountCouponMaxRedemptions, DiscountCouponRedeemBy, DiscountCouponTimesRedeemed, DiscountCouponObject, DiscountCouponLiveMode, DiscountCouponMetadataAggregate columns in Subscriptions tables.
  • Added CouponId, DiscountCheckoutSession, DiscountCustomer, DiscountStart, DiscountEnd, DiscountInvoice, DiscountInvoiceItem, DiscountPromotionCode, DiscountSubscription, DiscountCouponCreatedAt, DiscountCouponCurrency, DiscountCouponName, DiscountCouponDuration, DiscountCouponDurationInMonths, DiscountCouponAmountOff, DiscountCouponPercentOff, DiscountCouponValid, DiscountCouponMaxRedemptions, DiscountCouponRedeemBy, DiscountCouponTimesRedeemed, DiscountCouponObject, DiscountCouponLiveMode, DiscountCouponMetadataAggregate columns in Customers tables
  • Added columns PriceDataProduct, PriceDataCurrency, PriceDataTaxBehaviour, PriceDataUnitAmount,PriceDataUnitAmountDecimal, TaxBehaviour, TaxCode for InvoiceItems table.
2023-12-1223.0.8746StripeRemoved
  • Removed column Customer from Invoices table.
2023-12-1123.0.8745StripeChanged
  • Updated column ResultLinksDataId column to ResultLinksDataAggregate of Reports view.
  • Changed the data type of InventoryValue column from Double to String in Skus view.
2023-12-1123.0.8745StripeRemoved
  • Removed columns ResultLinksDataObject, ResultLinksDataCreated, ResultLinksDataExpired, ResultLinksDataExpiresAt, ResultLinksDataFile, ResultLinksDataLivemode, ResultLinksDataMetaDataAggregate, ResultLinksDataUrl of Reports view
2023-12-0823.0.8742StripeAdded
  • Added PauseCollectionResumesAt, PauseCollectionBehavior, PendingInvoiceItemIntervalCount, CancellationDetailsFeedback, CancellationDetailsComment, CancellationDetailsReason, Currency, TrialSettingsEndBehaviorPaymentMethod, OnBehalfOf columns in the Subscriptions table.
2023-12-0823.0.8742StripeRemoved
  • Removed AutomaticTaxStatus, PauseCollection, CancellationDetails columns from Subscriptions table.
2023-12-0823.0.8742StripeChanged
  • Updated column name Start to StartDate in Subscriptions table.
2023-12-0723.0.8741StripeAdded
  • Added PaymentMethodDetails column in the Disputes table.
  • Added Submit Psuedo column in the Disputes table.
2023-12-0623.0.8740StripeChanged
  • Changed Description to Psuedo column as its gets updated in the Metadata field in the TransferReversals table.
2023-12-0523.0.8739StripeRemoved
  • Removed RecurringAggregate and TransformQuantity columns from Prices Table.
2023-12-0523.0.8739StripeAdded
  • Added CustomUnitAmountMaximum, CustomUnitAmountMinimum, CustomUnitAmountPreset, TransformQuantityDivideBy, TransformQuantityRound, RecurringInterval, RecurringAggregateUsage, RecurringIntervalCount, RecurringUsageType columns in the Prices table.
2023-11-2923.0.8733GeneralChanged
  • The ROUND function doesn't accept the negative precision values anymore.
2023-11-2923.0.8733GeneralChanged
  • The returning types of the FDMonth, FDQuarter, FDWeek, LDMonth, LDQuarter, LDWeek functions are changed from Timestamp to Date.
  • The return type of the ABS function will be consistent with the parameter value type.
2023-11-2823.0.8732GeneralAdded
  • Added the HMACSHA256 formatter to allow for secrets to be decoded if it is in base64 format
2023-09-0723.0.8650StripeAdded
  • Added ApproveReview, AccpetQuote, CancelQuote, DownloadFile, DownloadQuote, FinalizeQuote, UploadFile, VoidCreditNotes stored procedures.
2023-08-3023.0.8642StripeAdded
  • Added CashBalance, EarlyFraudWarning, Files, and Reviews views.
  • Added CheckoutSession, CreditNotes, Persons, PromotionCodes, Quotes, TaxRates, TopUps, UsageRecords, ValueListItems, and ValueLists tables.
2023-08-2923.0.8641PythonAdded
  • Added support for SQLAlchemy 2.0.
2023-08-0123.0.8613StripeAdded
  • Added EffectiveAt column in Invoices table.
  • Added CashAppBuyerId, CashAppCashTag, PaypalPayerId, PaypalPayerEmail columns and Enum type zip in the PaymentMethods table.
2023-07-2823.0.8609StripeChanged
  • Added Created as server-side filterable column for Accounts table.
  • Added Date as server-side filterable column for InvoiceItems table.
2023-06-2023.0.8571GeneralAdded
  • Added the new sys_lastresultinfo system table.
2023-06-0723.0.8558StripeAdded
  • Added AmountShipping, ShippingDetails, ShippingCost columns in Invoices table.
  • Added CustomFields aggregate column in PaymentLinks table.
  • Added CancellationDetails column in Subscriptions table.
2023-06-0423.0.8555StripeAdded
  • Added CustomerSources, CustomerSubscriptions, CustomerTax, InvoiceDiscounts, InvoiceItemDiscounts, InvoiceLineItemDiscounts child views.
2023-06-0423.0.8555StripeRemoved
  • Removed SourcesdataAggregate, TaxAggregate from Customers table and are now implemented as a child views.
2023-05-2423.0.8544StripeAdded
  • Added update functionality in Disputes Table.
2023-05-1923.0.8539PythonAdded
  • Added support for Python 3.11 on Windows, Linux and Mac.
2023-05-1623.0.8536PythonRemoved
  • Removed support for Python 3.7 on Windows and Linux
2023-05-1623.0.8536StripeChanged
  • Updated the API version to 2022-11-15.
2023-05-1623.0.8536StripeRemoved
  • Removed SubscriptionsDataAggregate column from Customers table.
  • Removed Charges column from PaymentIntent table. As it was deprecated in the Stripe API, LatestCharge column will have the data of Charges column.
2023-04-2523.0.8515GeneralRemoved
  • Removed support for the SELECT INTO CSV statement. The core code doesn't support it anymore.
2023-02-0122.0.8432StripeAdded
  • Added PaymentMethods Table.
  • Added AttachPaymentMethodToCustomer and DetachPaymentMethodFromCustomer Stored Procedures.
2023-01-1222.0.8412StripeAdded
  • Added PaymentIntent view.
2023-01-0322.0.8403StripeAdded
  • Added ShippingRates and PaymentLinkLineItems view.
  • Added PaymentLinks table.
2022-12-1422.0.8383GeneralChanged
  • Added the Default column to the sys_procedureparameters table.
2022-12-0622.0.8375StripeChanged
  • The InvoiceLineItems table is renamed to InvoiceItems.
2022-12-0622.0.8375StripeAdded
  • Added InvoiceLineItems table that will lists the line items of an invoice.
2022-11-1522.0.8354PythonChanged
  • Updated embedded JRE to jre8u345-b01(Linux x64 / MacOS x64) and jre-17.0.5+8(MacOS aarch64).
2022-09-3022.0.8308GeneralChanged
  • Added the IsPath column to the sys_procedureparameters table.
2022-09-2622.0.8304StripeChanged
  • The Accounts table will now show only authenticated account details in case of OAuth.
2022-08-1622.0.8263StripeAdded
  • Added the pseudo-column PendingInvoiceItemsBehavior to the Invoices table.
2022-05-1822.0.8173PythonAdded
  • Added support for Python 3.10 on Windows, Linux, and Mac
  • Added support for Python 3.9 on Mac
  • Added support for Mac M1
2022-05-1822.0.8173PythonRemoved
  • Removed support for Python 3.6 on Windows and Linux
2022-05-1022.0.8165StripeAdded
  • Added columns from the 2020-08-27 schema.
2022-04-2922.0.8154StripeChanged
  • Changed the data type of Type column on the Accounts table from boolean to string.
  • Changed the data type of Amount column on the Plans table from decimal to int.
2021-10-1321.0.7956StripeRemoved
  • Removed the BalanceHistory table, as it was deprecated in in the Stripe API.
2021-10-1321.0.7956StripeReplacements
  • Use the BalanceTransactions table as a replacement. This is recommended by Stripe.
2021-09-0221.0.7915GeneralAdded
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
2021-08-0721.0.7889GeneralChanged
  • Added the KeySeq column to the sys_foreignkeys table.
2021-08-0621.0.7888GeneralChanged
  • Added the new sys_primarykeys system table.
2021-07-2321.0.7874GeneralChanged
  • Updated the Literal Function Names for relative date/datetime functions. Previously, relative date/datetime functions resolved to a different value when used in the projection as opposed to the predicate. For example: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly, the two LAST_MONTH() methods would resolve to different datetimes. Now, they will match.
  • As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. For example: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that were previously calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
2021-04-2521.0.7785GeneralAdded
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = CONCAT(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
2021-04-2321.0.7783GeneralChanged
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
2021-04-1621.0.7776GeneralAdded
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
2021-04-1621.0.7776GeneralChanged
  • Reduced the length to 255 for varchar primary key and foreign key columns.
2021-04-1621.0.7776GeneralChanged
  • Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you need to generate new metadata caches if you are currently using CacheMetadata.
2021-04-1621.0.7776GeneralChanged
  • Updated index naming convention to avoid duplicates.

CData Python Connector for Stripe

Using the Connector

This section provides a walk-through for writing Stripe data access code in Python script.

For more information on the available data source entities and how to query them with SQL, see Data Model. For the SQL syntax, see SQL Compliance.

Connecting from Code

For information on how to deploy the connector and configure the connection to Stripe, see Package Installation and Establishing a Connection.

For information on how to connect with the stripe.connector module and its related classes, see Connecting.

Executing SQL

The connection's cursor object is used to directly execute SQL queries. For information on how to execute SELECT statements and process the returned result sets, see Querying Data. For information on to modify the data in Stripe with INSERT, UPDATE, and DELETE statements, see Modifying Data .

Executing Stored Procedures

You can call stored procedures by using the EXECUTE statement. For further information, see Calling Stored Procedures.

CData Python Connector for Stripe

Connecting

Connecting with the cdata.stripe Module:

The connector's module is used directly to establish a connection with the data source. It does this by using a connection string as its argument. For example:
import cdata.stripe as mod
conn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")

Once the connection is created, you can use it to execute subsequent SQL queries.

CData Python Connector for Stripe

Querying Data

After connecting as described in Connecting, you can use the open connection to execute SQL statements.

Executing Queries

To execute SQL statements that return data, use the execute() method. Once a query is executed, the result set is fetched from the cursor. This result set can then be iterated over to process the records individually.

For example:

cur = conn.execute("SELECT Discount, Email FROM Customers")
rs = cur.fetchall()
for row in rs:
	print(row)

Parameterized Queries

Various Python collections, such as arrays and tuples, can act as additional arguments for the execute() method. This enables you to parameterize the queries executed and help to prevent SQL Injection.

For example:

cmd = "SELECT Discount, Email FROM Customers WHERE Delinquent = ?"
params = ["False"]
cur = conn.execute(cmd, params)
rs = cur.fetchall()
for row in rs:
	print(row)

CData Python Connector for Stripe

Modifying Data

The connection is also used to issue INSERT, UPDATE, and DELETE commands to the data source. Parameters can be used with these statements if desired.

Note that the connector does not support transactions. As with normal write operations, all SQL statements executed by this connector affect the data source immediately. Call the connection's commit() method following the execution.

Insert

The following example adds a new record to the table:
cmd = "INSERT INTO Customers (Discount, Email) VALUES (?, ?)"
params = ["sales@northwind.net", "sales@grandhotels.com"]
cur = conn.execute(cmd, params)
print("Records affected: ", cur.rowcount)

Update

The following example modifies an existing record in the table:
cmd = "UPDATE Customers SET Email = ? WHERE Id = ?"
params = ["sales@grandhotels.com", "123456"]
cur = conn.execute(cmd, params)
print("Records affected: ", cur.rowcount)

Delete

The following example removes an existing record from the table:

cmd = "DELETE FROM Customers WHERE Id = ?"
params = ["123456"]
cur = conn.execute(cmd, params)
print("Records affected: ", cur.rowcount)

CData Python Connector for Stripe

Calling Stored Procedures

You can execute stored procedures using either the execute() or callproc() method of the connection.

Calling Stored Procedures Using Execute()

When you call stored procedures by issuing EXECUTE commands, the stored procedure arguments are parameterized. For example:
cmd = "EXECUTE RefreshOAuthAccessToken OAuthAccessToken = ?"
params = ["OAuthAccessToken"]
conn.execute(cmd, params)

Calling Stored Procedures Using Callproc()

When you call stored procedured by issuing the callproc() method, the stored procedure arguments are a procedure name and a list of parameters. For example:
cur = conn.cursor()
params = ["OAuthAccessToken"]
cur.callproc("RefreshOAuthAccessToken", params)

CData Python Connector for Stripe

Using from Tools

The connector is integrated with other tools and packages within Python.

Python Integration Guides

The following sections show how to create and use connections with the connector in common packages in Python:

Complete List of Stripe Integration Quickstarts

For information on connecting from other applications, see Stripe integration guides.

CData Python Connector for Stripe

From SQLAlchemy

The CData Python Connector for Stripe includes a Dialect class that enables integration with SQLAlchemy. Bear in mind that several aspects of connector functionality are not currently supported in SQLAlchemy 2.0 or above. If necessary, downgrade SQLAlchemy to version 1.4 or 1.3 before using this connector.

The following sections detail various aspects of this integration:

Connecting From SQLAlchemy

To construct a URL with which SQLAlchemy loads and uses the appropriate connector automatically, see Connecting

Reflecting Metadata With SQLAlchemy

To learn how to model Stripe tables with mapped classes, see Reflecting Metadata.

Querying Data From SQLAlchemy

To learn how to use mapped classes to query the associated tables, see Querying Data.

Modifying Data From SQLAlchemy

The connector provides INSERT/UPDATE/DELETE functionality in SQLAlchemy. To learn how to call the session's execute() method to affect the data in the data source, see Modifying Data.

CData Python Connector for Stripe

Connecting

Connecting With a Dialect URL

Establishing a connection using SQLAlchemy requires a specific URL format.
from sqlalchemy import create_engine
engine = create_engine("stripe:///?InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")

For SQLAlchemy 2.0, the dialect name is stripe_2. To establish a connection, use the following URL format:

from sqlalchemy import create_engine
engine = create_engine("stripe_2:///?InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")

CData Python Connector for Stripe

Reflecting Metadata

SQLAlchemy can act as an Object-relational Map (ORM). This enables you to treat records of a database table as instantiable records. To leverage this functionality, you must reflect the underlying metadata in one of the following ways.

Note: The following examples employ SQLAlchemy 1.4.

Modeling Data Using a Mapping Class

Use "sqlalchemy.ext.declarative.declarative_base" to declare a mapping class for the table you wish to model in the ORM. A known table in the data model is modeled either partially or completely, as shown in the following example:
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Customers(Base):
	__tablename__ = "Customers"
	Id = Column(String, primary_key=True)
	Discount = Column(String)
	Email = Column(String)

Automatically Reflecting Metadata

Rather than mapping tables manually, SQLAlchemy can discover the metadata for one or more tables automatically. To accomplish this across the entire data model, use automap_base:
from sqlalchemy import MetaData
from sqlalchemy.ext.automap import automap_base
meta = MetaData()
abase = automap_base(metadata=meta)
abase.prepare(autoload_with=engine)
Customers = abase.classes.Customers

You can also reflect a single table with an inspector. When reflecting this way, providing a list of specific columns to map is optional:

from sqlalchemy import MetaData, Table
from sqlalchemy import inspect
meta = MetaData()
insp = inspect(engine)
Customers_table = Table("Customers", meta)
insp.reflect_table(Customers_table, ["Id","Email"])

CData Python Connector for Stripe

Querying Data

After you use the steps in Connecting to connect, and use one of the methods in Reflecting Metadata to reflect some of the metadata, you can use a session object to query data.

Querying Data Using the Query Method

If the mapping class has been prepared, use it with a session object to query the data source. After binding the engine to the session, provide the mapping class to the session's query method.

For example:

engine = create_engine("stripe:///?InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")
factory = sessionmaker(bind=engine)
session = factory()
for instance in session.query(Customers).filter_by(Delinquent="False"):
	print("Id: ", instance.Id)
	print("Discount: ", instance.Discount)
	print("Email: ", instance.Email)
	print("---------")

Querying Data Using the Execute Method

The session object can also run the query with the execute() method alongside the appropriate Table object. Assuming you have an active session, the following is just as viable:
Customers_table = Customers.metadata.tables["Customers"]
for instance in session.execute(Customers_table.select().where(Customers_table.c.Delinquent == "False")):
	print("Id: ", instance.Id)
	print("FullName: ", instance.Name)
	print("City: ", instance.BillingCity)
	print("---------")

CData Python Connector for Stripe

Executing JOINs

Implicit Joining

If mapped classes of related Stripe objects have a singular foreign key relationship, the classes are implicitly joined. After importing the necessary objects, a relationship is established between your two mapped classes, as in the example below:
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, String, Integer, DateTime, ForeignKey
from sqlalchemy.orm import sessionmaker, relationship

Base = declarative_base()
class Contact(Base):
	__tablename__ = "Contact"
	Id = Column(Integer, primary_key=True)
	Name = Column(String)
	Email = Column(String)
	BirthDate = Column(DateTime)
	AccountId = Column(String, ForeignKey("Account.Id"))
	Account_Link = relationship("Account", back_populates="Contact_Link")

class Account(Base):
	__tablename__ = "Account"
	Id = Column(String, primary_key=True)
	Name = Column(String)
	BillingCity = Column(String)
	NumberOfEmployees = Column(Integer)
	Contact_Link = relationship("Contact", order_by=Contact.Id, back_populates="Account_Link")

Once the relationship is established, the tables are queried simultaneously using the session's query() method. For example:

rs = session.query(Account, Contact).filter(Account.Id == Contact.AccountId)
for Ac, Ct in rs:
  print("AccountId: ", Ac.Id)
  print("AccountName: ", Ac.Name)
  print("ContactId: ", Ct.Id)
  print("ContactName: ", Ct.Name)

Other Join Forms

In situations where mapped classes have either no foreign keys or multiple foreign keys, you may need different forms of the JOIN query to accommodate them. Using the earlier classes as examples, the following JOIN queries are possible as well:
  • Explicit condition (necessary if there are no foreign keys in your mapped classes):
    rs = session.query(Account, Contact).join(Contact, Account.Id == Contact.AccountId)
    for Ac, Ct in rs:
  • Left-to-right relationship:
    rs = session.query(Account, Contact).join(Account.Contact_Link)
    for Ac, Ct in rs:
  • Left-to-right relationship with explicit target:
    rs = session.query(Account, Contact).join(Contact, Account.Contact_Link)
    for Ac, Ct in rs:
  • String form of a left-to-right relationship:
    rs = session.query(Account, Contact).join("Contact_Link")
    for Ac, Ct in rs:

CData Python Connector for Stripe

Other SQL Clauses

SQLAlchemy ORM also exposes support for other clauses in SQL, such as ORDER BY, GROUP BY, LIMIT, and OFFSET. All of these are supported by this connector:

ORDER BY

The following example sorts by a specified column using the session object's query() method:
rs = session.query(Customers).order_by(Customers.TotalRowCount)
for instance in rs:
	print("Id: ", instance.Id)
	print("Discount: ", instance.Discount)
	print("Email: ", instance.Email)
	print("---------")

You can also use the session object's execute() method perform an ORDER BY. For example:

rs = session.execute(Customers_table.select().order_by(Customers_table.c.TotalRowCount))
for instance in rs:

GROUP BY

The following example uses the session object's query() method to group records with a specified column:
rs = session.query(func.count(Customers.Id).label("CustomCount"), Customers.Discount).group_by(Customers.Discount)
for instance in rs:
	print("Count: ", instance.CustomCount)
	print("Discount: ", instance.Discount)
	print("---------")

You can also use the session object's execute() method to perform a GROUP BY:

rs = session.execute(Customers_table.select().with_only_columns([func.count(Customers_table.c.Id).label("CustomCount"), Customers_table.c.Discount]).group_by(Customers_table.c.Discount))
for instance in rs:

LIMIT and OFFSET

The following example uses the session object's query() method to skip the first 100 records and fetch the following 25:
rs = session.query(Customers).limit(25).offset(100)
for instance in rs:
	print("Id: ", instance.Id)
	print("Discount: ", instance.Discount)
	print("Email: ", instance.Email)
	print("---------")

You can also use the session object's execute() method to set a LIMIT or OFFSET:

rs = session.execute(Customers_table.select().limit(25).offset(100))
for instance in rs:

CData Python Connector for Stripe

Aggregate Functions

Certain aggregate functions can also be used within SQLAlchemy by using the func module.

To import this module, execute:

from sqlalchemy.sql import func

Once func is imported, the following aggregate functions are available:

COUNT

The following example counts the number of records in a set of groups using the session object's query() method.
rs = session.query(func.count(Customers.Id).label("CustomCount"), Customers.Discount).group_by(Customers.Discount)
for instance in rs:
	print("Count: ", instance.CustomCount)
	print("Discount: ", instance.Discount)
	print("---------")

You can also execute COUNT using the session object's execute() method:

rs = session.execute(Customers_table.select().with_only_columns([func.count(Customers_table.c.Id).label("CustomCount"), Customers_table.c.Discount])group_by(Customers_table.c.Discount))
for instance in rs:

SUM

This example calculates the cumulative amount of a numeric column in a set of groups.

rs = session.query(func.sum(Customers.TotalRowCount).label("CustomSum"), Customers.Discount).group_by(Customers.Discount)
for instance in rs:
	print("Sum: ", instance.CustomSum)
	print("Discount: ", instance.Discount)
	print("---------")

You can also invoke SUM using the session object's execute() method.

rs = session.execute(Customers_table.select().with_only_columns([func.sum(Customers_table.c.TotalRowCount).label("CustomSum"), Customers_table.c.Discount]).group_by(Customers_table.c.Discount))
for instance in rs:

AVG

This example uses the session object's query() method to calculate the average amount of a numeric column in a set of groups:
rs = session.query(func.avg(Customers.TotalRowCount).label("CustomAvg"), Customers.Discount).group_by(Customers.Discount)
for instance in rs:
	print("Avg: ", instance.CustomAvg)
	print("Discount: ", instance.Discount)
	print("---------")

You can also use the session object's execute() method to invoke AVG:

rs = session.execute(Customers_table.select().with_only_columns([func.avg(Customers_table.c.TotalRowCount).label("CustomAvg"), Customers_table.c.Discount]).group_by(Customers_table.c.Discount))
for instance in rs:

MAX and MIN

This example finds the maximum value and minimum value of a numeric column in a set of groups.
rs = session.query(func.max(Customers.TotalRowCount).label("CustomMax"), func.min(Customers.TotalRowCount).label("CustomMin"), Customers.Discount).group_by(Customers.Discount)
for instance in rs:
	print("Max: ", instance.CustomMax)
	print("Min: ", instance.CustomMin)
	print("Discount: ", instance.Discount)
	print("---------")

You can also use the session object's execute() method to invoke MAX and MIN:

rs = session.execute(Customers_table.select().with_only_columns([func.max(Customers_table.c.TotalRowCount).label("CustomMax"), func.min(Customers_table.c.TotalRowCount).label("CustomMin"), Customers_table.c.Discount]).group_by(Customers_table.c.Discount))
for instance in rs:

CData Python Connector for Stripe

Modifying Data

Commands can be executed individually by the session with a call to "execute()".

Obtaining the Table Object

The query supplied to this method is constructed using the associated Table object of a mapped class. This Table object is obtained from the mapped class's metadata field, as below:

Customers_table = Customers.metadata.tables["Customers"]

Once the table object is obtained, the write operations are executed in the following ways. The queries are executed immediately without the need for a call to "commit()":

Insert

The following example adds a new record to the table:

session.execute(Customers_table.insert(), {"Discount": "sales@northwind.net", "Email": "sales@grandhotels.com"})

Update

The following example modifies an existing record in the table:

session.execute(Customers_table.update().where(Customers_table.c.Id == "123456").values(Discount="sales@northwind.net", Email="sales@grandhotels.com"))

Delete

The following example removes an existing record from the table:

session.execute(Customers_table.delete().where(Customers_table.c.Id == "123456"))

CData Python Connector for Stripe

From Pandas

When combined with the connector, Pandas can be used to generate data frames that contain your Stripe data. Once created, a data frame can be passed to various other Python packages.

Connecting

Pandas relies on an SQLAlchemy engine to execute queries. Before you can use Pandas you must import it:
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine("stripe:///?InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")

Querying Data

In Pandas, SELECT queries are provided in a call to the read_sql() method, alongside a relevant connection object. Pandas executes the query on that connection, and returns the results in the form of a data frame, which can be used for a variety of purposes.
df = pd.read_sql("""
	SELECT
	   Discount,
	   Email,
     $exNumericCol;
	FROM Customers;""", engine)
print(df)

Modifying Data

To insert new records into a table, create a new data frame, and define its fields accordingly. When that is done, call to_sql() on the data frame to perform the INSERT operation with the connector, as shown in the example below. You must set the "if _exists" argument to "append" to prevent Pandas from attempting building the table from scratch. To prevent Pandas from writing the data frame index as a column, set index=False.
df = pd.DataFrame({"Discount": ["sales@northwind.net"], "Email": ["sales@grandhotels.com"]})
df.to_sql("Customers", con=engine, if_exists="append", index=False)

CData Python Connector for Stripe

From Matplotlib

Matplotlib contains a number of tools that can graphically model Stripe data after being fed a data frame From Pandas.

Using PyPlot

Before any Matplotlib tool, such as pyplot, can be used, it must be imported:
from matplotlib import pyplot as plt

Once a Pandas data frame is obtained, it can be used to create a plot visualizing Stripe data. For example, the following plot generates and displays a bar graph relating Discount and TotalRowCount values:

df.plot(kind="bar", x="Discount", y=["TotalRowCount"])
plt.show()

CData Python Connector for Stripe

From Petl

The connector can be used to create ETL applications and pipelines for CSV data in Python using Petl.

Install Required Modules

Install the Petl modules using the pip utility.
pip install petl

Connecting

After you import the modules, including the CData Python Connector for Stripe, you can use the connector's connect function to create a connection using a valid Stripe connection string. If you prefer not to use a direct connection, you can use a SQLAlchemy engine.
import petl as etl
import cdata.stripe as mod
cnxn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")

Extract, Transform, and Load the Stripe Data

Create a SQL query string and store the query results in a DataFrame.
sql = "SELECT	Discount, Email FROM Customers "
table1 = etl.fromdb(cnxn,sql)

Loading Data

With the query results stored in a DataFrame, you can load your data into any supported Petl destination. The following example loads the data into a CSV file.
etl.tocsv(table1,'output.csv')

Modifying Data

Insert new rows into Stripe tables using Petl's appenddb function.
table1 = [['Discount','Email'],['sales@northwind.net','sales@grandhotels.com']]
etl.appenddb(table1,cnxn,'Customers')

CData Python Connector for Stripe

Schema Discovery

The extension supports schema discovery by using SQL queries to available System Tables.

Using SQL

The following sections describe the discovery of metadata through several System Tables:

CData Python Connector for Stripe

Tables and Views

The connector possesses system tables that are used to discover the tables and views available in the data model. Of these system tables, "sys_tables" and "sys_views" are used to fetch information about the available tables and views respectively:

Tables


import cdata.stripe as mod
conn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")
cur = conn.cursor()
cmd = "SELECT * FROM sys_tables"
cur.execute(cmd)
rs = cur.fetchall()
for row in rs:
	print(row)

Views


import cdata.stripe as mod
conn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")
cur = conn.cursor()
cmd = "SELECT * FROM sys_views"
cur.execute(cmd, params)
rs = cur.fetchall()
for row in rs:
	print(row)

CData Python Connector for Stripe

Columns

The available columns for any given table are fetched from a system table called "sys_tablecolumns". A specific table name is provided in the WHERE criteria to restrict the table from which the column information is fetched:

import cdata.stripe as mod
conn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")
cur = conn.cursor()
cmd = "SELECT * FROM sys_tablecolumns WHERE TableName = 'Customers'"
cur.execute(cmd)
rs = cur.fetchall()
for row in rs:
	print(row)

CData Python Connector for Stripe

Procedures

Procedures

A system table called "sys_procedures" is queried to obtain the available stored procedures that are executed:
import cdata.stripe as mod
conn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")
cur = conn.cursor()
cmd = "SELECT * FROM sys_procedures"
cur.execute(cmd)
rs = cur.fetchall()
for row in rs:
	print(row)

Parameters

The input parameters of any stored procedure are similarly obtained from the "sys_procedureparameters" system table:
import cdata.stripe as mod
conn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;")
cur = conn.cursor()
cmd = "SELECT * FROM sys_procedureparameters WHERE ProcedureName = 'RefreshOAuthAccessToken'"
cur.execute(cmd)
rs = cur.fetchall()
for row in rs:
	print(row)

CData Python Connector for Stripe

Advanced Features

This section details a selection of advanced features of the Stripe connector.

User Defined Views

The connector supports the use of user defined views, virtual tables whose contents are decided by a pre-configured user defined query. These views are useful when you cannot directly control queries being issued to the drivers. For an overview of creating and configuring custom views, see User Defined Views .

SSL Configuration

Use SSL Configuration to adjust how connector handles TLS/SSL certificate negotiations. You can choose from various certificate formats;. For further information, see the SSLServerCert property under "Connection String Options" .

Firewall and Proxy

Configure the connector for compliance with Firewall and Proxy, including Windows proxies and HTTP proxies. You can also set up tunnel connections.

Caching Data

Caching Data enables faster access to data and reduces the number of API calls, improving performance. The connector supports a simple caching model where multiple connections can also share the cache over time. When configuring the cache connection, you can specify automatic or explicit data caching.

Query Processing

The connector offloads as much of the SELECT statement processing as possible to Stripe and then processes the rest of the query in memory (client-side).

For further information, see Query Processing.

Logging

For an overview of configuration settings that can be used to refine CData logging, see Logging. Only two connection properties are required for basic logging, but there are numerous features that support more refined logging, which enables you to use the LogModules connection property to specify subsets of information to be logged.

Exception Handling

For an overview of how exceptions are reported and the components of an exception, see Exception Handling.

CData Python Connector for Stripe

User Defined Views

The CData Python Connector for Stripe supports the use of user defined views: user-defined virtual tables whose contents are decided by a preconfigured query. User defined views are useful in situations where you cannot directly control the query being issued to the driver; for example, when using the driver from a tool.

Use a user defined view to define predicates that are always applied. If you specify additional predicates in the query to the view, they are combined with the query already defined as part of the view.

There are two ways to create user defined views:

  • Create a JSON-formatted configuration file defining the views you want.
  • DDL statements.

Defining Views Using a Configuration File

User defined views are defined in a JSON-formatted configuration file called UserDefinedViews.json. The connector automatically detects the views specified in this file.

You can also have multiple view definitions and control them using the UserDefinedViews connection property. When you use this property, only the specified views are seen by the connector.

This user defined view configuration file is formatted so that each root element defines the name of a view, and includes a child element, called query, which contains the custom SQL query for the view.

For example:

{
	"MyView": {
		"query": "SELECT * FROM Customers WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}
Use the UserDefinedViews connection property to specify the location of your JSON configuration file. For example:
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"

Defining Views Using DDL Statements

The connector is also capable of creating and altering the schema via DDL Statements such as CREATE LOCAL VIEW, ALTER LOCAL VIEW, and DROP LOCAL VIEW.

Create a View

To create a new view using DDL statements, provide the view name and query as follows:

CREATE LOCAL VIEW [MyViewName] AS SELECT * FROM Customers LIMIT 20;

If no JSON file exists, the above code creates one. The view is then created in the JSON configuration file and is now discoverable. The JSON file location is specified by the UserDefinedViews connection property.

Alter a View

To alter an existing view, provide the name of an existing view alongside the new query you would like to use instead:

ALTER LOCAL VIEW [MyViewName] AS SELECT * FROM Customers WHERE TimeModified > '3/1/2020';

The view is then updated in the JSON configuration file.

Drop a View

To drop an existing view, provide the name of an existing schema alongside the new query you would like to use instead.

DROP LOCAL VIEW [MyViewName]

This removes the view from the JSON configuration file. It can no longer be queried.

Schema for User Defined Views

In order to avoid a view's name clashing with an actual entity in the data model, user defined views are exposed in the UserViews schema by default. To change the name of the schema used for UserViews, reset the UserViewsSchemaName property.

Working with User Defined Views

For example, a SQL statement with a user defined view called UserViews.RCustomers only lists customers in Raleigh:
SELECT * FROM Customers WHERE City = 'Raleigh';
An example of a query to the driver:
SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';
Resulting in the effective query to the source:
SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';
That is a very simple example of a query to a user defined view that is effectively a combination of the view query and the view definition. It is possible to compose these queries in much more complex patterns. All SQL operations are allowed in both queries and are combined when appropriate.

CData Python Connector for Stripe

SSL Configuration

Customizing the SSL Configuration

By default, the connector attempts to negotiate TLS with the server. The server certificate is validated against the default system trusted certificate store. You can override how the certificate gets validated using the SSLServerCert connection property.

To specify another certificate, see the SSLServerCert connection property.

CData Python Connector for Stripe

Firewall and Proxy

Connecting Through a Firewall or Proxy

HTTP Proxies

Note: The connector uses the system proxy settings by default, without further configuration needed. If you want to connect to other proxies, set ProxyAutoDetect to False and read further.

To authenticate to an HTTP proxy, set the following:

  • ProxyServer: the hostname or IP address of the proxy server that you want to route HTTP traffic through.
  • ProxyPort: the TCP port that the proxy server is running on.
  • ProxyAuthScheme: the authentication method the connector uses when authenticating to the proxy server.
  • ProxyUser: the username of a user account registered with the proxy server.
  • ProxyPassword: the password associated with the ProxyUser.

Other Proxies

Set the following properties:

CData Python Connector for Stripe

Caching Data

Caching Data

Caching data provides several benefits, including faster access to data and reducing the number of API calls, which improve performance. The connector supports a simple caching model where multiple connections can also share the cache over time. You can enable and configure caching features by setting the necessary connection properties.

Contents

The sections in this chapter detail the connector's caching functionality and link to the corresponding connection properties, as well as SQL statements.

Configuring the Cache Connection

Configuring the Cache Connection describes the properties that you can set when configuring the cache database.

Caching Metadata

Caching Metadata describes the CacheMetadata property. This property determines whether or not to cache the table metadata to a file store.

Automatically Caching Data

Automatically Caching Data describes how the connector automatically refreshes the cache when the AutoCache property is set.

Explicitly Caching Data

Explicitly Caching Data describes how you can decide what data is stored in the cache and when it is updated.

Data Type Mapping

Data Type Mapping shows the mappings between the data types configured in the schema and the data types in the database.

CData Python Connector for Stripe

Configuring the Cache Connection

Configuring the Caching Database

This section describes the properties for caching data to the persistent store of your choice.

CacheLocation

The CacheLocation property species the path to a file-system-based database. When caching is enabled, a file-system-based database is used by default. If CacheLocation is not specified, this database is stored at the path in Location. If neither of these connection properties are specified, the connector uses a platform-dependent default location.

CacheConnection

The CacheConnection property specifies a database driver and the connection string to the caching database.

CacheDriver and CacheProvider

Both the CacheDriver and CacheProvider properties are supported. Each specifies a database driver and the connection string to the caching database. CacheDriver is designed for Linux and MacOS; CacheProvider is Windows-based.

CData Python Connector for Stripe

Automatically Caching Data

Automatically caching data is useful when you do not want to rebuild the cache for each query. When you query data for the first time, the connector automatically initializes and builds a cache in the background. When AutoCache = true, the connector uses the cache for subsequent query executions, resulting in faster response times.

Configuring Automatic Caching

Caching the Customers Table

The following example caches the Customers table in the file specified by the CacheLocation property of the connection string.

SELECT Discount, Email FROM Customers WHERE Delinquent = 'False'

Common Use Case

A common use for automatically caching data is to improve driver performance when making repeated requests to a live data source, such as building a report or creating a visualization. With auto caching enabled, repeated requests to the same data may be executed in a short period of time, but within an allowable tolerance (CacheTolerance) of what is considered "live" data.

CData Python Connector for Stripe

Explicitly Caching Data

With explicit caching (AutoCache = false), you decide exactly what data is cached and when to query the cache instead of the live data. Explicit caching gives you full control over the cache contents by using CACHE Statements. This section describes some strategies to use the caching features offered by the connector.

Creating the Cache

To load data in the cache, issue the following statement.

CACHE SELECT * FROM tableName WHERE ...

Once the statement is issued, any matching data in tableName is loaded into the corresponding table.

Updating the Cache

This section describes two ways to update the cache.

Updating with the SELECT Statement

The following example shows a statement that can update modified rows and add missing rows in the cached table. However, this statement does not delete extra rows that are already in the cache. This statement only merges the new rows or updates the existing rows.

CACHE SELECT * FROM Customers WHERE Delinquent = 'False'

Updating with the TRUNCATE Statement

The following example shows a statement that can update modified rows and add missing rows in the cached table. This statement can also delete rows in the cache table that are not present in the live data source.

  CACHE WITH TRUNCATE SELECT * FROM Customers WHERE Delinquent = 'False'
  

Query the Data in Online or Offline Mode

This section describes how to query the data in online or offline mode.

Online: Select Cached Tables

You can use the tableName#CACHE syntax to explicitly execute queries to the cache while still online, as shown in the following example.

SELECT * FROM Customers#CACHE

Offline: Select Cached Tables

With Offline = true, SELECT statements always execute against the local cache database, regardless of whether you explicitly specify the cached table or not. Modification of the cache is disabled in Offline mode to prevent accidentally updating only the cached data. Executing a DELETE/UPDATE/INSERT statement while in Offline mode results in an exception.

The following example selects from the local cache but not the live data source because Offline = true.

SELECT * FROM Customers WHERE Delinquent='False' ORDER BY Email ASC

Delete Data from the Cache

You can delete data from the cache by building a direct connection to the database. Note that the connector does not support manually deleting data from the cache.

Common Use Case

A common use for caching is to have an application always query the cached data and only update the cache at set intervals, such as once every day or every two hours. There are two ways in which this can be implemented:

  • AutoCache = false and Offline = false. All queries issued by the application explicitly reference the tableName#CACHE table. When the cache needs to be updated, the application executes a tableName#CACHE ... statement to bring the cached data up to date.
  • Offline = true. Caching is transparent to the application. All queries are executed against the table as normal, so most application code does not need to be aware that caching is done. To update the cached data, simply create a separate connection with Offline = false and execute a tableName#CACHE ... statement.

CData Python Connector for Stripe

Data Type Mapping

The connector maps types from the data source to the corresponding data type available in the chosen cache database. The following table shows the mappings between the data types configured in the schema and the data types in the database. Some schema types have synonyms which are all listed in the Schema column.

Data Type Mapping

Note: String columns can map to different data types depending on their length.

Schema .NET JDBC SQL Server Derby MySQL Oracle SQLite Access
int, integer, int32 Int32 int int INTEGER INT NUMBER integer LONG
smallint, short, int16 Int16 short smallint SMALLINT SMALLINT NUMBER integer SHORT
double, float, real Double double float DOUBLE DOUBLE NUMBER double DOUBLE
date DateTime java.sql.Date date DATE DATE DATE date DATETIME
datetime, timestamp DateTime java.sql.Date datetime TIMESTAMP DATETIME TIMESTAMP datetime DATETIME
time, timespan TimeSpan java.sql.Time time TIME TIME TIMESTAMP datetime DATETIME
string, varchar String java.lang.String If length > 4000: nvarchar(max), Otherwise: nvarchar(length)If length > 32672: LONG VARCHAR, Otherwise VARCHAR(length)If length > 255: LONGTEXT, Otherwise: VARCHAR(length)If length > 4000: CLOB, Otherwise: VARCHAR2(length)nvarchar(length)If length > 255: LONGTEXT, Otherwise: VARCHAR(length)
long, int64, bigint Int64 long bigint BIGINT BIGINT NUMBER bigint LONG
boolean, bool Boolean boolean tinyint SMALLINT BIT NUMBER tinyint BIT
decimal, numeric Decimal java.math.BigDecimal decimal DECIMAL DECIMAL DECIMAL decimal CURRENCY
uuid Guid java.util.UUID nvarchar(length) VARCHAR(length)VARCHAR(length) VARCHAR2(length)nvarchar(length) VARCHAR(length)
binary, varbinary, longvarbinary byte[] byte[] binary(1000) or varbinary(max) after SQL Server 2000, image otherwise BLOB LONGBLOB BLOB BLOB LONGBINARY

CData Python Connector for Stripe

Query Processing

Query Processing

CData has a client-side SQL engine built into the connector library. This enables support for the full capabilities that SQL-92 offers, including filters, aggregations, functions, etc.

For sources that do not support SQL-92, the connector offloads as much of SQL statement processing as possible to Stripe and then processes the rest of the query in memory (client-side). This results in optimal performance.

For data sources with limited query capabilities, the connector handles transformations of the SQL query to make it simpler for the connector. The goal is to make smart decisions based on the query capabilities of the data source to push down as much of the computation as possible. The Stripe Query Evaluation component examines SQL queries and returns information indicating what parts of the query the connector is not capable of executing natively.

The Stripe Query Slicer component is used in more specific cases to separate a single query into multiple independent queries. The client-side Query Engine makes decisions about simplifying queries, breaking queries into multiple queries, and pushing down or computing aggregations on the client-side while minimizing the size of the result set.

There's a significant trade-off in evaluating queries, even partially, client-side. There are always queries that are impossible to execute efficiently in this model, and some can be particularly expensive to compute in this manner. CData always pushes down as much of the query as is feasible for the data source to generate the most efficient query possible and provide the most flexible query capabilities.

More Information

For a full discussion of how CData handles query processing, see CData Architecture: Query Execution.

CData Python Connector for Stripe

Logging

Logging

Capturing connector logging can be very helpful when diagnosing error messages or other unexpected behavior.

Basic Logging

To begin capturing connector logging, set these properties:

  • Logfile: A filepath that designates the name and location of the log file.
  • Verbosity: A numerical value (1-5) that determines the amount of detail in the log. See the page in the Connection Properties section for an explanation of the five levels.
  • MaxLogFileSize: When the limit is hit, a new log is created in the same folder with the date and time appended to the end. The default limit is 100 MB. Values lower than 100 kB will use 100 kB as the value instead.
  • MaxLogFileCount: A string specifying the maximum file count of log files. When the limit is hit, a new log is created in the same folder with the date and time appended to the end and the oldest log file will be deleted. Minimum supported value is 2. A value of 0 or a negative value indicates no limit on the count.

Once these properties are set, the connector populates the log file as it carries out various tasks, such as when authentication is performed or queries are executed. If the specified file doesn't already exist, it is created.

Log Verbosity

The verbosity level determines the amount of detail that the connector reports to the Logfile. Supported Verbosity levels range from 1 to 5.

The following list describes each level:

1Setting Verbosity to 1 logs the query, the number of rows returned by it, the start of execution and the time taken, and any errors.
2Setting Verbosity to 2 logs everything included in Verbosity 1, cache queries, and additional information about the request.
3Setting Verbosity to 3 also logs HTTP headers, as well as the body of the request and the response.
4Setting Verbosity to 4 also logs transport-level communication with the data source. This includes SSL negotiation.
5Setting Verbosity to 5 also logs communication with the data source and additional details that may be helpful in troubleshooting problems. This includes interface commands.

For normal operations, Verbosity should not be set to greater than 1. At higher verbosities you can log substantial amounts of data, which can delay execution times.

To refine the logged content further by showing/hiding specific categories of information, see LogModules.

Sensitive Data

Verbosity levels of 3 and higher may capture information that you do not want shared outside of your organization. The following lists information of concern for each level:

  • Verbosity 3: The full body of the request and the response, which includes all the data returned by the connector
  • Verbosity 4: SSL certificates
  • Verbosity 5: Any extra transfer data not included at Verbosity 3, such as non human-readable binary transfer data

Note: Although we mask sensitive values, such as passwords, in the connection string and any request in the log, it is always best practice to review the logs for any sensitive information before sharing outside your organization.

Advanced Logging

You may want to refine the exact information that is recorded to the log file. This can be accomplished using the LogModules property. This property allows you to filter the logging using a semicolon-separated list of logging modules.

Example property value:

LogModules=INFO;EXEC;SSL;SQL;META;

Note that the logfile filtering triggered by the Verbosity connection property takes precedence over the filtering imposed by this connection property. This means that operations of a higher verbosity level than the level specified in the Verbosity connection property are not printed in the logfile, even if they belong to one of the modules specified in this connection property.

The available modules and submodules are:

Module Name Module Description Submodules
INFO General Information. Includes the connection string, product version (build number), and initial connection messages.
  • Connec – Information related to creating or destroying connections.
  • Messag – Generic label for messages pertaining to connections, the connection string, and product version. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
EXEC Query Execution. Includes execution messages for user-written SQL queries, parsed SQL queries, and normalized SQL queries. Success/failure messages for queries and query pages appear here as well.
  • Messag – Messages pertaining to query execution. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • Normlz – Query normalization steps. Query normalization is when the product takes the user-submitted query and rewrites the query to get the same results with optimal performance.
  • Origin – This label applies to any messages recording a user's original query (the exact, unaltered, non-normalized query executed by the user).
  • Page – Messages related to query paging.
  • Parsed – Query parsing steps. Parsing is the process of converting the user-submitted query into a standardized format for easier processing.
HTTP HTTP protocol messages. Includes HTTP requests/responses (including POST messages), as well as Kerberos related messages.
  • KERB – HTTP requests related to Kerberos.
  • Messag – Messages pertaining to HTTP protocols. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • Unpack – This label applies to messages about zipped data being returned from the service API and unpacked by the product.
  • Res – Messages containing HTTP responses.
  • Req – Messages containing HTTP requests.
WSDL Messages pertaining to the generation of WSDL/XSD files.
SSL SSL certificate messages.
  • Certif – Messages pertaining to SSL certificates.
AUTH Authentication related failure/success messages.
  • Messag – Messages pertaining to authentication. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • OAuth – Messages related to OAuth authentication.
  • Krbros – Kerberos-related authentication messages.
SQL Includes SQL transactions, SQL bulk transfer messages, and SQL result set messages.
  • Bulk – Messages pertaining to bulk query execution.
  • Cache – Messages related to reading row data from and writing row data to the product's cache for better performance.
  • Messag – Messages pertaining to SQL transactions. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • ResSet – Query resultsets.
  • Transc – Messages related to handling transactions, including information about the number of jobs executed and backup table handling.
META Metadata cache and schema messages.
  • Cache – Messages related to reading from and modifying column and table definitions in the product's cache for better performance.
  • Schema – Messages related to retrieving metadata from or modifying the service schema.
  • MemSto – Messages related to writing to or reading from in-memory metadata cache.
  • Storag – Messages relating to storing metadata on disk or in an external data store, rather than in memory.
FUNC Information related to executing SQL functions.
  • Errmsg – Error messages related to executing SQL functions.
TCP Incoming and outgoing raw bytes on TCP transport layer messages.
  • Send – Raw data sent via the TCP protocol.
  • Receiv – Raw data received via the TCP protocol.
FTP Messages pertaining to the File Transfer Protocol.
  • Info – Status messages related to communication in the FTP protocol.
  • Client – Messages related to actions taken by the FTP client (the product) during FTP communication.
  • Server – Messages related to actions taken by the FTP server during FTP communication.
SFTP Messages pertaining to the Secure File Transfer Protocol.
  • Info – Status messages related to communication in the SFTP protocol.
  • To_Server – Messages related to actions taken by the SFTP client (the product) during SFTP communication.
  • From_Server – Messages related to actions taken by the SFTP server during SFTP communication.
POP Messages pertaining to data transferred via the Post Office Protocol.
  • Client – Messages related to actions taken by the POP client (the product) during POP communication.
  • Server – Messages related to actions taken by the POP server during POP communication.
  • Status – Status messages related to communication in the POP protocol.
SMTP Messages pertaining to data transferred via the Simple Mail Transfer Protocol.
  • Client – Messages related to actions taken by the SMTP client (the product) during SMTP communication.
  • Server – Messages related to actions taken by the SMTP server during SMTP communication.
  • Status – Status messages related to communication in the SMTP protocol.
CORE Messages relating to various internal product operations not covered by other modules.
DEMN Messages related to SQL remoting.
CLJB Messages about bulk data uploads (cloud job).
  • Commit – Submissions for bulk data uploads.
SRCE Miscellaneous messages produced by the product that don't belong in any other module.
TRANCE Advanced messages concerning low-level product operations.

CData Python Connector for Stripe

Exception Handling

Exception Handling

Exceptions can be surfaced from either the API or the CData Python Connector for Stripe. Each exception will have an error code, an error message, and a SQL state.

Error Codes

The error code classifies the type of error.

0 NONE Used for unclassified errors and internally handled errors. This code also covers data source-specific errors that do not fit in any specific category.
65537 TCP_UNKNOWN_HOST Unable to resolve a hostname (DNS failure).
65538 TCP_CONNECTION_REFUSED Could not connect to the remote port.
65539 TCP_AUTH_FAILED Login failed when using a binary authentication protocol. Use this for auth errors when the protocol is not HTTP (LDAP, SASL, Kerberos, ...).
65540 TCP_TIMEOUT Did not receive a response after sending a request to the server.
65541 TCP_PROTOCOL For wire protocol drivers. Either the server sent a bad packet that we are unable to process, or we cannot construct a packet to send.
131073 TLS_SERVER_UNTRUSTED Could not verify SSL server certificate.
131074 TLS_CLIENT_UNTRUSTED Server did not accept the client certificate we sent.
196609 OAUTH_DECRYPT_FAILED OAuthEncryptKey did not decrypt the OAuthSettings file.
196610 OAUTH_MISSING_CLIENT_INFO OAuthClientId / OAuthClientSecret / OAuthJWTCert is missing.
196611 OAUTH_MISSING_PROP General OAuth property missing. OAUTH_MISSING_CLIENT_INFO is used for missing client ID/secret and JWT cert.
196612 OAUTH_NO_ACCESS_TOKEN Unable to retrieve access token. Only use this when getting a token in GetOAuthAccessToken / RefreshOAuthAccessToken.
196613 OAUTH_TOKEN_EXPIRED The access token expired. Normally used with a RefreshOAuth/OAuthException behavior.
196614 OAUTH_INVALID_PROP OAuth property has an invalid value. OAUTH_MISSING_CLIENT_INFO / OAUTH_MISSING_PROP is used if the value is not set.
262145 HTTP_REQUEST_TIMEOUT Did not receive a response from the HTTP server.
262146 HTTP_CLIENT_ERROR Generic HTTP 4xx error. Only use for 4xx errors not covered by other codes.
262147 HTTP_AUTH_FAILED HTTP 401 error.
262148 HTTP_LIMIT_EXCEEDED HTTP 429 error.
262149 HTTP_SERVER_ERROR HTTP 5xx error.
262150 HTTP_NOT_FOUND_ERROR HTTP 404 error.
327681 CORE_TIMEOUT General timeout. Not related to a specific network request.
327682 CORE_OP_NOT_ALLOWED Operation blocked by provider permissions.
327683 CORE_CONNECTION_CONFIG Connection configuration is not valid.
327684 CORE_SERIALIZE Failed to encode data into a specific format (XML, JSON, CSV, ...).
327685 CORE_DESERIALIZE Failed to decode data from a specific format (XML, JSON, CSV, ...).
393217 SQL_SYNTAX_ERROR Unable to parse a SQL query.
393218 SQL_MISSING_COLUMNS Query did not include required columns.
393219 SQL_MISSING_PARAMS Stored procedure call did not include required parameters.
393220 SQL_QUERY_NOT_SUPPORTED A part of the query is not allowed in the current context.
458753 SSH_SERVER_UNTRUSTED Could not verify SSH server.
524289 STORAGE_LIST_EXCEPTION Issue listing storage resources.
524290 STORAGE_RESOURCE_NOT_FOUND Issue finding storage resources.
524291 STORAGE_ROOT_RESOURCE_NOT_FOUND The root resource (bucket/share/drive) was not found; cannot create it in flat file drivers.
524292 STORAGE_RESOURCE_NOT_A_DIRECTORY Storage resource is not a directory.
524293 STORAGE_RESOURCE_NOT_A_FILE Storage resource is not a file.
524294 STORAGE_PERMISSIONS_DENIED Storage permissions denied.

SQL State

The SQL state is used when throwing generic provider errors to the wrapper and indicates the success or failure of a call.

Some of the common SQL states are listed below:

07007 REQUIRED_CLAUSE Class Code 07: Dynamic SQL Error.
08001 OPEN_CONNECTION Class Code 08: Connection Exception. The connection was unable to be established to the application server or other server.
08004 REJECT_CONNECTION The application server rejected establishment of the connection.
42501 PRIVILEGE_IDENTIFIED_OBJECT Class Code 42: Syntax Error or Access Rule Violation. The authorization ID does not have the privilege to perform the specified operation on the identified object.
42506 AUTH_FAILED Owner authorization failure occurred.
42601 SQL_SYNTAX A character, token, or clause is invalid or missing.

Error Message

The error message provides more detailed reasoning about why the error occurred. It provides an explanation of the issue, and may include steps on how to resolve it.

CData Python Connector for Stripe

SQL Compliance

The CData Python Connector for Stripe supports several operations on data, including querying, deleting, modifying, and inserting.

SELECT Statements

See SELECT Statements for a syntax reference and examples.

See Data Model for information on the capabilities of the Stripe API.

INSERT Statements

See INSERT Statements for a syntax reference and examples.

UPDATE Statements

The primary key Id is required to update a record. See UPDATE Statements for a syntax reference and examples.

DELETE Statements

The primary key Id is required to delete a record. See DELETE Statements for a syntax reference and examples.

CACHE Statements

CACHE statements allow granular control over the connector's caching functionality. For a syntax reference and examples, see CACHE Statements.

For more information on the caching feature, see Caching Data.

EXECUTE Statements

Use EXECUTE or EXEC statements to execute stored procedures. See EXECUTE Statements for a syntax reference and examples.

Names and Quoting

  • Table and column names are considered identifier names; as such, they are restricted to the following characters: [A-Z, a-z, 0-9, _:@].
  • To use a table or column name with characters not listed above, the name must be quoted using square brackets ([name]) in any SQL statement.
  • Parameter names can optionally start with the @ symbol (e.g., @p1 or @CustomerName) and cannot be quoted.
  • Strings must be quoted using single quotes (e.g., 'John Doe').

CData Python Connector for Stripe

SQL Functions

The connector provides functions that are similar to those that are available with most standard databases. These functions are implemented in the CData provider engine and thus are available across all data sources with the same consistent API. Three categories of functions are available: string, date, and math.

The connector interprets all SQL function inputs as either strings or column identifiers, so you need to escape all literals as strings, with single quotes. For example, contrast the SQL Server syntax and connector syntax for the DATENAME function:

  • SQL Server:
    SELECT DATENAME(yy,GETDATE())
  • connector:
    SELECT DATENAME('yy',GETDATE())

String Functions

These functions perform string manipulations and return a string value. See STRING Functions for more details.

Date Functions

These functions perform date and date time manipulations. See DATE Functions for more details.

Math Functions

These functions provide mathematical operations. See MATH Functions for more details.

CData Python Connector for Stripe

STRING Functions

ASCII(character_expression)

Returns the ASCII code value of the left-most character of the character expression.

  • character_expression: The character expression.

                      SELECT ASCII('0');
                      --  Result: 48
                    

BASE64_ENCODE(input_binary)

Returns the Base64-encoded string form of a binary input.

  • input_binary: The binary value to encode.

                        SELECT BASE64_ENCODE(BinaryData);
                    -- Result: 'QmFzZTY0RW5jb2RlZA=='
                    

BASE64_DECODE(input_string)

Returns the binary result of decoding a Base64-encoded string.

  • input_string: The Base64-encoded string.

                        SELECT BASE64_DECODE('QmFzZTY0RW5jb2RlZA==');
                    -- Result: (binary output)
                    

CHAR(integer_expression)

Converts the integer ASCII code to the corresponding character.

  • integer_expression: The integer from 0 through 255.

                      SELECT CHAR(48);
                      -- Result: '0'
                    

CHARINDEX(expressionToFind ,expressionToSearch [,start_location ])

Returns the starting position of the specified expression in the character string.

  • expressionToFind: The character expression to find.
  • expressionToSearch: The character expression, typically a column, to search.
  • start_location: An optional character position to start searching for expressionToFind in expressionToSearch.

                      SELECT CHARINDEX('456', '0123456');
                      -- Result: 4

                      SELECT CHARINDEX('456', '0123456', 5);
                      -- Result: -1
                    

CHAR_LENGTH(character_expression),

Returns the number of UTF-8 characters present in the expression.

  • character_expression: The set of characters to be evaluated for length.

				 SELECT CHAR_LENGTH('sample text') FROM Account LIMIT 1
				 -- Result: 11			
				

CONCAT(string_value1, string_value2, ..., string_valueN)

Returns the string that is the concatenation of two or more string values.

  • string_value1: The first string to be concatenated.
  • string_value2: The second string to be concatenated.
  • string_valueN: (optional) Any additional strings to be concatenated.

                      SELECT CONCAT('Hello, ', 'world!');
                      -- Result: 'Hello, world!'
                    

CONTAINS(expressionToSearch, expressionToFind)

Returns 1 if expressionToFind is found within expressionToSearch; otherwise, 0.

  • expressionToSearch: The character expression, typically a column, to search.
  • expressionToFind: The character expression to find.

                      SELECT CONTAINS('0123456', '456');
                      -- Result: 1

                      SELECT CONTAINS('0123456', 'Not a number');
                      -- Result: 0
                    

ENDSWITH(character_expression, character_suffix)

Returns 1 if character_expression ends with character_suffix; otherwise, 0.

  • character_expression: The character expression.
  • character_suffix: The character suffix to search for.

                      SELECT ENDSWITH('0123456', '456');
                      -- Result: 1

                      SELECT ENDSWITH('0123456', '012');
                      -- Result: 0
                    

FILESIZE(uri)

Returns the number of bytes present in the file at the specified file path.

  • uri: The path of the file from which to read the size.

				SELECT FILESIZE('C:/Users/User1/Desktop/myfile.txt');
				-- Result: 23684
				

FORMAT(value [, parseFormat], format )

Returns the value formatted with the specified format.

  • value: The string to format.
  • format: The string specifying the output syntax of the date or numeric format.
  • parseFormat: The string specifying the input syntax of the date value. Not applicable to numeric types.

                      SELECT FORMAT(12.34, '#');
                      -- Result: 12

                      SELECT FORMAT(12.34, '#.###');
                      -- Result: 12.34

                      SELECT FORMAT(1234, '0.000E0');
                      -- Result: 1.234E3
                      
                      SELECT FORMAT('2019/01/01', 'yyyy-MM-dd');
                      -- Result: 2019-01-01
                      
                      SELECT FORMAT('20190101', 'yyyyMMdd', 'yyyy-MM-dd');
                      -- Result: '2019-01-01'
                    

HASHBYTES(algorithm, value)

Returns the hash of the input value as a byte array using the given algorithm. The supported algorithms are MD5, SHA1, SHA2_256, SHA2_512, SHA3_224, SHA3_256, SHA3_384, and SHA3_512.

  • algorithm: The algorithm to use for hashing. Must be one of MD5, SHA1, SHA2_256, SHA2_512, SHA3_224, SHA3_256, SHA3_384, or SHA3_512.
  • value: The value to hash. Must be either a string or byte array.

                      SELECT HASHBYTES('MD5', 'Test');
                      -- Result (byte array): 0x0CBC6611F5540BD0809A388DC95A615B
                    

INDEXOF(expressionToSearch, expressionToFind [,start_location ])

Returns the starting position of the specified expression in the character string.

  • expressionToSearch: The character expression, typically a column, to search.
  • expressionToFind: The character expression to find.
  • start_location: An optional character position to start searching for expressionToFind in expressionToSearch.

                      SELECT INDEXOF('0123456', '456');
                      -- Result: 4

                      SELECT INDEXOF('0123456', '456', 5);
                      -- Result: -1
                    

ISALPHABETIC(character_expression)

Returns 1 if the character expression consists only of alphabetic characters; otherwise, 0.

  • character_expression: The string expression to evaluate.

                      SELECT ISALPHABETIC('Hello');
                      -- Result: 1

                      SELECT ISALPHABETIC('Hello123');
                      -- Result: 0

                      SELECT ISALPHABETIC('Hello!');
                      -- Result: 0
                    

ISALPHANUMERIC(character_expression)

Returns 1 if the character expression consists only of alphabetic and numeric characters; otherwise, 0.

  • character_expression: The string expression to evaluate.

                      SELECT ISALPHANUMERIC('Hello123');
                      -- Result: 1

                      SELECT ISALPHANUMERIC('123');
                      -- Result: 1

                      SELECT ISALPHANUMERIC('Hello.123');
                      -- Result: 0
                    

ISNUMERIC(character_expression)

Returns 1 if the character expression consists only of numeric digits and up to one decimal point; otherwise, 0.

  • character_expression: The string expression to evaluate.

                      SELECT ISNUMERIC('123');
                      -- Result: 1

                      SELECT ISNUMERIC('123.45');
                      -- Result: 1

                      SELECT ISNUMERIC('123.45.67');
                      -- Result: 0

                      SELECT ISNUMERIC('12a3');
                      -- Result: 0
                    

JSON_EXTRACT(json, jsonpath)

Selects any value in a JSON array or object. The path to the array is specified in the jsonpath argument. Return value is numeric or null.

  • json: The JSON document to extract.
  • jsonpath: The XPath used to select the nodes. The JSONPath must be a string constant. The values of the nodes selected will be returned in a token-separated list.

                      SELECT JSON_EXTRACT('{"test": {"data": 1}}', '$.test');
                      -- Result: '{"data":1}'

                      SELECT JSON_EXTRACT('{"test": {"data": 1}}', '$.test.data');
                      -- Result: 1

                      SELECT JSON_EXTRACT('{"test": {"data": [1, 2, 3]}}', '$.test.data[1]');
                      -- Result: 2
                    

LEFT ( character_expression , integer_expression )

Returns the specified number of characters counting from the left of the specified string.

  • character_expression: The character expression.
  • integer_expression: The positive integer that specifies how many characters will be returned counting from the left of character_expression.

                      SELECT LEFT('1234567890', 3);
                      -- Result: '123'
                    

LEN(string_expression)

Returns the number of characters of the specified string expression.

  • string_expression: The string expression.

                      SELECT LEN('12345');
                      -- Result: 5
                    

LOCATE(substring,string)

Returns an integer representing how many characters into the string the substring appears.

  • substring: The substring to find inside larger string.
  • string: The larger string that is searched for the substring.
  • start locations: An optional integer that sets the character position (offset) from which to start searching.

				SELECT LOCATE('sample','XXXXXsampleXXXXX');
				-- Result: 6

                SELECT LOCATE('sample', 'XXXXXsampleXXXXX', 7)
                -- Result: 0
				

LOWER ( character_expression )

Returns the character expression with the uppercase character data converted to lowercase.

  • character_expression: The character expression.

                      SELECT LOWER('MIXED case');
                      -- Result: 'mixed case'
                    

LTRIM(character_expression)

Returns the character expression with leading blanks removed.

  • character_expression: The character expression.

                      SELECT LTRIM('     trimmed');
                      -- Result: 'trimmed'
                    

MASK(string_expression, mask_character [, start_index [, end_index ]])

Replaces the characters between start_index and end_index with the mask_character within the string.

  • string_expression: The string expression to be searched.
  • mask_character: The character to mask with.
  • start_index: The optional number of characters to leave unmasked at beginning of string. Defaults to 0.
  • end_index: The optional number of characters to leave unmasked at end of string. Defaults to 0.

                        SELECT MASK('1234567890','*',);
                        -- Result: '**********'
                        SELECT MASK('1234567890','*', 4);
                        -- Result: '1234******'
                        SELECT MASK('1234567890','*', 4, 2);
                        -- Result: '1234****90'  
                    

NCHAR(integer_expression)

Returns the Unicode character with the specified integer code as defined by the Unicode standard.

  • integer_expression: The integer from 0 through 65535 (0 through xFFFF).

OCTET_LENGTH(character_expression),

Returns the number of bytes present in the expression.

  • character_expression: The set of characters to be be evaluated.

				 SELECT OCTET_LENGTH('text') FROM Account LIMIT 1
				 -- Result: 4
				

PATINDEX(pattern, expression)

Returns the starting position of the first occurrence of the pattern in the expression. Returns 0 if the pattern is not found.

  • pattern: The character expression that contains the sequence to be found. The wild-card character % can be used only at the start or end of the expression.
  • expression: The expression, typically a column, to search for the pattern.

                      SELECT PATINDEX('123%', '1234567890');
                      -- Result: 1

                      SELECT PATINDEX('%890', '1234567890');
                      -- Result: 8

                      SELECT PATINDEX('%456%', '1234567890');
                      -- Result: 4
                    

POSITION(expressionToFind IN expressionToSearch)

Returns the starting position of the specified expression in the character string.

  • expressionToFind: The character expression to find.
  • expressionToSearch: The character expression, typically a column, to search.

                      SELECT POSITION('456' IN '123456');
                      -- Result: 4

                      SELECT POSITION('x' IN '123456');
                      -- Result: 0
                    

QUOTENAME(character_string [, quote_character])

Returns a valid SQL Server-delimited identifier by adding the necessary delimiters to the specified Unicode string.

  • character_string: The string of Unicode character data. The string is limited to 128 characters. Inputs greater than 128 characters return null.
  • quote_character: An optional single character to be used as the delimiter. These include:
    • a single quotation mark (')
    • a left or right bracket ([])
    • a double quotation mark (")
    • a left or right parenthesis ( () )
    • a greater or less than sign (><)
    • a left or right brace ({})
    • a backtick (`)

    If quote_character is not specified brackets are used. If an unacceptable character is supplied, it returns NULL.


                      SELECT QUOTENAME('table_name');
                      -- Result: '[table_name]'

                      SELECT QUOTENAME('table_name', '"');
                      -- Result: '"table_name"'

                      SELECT QUOTENAME('table_name', '[');
                      -- Result: '[table_name]'
                    

REGEXP_REPLACE(expr, pattern [, replacement [, position [, occurrence [, match_type]]]])

Replaces occurrences of a regular expression pattern in the input string with a specified value and returns the resulting string.

  • expr: The string expression to be searched.
  • pattern: The regular expression pattern to match.
  • replacement: (optional) The string to replace each matched occurrence of pattern with. Supports backreferences \1 through \9 and escape sequences \n, \r, \t, and \\. By default, this argument is an empty string, meaning matched portions are removed from the output string.
  • position: (optional) The 1-based starting position used when searching for regular expression matches in expr. The default is 1. All characters prior to the starting position are included in the output string unaltered. Skipped characters are ignored when calculating regular expression matches, even if they match pattern.
  • occurrence: (optional) Specifies whether all occurrences of pattern,, or only a specific occurrence of pattern are replaced. The default is 0, which means all occurrences of pattern are replaced with replacement. Set to 1 to only replace the first instance of the pattern; 2 to replace the second; etc.
  • match_type: (optional) Modifiers used to customize matching behavior. Supported values are: 'c' (case-sensitive, default), 'i' (case-insensitive), 'm' (multiline), 'n' (dot matches newline), 'x' (extended mode). These can be freely combined by including the letters back to back. For example, 'im' applies the functionality of both 'i' and 'm'. The regular expression syntax used is that of the Extended mode ('x') ignores whitespace and allows inline comments. If the pattern needs to match a literal space, it must be explicitly escaped.

                      SELECT REGEXP_REPLACE('abc123def456', '\d+', 'NUM');
                      -- Result: 'abcNUMdefNUM'

                      SELECT REGEXP_REPLACE('Hello\nHELLO\nhello', '^hello', 'X', 1, 0, 'im');
                      -- Result: 'X\nX\nX'
                    

REPLACE(string_expression, string_pattern, string_replacement)

Replaces all occurrences of a string with another string.

  • string_expression: The string expression to be searched. This can be a character or binary data type.
  • string_pattern: The substring to be found. Cannot be an empty string.
  • string_replacement: The replacement string.

                      SELECT REPLACE('1234567890', '456', '|');
                      -- Result: '123|7890'

                      SELECT REPLACE('123123123', '123', '.');
                      -- Result: '...'

                      SELECT REPLACE('1234567890', 'a', 'b');
                      -- Result: '1234567890'
                    

REPLICATE ( string_expression ,integer_expression )

Repeats the string value the specified number of times.

  • string_expression: The string to replicate.
  • integer_expression: The repeat count.

                      SELECT REPLACE('x', 5);
                      -- Result: 'xxxxx'
                    

REVERSE ( string_expression )

Returns the reverse order of the string expression.

  • string_expression: The string.

                      SELECT REVERSE('1234567890');
                      -- Result: '0987654321'
                    

RIGHT ( character_expression , integer_expression )

Returns the right part of the string with the specified number of characters.

  • character_expression: The character expression.
  • integer_expression: The positive integer that specifies how many characters of the character expression will be returned.

                      SELECT RIGHT('1234567890', 3);
                      -- Result: '890'
                    

RTRIM(character_expression)

Returns the character expression after it removes trailing blanks.

  • character_expression: The character expression.

                      SELECT RTRIM('trimmed     ');
                      -- Result: 'trimmed'
                    

SOUNDEX(character_expression)

Returns the four-character Soundex code, based on how the string sounds when spoken.

  • character_expression: The alphanumeric expression of character data.

                      SELECT SOUNDEX('smith');
                      -- Result: 'S530'
                    

SPACE(repeatcount)

Returns the string that consists of repeated spaces.

  • repeatcount: The number of spaces.

                      SELECT SPACE(5);
                      -- Result: '     '
                    

SPLIT(string, delimiter, offset)

Returns a section of the string between to delimiters.

  • string: The string to split.
  • delimiter: The character to split the string with.
  • offset: The number of the split to return. Positive numbers are treated as offsets from the left, and negative numbers are treated as offsets from the right.

                      SELECT SPLIT('a/b/c/d', '/', 1);
                      -- Result: 'a'
                      SELECT SPLIT('a/b/c/d', '/', -2);
                      -- Result: 'c'
                    

STARTSWITH(character_expression, character_prefix)

Returns 1 if character_expression starts with character_prefix; otherwise, 0.

  • character_expression: The character expression.
  • character_prefix: The character prefix to search for.

                      SELECT STARTSWITH('0123456', '012');
                      -- Result: 1

                      SELECT STARTSWITH('0123456', '456');
                      -- Result: 0
                    

STR ( float_expression [ , integer_length [ , integer_decimal ] ] )

Returns the character data converted from the numeric data. For example, STR(123.45, 6, 1) returns 123.5.

  • float_expression: The float expression.
  • length: The optional total length to return. This includes decimal point, sign, digits, and spaces. The default is 10.
  • decimal: The optional number of places to the right of the decimal point. The decimal must be less than or equal to 16.

                      SELECT STR('123.456');
                      -- Result: '123'

                      SELECT STR('123.456', 2);
                      -- Result: '**'

                      SELECT STR('123.456', 10, 2);
                      -- Result: '123.46'
                    

STUFF(character_expression , integer_start , integer_length , replaceWith_expression)

Inserts a string into another string. It deletes the specified length of characters in the first string at the start position and then inserts the second string into the first string at the start position.

  • character_expression: The string expression.
  • start: The integer value that specifies the location to start deletion and insertion. If start or length is negative, null is returned. If start is longer than the string to be modified, character_expression, null is returned.
  • length: The integer that specifies the number of characters to delete. If length is longer than character_expression, deletion occurs up to the last character in replaceWith_expression.
  • replaceWith_expression: The expression of character data that will replace length characters of character_expression beginning at the start value.

                      SELECT STUFF('1234567890', 3, 2, 'xx');
                      -- Result: '12xx567890'
                    

SUBSTRING(string_value FROM start FOR length)

Returns the part of the string with the specified length; starts at the specified index.

  • string_value: The character string.
  • start: The positive integer that specifies the start index of characters to return.
  • length: Optional. The positive integer that specifies how many characters will be returned.

                      SELECT SUBSTRING('1234567890' FROM 3 FOR 2);
                      -- Result: '34'

                      SELECT SUBSTRING('1234567890' FROM 3);
                      -- Result: '34567890'
                    
You can also drop the FROM and FOR clauses:
                    SELECT SUBSTRING('1234567890', 3, 2)
                    --Result: '34'
                    SELECT SUBSTRING('1234567890', 3)
                    --Result: '34567890'
                    

TEXT_ENCODE(input_string, charset)

Returns binary output by encoding a string using the specified character set.

  • input_string: The plain text string.
  • charset: The character set to use, such as 'UTF-8', 'ISO-8859-1'.

                    SELECT TEXT_ENCODE('Café', 'UTF-8');
                    -- Result: (binary output)
                    

TEXT_DECODE(input_binary, charset)

Returns a string decoded from binary data using the specified character set.

  • input_binary: The binary value to decode.
  • charset: The character set used for decoding.

                    SELECT TEXT_DECODE(BinaryData, 'UTF-8');
                    -- Result: 'Café'
                    

TOSTRING(string_value1)

Converts the value of this instance to its equivalent string representation.

  • string_value1: The string to be converted.

                      SELECT TOSTRING(123);
                      -- Result: '123'

                      SELECT TOSTRING(123.456);
                      -- Result: '123.456'

                      SELECT TOSTRING(null);
                      -- Result: ''
                    

TRIM(trimspec trimchar FROM string_value)

Returns the character expression with leading and/or trailing blanks removed.

  • trimspec: Optional. If included must be one of the keywords BOTH, LEADING or TRAILING.
  • trimchar: Optional. If included should be a one-character string value.
  • string_value: The string value to trim.

                      SELECT TRIM('     trimmed     ');
                      -- Result: 'trimmed'

                      SELECT TRIM(LEADING FROM '     trimmed     ');
                      -- Result: 'trimmed     '

                      SELECT TRIM('-' FROM '-----trimmed-----');
                      -- Result: 'trimmed'

                      SELECT TRIM(BOTH '-' FROM '-----trimmed-----');
                      -- Result: 'trimmed'

                      SELECT TRIM(TRAILING '-' FROM '-----trimmed-----');
                      -- Result: '-----trimmed'
                    

UNICODE(ncharacter_expression)

Returns the integer value defined by the Unicode standard of the first character of the input expression.

  • ncharacter_expression: The Unicode character expression.

UPPER ( character_expression )

Returns the character expression with lowercase character data converted to uppercase.

  • character_expression: The character expression.

                      SELECT UPPER('MIXED case');
                      -- Result: 'MIXED CASE'
                    

XML_EXTRACT(xml, xpath [, separator])

Extracts an XML document using the specified XPath to flatten the XML. A comma is used to separate the outputs by default, but this can be changed by specifying the third parameter.

  • xml: The XML document to extract.
  • xpath: The XPath used to select the nodes. The nodes selected will be returned in a token-separated list.
  • separator: The optional token used to separate the items in the flattened response. If this is not specified, the separator will be a comma.

                      SELECT XML_EXTRACT('<vowels><ch>a</ch><ch>e</ch><ch>i</ch><ch>o</ch><ch>u</ch></vowels>', '/vowels/ch');
                      -- Result: 'a,e,i,o,u'

                      SELECT XML_EXTRACT('<vowels><ch>a</ch><ch>e</ch><ch>i</ch><ch>o</ch><ch>u</ch></vowels>', '/vowels/ch', ';');
                      -- Result: 'a;e;i;o;u'
                    

CData Python Connector for Stripe

MATH Functions

ABS ( numeric_expression )

Returns the absolute (positive) value of the specified numeric expression.

  • numeric_expression: The expression of an indeterminate numeric data type except for the bit data type.

                      SELECT ABS(15);
                      -- Result: 15

                      SELECT ABS(-15);
                      -- Result: 15
                    

ACOS ( float_expression )

Returns the arc cosine, the angle in radians whose cosine is the specified float expression.

  • float_expression: The float expression that specifies the cosine of the angle to be returned. Values outside the range from -1 to 1 return null.

                      SELECT ACOS(0.5);
                      -- Result: 1.0471975511966
                    

ASIN ( float_expression )

Returns the arc sine, the angle in radians whose sine is the specified float expression.

  • float_expression: The float expression that specifies the sine of the angle to be returned. Values outside the range from -1 to 1 return null.

                      SELECT ASIN(0.5);
                      -- Result: 0.523598775598299
                    

ATAN ( float_expression )

Returns the arc tangent, the angle in radians whose tangent is the specified float expression.

  • float_expression: The float expression that specifies the tangent of the angle to be returned.

                      SELECT ATAN(10);
                      -- Result: 1.47112767430373
                    

ATN2 ( float_expression1 , float_expression2 )

Returns the angle in radians between the positive x-axis and the ray from the origin to the point (y, x) where x and y are the values of the two specified float expressions.

  • float_expression1: The float expression that is the y-coordinate.
  • float_expression2: The float expression that is the x-coordinate.

                      SELECT ATN2(1, 1);
                      -- Result: 0.785398163397448
                    

CEILING ( numeric_expression ) or CEIL( numeric_expression )

Returns the smallest integer greater than or equal to the specified numeric expression.

  • numeric_expression: The expression of an indeterminate numeric data type except for the bit data type.

                      SELECT CEILING(1.3);
                      -- Result: 2

                      SELECT CEILING(1.5);
                      -- Result: 2

                      SELECT CEILING(1.7);
                      -- Result: 2
                    

COS ( float_expression )

Returns the trigonometric cosine of the specified angle in radians in the specified expression.

  • float_expression: The float expression of the specified angle in radians.

                      SELECT COS(1);
                      -- Result: 0.54030230586814
                    

COT ( float_expression )

Returns the trigonometric cotangent of the angle in radians specified by float_expression.

  • float_expression: The float expression of the angle in radians.

                      SELECT COT(1);
                      -- Result: 0.642092615934331
                    

DEGREES ( numeric_expression )

Returns the angle in degrees for the angle specified in radians.

  • numeric_expression: The angle in radians, an expression of an indeterminate numeric data type except for the bit data type.

                      SELECT DEGREES(3.1415926);
                      -- Result: 179.999996929531
                    

EXP ( float_expression )

Returns the exponential value of the specified float expression. For example, EXP(LOG(20)) is 20.

  • float_expression: The float expression.

                      SELECT EXP(2);
                      -- Result: 7.38905609893065
                    

EXPR ( expression )

Evaluates the expression.

  • expression: The expression. Operators allowed are +, -, *, /, ==, !=, >, <, >=, and <=.

                      SELECT EXPR('1 + 2 * 3');
                      -- Result: 7

                      SELECT EXPR('1 + 2 * 3 == 7');
                      -- Result: true
                    

FLOOR ( numeric_expression )

Returns the largest integer less than or equal to the numeric expression.

  • numeric_expression: The expression of an indeterminate numeric data type except for the bit data type.

                      SELECT FLOOR(1.3);
                      -- Result: 1

                      SELECT FLOOR(1.5);
                      -- Result: 1

                      SELECT FLOOR(1.7);
                      -- Result: 1
                    

GREATEST(int1,int2,....)

Returns the greatest of the supplied integers.

				SELECT GREATEST(3,5,8,10,1)
				-- Result: 10			
				

HEX(value)

Returns a the equivalent hex for the input value.

  • value: A string or numerical value to be converted into hex.

				SELECT HEX(866849198);
				-- Result: 33AB11AE
				
				SELECT HEX('Sample Text');
				-- Result: 53616D706C652054657874
				

JSON_AVG(json, jsonpath)

Computes the average value of a JSON array within a JSON object. The path to the array is specified in the jsonpath argument. Return value is numeric or null.

  • json: The JSON document to compute.
  • jsonpath: The JSONPath used to select the nodes. [x], [2..], [..8], or [1..12] are accepted. [x] selects all nodes.

                      SELECT JSON_AVG('[1,2,3,4,5]', '$[x]');
                      -- Result: 3

                      SELECT JSON_AVG('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 3

                      SELECT JSON_AVG('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 4.5
                    

JSON_COUNT(json, jsonpath)

Returns the number of elements in a JSON array within a JSON object. The path to the array is specified in the jsonpath argument. Return value is numeric or null.

  • json: The JSON document to compute.
  • jsonpath: The JSONPath used to select the nodes. [x], [2..], [..8], or [1..12] are accepted. [x] selects all nodes.

                      SELECT JSON_COUNT('[1,2,3,4,5]', '$[x]');
                      -- Result: 5

                      SELECT JSON_COUNT('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 5

                      SELECT JSON_COUNT('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 2
                    

JSON_MAX(json, jsonpath)

Gets the maximum value in a JSON array within a JSON object. The path to the array is specified in the jsonpath argument. Return value is numeric or null.

  • json: The JSON document to compute.
  • jsonpath: The JSONPath used to select the nodes. [x], [2..], [..8], or [1..12] are accepted. [x] selects all nodes.

                      SELECT JSON_MAX('[1,2,3,4,5]', '$[x]');
                      -- Result: 5

                      SELECT JSON_MAX('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 5

                      SELECT JSON_MAX('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[..3]');
                      -- Result: 4
                    

JSON_MIN(json, jsonpath)

Gets the minimum value in a JSON array within a JSON object. The path to the array is specified in the jsonpath argument. Return value is numeric or null.

  • json: The JSON document to compute.
  • jsonpath: The JSONPath used to select the nodes. [x], [2..], [..8], or [1..12] are accepted. [x] selects all nodes.

                      SELECT JSON_MIN('[1,2,3,4,5]', '$[x]');
                      -- Result: 1

                      SELECT JSON_MIN('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 1

                      SELECT JSON_MIN('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 4
                    

JSON_SUM(json, jsonpath)

Computes the summary value in JSON according to the JSONPath expression. Return value is numeric or null.

  • json: The JSON document to compute.
  • jsonpath: The JSONPath used to select the nodes. [x], [2..], [..8], or [1..12] are accepted. [x] selects all nodes.

                      SELECT JSON_SUM('[1,2,3,4,5]', '$[x]');
                      -- Result: 15

                      SELECT JSON_SUM('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 15

                      SELECT JSON_SUM('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 9
                    

LEAST(int1,int2,....)

Returns the least of the supplied integers.

				SELECT LEAST(3,5,8,10,1)
				-- Result: 1			
				

LOG ( float_expression [, base ] )

Returns the natural logarithm of the specified float expression.

  • float_expression: The float expression.
  • base: The optional integer argument that sets the base for the logarithm.

                      SELECT LOG(7.3890560);
                      -- Result: 1.99999998661119
                    

LOG10 ( float_expression )

Returns the base-10 logarithm of the specified float expression.

  • float_expression: The expression of type float.

                      SELECT LOG10(10000);
                      -- Result: 4
                    

MOD(dividend,divisor)

Returns the integer value associated with the remainder when dividing the dividend by the divisor.

  • dividend: The number to take the modulus of.
  • divisor: The number to divide the dividend by when determining the modulus.

				SELECT MOD(10,3);
				-- Result: 1
				

NEGATE(real_number)

Returns the opposite to the real number input.

  • real_number: The real number to find the opposite of.

				SELECT NEGATE(10);
				-- Result: -10
				
				SELECT NEGATE(-12.4)
				--Result: 12.4
				

PI ( )

Returns the constant value of pi.

                  SELECT PI()
                  -- Result: 3.14159265358979 
                

POWER ( float_expression , y )

Returns the value of the specified expression raised to the specified power.

  • float_expression: The float expression.
  • y: The power to raise float_expression to.

                      SELECT POWER(2, 10);
                      -- Result: 1024

                      SELECT POWER(2, -2);
                      -- Result: 0.25
                    

RADIANS ( float_expression )

Returns the angle in radians of the angle in degrees.

  • float_expression: The degrees of the angle as a float expression.

                      SELECT RADIANS(180);
                      -- Result: 3.14159265358979
                    

RAND ( [ integer_seed ] )

Returns a pseudorandom float value from 0 through 1, exclusive.

  • seed: The optional integer expression that specifies the seed value. If seed is not specified, a seed value at random will be assigned.

                      SELECT RAND();
                      -- This result may be different, since the seed is randomized
                      -- Result: 0.873159630165044

                      SELECT RAND(1);
                      -- This result will always be the same, since the seed is constant
                      -- Result: 0.248668584157093
                    

ROUND ( numeric_expression [ ,integer_length] [ ,function ] )

Returns the numeric value rounded to the specified length or precision.

  • numeric_expression: The expression of a numeric data type.
  • length: The optional precision to round the numeric expression to. When this is omitted, the default behavior will be to round to the nearest whole number.
  • function: The optional type of operation to perform. When the function parameter is omitted or has a value of 0 (default), numeric_expression is rounded. When a value other than 0 is specified, numeric_expression is truncated.

                      SELECT ROUND(1.3, 0);
                      -- Result: 1

                      SELECT ROUND(1.55, 1);
                      -- Result: 1.6

                      SELECT ROUND(1.7, 0, 0);
                      -- Result: 2

                      SELECT ROUND(1.7, 0, 1);
                      -- Result: 1
                      
                      SELECT ROUND (1.24);
                      -- Result: 1.0
                    

SIGN ( numeric_expression )

Returns the positive sign (1), 0, or negative sign (-1) of the specified expression.

  • numeric_expression: The expression of an indeterminate data type except for the bit data type.

                      SELECT SIGN(0);
                      -- Result: 0

                      SELECT SIGN(10);
                      -- Result: 1

                      SELECT SIGN(-10);
                      -- Result: -1
                    

SIN ( float_expression )

Returns the trigonometric sine of the angle in radians.

  • float_expression: The float expression specifying the angle in radians.

                     SELECT SIN(1);
                     -- Result: 0.841470984807897
                    

SQRT ( float_expression )

Returns the square root of the specified float value.

  • float_expression: The expression of type float.

                      SELECT SQRT(100);
                      -- Result: 10
                    

SQUARE ( float_expression )

Returns the square of the specified float value.

  • float_expression: The expression of type float.

                      SELECT SQUARE(10);
                      -- Result: 100

                      SELECT SQUARE(-10);
                      -- Result: 100
                    

TAN ( float_expression )

Returns the tangent of the input expression.

  • float_expression: The expression of type float.

                      SELECT TAN(1);
                      -- Result: 1.5574077246549
                    

TRUNC(decimal_number,precision)

Returns the supplied decimal number truncated to have the supplied decimal precision.

  • decimal_number: The decimal value to truncate.
  • precision: The number of decimal places to truncate the decimal number to.

				SELECT TRUNC(10.3423,2);
				-- Result: 10.34
				

_ROW_NUMBER_()

Returns a row index as an additional column.

				SELECT ColumnName, _ROW_NUMBER_() FROM TableName
				-- Result: ColumnData, 0
				ColumnData2, 1
				ColumnData3, 2
				

CData Python Connector for Stripe

DATE Functions

CURRENT_DATE()

Returns the current date value.

                  SELECT CURRENT_DATE();
                  -- Result: 2018-02-01
                

CURRENT_TIMESTAMP()

Returns the current time stamp of the database system as a datetime value. This value is equal to GETDATE and SYSDATETIME, and is always in the local timezone.

                  SELECT CURRENT_TIMESTAMP();
                  -- Result: 2018-02-01 03:04:05
                

DATEADD (datepart , integer_number , date [, dateformat])

Returns the datetime value that results from adding the specified number (a signed integer) to the specified date part of the date.

  • datepart: The part of the date to add the specified number to. The valid values and abbreviations are
    • year (yy, yyyy)
    • quarter (qq, q)
    • month (mm, m)
    • week (wk, ww)
    • weekday (dw)
    • dayofyear (dy, y)
    • day (dd, d)
    • hour (hh)
    • minute (mi, n)
    • second (ss, s)
    • millisecond (ms)
  • number: The number to be added.
  • date: The expression of the datetime data type.
  • dateformat: The optional output date format.

                  SELECT DATEADD('d', 5, '2018-02-01');
                  -- Result: 2018-02-06

                  SELECT DATEADD('hh', 5, '2018-02-01 00:00:00');
                  -- Result: 2018-02-01 05:00:00
                

DATEDIFF ( datepart , startdate , enddate )

Returns the difference (a signed integer) of the specified time interval between the specified start date and end date.

  • datepart: The part of the date that is the time interval of the difference between the start date and end date. The valid values and abbreviations are:
    • Year (year, yyyy, yy)
    • Quarter (quarter, qq, q)
    • Month (month, mm, m)
    • Week (week, wk, ww)
    • Weekday (weekday, dw)
    • Dayofyear (dayofyear, dy, y)
    • Day (day, dd, d)
    • Hour (hour, hh)
    • Minute (minute, mi, n)
    • Second (second, ss, s)
    • Millisecond (millisecond, ms)
  • startdate: The datetime expression of the start date.
  • enddate: The datetime expression of the end date.

                  SELECT DATEDIFF('d', '2018-02-01', '2018-02-10');
                  -- Result: 9

                  SELECT DATEDIFF('hh', '2018-02-01 00:00:00', '2018-02-01 12:00:00');
                  -- Result: 12
                

DATE_FORMAT(date,format)

Returns the date or timestamp in the format specified. This function mirrors the MySQL DATE_FORMAT function.

  • date: A date or timestamp string.
  • format: The specifier string of the desired output format. The list of supported format specifiers comes from the MySQL DATE_FORMAT function (see link to MySQL documentation above).

					SELECT DATE_FORMAT('9/4/2021 3:11:53 AM','%h')
					-- Result: 03
				  

DATEFROMPARTS(integer_year, integer_month, integer_day)

Returns the datetime value for the specified year, month, and day.

  • year: The integer expression specifying the year.
  • month: The integer expression specifying the month.
  • day: The integer expression specifying the day.

                    SELECT DATEFROMPARTS(2018, 2, 1);
                    -- Result: 2018-02-01
                  

DATENAME(datepart , date)

Returns the character string that represents the specified date part of the specified date.

  • datepart: The part of the date to return. The valid values and abbreviations are year (yy, yyyy), quarter (qq, q), month (mm, m), dayofyear (dy, y), day (dd, d), week (wk, ww), weekday (dw), hour (hh), minute (mi, n), second (ss, s), millisecond (ms), microsecond (mcs), and nanosecond (ns).
  • date: The datetime expression.

                     SELECT DATENAME('yy', '2018-02-01');
                     -- Result: '2018'

                     SELECT DATENAME('dw', '2018-02-01');
                     -- Result: 'Thursday'
                   

DATEPART(datepart, date [,integer_datefirst])

Returns a character string that represents the specified date part of the specified date.

  • datepart: The part of the date to return. The valid values and abbreviations are year (yy, yyyy), quarter (qq, q), month (mm, m), dayofyear (dy, y), day (dd, d), week (wk, ww), weekday (dw), hour (hh), minute (mi, n), second (ss, s), millisecond (ms), microsecond (mcs), nanosecond (ns), ISODOW, ISO_WEEK (isoweek, isowk,isoww), and ISOYEAR.
  • date: The datetime string.
  • datefirst: The optional integer representing the first day of the week. The default is 7, Sunday.

                    SELECT DATEPART('yy', '2018-02-01');
                    -- Result: 2018

                    SELECT DATEPART('dw', '2018-02-01');
                    -- Result: 5
                  

DATETIMEFROMPARTS(integer_year, integer_month, integer_day, integer_hour, integer_minute, integer_seconds, integer_milliseconds)

Returns the datetime value for the specified date parts.

  • year: The integer expression specifying the year.
  • month: The integer expression specifying the month.
  • day: The integer expression specifying the day.
  • hour: The integer expression specifying the hour.
  • minute: The integer expression specifying the minute.
  • seconds: The integer expression specifying the seconds.
  • milliseconds: The integer expression specifying the milliseconds.

                    SELECT DATETIMEFROMPARTS(2018, 2, 1, 1, 2, 3, 456);
                    -- Result: 2018-02-01 01:02:03.456
                  

DATETIME2FROMPARTS(integer_year, integer_month, integer_day, integer_hour, integer_minute, integer_seconds, integer_fractions, integer_precision)

Returns the datetime value for the specified date parts.

  • year: The integer expression specifying the year.
  • month: The integer expression specifying the month.
  • day: The integer expression specifying the day.
  • hour: The integer expression specifying the hour.
  • minute: The integer expression specifying the minute.
  • seconds: The integer expression specifying the seconds.
  • fractions: The integer expression specifying the fractions of the second.
  • precision: The integer expression specifying the precision of the fraction.

				    SELECT DATETIME2FROMPARTS(2018, 2, 1, 1, 2, 3, 456, 3);
                    -- Result: 2018-02-01 01:02:03.456
                  

DATE_TRUNC(date, datepart)

Truncates the date to the precision of the given date part. Modeled after the Oracle TRUNC function.

  • date: The datetime string that specifies the date.
  • datepart: Refer to the Oracle documentation for valid datepart syntax.

				    SELECT DATE_TRUNC('05-04-2005', 'YY');
                    -- Result: '1/1/2005'
					
                    SELECT DATE_TRUNC('05-04-2005', 'MM');
                    -- Result: '5/1/2005'                    
                  

DATE_TRUNC2(datepart, date, [weekday])

Truncates the date to the precision of the given date part. Modeled after the PostgreSQL date_trunc function.

  • datepart: One of 'millennium', 'century', 'decade', 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute' or 'second'.
  • date: The datetime string that specifies the date.
  • weekday: The optional day of the week to use as the first day for 'week'. One of 'sunday', 'monday', etc.

                    SELECT DATE_TRUNC2('year', '2020-02-04');
                    -- Result: '2020-01-01'

                    SELECT DATE_TRUNC2('week', '2020-02-04', 'monday');
                    -- Result: '2020-02-02', which is the previous Monday
                  

DAY(date)

Returns the integer that specifies the day component of the specified date.

  • date: The datetime string that specifies the date.

                    SELECT DAY('2018-02-01');
                    -- Result: 1
                  

DAYNAME(date)

Returns the name of the day of the week of the specified date.

  • date: The datetime string that specifies the date.

                    SELECT DAYNAME('8/18/2021');
                    -- Result: Wednesday
                  

DAYOFMONTH(date)

Returns the day of the month of the given date part.
  • date: The datetime string that specifies the date.

				  SELECT DAYOFMONTH('04/15/2000');
				  -- Result: 15
				  

DAYOFWEEK(date)

Returns the day of the week of the given date part.
  • date: The datetime string that specifies the date.

				  SELECT DAYOFWEEK('04/15/2000');
				  -- Result: 7
				  

DAYOFYEAR(date)

Returns the day of the year of the given date part.
  • date: The datetime string that specifies the date.

				  SELECT DAYOFYEAR('04/15/2000');
				  -- Result: 106
				  

EOMONTH(date [, integer_month_to_add ]) or LAST_DAY(date)

Returns the last day of the month that contains the specified date with an optional offset.

  • date: The datetime expression specifying the date for which to return the last day of the month.
  • integer_month_to_add: The optional integer expression specifying the number of months to add to the date before calculating the end of the month.

                  SELECT EOMONTH('2018-02-01');
                  -- Result: 2018-02-28
                  
                  SELECT LAST_DAY('2018-02-01');
                  -- Result: 2018-02-28

                  SELECT EOMONTH('2018-02-01', 2);
                  -- Result: 2018-04-30
                

EXTRACT(date_part FROM date_column_name)

Returns the last day of the month that contains the specified date with an optional offset.

  • date_part: One of the following date components: YEAR, MONTH, DAY, HOUR, MINUTE, SECOND.
  • date_column_name: The name of a date column in a table.

                  SELECT EXTRACT(YEAR FROM DateColumn)
                  -- Result: 2021
                

FDWEEK(date)

Returns the first day of the week of the given date part.
  • date: The datetime string that specifies the date.
  • weeks to add: An optional integer expression specifying the number of months to add to the date before calculating the first day of the week.

				  SELECT FDWEEK('02-08-2018');
				  -- Result: 2/4/2018

          SELECT FDWEEK('02-08-2018', 1)
          --Result: 02/11/2018
				  

FDMONTH(date)

Returns the first day of the month of the given date part.
  • date: The datetime string that specifies the date.
  • month to add: An optional integer expression specifying the number of months to add to the date before calculating the first day of the month.

				  SELECT FDMONTH('02-08-2018');
				  -- Result: 2/1/2018

          SELECT FDMONTH('02-08-2018', 1) 
          --Result: 03/01/2018
				  

FDQUARTER(date)

Returns the first day of the quarter of the given date part.
  • date: The datetime string that specifies the date.
  • quarters to add: An optional integer expression specifying the number of months to add to the date before calculating the first day of the quarter.

				  SELECT FDQUARTER('05-08-2018');
				  -- Result: 4/1/2018

          SELECT FDQUARTER('05-08-2018',1)
          --Result: 07/01/2018
				  

FILEMODIFIEDTIME(uri)

Returns the time stamp associated with the Date Modified of the relevant file.

  • uri: An absolute path pointing to a file on the local file system.

				 SELECT FILEMODIFIEDTIME('C:/Documents/myfile.txt');
				 -- Result: 6/25/2019 10:06:58 AM
				 

FROM_DAYS(datevalue)

Returns a date derived from the number of days after 1582-10-15 (based upon the Gregorian calendar). This will be equivalent to the MYSQL FROM_DAYS function.

  • datevalue: A integer value representing the number of days since 1582-10-15.

				SELECT FROM_DAYS(736000);
				-- Result: 2/6/2015
				

FROM_UNIXTIME(time, issecond)

Returns a representation of the unix_timestamp argument as a value in YYYY-MM-DD HH:MM:SS expressed in the current time zone.

  • time: The time stamp value from epoch time. Milliseconds are accepted.
  • issecond: Indicates the time stamp value is milliseconds to epoch time.

                      SELECT FROM_UNIXTIME(1540495231, 1);
                      -- Result: 2018-10-25 19:20:31

                      SELECT FROM_UNIXTIME(1540495357385, 0);
                      -- Result: 2018-10-25 19:22:37
                    

GETDATE()

Returns the current time stamp of the database system as a datetime value. This value is equal to CURRENT_TIMESTAMP and SYSDATETIME, and is always in the local timezone.

                  SELECT GETDATE();
                  -- Result: 2018-02-01 03:04:05
                

GETUTCDATE()

Returns the current time stamp of the database system formatted as a UTC datetime value. This value is equal to SYSUTCDATETIME.

In addition, GETUTCDATE can take an optional second parameter, a date and time that are converted to UTC.

                  SELECT GETUTCDATE();
                  -- For example, if the local timezone is Eastern European Time (GMT+2)
                  -- Result: 2018-02-01 05:04:05

                  SELECT GETUTCDATE('2020/08/31 13:56:00')
                  --Result: '2020-08-31 17:56:00'
                

HOUR(date)

Returns the hour component from the provided datetime.

  • date: The datetime string that specifies the date.

				SELECT HOUR('02-02-2020 11:30:00');
				-- Result: 11
				

ISDATE(date, [date_format])

Returns 1 if the value is a valid date, time, or datetime value; otherwise, 0.

  • date: The datetime string.
  • date_format: The optional datetime format.

                      SELECT ISDATE('2018-02-01', 'yyyy-MM-dd');
                      -- Result: 1

                      SELECT ISDATE('Not a date');
                      -- Result: 0
                    

LAST_WEEK()

Returns a time stamp equivalent to exactly one week before the current date.

				SELECT LAST_WEEK();	//Assume the date is 3/17/2020	
			 -- Result: 3/10/2020 00:00:00
				

LAST_MONTH()

Returns a time stamp equivalent to exactly one month before the current date.

	
				SELECT LAST_MONTH(); //Assume the date is 3/17/2020
				-- Result: 2/17/2020 00:00:00
				

LAST_YEAR()

Returns a time stamp equivalent to exactly one year before the current date.

				SELECT LAST_YEAR();	//Assume the date is 3/17/2020	
				-- Result: 3/10/2019 00:00:00
				

LDWEEK(date)

Returns the last day of the provided week.

  • date: The datetime string.
  • weeks to add: An optional integer expression specifying the number of months to add to the date before calculating the last day of the week.

				SELECT LDWEEK('02-02-2020');
				-- Result: 2/8/2020
				

LDMONTH(date)

Returns the last day of the provided month.

  • date: The datetime string.
  • months to add: An optional integer expression specifying the number of months to add to the date before calculating the last day of the month.

				SELECT LDMONTH('02-02-2020');
				-- Result: 2/29/2020

        SELECT LDMONTH('02-08-2020', 1)
        --Result: 03/31/2020
				

LDQUARTER(date)

Returns the last day of the provided quarter.

  • date: The datetime string.
  • quarters to add: An optional integer expression specifying the number of months to add to the date before calculating the last day of the quarter.

				SELECT LDQUARTER('02-02-2020');
				-- Result: 3/31/2020

        SELECT LDQUARTER('02-02-2020',1)
        --Result: 06/30/2020
				

MAKEDATE(year, days)

Returns a date value from a year and a number of days.

  • year: The year
  • days: The number of days into the year. Value must be greater than 0.

          SELECT MAKEDATE(2020, 1);
          -- Result: 2020-01-01
        

MINUTE(date)

Returns the minute component from the provided datetime.

  • date: The datetime string that specifies the date.

				SELECT MINUTE('02-02-2020 11:15:00');
				-- Result: 15
				

MONTH(date)

Returns the month component from the provided datetime.

  • date: The datetime string that specifies the date.

				SELECT MONTH('02-02-2020');
				-- Result: 2
				

QUARTER(date)

Returns the quarter associated with the provided datetime.

  • date: The datetime string that specifies the date.

				SELECT QUARTER('02-02-2020');
				-- Result: 1
				

SECOND(date)

Returns the second component from the provided datetime.

  • date: The datetime string that specifies the date.

				SELECT SECOND('02-02-2020 11:15:23');
				-- Result: 23
				

SMALLDATETIMEFROMPARTS(integer_year, integer_month, integer_day, integer_hour, integer_minute)

Returns the datetime value for the specified date and time.

  • year: The integer expression specifying the year.
  • month: The integer expression specifying the month.
  • day: The integer expression specifying the day.
  • hour: The integer expression specifying the hour.
  • minute: The integer expression specifying the minute.

                      SELECT SMALLDATETIMEFROMPARTS(2018, 2, 1, 1, 2);
                      -- Result: 2018-02-01 01:02:00
                    

STRTODATE(string,format)

Parses the provided string value and returns the corresponding datetime.

  • string: The string value to be converted to datetime format.
  • format: A format string which describes how to interpret the first string input. A few special formats are available as well, including UNIX, UNIXMILIS, TICKS, and FILETICKS.

				SELECT STRTODATE('03*04*2020','dd*MM*yyyy');
				-- Result: 4/3/2020
				

SYSDATETIME()

Returns the current time stamp as a datetime value of the database system. It is equal to GETDATE and CURRENT_TIMESTAMP, and is always in the local timezone.

                  SELECT SYSDATETIME();
                  -- Result: 2018-02-01 03:04:05
                

SYSUTCDATETIME()

Returns the current system date and time as a UTC datetime value. It is equal to GETUTCDATE.

                  SELECT SYSUTCDATETIME();
                  -- For example, if the local timezone is Eastern European Time (GMT+2)
                  -- Result: 2018-02-01 05:04:05
                

TIMEFROMPARTS(integer_hour, integer_minute, integer_seconds, integer_fractions, integer_precision)

Returns the time value for the specified time and with the specified precision.

  • hour: The integer expression specifying the hour.
  • minute: The integer expression specifying the minute.
  • seconds: The integer expression specifying the seconds.
  • fractions: The integer expression specifying the fractions of the second.
  • precision : The integer expression specifying the precision of the fraction.

                      SELECT TIMEFROMPARTS(1, 2, 3, 456, 3);
                      -- Result: 01:02:03.456
                    

TO_DAYS(date)

Returns the number of days since 0000-00-01. This will only return a value for dates on or after 1582-10-15 (based upon the Gregorian calendar). This will be equivalent to the MYSQL TO_DAYS function.

  • date: The datetime string that specifies the date.

				SELECT TO_DAYS('02-06-2015');
				-- Result: 736000
				

WEEK(date)

Returns the week (of the year) associated with the provided datetime.

  • date: The datetime string that specifies the date.

				SELECT WEEK('02-17-2020 11:15:23');
				-- Result: 8
				

YEAR(date)

Returns the integer that specifies the year of the specified date.

  • date: The datetime string.

                      SELECT YEAR('2018-02-01');
                      -- Result: 2018
                    

CData Python Connector for Stripe

Date Literal Functions

The following date literal functions can be used to filter date fields using relative intervals. Note that while the <, >, and = operators are supported for these functions, <= and >= are not.

L_TODAY()

The current day.

  SELECT * FROM MyTable WHERE MyDateField = L_TODAY()

L_YESTERDAY()

The previous day.

  SELECT * FROM MyTable WHERE MyDateField = L_YESTERDAY()

L_TOMORROW()

The following day.

  SELECT * FROM MyTable WHERE MyDateField = L_TOMORROW()

L_LAST_WEEK()

Every day in the preceding week.

  SELECT * FROM MyTable WHERE MyDateField = L_LAST_WEEK()

L_THIS_WEEK()

Every day in the current week.

  SELECT * FROM MyTable WHERE MyDateField = L_THIS_WEEK()

L_NEXT_WEEK()

Every day in the following week.

  SELECT * FROM MyTable WHERE MyDateField = L_NEXT_WEEK()
Also available:
  • L_LAST/L_THIS/L_NEXT MONTH
  • L_LAST/L_THIS/L_NEXT QUARTER
  • L_LAST/L_THIS/L_NEXT YEAR

L_LAST_N_DAYS(n)

The previous n days, excluding the current day.

  SELECT * FROM MyTable WHERE MyDateField = L_LAST_N_DAYS(3)

L_NEXT_N_DAYS(n)

The following n days, including the current day.

  SELECT * FROM MyTable WHERE MyDateField = L_NEXT_N_DAYS(3)
Also available:
  • L_LAST/L_NEXT_90_DAYS

L_LAST_N_WEEKS(n)

Every day in every week, starting n weeks before current week, and ending in the previous week.

  SELECT * FROM MyTable WHERE MyDateField = L_LAST_N_WEEKS(3)

L_NEXT_N_WEEKS(n)

Every day in every week, starting the following week, and ending n weeks in the future.

  SELECT * FROM MyTable WHERE MyDateField = L_NEXT_N_WEEKS(3)
Also available:
  • L_LAST/L_NEXT_N_MONTHS(n)
  • L_LAST/L_NEXT_N_QUARTERS(n)
  • L_LAST/L_NEXT_N_YEARS(n)

CData Python Connector for Stripe

SELECT Statements

A SELECT statement can consist of the following basic clauses.

  • SELECT
  • INTO
  • FROM
  • JOIN
  • WHERE
  • GROUP BY
  • HAVING
  • UNION
  • ORDER BY
  • LIMIT

SELECT Syntax

The following syntax diagram outlines the syntax supported by the SQL engine of the connector:

SELECT {
  [ TOP <numeric_literal> | DISTINCT ]
  { 
    * 
    | { 
        <expression> [ [ AS ] <column_reference> ] 
        | { <table_name> | <correlation_name> } .* 
      } [ , ... ] 
  }
  { 
    FROM <table_reference> [ [ AS ] <identifier> ] 
  } [ , ... ]
  [ [  
      INNER | { { LEFT | RIGHT | FULL } [ OUTER ] } 
    ] JOIN <table_reference> [ ON <search_condition> ] [ [ AS ] <identifier> ] 
  ] [ ... ] 
  [ WHERE <search_condition> ]
  [ GROUP BY <column_reference> [ , ... ]
  [ HAVING <search_condition> ]
  [ UNION [ ALL ] <select_statement> ]
  [ 
    ORDER BY 
    <column_reference> [ ASC | DESC ] [ NULLS FIRST | NULLS LAST ]
  ]
  [ 
    LIMIT <expression>
    [ 
      { OFFSET | , }
      <expression> 
    ]
  ] 
} | SCOPE_IDENTITY() 

<expression> ::=
  | <column_reference>
  | @ <parameter> 
  | ?
  | COUNT( * | { [ DISTINCT ] <expression> } )
  | { AVG | MAX | MIN | SUM | COUNT } ( <expression> ) 
  | NULLIF ( <expression> , <expression> ) 
  | COALESCE ( <expression> , ... ) 
  | CASE <expression>
      WHEN { <expression> | <search_condition> } THEN { <expression> | NULL } [ ... ]
    [ ELSE { <expression> | NULL } ]
    END 
  | {RANK() | DENSE_RANK()} OVER ([PARTITION BY <column_reference>] {ORDER BY <column_reference>})
  | <literal>
  | <sql_function> 

<search_condition> ::= 
  {
    <expression> { = | > | < | >= | <= | <> | != | LIKE | NOT LIKE | IN | NOT IN | IS NULL | IS NOT NULL | AND | OR | CONTAINS | BETWEEN | IS DISTINCT FROM | IS NOT DISTINCT FROM } [ <expression> ]
  } [ { AND | OR } ... ] 

Examples

  1. Return all columns:
    SELECT * FROM Customers
  2. Rename a column:
    SELECT [Email] AS MY_Email FROM Customers
  3. Cast a column's data as a different data type:
    SELECT CAST(TotalRowCount AS VARCHAR) AS Str_TotalRowCount FROM Customers
  4. Search data:
    SELECT * FROM Customers WHERE Delinquent = 'False'
  5. Return the number of items matching the query criteria:
    SELECT COUNT(*) AS MyCount FROM Customers 
  6. Return the number of unique items matching the query criteria:
    SELECT COUNT(DISTINCT Email) FROM Customers 
  7. Return the unique items matching the query criteria:
    SELECT DISTINCT Email FROM Customers 
  8. Sort a result set in ascending order:
    SELECT Discount, Email FROM Customers  ORDER BY Email ASC
  9. Restrict a result set to the specified number of rows:
    SELECT Discount, Email FROM Customers LIMIT 10 
  10. Parameterize a query to pass in inputs at execution time. This enables you to create prepared statements and mitigate SQL injection attacks.
    SELECT * FROM Customers WHERE Delinquent = @param
See Explicitly Caching Data for information on using the SELECT statement in offline mode.

Pseudo Columns

Some input-only fields are available in SELECT statements. These fields, called pseudo columns, do not appear as regular columns in the results, yet may be specified as part of the WHERE clause. You can use pseudo columns to access additional features from Stripe.

    SELECT * FROM Customers WHERE Pseudo = '@Pseudo'
    

Aggregate Functions

For SELECT examples using aggregate functions, see Aggregate Functions.

JOIN Queries

See JOIN Queries for SELECT query examples using JOINs.

Date Literal Functions

Date Literal Functions contains SELECT examples with date literal functions.

Window Functions

See Window Functions for SELECT examples containing window functions.

Table-Valued Functions

See Table-Valued Functions for SELECT examples with table-valued functions.

CData Python Connector for Stripe

Aggregate Functions

COUNT

Returns the number of rows matching the query criteria.

SELECT COUNT(*) FROM Customers WHERE Delinquent = 'False'

COUNT(DISTINCT)

Returns the number of distinct, non-null field values matching the query criteria.

SELECT COUNT(DISTINCT Discount) AS DistinctValues FROM Customers WHERE Delinquent = 'False'

AVG

Returns the average of the column values.

SELECT Email, AVG(TotalRowCount) FROM Customers WHERE Delinquent = 'False'  GROUP BY Email

MIN

Returns the minimum column value.

SELECT MIN(TotalRowCount), Email FROM Customers WHERE Delinquent = 'False' GROUP BY Email

MAX

Returns the maximum column value.

SELECT Email, MAX(TotalRowCount) FROM Customers WHERE Delinquent = 'False' GROUP BY Email

SUM

Returns the total sum of the column values.

SELECT SUM(TotalRowCount) FROM Customers WHERE Delinquent = 'False'

CData Python Connector for Stripe

JOIN Queries

The CData Python Connector for Stripe supports standard SQL joins like the following examples.

Inner Join

An inner join selects only rows from both tables that match the join condition:

SELECT Charges.Amount, Customers.Email FROM Customers INNER JOIN Charges ON Charges.CustomerId = Customers.Id

Left Join

A left join selects all rows in the FROM table and only matching rows in the JOIN table:

SELECT Charges.Amount, Customers.Email FROM Customers LEFT JOIN Charges ON Charges.CustomerId = Customers.Id

CData Python Connector for Stripe

Window Functions

Window functions allow you to create computed fields from a group of rows (a window) that return a result for each row, as opposed to one computed result for a set of rows, as is the case with aggregate functions. The connector supports the following window function syntax.

Note: Window function support is an experimental feature of the connector. This functionality extends beyond the connector's core scope of being SQL-92 compliant. As such, performance with window functions may not be optimal.

Window Function Clauses

OVER

The OVER clause defines the window over which window functions are performed.

SELECT A, B, <window function> OVER (<window frame>) FROM TableName

The <window function> refers to any supported window function clause, and the <window frame> refers to one or more clauses that specify the logic by which the window is defined.

PARTITION BY

The PARTITION BY clause subdivides a window into sub-windows called partitions. For each unique value in the column specified in the PARTITION BY clause, every record with that value collectively forms an individual partition.

SELECT A, B, <window function> OVER (PARTITION BY A ORDER BY B) From Customers

The <window function> refers to any supported window function clause.

Window Functions

The connector supports math, ranking, and analytic window functions.

Math

These window functions perform mathematical operations on the records within the window.

COUNT()

Calculates the number of records in each partition. The calculated column is of the data type "int".

In each partition, every record will display the total number of records in that partition.

SELECT Name, Role, Earnings, COUNT() OVER (PARTITION BY Role) FROM Employees

COUNT_BIG()

Calculates the number of records in each partition. The calculated column is of the data type "bigint".

In each partition, every record will display the total number of records in that partition.

SELECT Name, Role, Earnings, COUNT_BIG() OVER (PARTITION BY Role) FROM Employees

MIN(numeric_column)

Calculates the minimum value of a numerical column per partition.

In each partition, every record will display the minimum value of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, MIN(Earnings) OVER (PARTITION BY Role) FROM Employees

MAX(numeric_column)

Calculates the maximum value of a numerical column per partition.

In each partition, every record will display the maximum value of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, MAX(Earnings) OVER (PARTITION BY Role) FROM Employees

SUM(numeric_column)

Calculates the sum of a numerical column per partition.

In each partition, every record will display the sum of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, SUM(Earnings) OVER (PARTITION BY Role) FROM Employees

AVG(numeric_column)

Calculates the average value of a numerical column per partition.

In each partition, every record will display the average value of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, AVG(Earnings) OVER (PARTITION BY Role) FROM Employees

MEDIAN(numeric_column)

Calculates the median value of a numerical column per partition.

In each partition, every record will display the median value of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, MEDIAN(Earnings) OVER (PARTITION BY Role) FROM Employees

STDEV(numeric_column)

Calculates the standard deviation of a numerical column per partition.

In each partition, every record will display the standard deviation of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, STDEV(Earnings) OVER (PARTITION BY Role) FROM Employees

STDEVP(numeric_column)

Calculates the population standard deviation of a numerical column per partition.

In each partition, every record will display the population standard deviation of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, STDEVP(Earnings) OVER (PARTITION BY Role) FROM Employees

VAR(numeric_column)

Calculates the statistical standard variance of a numerical column per partition.

In each partition, every record will display the statistical standard variance of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, VAR(Earnings) OVER (PARTITION BY Role) FROM Employees

VARP(numeric_column)

Calculates the variance population of a numerical column per partition.

In each partition, every record will display the variance population of numeric_column across the records in that partition.

SELECT Name, Role, Earnings, VARP(Earnings) OVER (PARTITION BY Role) FROM Employees

Ranking

These window functions rank records that fall within the window and its partitions.

RANK()

Assigns a rank number to each record in a window based on the value of the column specified in the required ORDER BY clause.

If two or more records have an equal value in the in ranked column, they all receive the same rank number and the rank count increments internally, skipping ahead one rank number for each record with a duplicate value in the ORDER BY column.

SELECT Discount, Email, RANK() OVER (ORDER BY Email) AS Rank FROM Customers

If you add a PARTITION BY clause, a separate set of ranks is calculated for each partition.

SELECT Discount, Email, RANK() OVER (PARTITION BY Discount ORDER BY Email) AS Rank FROM Customers

DENSE_RANK()

Operates like the RANK() function, but it doesn't increment the internal rank counter for each record with a duplicate value in the ranked column.

This means that, while records with identical values in the ORDER BY column still share a rank number, the function never skips a rank number.

SELECT Discount, Email, DENSE_RANK() OVER (PARTITION BY Discount ORDER BY Email) AS Rank FROM Customers

If you add a PARTITION BY clause, a separate set of ranks is calculated for each partition.

SELECT Discount, Email, DENSE_RANK() OVER (PARTITION BY Discount ORDER BY Email) AS Rank FROM Customers

ROW_NUMBER()

Calculates a row number for each record. An ORDER BY clause in the OVER clause is required.

SELECT Name, Role, Earnings, ROW_NUMBER() OVER (ORDER BY Role) FROM Employees
If you define multiple partitions with PARTITION BY, a new set of row numbers are calculated for each partition.
SELECT Name, Role, Earnings, ROW_NUMBER() OVER (PARTITION BY Role ORDER BY Earnings) FROM Employees

NTILE()

Distributes rows of an ordered partition into a specified number of approximately equal groups, or buckets. It assigns each group a bucket number starting from one. For each row in a group, the NTILE() function assigns a bucket number representing the group to which the row belongs.

The syntax of NTILE() is:

NTILE(buckets) OVER (
    [PARTITION BY partition_expression, ... ]
    ORDER BY sort_expression [ASC | DESC], ...
)
The following are paramaters that NTILE() supports:

  • buckets: The number of buckets into which the rows are divided. The buckets can be an expression or subquery that evaluates to a positive integer. It cannot be a window function.
  • PARTITION BY: distributes rows of a result set into partitions to which the NTILE() function is applied.
  • ORDER BY is clause that specifies the logical order of rows in each partition to which the NTILE() is applied.

If the number of rows is not divisible by the buckets, the NTILE() function returns groups of two sizes with the difference by one. The larger groups always precede the smaller group in the order set by ORDER BY in the OVER() clause.

If the total of rows is divisible by the number of buckets, the function divides the rows evenly among buckets. The following statement creates a new table named ntile_demo that stores 10 integers:

CREATE TABLE sales.ntile_demo (
	v INT NOT NULL
);
	
INSERT INTO sales.ntile_demo(v) 
VALUES(1),(2),(3),(4),(5),(6),(7),(8),(9),(10);	
	
SELECT * FROM sales.ntile_demo;
This statement uses the NTILE() function to divide ten rows into three groups:
SELECT 
	v, 
	NTILE (3) OVER (
		ORDER BY v
	) buckets
FROM 
	sales.ntile_demo;

Analytical

These window functions perform analytical operations on the records within the window.

PERCENT_RANK()

Calculates the relative rank SQL Percentile of each row. It returns values greater than zero, but the maximum value is one. It does not count any NULL values. This function is nondeterministic.

The syntax of PERCENT_RANK() is:

PERCENT_RANK() OVER (
      [PARTITION BY partition_expression, ... ]
      ORDER BY sort_expression [ASC | DESC], ...
  )
  
This syntax uses the following parameters.

  • PARTITION BY: By default, SQL Server treats the whole data set as a single set. You can specify the PARTITION BY clause to divide data into multiple sets. The Percent_Rank function performs the analytical calculations on each set. This parameter is optional.
  • ORDER BY: Sorts the data in either ascending or descending order. This parameter is required.

CData Python Connector for Stripe

Table-Valued Functions

Table-valued functions are functions that return a table (rowset).

Note: Table-valued function support is an experimental feature of the connector. This functionality extends beyond the connector's core scope of being SQL-92 compliant. As such, performance with these functions may not be optimal.

Table-Valued Function Clauses

CROSS APPLY

The CROSS APPLY operator is used to perform a subquery on each row of a table or resultset produced by a preceding table expression.

<table_expression_1> CROSS APPLY <table_expression_2>

The second table expression can reference results from the first table expression to create derived columns or an altered recordset via a table-valued function.

Each resulting record is an instance of the record it's splitting, with all the same column values, except for the column(s) containing the value split by the function.

WITH

The WITH clause is used alongside certain table-valued functions to match against constructs within the structure being split (keys, element names, attribute names, etc.) and/or to specify metadata for the columns generated from the function.
SELECT A.ColumnName, X.DerivedColumnName FROM TableName A CROSS APPLY <table-valued function> WITH (DerivedColumnName varchar(255)) AS X

Table-Valued Functions

STRING_SPLIT(input_text,delimiter)

Takes each record in the recordset of the preceding table expression, splits the column containing delimiters (input_text) into substrings separated by the delimiter, and returns one record per substring.

  • input_text: A column whose value you want to parse.
  • delimiter: The character used to split the value of the column specified in input_text.

Suppose there is a column called "SplitColumn" with the following content:

One-Two-Three
To unpack this value across multiple records:
SELECT A.ID, X.Value FROM [TableWithDelimitedStringField] A CROSS APPLY STRING_SPLIT(A.SplitColumn,'-') WITH (Value VARCHAR(255)) AS X

-- Results:
-----------
|ID|Value|
|1|One|
|1|Two|
|1|Three|

JSONTABLE(json_content,[jsonpath])

For each record in the recordset of the preceding table expression, returns one record for each instance of a key in a JSON array (json_content) that matches the key(s) specified in the WITH clause, at the scope specified by the "jsonpath" input.

  • json_content: A JSON "table" (array of objects). The contents can nest, but this must be a single JSON array, not any other JSON structure, at the root level.
    • The values of every instance of the key(s) provided in the WITH clause are retrievable only for substructures which are immediate children of the root-level JSON array.
  • jsonpath: An optional JSONPath query defining the scope, within the json_content array, that you want to pull content from. The JSON key(s) identified in the WITH clause must exist at the scope defined in this parameter. This defaults to the JSON root ($).

Consider a sample table with a single record, including an ID column and column with JSON content called "JSONColumn" with the following content:

[
	{
		"name": "Samuel",
		"email": "sam@gmail.com",
		"extrainfo": {
			"city": "Seattle"
		}
	},
	{
		"name": "Katherine",
		"email": "kat@gmail.com",
	},
	{
		"name": "George",
		"email": "george23@gmail.com",
	},
	{
		"name": "Carlos",
		"email": "carlos32@gmail.com",
	}
]

To extract all values for a certain key, specify the scope in the JSONTABLE function and provide the desired key(s) in the WITH clause.

SELECT A.ID, X.name FROM [TableWithJSONField] A CROSS APPLY JSONTABLE(A.JSONColumn) WITH (name VARCHAR(255)) AS X

-- Results: 
|ID|name|
---------
|1 |Samuel|
|1 |Katherine|
|1 |George|
|1 |Carlos|

XMLTABLE(xml_content,[xpath,child_type])

For each record in the resultset of the preceding table expression, returns one record for each of the elements and/or attributes in an XML structure (xml_content) that match the tag name(s) and/or attribute name(s) specified in the WITH clause, at the scope specified in the "xpath" input.

  • xml_content: A column containing an XML structure.
  • xpath: An optional XPath that specifies the scope within the XML structure at which the connector extracts content matching the tag/attribute name(s) specified in the WITH clause.
    • When extracting the content of sub-elements, the connector can retrieve all content from tags at the root level, (depth 0) immediate children of the root (depth 1), and children of those children (depth 2).
    • When extracting element attribute content, the connector can retrieve all content from tags containing the specified attribute at the root level (depth 0) and from immediate children of root-level elements (depth 1).
  • child_type: An optional parameter that specifies the part(s) of the parent element (specified in the xpath input) that the column(s) provided in the WITH clause are checked against to identify content.
    • You can supply the following values:
      • 0: The column(s) in the WITH clause are checked for matches against the parent element's attribute names and sub-element tag names.
      • 1: The column(s) in the WITH clause are checked for matches against the parent element's attribute names.
      • 2: The column(s) in the WITH clause are checked for matches against the parent element's sub-element tag names.
    • When not supplied, this defaults to 0.

Extracting Sub-Element Values

Consider a sample table with a single record, including an ID column and a column with XML content called "XMLContent" with the following content:
<shoppingList>
    <item>
        <name>Apples</name>
        <quantity>3</quantity>
        <unit>Kg</unit>
    </item>
    <item>
        <name>Bread</name>
        <quantity>2</quantity>
        <unit>Loaf</unit>
		<extrainfo>
			<Type>Whole-Grain</Type>
		</extrainfo>
    </item>
    <item>
        <name>Milk</name>
        <quantity>1</quantity>
        <unit>Carton</unit>
    </item>
    <item>
        <name>Eggs</name>
        <quantity>12</quantity>
        <unit></unit>
    </item>
</shoppingList>

To extract sub-element content, specify the scope in the XMLTABLE function and provide the desired element name(s) in the WITH clause. Note that this will not work if the XMLTABLE function's child_type input is set to 1.

SELECT A.ID, X.name FROM [TableWithXMLField] A CROSS APPLY XMLTABLE(A.XMLContent,'//*/item') WITH (name VARCHAR(255)) AS X

-- Results: 
|ID|name|
---------
|1|Apples|
|1|Bread|
|1|Milk|
|1|Eggs|

Extracting Values Using Element Tag Attributes

Suppose you have this sample table with a single record, including an ID column and a column with XML content called "XMLContent" with the following content:

<restaurant>
  <dish type="appetizer">
    <name lang="en">Caprese Salad</name>
    <chef>Chef Giovanni</chef>
    <price currency="USD">9.99</price>
  </dish>
  <dish type="main-course">
    <name lang="fr">Boeuf Bourguignon</name>
    <chef>Chef Marie</chef>
    <price currency="EUR">19.99</price>
  </dish>
  <dish type="dessert">
    <name lang="es">Tres Leches Cake</name>
    <chef>Chef Alejandro</chef>
    <price currency="MXN">89.99</price>
  </dish>
</restaurant>

To extract attribute content, specify the scope in the XMLTABLE function and provide the desired attribute name(s) in the WITH clause. Note that this will not work if the XMLTABLE function's child_type input is set to 2.

SELECT A.ID, X.type FROM [TableWithXMLField] A CROSS APPLY XMLTABLE(A.XMLContent,'//*/dish') WITH (type VARCHAR(255)) AS X

-- Results: 
|ID|type|
---------
|1|appetizer|
|1|main-course|
|1|dessert|

CSVTABLE(csv_content,[delimiter])

For each record in the resultset of the preceding table expression, reads from a column that contains a CSV table (csv_content) and for each record in that CSV table, returns one record containing the value of the CSV column(s) specified in the WITH clause.

  • csv_content: A column containing a CSV table.
  • delimiter: An optional custom delimiter (instead of a comma) which splits the CSV content contained in the csv_content input.

Consider a sample table with a single record, including an ID column and a column containing CSV table called "CSVContent" with the following content:

Name;Category;Price
Apple;Fruit;0.99
Spaghetti;Pasta;5.49
Chicken Breast;Meat;8.99
Broccoli;Vegetable;2.49

To select every value in the "Name" column and account for the custom delimiter (;):

SELECT A.ID, X.Name FROM [TableWithCSVField] A CROSS APPLY CSVTABLE(A.CSVContent,';') WITH (Name VARCHAR(255)) AS X

-- Results:
|ID|Name|
-----------
|1|Apple|
|1|Spaghetti|
|1|Chicken Breast|
|1|Broccoli|

CData Python Connector for Stripe

INSERT Statements

To create new records, use INSERT statements.

INSERT Syntax

The INSERT statement specifies the columns to be inserted and the new column values. You can specify the column values in a comma-separated list in the VALUES clause, as shown in the following example:

INSERT INTO <table_name> 
( <column_reference> [ , ... ] )
VALUES 
( { <expression> | NULL } [ , ... ] ) 
  

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>
The following is an example query:
INSERT INTO Customers (Email) VALUES ('sales@grandhotels.com')

CData Python Connector for Stripe

UPDATE Statements

To modify existing records, use UPDATE statements.

Update Syntax

The UPDATE statement takes as input a comma-separated list of columns and new column values as name-value pairs in the SET clause, as shown in the following example:

UPDATE <table_name> SET <select_statement> | {<column_reference> = <expression> [ , ... ]} WHERE { Id = <expression>  } [ { AND | OR } ... ] 

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>

The following is an example query:

UPDATE Customers SET Email='sales@grandhotels.com' WHERE Id = @myId

CData Python Connector for Stripe

DELETE Statements

To delete information from a table, use DELETE statements.

DELETE Syntax

The DELETE statement requires the table name in the FROM clause and the row's primary key in the WHERE clause, as shown in the following example:

<delete_statement> ::= DELETE FROM <table_name> WHERE { Id = <expression> } [ { AND | OR } ... ]

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>

The following is an example query:

DELETE FROM Customers WHERE Id = @myId

CData Python Connector for Stripe

CACHE Statements

When caching is enabled, CACHE statements provide complete control over the data that is cached and the table to which it is cached. The CACHE statement executes the SELECT statement specified and caches its results to a table with the same name in the cache database or to table specified in <cached_table_name>. The connector updates or inserts rows to the cache depending on whether or not they already exist in the cache, so the primary key, which is used to identify existing rows, must be included in the selected columns.

See Caching Data for more information on different caching strategies.

CACHE Statement Syntax

The cache statement may include the following options that alter its behavior:

CACHE [ <cached_table_name> ] [ WITH TRUNCATE | AUTOCOMMIT | SCHEMA ONLY | DROP EXISTING | ALTER SCHEMA ] <select_statement> 

WITH TRUNCATE

If this option is set, the connector removes existing rows in the cache table before adding the selected rows. Use this option if you want to refresh the entire cache table but keep its existing schema.

AUTOCOMMIT

If this option is set, the connector commits each row individually. Use this option if you want to ignore the rows that could not be cached due to some reason. By default, the entire result set is cached as a single transaction.

DROP EXISTING

If this option is set, the connector drops the existing cache table before caching the new results. Use this option if you want to refresh the entire cache table, including its schema.

SCHEMA ONLY

If this option is set, the connector creates the cache table based on the SELECT statement without executing the query.

ALTER SCHEMA

If this option is set, the connector alters the schema of the existing table in the cache if it does not match the schema of the SELECT statement. This option results in new columns or dropped columns, if the schema of the SELECT statement does not match the cached table.

Common Queries

Use the following cache statement to cache all rows of a table:

CACHE SELECT * FROM Customers

Use the following cache statement to cache all rows of a table into the cache table CachedCustomers:

CACHE CachedCustomers SELECT * FROM Customers

Use the following cache statement for incremental caching. The DateModified column may not exist in all tables. The cache statement shows how incremental caching would work if there were such a column. Also, notice that, in this case, the WITH TRUNCATE and DROP EXISTING options are specifically omitted, which would have deleted all existing rows.

CACHE CachedCustomers SELECT * FROM Customers WHERE DateModified > '2013-04-04'

Use the following cache statements to create a table with all available columns that will then cache only a few of them. The sequence of statements cache only Discount and Email even though the cache table CachedCustomers has all the columns in Customers.

CACHE CachedCustomers SCHEMA ONLY SELECT * FROM Customers
CACHE CachedCustomers SELECT Discount, Email FROM Customers

CData Python Connector for Stripe

EXECUTE Statements

To execute stored procedures, you can use EXECUTE or EXEC statements.

EXEC and EXECUTE assign stored procedure inputs, referenced by name, to values or parameter names.

Stored Procedure Syntax

To execute a stored procedure as an SQL statement, use the following syntax:

 
{ EXECUTE | EXEC } <stored_proc_name> 
{
  [ @ ] <input_name> = <expression>
} [ , ... ]

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>

Example Statements

Reference stored procedure inputs by name:

EXECUTE my_proc @second = 2, @first = 1, @third = 3;

Execute a parameterized stored procedure statement:

EXECUTE my_proc second = @p1, first = @p2, third = @p3; 

CData Python Connector for Stripe

PIVOT and UNPIVOT

PIVOT and UNPIVOT can be used to change a table-valued expression into another table.

PIVOT

PIVOT rotates a table-value expression by turning unique values from one column into multiple columns in the output. PIVOT can run aggregations where required on any column value.
PIVOT Synax

 
"SELECT 'AverageCost' AS Cost_Sorted_By_Production_Days, [0], [1], [2], [3], [4]
FROM
(
SELECT DaysToManufacture, StandardCost
FROM Production.Product
) AS SourceTable
PIVOT
(
AVG(StandardCost)
FOR DaysToManufacture IN ([0], [1], [2], [3], [4])
) AS PivotTable;"

UNPIVOT

UNPIVOT carries out nearly the opposite to PIVOT by rotating columns of a table-valued expressions into column values.
UNPIVOT Sytax

 
"SELECT VendorID, Employee, Orders
FROM
(SELECT VendorID, Emp1, Emp2, Emp3, Emp4, Emp5
FROM pvt) p
UNPIVOT
(Orders FOR Employee IN
(Emp1, Emp2, Emp3, Emp4, Emp5)
)AS unpvt;"

For further information on PIVOT and UNPIVOT, see FROM clause plus JOIN, APPLY, PIVOT (Transact-SQL)

CData Python Connector for Stripe

Data Model

The CData Python Connector for Stripe models the Stripe API as relational tables, views, and stored procedures. These are defined in schema files, which are simple, text-based configuration files.

The connector uses the Stripe API to process supported filters. The connector processes other filters client-side within the connector.

The connector exposes the Stripe APIs under the v1 namespace in the Stripe data model and those under the v2 namespace in the StripeV2 data model.

You can use the Schema connection property to switch between data models. The default data model is 'Stripe'.

Stripe Data Model

See Stripe Data Model for the available entities in the Stripe Data Model.

StripeV2 Data Model

See StripeV2 Data Model for the available entities in the StripeV2 Data Model.

CData Python Connector for Stripe

Stripe Data Model

Overview

This section shows the available API objects and provides more information on executing SQL to Stripe APIs.

Key Features

  • The connector models Stripe v1 namespace entities like Accounts, Invoices, Customers, Meters and Subscriptions as relational tables, allowing you to write SQL to query and modify Stripe data.
  • Stored procedures allow you to execute operations to Stripe
  • Live connectivity to these objects means any changes to your Stripe account are immediately reflected when using the connector.

    Additionally, the Stripe API limits the number and combinations of columns that can be projected over the data or used to restrict the results returned.

CData Python Connector for Stripe

Tables

The connector models the data in Stripe as a list of tables in a relational database that can be queried using standard SQL statements.

CData Python Connector for Stripe Tables

Name Description
Accounts Create, update, delete, and query the Accounts you manage in Stripe.
BankAccounts Create, update, delete, and query the available Bank Accounts in Stripe.
BankAccountTokens Create and query the available Bank Account Tokens in Stripe.
BillingAlerts Create, update, delete, and query the Accounts you manage in Stripe.
Cards Create, update, delete and query the available Cards in Stripe.
CardTokens Create and query the available Card Tokens in Stripe.
Charges Create, update, and query the available Charges in Stripe.
CheckoutSession Creates and queries the customer's session as they pay for one-time purchases or subscriptions through Checkout or Payment Links.
Coupons Get and delete the available discount of a Subscription.
CreditGrants Create, update, delete, and query the Accounts you manage in Stripe.
CreditNotes Creates, updates, and queries a credit note to adjust an invoice's amount after the invoice is finalized.
CryptoOnrampSessions Create and retrieve Crypto Onramp Sessions.
Customers Create, update, delete, and query the available Customers in Stripe.
Disputes Query the available Disputes in Stripe.
InvoiceItems Create, update, delete, and query the available invoices items in Stripe.
Invoices Create, update, delete, and query the available Invoices in Stripe.
Meters Create, update and retrieve the configured meters in Stripe.
PaymentIntent A PaymentIntent guides you through the process of collecting a payment from your customer.
PaymentLinks Create, update, and query the PaymentLinks in Stripe.
PaymentMethodConfigurations Create, update, and query Payment Method Configurations in Stripe.
PaymentMethods Create, update and query the available PaymentMethods in Stripe.
Payouts Query the available Payouts in Stripe.
Persons Usage information for the operation Persons.rsd.
Plans Create, update, delete, and query the available Plans in Stripe.
Prices Create, update, and query the available prices in Stripe.
Products Query the available products in Stripe.
PromotionCodes Creates, updates, and retrieves a promotion code that represents a customer-redeemable code for a coupon.
Quotes Creates, updates, and queries the quotes available.
Refunds Create and query the available refunds in Stripe.
ShippingRates Query the available Shipping rates in Stripe.
SubscriptionItems Create, update, delete, and query the available subscription items in Stripe.
Subscriptions Create, update, delete, and query the available Subscriptions in Stripe.
TaxIds Creates, deletes and queries the Tax Ids in Stripe.
TaxRates Creates, updates, and queries the tax rates that applies to Invoices, Subscriptions, and Checkout Sessions to collect tax.
TestClocks Create, delete, and query the available TestClocks in Stripe.
TopUps Creates, updates, and queries the top-up of the Stripe balance.
TransferReversals Create, update, and query the available reversals belonging to a specific transfer.
Transfers Create, update, and query the available transfers in Stripe.
UsageRecords Creates and retrieves the customer usage and metrics to Stripe for metered billing for subscription prices.
ValueListItems Creates, deletes, and queries the Values list items.
ValueLists Creates, updates, deletes, and queries values in a list.

CData Python Connector for Stripe

Accounts

Create, update, delete, and query the Accounts you manage in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Created<, >, >=, <=, =
AccountId=

You can select:

  • An account by specifying its Id:
    SELECT * FROM Accounts WHERE Id = 'MyId'
  • Accounts created after a specific date:
    SELECT * FROM Accounts WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Accounts WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Insert

To create a new account, you must provide an email address if the Managed field is not set or is false. You must also include Capabilities, which is an aggregate column. Review the following example on how to insert into this column:

INSERT INTO Accounts (IndividualFullNameAliases, Country, Email, Type, BusinessType, CapabilitiesTransfers) VALUES ('[\"alias1\",\"alias2\"]','US','test@sab.com','custom','individual',true)

Update

To update an account, specify the Id of the account:

UPDATE Accounts SET BusinessType='company' WHERE Id = 'acct_1OPti7GbN1KxSEes'

Delete

To delete an account, specify the Id of the account:

DELETE FROM Accounts WHERE Id = 'acct_1A0XVyFF36eOzuU5'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The unique identifier for the account.

BusinessType String False

The legal structure of the business, such as individual, company, or nonprofit.

The allowed values are individual, company, non_profit, government_entity.

ChargesEnabled Boolean True

Whether the account can create live charges.

Country String False

The country of the account.

IsController Boolean True

Whether the Connect application retrieving the resource controls the account.

ControllerType String True

The controller type.

Created Datetime True

Time at which the account was connected.

DefaultCurrency String False

The currency this account has chosen to use as the default.

DetailsSubmitted Boolean True

Whether account details have been submitted yet. Standalone accounts cannot receive transfers before the value of this attribute becomes 'true'.

Email String False

The primary email address of the user.

ExternalAccountsAggregate String True

External accounts (bank accounts and/or cards) currently attached to this account.

FutureRequirementsAggregate String True

Information about the upcoming new requirements for the account, including what information needs to be collected, and by when.

PayoutsEnabled Boolean True

Whether Stripe can send payouts to this account.

BusinessProfileSupportEmail String False

The publicly shareable email address that can be reached for support for this account.

BusinessProfileSupportPhone String False

The publicly visible support phone number for the business.

BusinessProfileSupportAddressCity String False

City, district, suburb, town, or village.

BusinessProfileSupportAddressCountry String False

Two-letter country code.

BusinessProfileSupportAddressLine1 String False

Address line 1 (for example, street, PO Box, or company name).

BusinessProfileSupportAddressLine2 String False

Address line 2 (for example, apartment, suite, unit, or building).

BusinessProfileSupportAddressPostalCode String False

ZIP or postal code.

BusinessProfileSupportAddressState String False

State, county, province, or region.

BusinessProfileSupportUrl String False

The publicly shareable URL that can be reached for support for this account

BusinessProfileProductDescription String False

An internal-only description of the product or service provided. This is used by Stripe in the event the account gets flagged for potential fraud.

BusinessProfileMcc String False

The merchant category code for the account.

BusinessProfileMonthlyEstimatedRevenueAmount Integer False

A non-negative integer representing how much to charge in the smallest currency unit.

BusinessProfileMonthlyEstimatedRevenueCurrency String False

Three-letter ISO currency code, in lowercase. Must be a supported currency.

BusinessProfileName String False

The publicly visible name of the business.

BusinessProfileUrl String False

The publicly visible website of the business.

TosAcceptanceDate Datetime False

The Unix timestamp marking when the account representative accepted their service agreement.

TosAcceptanceIp String False

The IP address from which the account representative accepted their service agreement.

TosAcceptanceServiceAgreement String False

The user's service agreement type.

TosAcceptanceUserAgent String False

The user agent of the browser from which the account representative accepted their service agreement.

Type String False

A type value is required when creating accounts. The standard type replaces managed: false, and the custom type replaces managed: true.

The allowed values are standard, express, custom.

RequirementsAggregate String True

The state of the information requests for the account, including what information is needed and by when it must be provided.

TransfersEnabled Boolean True

Whether Stripe will send automatic transfers for this account.

MetadataAggregate String False

The account metadata object.

Capabilities String True

In the Accounts API, the requested_capabilities property is now required at creation time for Custom accounts in all countries. See Account capabilities for more information.

CompanyAddressCity String False

City, district, suburb, town, or village.

CompanyAddressCountry String False

Two-letter country code.

CompanyAddressLine1 String False

Address line 1 (for example, street, PO Box, or company name).

CompanyAddressLine2 String False

Address line 2 (for example, apartment, suite, unit, or building).

CompanyAddressPostalCode String False

ZIP or postal code.

CompanyAddressState String False

State, county, province, or region.

CompanyDirectorsProvided Boolean False

Whether the company's directors have been provided.

CompanyExecutivesProvided Boolean False

Whether the company's executives have been provided.

CompanyExportLicenseId String False

The export license ID number of the company, also referred to as Import Export Code (India only).

CompanyExportPurposeCode String False

The purpose code to use for export transactions (India only).

CompanyName String False

The company's legal name.

CompanyOwnersProvided Boolean False

Whether the company's owners have been provided.

CompanyOwnershipDeclarationDate Datetime False

The Unix timestamp marking when the beneficial owner attestation was made.

CompanyOwnershipDeclarationIp String False

The IP address from which the beneficial owner attestation was made.

CompanyOwnershipDeclarationUserAgent String False

The user agent string from the browser where the beneficial owner attestation was made.

CompanyPhone String False

The company's phone number

CompanyRegistrationNumber String False

The identification number given to a company when it is registered or incorporated, if different from the identification number used for filing taxes.

CompanyStructure String False

The category identifying the legal structure of the company or legal entity.

CompanyTaxId String False

The business ID number of the company, as appropriate for the company’s country.

CompanyVatId String False

The VAT number of the company.

CompanyTaxIdProvided Boolean True

Whether the company's business ID number was provided.

CompanyTaxIdRegistrar String False

The jurisdiction in which the tax_id is registered (Germany-based companies only).

CompanyVatIdProvided Boolean True

Whether the company's business VAT number was provided.

CompanyVerificationDocumentBack String False

A document for the company. The back of a document returned by a file upload with a purpose value of additional_verification.

CompanyVerificationDocumentFront String False

A document for the company. The front of a document returned by a file upload with a purpose value of additional_verification.

IndividualId String True

Unique identifier for the individual.

IndividualObject String False

String representing the object's type.

IndividualAccount String False

The account the individual is associated with.

IndividualAddressCity String False

City, district, suburb, town, or village.

IndividualAddressCountry String False

Two-letter country code.

IndividualAddressLine1 String False

Address line 1 (for example, street, PO Box, or company name).

IndividualAddressLine2 String False

Address line 2 (for example, apartment, suite, unit, or building).

IndividualAddressPostalCode String False

ZIP or postal code.

IndividualAddressState String False

State, county, province, or region.

IndividualDOBDay Integer False

The day of birth, between 1 and 31.

IndividualDOBMonth Integer False

The month of birth, between 1 and 12.

IndividualDOBYear Integer False

The four-digit year of birth.

IndividualEmail String False

The individual's email address.

IndividualFirstName String False

The individual's first name.

IndividualFullNameAliases String False

A list of alternate names or aliases that the individual is known by.

IndividualGender String False

The individual's gender.

IndividualIdNumber String False

The government-issued ID number of the individual, as appropriate for the representative’s country.

IndividualIdNumberSecondary String False

The government-issued secondary ID number of the individual, as appropriate for the representative’s country, to be used for enhanced verification checks.

IndividualLastName String False

The individual's last name.

IndividualMaidenName String False

The individual's maiden name.

IndividualMetadataAggregate String False

Metadata for the individual

IndividualNationality String False

The country where the person is a national.

IndividualPhone String False

The individual's phone number.

IndividualPoliticalExposure String False

Indicates if the person or any other closely related persons declares that they have held an important public job or function.

IndividualRegisteredAddressCity String False

City, district, suburb, town, or village.

IndividualRegisteredAddressCountry String False

Two-letter country code.

IndividualRegisteredAddressLine1 String False

Address line 1 (for example, street, PO Box, or company name).

IndividualRegisteredAddressLine2 String False

Address line 2 (for example, apartment, suite, unit, or building).

IndividualRegisteredAddressPostalCode String False

ZIP or postal code.

IndividualRegisteredAddressState String False

State, county, province, or region.

IndividualSSNLast4 String False

The last four digits of the individual's Social Security Number (U.S. only).

IndividualVerificationAdditionalDocumentBack String False

The individual's verification additional document information. The back of an ID returned by a file upload with a purpose value of identity_document.

IndividualVerificationAdditionalDocumentFront String False

The individual's verification additional document information. The front of an ID returned by a file upload with a purpose value of identity_document.

IndividualVerificationDocumentBack String False

The individual's verification document information. The back of an ID returned by a file upload with a purpose value of identity_document.

IndividualVerificationDocumentFront String False

The individual's verification document information. The front of an ID returned by a file upload with a purpose value of identity_document.

BusinessProfileAnnualRevenueAmount Integer False

A non-negative integer representing the amount in the smallest currency unit.

BusinessProfileAnnualRevenueCurrency String False

Three-letter ISO currency code, in lowercase. Must be a supported currency.

BusinessProfileAnnualRevenueFiscalYearEnd Date False

The close-out date of the preceding fiscal year in ISO 8601 format. For example, 2023-12-31 for the 31st of December, 2023.

BusinessProfileEstimatedWorkerCount Integer False

An estimated upper bound of employees, contractors, vendors, etc. currently working for the business.

SettingsBacsDebitPaymentsDisplayName String False

The Bacs Direct Debit display name for this account.

SettingsBacsDebitPaymentsServiceUserNumber String False

The Bacs Direct Debit Service user number for this account.

SettingsBrandingIcon String False

ID of a file upload. An icon for the account. Must be square and at least 128px x 128px.

SettingsBrandingLogo String False

ID of a file upload. A logo for the account used in Checkout instead of the icon. Must be at least 128px x 128px.

SettingsBrandingPrimaryColor String False

A CSS hex color value representing the primary branding color for this account.

SettingsBrandingSecondaryColor String False

A CSS hex color value representing the secondary branding color for this account.

SettingsCardIssuingTosAcceptanceDate Datetime True

The Unix timestamp marking when the account representative accepted the Stripe Issuing Terms and Disclosures.

SettingsCardIssuingTosAcceptanceIp String True

The IP address from which the account representative accepted the Stripe Issuing Terms and Disclosures.

SettingsCardIssuingTosAcceptanceUserAgent String True

The user agent of the browser from which the account representative accepted the Stripe Issuing Terms and Disclosures.

SettingsCardPaymentsDeclineOnAvsFailure Boolean False

Whether Stripe automatically declines charges with an incorrect ZIP or postal code.

SettingsCardPaymentsDeclineOnCvcFailure Boolean False

Whether Stripe automatically declines charges with an incorrect CVC.

SettingsCardPaymentsStatementDescriptorPrefix String False

Default text that appears on statements for card charges outside of Japan, prefixing any dynamic statement_descriptor_suffix.

SettingsCardPaymentsStatementDescriptorPrefixKana String False

The Kana variation of statement_descriptor_prefix used for card charges in Japan.

SettingsCardPaymentsStatementDescriptorPrefixKanji String False

The Kanji variation of statement_descriptor_prefix used for card charges in Japan.

SettingsDashboardDisplayName String True

The display name for this account used on the Stripe Dashboard to differentiate between accounts.

SettingsDashboardTimezone String True

The timezone used in the Stripe Dashboard for this account.

SettingsInvoicesDefaultAccountTaxIds String True

The list of default Account Tax IDs to automatically include on invoices.

SettingsPaymentsStatementDescriptor String False

The default text that appears on statements for non-card charges outside of Japan.

SettingsPaymentsStatementDescriptorKana String False

The Kana variation of statement_descriptor used for charges in Japan.

SettingsPaymentsStatementDescriptorKanji String False

The Kanji variation of statement_descriptor used for charges in Japan.

SettingsPayoutsDebitNegativeBalances Boolean False

A Boolean indicating if Stripe should try to reclaim negative balances from an attached bank account.

SettingsPayoutsScheduleDelayDays Integer False

The number of days charges for the account will be held before being paid out.

SettingsPayoutsScheduleInterval String False

How frequently funds will be paid out. One of manual, daily, weekly, or monthly.

SettingsPayoutsScheduleMonthlyAnchor Integer False

The day of the month funds will be paid out. Only shown if interval is monthly.

SettingsPayoutsScheduleWeeklyAnchor String False

The day of the week funds will be paid out. Only shown if interval is weekly.

SettingsPayoutsStatementDescriptor String False

The text that appears on the bank account statement for payouts.

SettingsSepaDebitPaymentsCreditorId String True

SEPA creditor identifier that identifies the company making the payment.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account

CapabilitiesTransfers Boolean

In the Accounts API, the requested_capabilities property is now required at creation time for Custom accounts in all countries. See Account capabilities for more information. This is only for insert.

CapabilitiesCardPayments Boolean

In the Accounts API, the requested_capabilities property is now required at creation time for Custom accounts in all countries. See Account capabilities for more information. This is only for insert.

CData Python Connector for Stripe

BankAccounts

Create, update, delete, and query the available Bank Accounts in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CustomerId=
AccountId=

To query the BankAccounts table, CustomerId is required:

SELECT * FROM BankAccounts WHERE CustomerId = 'cus_12345678'

Insert

To create a new bank account, specify Country, Currency, and AccountNumber. CustomerId and Object are required:

INSERT INTO BankAccounts (AccountNumber, Country, Currency, Object, AccountHolderName, AccountHolderType, MetadataAggregate, CustomerId, RoutingNumber) VALUES (000999999991,'US','usd','bank_account','Test1','company','[{\"Check\":\"123\",\"QWERTY\":\"456\"}]','cus_PEDFTqrddhgBaF',110000000)

Update

To update a bank account, specify an Id and a CustomerId:

UPDATE BankAccounts SET AccountHolderName = 'My Name', AccountHolderType = 'individual' WHERE Id = 'ba_12345678' AND CustomerId = 'cus_12345678'

Delete

To delete a bank account, specify an Id and a CustomerId:

DELETE FROM BankAccounts WHERE Id = 'ba_12345678' AND CustomerId = 'cus_12345678'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id for the bank account.

CustomerId [KEY] String False

The customer id this account belongs to.

Account String True

The account id.

AccountHolderName String False

The name of the person or business that owns the bank account.

AccountHolderType String False

The type of entity that holds the account.

AccountNumber String False

The type of entity that holds the account.

BankName String True

Name of the bank associated with the routing number.

Country String False

Two-letter ISO code representing the country the bank account is located in.

Currency String False

Three-letter ISO currency code representing the currency paid out to the bank account.

DefaultForCurrency Boolean True

This indicates whether or not this bank account is the default external account for its currency.

Fingerprint String True

Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.

Last4 String True

Last 4 digits of the bank account.

RoutingNumber String False

The routing transit number for the bank account.

Status String True

The status of the account.

AccountType String True

The bank account type. This can only be checking or savings in most countries. In Japan, this can only be futsu or toza.

MetadataAggregate String False

A list of up to 8 URLs of images for this product, meant to be displayable to the customer.

Object String False

String representing the object's type. Objects of the same type share the same value.

The allowed values are bank_account.

AvailablePayoutMethods String True

A set of available payout methods for this bank account. Only values from this set should be passed as the method when creating a payout.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
Source String

The token ID

AccountId String

The Id of the connected account to get back accounts for

CData Python Connector for Stripe

BankAccountTokens

Create and query the available Bank Account Tokens in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
AccountId=

To query the BankAccountTokens table, the Id of desired token is required:

SELECT * FROM BankAccountTokens WHERE Id = 'btok_12345678'

Insert

To insert into BankAccountTokens, Country, and AccountNumber are required:

INSERT INTO BankAccountTokens (Country, Currency, AccountHolderName, AccountHolderType, AccountNumber, RoutingNumber)  VALUES ('US', 'USD', 'Sab nu', 'individual', '000123456789', '110000000')

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the token.

BankAccountId String True

The bank account this token will represent.

AccountHolderName String False

The name of the person or business that owns the bank account.

AccountHolderType String False

The type of entity that holds the account.

AccountType String False

The type of entity that holds the account type.

AccountNumber String False

The type of entity that holds the account number.

BankName String True

Name of the bank associated with the routing number.

Fingerprint String True

Uniquely identifier.

Last4 String True

The last 4 digits of the bank account number.

RoutingNumber String False

The routing transit number for the bank account.

Status String True

Status of the account.

Country String False

Two-letter ISO code representing the country the bank account/card is located in.

Currency String False

The currency of the card.

ClientIp String True

The IP address of the client that generated the token.

Created Datetime True

The datetime of the token.

Used Boolean True

Whether this token has already been used.

LiveMode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Type String True

Type of token.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
CustomerId String

The Id of the customer to create a token for.

AccountId String

The Id of the connected account to get bank account tokens for

CData Python Connector for Stripe

BillingAlerts

Create, update, delete, and query the Accounts you manage in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
AlertType=
Meter=

The rest of the filter is executed client-side within the connector.

You can select from the BillingAlerts table with the following queries:

SELECT * FROM BillingAlerts;
SELECT * FROM BillingAlerts WHERE Id = 'alrt_61StTIaW2Fbu9eu8g41ATXQzBWNrl3s8';
SELECT * FROM BillingAlerts WHERE AlertType = 'usage_threshold';
SELECT * FROM BillingAlerts WHERE Meter = 'mtr_61SsKmAO0UJqejE4X41ATXQzBWNrlL3A';

Insert

To create a new billing alert, AlertType, Title, UsageThresholdGte, UsageThresholdMeter, UsageThresholdRecurrence, and UsageThresholdFilters are required.

INSERT INTO BillingAlerts(AlertType, Title, UsageThresholdGte, UsageThresholdMeter,UsageThresholdRecurrence,UsageThresholdFilters) values('usage_threshold','test by driver','55899','mtr_61SsKmAO0UJqejE4X41ATXQzBWNrlL3A','one_time','[{\"type\": \"customer\" , \"customer\":\"cus_PlAgkzgwf099eS\"}]')

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the object.

Object String True

String representing the object’s type. Objects of the same type share the same value.

AlertType String False

Defines the type of the alert. Use usage_threshold if you intend for an alert to fire when a usage threshold on a meter is crossed.

The allowed values are usage_threshold.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Status String True

Status of the alert. This can be active, inactive or archived.

The allowed values are active, inactive, archived.

Title String False

Title of the alert.

UsageThresholdFilters String False

The filters allow limiting the scope of this usage alert. You can only specify up to one filter at this time. Limit the scope of the alert to this customer ID

UsageThresholdGte Integer False

The value at which this alert will trigger.

UsageThresholdMeterId String False

The Billing Meter ID whose usage is monitored.

UsageThresholdRecurrence String False

Defines how the alert will behave.

The allowed values are one_time.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
Meter String

Filter results to only include alerts with the given meter.

CData Python Connector for Stripe

Cards

Create, update, delete and query the available Cards in Stripe.

Table-Specific Information

This table is deprecated. Use the PaymentMethods table instead.

Select

Server-Side Query Support

The connector uses the Stripe API to filter the results by Id, CustomerId and AccountId. They support the equals (=) operator.

The rest of the filter is executed client-side within the connector.

To query the Cards table, you must specify a CustomerId:

SELECT * FROM Cards WHERE CustomerId = 'cus_12345678'

Insert

You can insert a Card Token and then insert the Token Id to Cards:

INSERT INTO CardTokens (ExpMonth, ExpYear, Number) VALUES (11, 2018, 4242424242424242 )
INSERT INTO Cards (CustomerId, Token) VALUES ('cus_123456778', 'tok_1234345565' )
INSERT INTO Cards (CustomerId,ExpMonth,ExpYear,Number,Object,Country) VALUES ('cus_PARXAI77xUsWw1',6,'2025','4242424242424242','card','russia')

Update

To update a card, specify both the Id and CustomerId:

UPDATE Cards SET ExpMonth = '06', ExpYear = '2018', AddressCity = 'Houghton Street London' WHERE Id = 'ca_12345678' AND CustomerId = 'cus_123456778'

Delete

To delete a card, specify both the Id and CustomerId:

DELETE FROM Cards WHERE Id = 'ca_12345678' AND CustomerId = 'cus_123456778'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The card Id.

CustomerId [KEY] String False

The customer Id this card belongs to.

ExpMonth Integer False

The card expiry month.

ExpYear Integer False

The card expiry year.

Currency String False

Only applicable on accounts (not customers or recipients). The card can be used as a transfer destination for funds in this currency.

Account String True

The account Id this card belongs to.

Token String False

The token Id.

AddressCity String False

The city address.

AddressCountry String False

Billing address country, if provided when creating card.

AddressLine1 String False

The address line 1.

AddressLine1Check String True

If AddressLine1 was provided. Possible values: pass, fail, unavailable, or unchecked.

AddressLine2 String False

The address line 2.

AddressState String False

The address state.

AddressZip String False

The address ZIP.

AddressZipCheck String True

If AddressZip was provided. Possible values: pass, fail, unavailable, or unchecked.

Brand String True

Card brand.

Country String True

Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you have collected.

CvcCheck String True

If a CVC was provided. Possible values: pass, fail, unavailable, or unchecked.

Cvc String False

Card security code. Highly recommended to always include this value, but it’s required only for accounts based in European countries.

DefaultForCurrency Boolean False

Only applicable on accounts (not customers or recipients). This indicates whether or not this card is the default external account for its currency.

Number String False

The card number.

Fingerprint String True

Uniquely identifies this particular card number.

Funding String True

Card funding type.

Last4 String True

Last 4 digits of the card.

Name String False

Cardholder name.

TokenizationMethod String True

If the card number is tokenized, this is the method that was used.

Metadata String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

Object String False

String representing the object's type. Objects of the same type share the same value.

AvailablePayoutMethods String True

A set of available payout methods for this card. Only values from this set should be passed as the method when creating a payout.

DynamicLast4 String True

(For tokenized numbers only.) The last four digits of the device account number.

WalletApplePay String True

If this is a apple_pay card wallet, this hash contains details about the wallet.

WalletType String True

The type of the card wallet, one of apple_pay. An additional hash is included on the Wallet subhash with a name matching this value. It contains additional information specific to the card wallet type.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get cards for.

CData Python Connector for Stripe

CardTokens

Create and query the available Card Tokens in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=

To query the CardTokens table, the Id of desired token is required:

SELECT * FROM CardTokens WHERE Id = 'tok_12345678'

Insert

The ExpMonth, ExpYear, and Number are required to insert a new card token.

INSERT INTO CardTokens (ExpMonth, ExpYear, Number) VALUES (11, 2018, 4242424242424242)

INSERT INTO CardTokens (AddressCity, AddressCountry, AddressLine1, AddressLine2, AddressZip, Currency, ExpMonth, ExpYear, Name, Number, AddressState) values ('Mohali', 'INDIA', 'TestAddressLine1', 'TestAddressLine2', 123456, 'inr', '01', '2029', 'Tapan Sharma', '4242424242424242', 'Punjab')

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the token.

CardId String True

The Id of card (used in conjunction with a customer or recipient Id)

AddressCity String False

The city address of the card.

AddressCountry String False

The country address of the card.

AddressLine1 String False

The address line 1.

AddressLine1Check String True

If address_line1 was provided.

AddressLine2 String False

The address line 2.

AddressState String False

The address state.

AddressZip String False

The zip address.

AddressZipCheck String True

If address_zip was provided.

Brand String True

The card brand.

Country String True

Two-letter ISO code representing the country the bank account/card is located in.

Currency String False

The currency of the card.

CvcCheck String True

If a CVC was provided.

DynamicLast4 String True

The last four digits of the device account number.

ExpMonth Integer False

The card expiration month.

ExpYear Integer False

The card expiration year.

Last4 String True

Last4.

Fingerprint String True

Uniquely identifier.

Funding String True

Card funding type.

Name String False

Cardholder name.

MetadataAggregate String True

The card metadata object.

TokenizationMethod String True

If the card number is tokenized, this is the method that was used.

ClientIp String True

The IP address of the client that generated the token.

Created Datetime True

The datetime of the token.

Used Boolean True

Whether this token has already been used.

Number String False

The card number.

LiveMode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Type String True

Type of token.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
CustomerId String

The Id of the customer to create a token for.

AccountId String

The Id of the connected account to get card tokens for.

CData Python Connector for Stripe

Charges

Create, update, and query the available Charges in Stripe.

Table-Specific Information

In this table only select, insert, and update operations are allowed.

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Amount<, >, >=, <=, =, !=
Currency=, !=
CustomerId=, !=
BillingDetailsAddressPostalCode=, !=
Created<, >, >=, <=, =, !=
Disputed=, !=
MetadataAggregate=, !=
PaymentIntent=
Refunded=, !=
Status=, !=
TransferGroup=
AccountId=

You can select:

  • A charge by specifying its Id:
    SELECT * FROM Charges WHERE Id = 'ch_12345678'
  • Charges that belong to a customer:
    SELECT * FROM Charges WHERE CustomerId = 'cus_12345678'
  • Charges created after a specific date:
    SELECT * FROM Charges WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Charges WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Insert

The Amount, Currency, and CustomerId or SourceId columns are required to charge a credit card:

INSERT INTO Charges (Amount, Currency, CustomerId) VALUES (2000, 'usd', 'cus_12345678')

Update

To modify a charge, provide an Id:

UPDATE Charges SET Description = 'updated charge' WHERE Id = 'ch_17rPMOATXQzBWNrliIRnfI5B'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the charge.

Amount Integer False

The amount of the charge.

Currency String False

The currency of the charge.

CustomerId String False

The customer Id of the charge.

AmountRefunded Integer True

The amount in cents refunded.

ApplicationFee String True

The application fee (if any) for the charge.

ApplicationFeeAmount Integer False

The amount of the application fee (if any) for the charge.

BalanceTransaction String True

The Id of the balance transaction that describes the impact of this charge on your account balance .

BillingDetailsAddressCity String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsAddressCountry String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsAddressLine1 String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsAddressLine2 String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsAddressPostalCode String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsAddressState String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsEmail String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsName String True

Billing information associated with the payment method at the time of the transaction.

BillingDetailsPhone String True

Billing information associated with the payment method at the time of the transaction.

Captured Boolean False

Whether the charge was created without capturing.

CalculatedStatementDescriptor String True

The full statement descriptor that is passed to card networks, and that is displayed on your customers' credit card and bank statements. Allows you to see what the statement descriptor looks like after the static and dynamic portions are combined.

Created Datetime True

The datetime the charge was created.

Description String False

The description of the charge.

Disputed Boolean True

Whether the charge has been disputed.

DisputeId String True

The Id of the associated dispute.

FailureCode String True

The error code explaining the reason for the charge failure if available.

FailureMessage String True

The message to the user further explaining the reason for the charge failure if available.

FraudDetailsStripeReport String True

Information on fraud assessments for the charge.

FraudDetailsUserReport String False

Information on fraud assessments for the charge.

Invoice String True

The Id of the invoice this charge is for if one exists.

Livemode Boolean True

Whether the charge is in live mode.

MetadataAggregate String False

The charge metadata object.

Order String True

The Id of the order this charge is for if one exists.

OutcomeAggregate String True

Details about whether the payment was accepted, and why. See understanding declines for details.

Paid Boolean True

If the charge succeeded or was successfully authorized for later capture.

PaymentIntent String True

ID of the PaymentIntent associated with this charge, if one exists.

PaymentMethod String True

ID of the payment method used in this charge.

PaymentMethodDetailsAggregate String True

Details about the payment method at the time of the transaction.

ReceiptEmail String False

The email address that the receipt for this charge was sent to.

ReceiptNumber String True

The transaction number that appears on email receipts sent for this charge.

ReceiptURL String True

This is the URL to view the receipt for this charge. The receipt is kept up-to-date to the latest state of the charge, including any refunds. If the charge is for an Invoice, the receipt is stylized as an Invoice receipt.

Refunded Boolean True

Whether the charge has been fully refunded. If the charge is only partially refunded, this attribute will still be false.

RefundsAggregate String True

The list of refunds that have been applied to the charge.

Review String True

ID of the review associated with this charge if one exists.

ShippingAddressCity String False

Shipping information for the charge. Shipping address. City, district, suburb, town, or village.

ShippingAddressCountry String False

Shipping information for the charge. Shipping address. Two-letter country code (ISO 3166-1 alpha-2)

ShippingAddressLine1 String False

Shipping information for the charge. Shipping address. Address line 1 (e.g., street, PO Box, or company name).

ShippingAddressLine2 String False

Shipping information for the charge. Shipping address. Address line 2 (e.g., apartment, suite, unit, or building).

ShippingAddressPostalCode String False

Shipping information for the charge. Shipping address. ZIP or postal code.

ShippingAddressState String False

Shipping information for the charge. Shipping address. State, county, province, or region.

ShippingCarrier String False

Shipping information for the charge. The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.

ShippingName String False

Shipping information for the charge. Recipient name.

ShippingPhone String False

Shipping information for the charge. Recipient phone (including extension).

ShippingTrackingNumber String False

Shipping information for the charge. The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.

SourceId String False

Source Id. The source of every charge is a credit or debit card.

SourceAddressCity String False

Source address city.

SourceAddressCountry String False

Source address country.

SourceAddressLine1 String False

Source address line1.

SourceAddressLine2 String False

Source address line2.

SourceAddressState String False

Source address state.

SourceAddressZip String False

Source address zip.

SourceAddressZipCheck String False

Source address zip check.

SourceBrand String False

Source brand.

SourceCountry String False

Source country.

SourceCustomer String False

Source customer.

SourceCvcCheck String False

Source cvc check.

SourceDynamicLast4 String False

Source dynamic last4.

SourceExpMonth Integer False

Source expiry month.

SourceExpYear Integer False

Source expiry year.

SourceFingerprint String False

Source fingerprint.

SourceFunding String False

Source funding.

SourceLast4 Integer False

Source last4.

SourceMetadata String False

Source metadata.

SourceName String False

Source name.

SourceObject String False

Source object.

SourceTokenizationMethod String False

Source tokenization method.

SourceWallet String False

Source wallet.

SourceTransfer String True

The transfer Id that created this charge.

StatementDescriptor String False

The extra information about a charge.

Status String True

The status of the payment is either succeeded, pending, or failed.

Transfer String True

The Id of the transfer to the destination account.

TransferDataAmount Integer False

An optional dictionary including the account to automatically transfer to as part of a destination charge.

TransferDataDestination String False

An optional dictionary including the account to automatically transfer to as part of a destination charge.

TransferGroup String False

A string that identifies this transaction as part of a group.

StatementDescriptorSuffix String False

Provides information about the charge that customers see on their statements.

Object String True

String representing the object's type. Objects of the same type share the same value.

AmountCaptured Integer True

Amount in cents captured

Application String True

ID of the Connect application that created the charge.

FailureBalanceTransaction String True

ID of the balance transaction that describes the reversal of the balance on your account due to payment failure.

OnBehalfOf String False

The account (if any) the charge was made on behalf of without triggering an automatic transfer.

RadarOptionsSession String False

Options to configure Radar. A Radar Session is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get charges for

CData Python Connector for Stripe

CheckoutSession

Creates and queries the customer's session as they pay for one-time purchases or subscriptions through Checkout or Payment Links.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
CustomerId=
CustomerDetailsEmail=
PaymentIntentId=
PaymentLinkId=
Status=
SubscriptionId=
AccountId=

The rest of the filter is executed client-side within the connector.

You can select from the CheckoutSession table with the following queries:

SELECT * FROM CheckoutSession WHERE Id = '123124'
SELECT * FROM CheckoutSession WHERE CustomerId = 'cus_N8rO0qc7j1SJJ9'
SELECT * FROM CheckoutSession WHERE CustomerDetailsEmail = 'customer@email.com'
SELECT * FROM CheckoutSession WHERE PaymentIntentId = 'pi_sfuniew'

Insert

To create a new checkout session, at least Mode and SuccessUrl are required. If Mode is payment or subscription, LineItemsAggregate is also required. Recurring payments are not supported in this context.

INSERT INTO CheckoutSession (Mode, SuccessUrl,LineItemsAggregate) VALUES ('payment', 'https://example.com/success','[{\"price\":\"price_1OPuMb2eZvKYlo2CVkxTmqYN\",\"quantity\":\"23\"}]')
INSERT INTO CheckoutSession (Mode, SuccessUrl, Currency, CustomerId) VALUES ('setup', 'https://example.com/success', 'usd', 'cus_N8rO0qc7j1SJJ9')

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the Checkout session.

AfterExpirationRecoveryAllowPromotionCodes Boolean False

When set, provides configuration for actions to take if this Checkout Session expires. Enables user redeemable promotion codes on the recovered Checkout Sessions. Defaults to false

AfterExpirationRecoveryEnabled Boolean False

When set, provides configuration for actions to take if this Checkout Session expires. If true, a recovery url will be generated to recover this Checkout Session if it expires before a transaction is completed. It will be attached to the Checkout Session object upon expiration.

AfterExpirationRecoveryExpiresAt Datetime True

When set, provides configuration for actions to take if this Checkout Session expires. The timestamp at which the recovery URL will expire.

AfterExpirationRecoveryUrl String True

When set, provides configuration for actions to take if this Checkout Session expires. URL that creates a new Checkout Session when clicked that is a copy of this expired Checkout Session.

AllowPromotionCodes Boolean False

Enables user redeemable promotion codes.

AmountSubtotal Integer True

Total of all items before discounts or taxes are applied.

AmountTotal Integer True

Total of all items after discounts and taxes are applied.

AutomaticTaxEnabled Boolean False

Indicates whether automatic tax is enabled for the session.

AutomaticTaxStatus String True

The status of the most recent automated tax calculation for this session.

BillingAddressCollection String False

Describes whether Checkout should collect the customer's billing address.

The allowed values are auto, required.

CancelUrl String False

If set, Checkout displays a back button and customers are directed to this URL if they decide to cancel payment and return to your website.

ClientReferenceId String False

A unique string to reference the Checkout Session. This can be a customer Id, a cart Id, or something similar, and you can use it to reconcile the Session with your internal systems.

ClientSecret String True

Client secret to be used when initializing Stripe.js embedded checkout.

ConsentPromotions String True

Results of consent_collection for this session. If opt_in, the customer consents to receiving promotional communications from the merchant about this Checkout Session.

The allowed values are opt_in, opt_out.

ConsentTermsOfService String True

Results of consent_collection for this session. If accepted, the customer in this Checkout Session has agreed to the merchant’s terms of service.

The allowed values are accepted.

ConsentCollection String True

When set, provides configuration for the Checkout Session to gather active consent from customers.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

Currency String False

A three-letter ISO currency code.

CurrencyConversion String True

Currency conversion details for automatic currency conversion sessions.

CustomFields String False

Collects additional information from your customer using custom fields. Up to two fields are supported.

CustomTextAfterSubmitMessage String False

Custom text that should be displayed after the payment confirmation button.

CustomTextShippingAddressMessage String False

Custom text that should be displayed alongside shipping address collection.

CustomTextSubmitMessage String False

Custom text that should be displayed alongside the payment confirmation button.

CustomTextTermsOfAcceptanceMessage String False

Custom text that should be displayed in place of the default terms of service agreement text.

CustomerId String False

The Id of the customer for this Session.

CustomerCreation String False

Configures whether a Checkout Session creates a Customer when the Checkout Session completes.

The allowed values are always, if_required.

CustomerDetailsAddress String True

The customer's address after a completed Checkout Session.

CustomerDetailsEmail String True

The email associated with the Customer.

CustomerDetailsName String True

The customer's name after a completed Checkout Session.

CustomerDetailsPhone String True

The customer's phone number after a completed Checkout Session.

CustomerDetailsTaxExempt String True

The customer's tax exempt status after a completed Checkout Session.

CustomerDetailsTaxIds String True

The customer's tax Ids after a completed Checkout Session.

CustomerEmail String False

The email of the customer.

ExpiresAt Datetime False

The timestamp at which the Checkout Session expires.

InvoiceId String True

The Id of the invoice created by the Checkout Session.

InvoiceCreation String True

Details on the state of invoice creation for the Checkout Session.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

Locale String False

The IETF language tag of the locale Checkout is displayed in.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

Mode String False

The mode of the Checkout Session.

Object String True

String representing the object's type. Objects of the same type share the same value.

PaymentIntentId String True

The Id of the PaymentIntent for Checkout Sessions in payment mode.

PaymentLinkId String True

The Id of the Payment Link that created this Session.

PaymentMethodCollection String False

Configures whether a Checkout Session should collect a payment method.

PaymentMethodTypes String False

A list of the types of payment methods (e.g. card) this Checkout Session is allowed to accept.

PaymentMethodOptions String False

Payment-method-specific configuration for the PaymentIntent or SetupIntent of this CheckoutSession.

PaymentStatus String True

The payment status of the Checkout Session, one of paid, unpaid, or no_payment_required.

The allowed values are no_payment_required, paid, unpaid.

PhoneNumberCollectionEnabled Boolean False

Indicates whether phone number collection is enabled for the session.

RecoveredFrom String True

The Id of the original expired Checkout Session that triggered the recovery flow.

Redaction String True

Redactions for the session.

SetupIntent String False

The Id of the SetupIntent for Checkout Sessions in setup mode.

ShippingAddressCollectionAllowedCountries String False

When set, provides configuration for Checkout to collect a shipping address from a customer.

ShippingCost String True

The details of the customer cost of shipping, including the customer-chosen ShippingRate.

ShippingDetails String True

Shipping information for this Checkout Session.

ShippingOptions String True

The shipping rate options applied to this Session.

Status String True

The status of the Checkout Session, one of open, complete, or expired.

SubmitType String False

Describes the type of transaction being performed by Checkout in order to customize relevant text on the page, such as the submit button. submit_type can only be specified on Checkout Sessions in payment mode, but not Checkout Sessions in subscription or setup mode.

SubscriptionId String True

The Id of the subscription for Checkout Sessions in subscription mode.

SuccessUrl String False

The URL the customer is directed to after the payment or subscription creation is successful.

TotalDetails String True

Tax and discount details for the computed total amount.

UiMode String False

The UI mode of the Session. Can be hosted (default) or embedded.

The allowed values are hosted, embedded.

Url String True

The URL to the Checkout Session.

ReturnUrl String False

The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method’s app or site. This parameter is required if ui_mode is embedded and redirect-based payment methods are enabled on the session.

LineItemsAggregate String False

The line items purchased by the customer.

AutomaticTaxLiabilityAccount String False

The connected account being referenced when type is account.

AutomaticTaxLiabilityType String False

Type of the account referenced.

The allowed values are account, self.

RedirectOnCompletion String False

This parameter applies to ui_mode: embedded. Learn more about the redirect behavior of embedded sessions. Defaults to always.

The allowed values are always, if_required, never.

DiscountsAggregate String False

List of coupons and promotion codes attached to the Checkout Session.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get checkout session for.

CData Python Connector for Stripe

Coupons

Get and delete the available discount of a Subscription.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CreatedAt=, >, >=, <, <=
AccountId=

You can select a specific coupon by specifying its Id:

SELECT * FROM Coupons WHERE Id = 'nReumrk6'

Insert

To create a new coupon, at least Duration is required. If Duration is set to repeating, DurationInMonths is also required:

INSERT INTO Coupons (Id, Duration, DurationInMonths, PercentOff, Currency) VALUES ('12345678', 'repeating', '12', '50', 'ALL')

Update

To modify a credit note, specify its Id:

Update Coupons set name = 'non-repeating' where Id = 'mIKfjEfL'

Delete

To delete a coupon, specify the Id field:

DELETE FROM Coupons WHERE Id = 'nReumrk6'

Columns

Name Type ReadOnly References Description
Id [KEY] String False

The Id of the coupon.

CreatedAt Datetime True

The creation date.

Currency String False

If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.

Duration String False

Describes how long a customer who applies this coupon will get the discount. One of forever, once, and repeating.

DurationInMonths Integer False

If duration is repeating, the number of months the coupon applies. Null if coupon duration is forever or once.

AmountOff Integer False

Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.

PercentOff Decimal False

Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.

Valid Boolean True

Taking account of the above properties, whether this coupon can still be applied to a customer.

MaxRedemptions Integer False

Maximum number of times this coupon can be redeemed, in total, before it is no longer valid.

RedeemBy Datetime False

Date after which the coupon can no longer be redeemed.

MetadataAggregate String False

The set of key/value pairs that you can attach to a coupon object.

TimesRedeemed Integer True

Number of times this coupon has been applied to a customer.

Object String True

String representing the object's type. Objects of the same type share the same value.

AppliesTo String False

Contains information about what this coupon applies to. This field is not included by default. To include it in the response, expand the applies_to field.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Name String False

Name of the coupon displayed to customers on, for instance, invoices or receipts.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
CurrencyOptions String

Coupons defined in each available currency option (only supported if amount_off is passed). Each key must be a three-letter ISO currency code and a supported currency.

AccountId String

The Id of the connected account to get coupons for.

CData Python Connector for Stripe

CreditGrants

Create, update, delete, and query the Accounts you manage in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
CustomerId=

The rest of the filter is executed client-side within the connector.

You can select from the CreditGrants table with the following queries:

SELECT * FROM CreditGrants;
SELECT * FROM CreditGrants WHERE Id = 'credgr_test_61St1pbUaoMcUECiL41ATXQzBWNrlDAO';
SELECT * FROM CreditGrants WHERE CustomerId = 'cus_RADJuiVg2CKwok';

Insert

To create a new credit grant, AmountMonetaryCurrency, AmountMonetaryValue, AmountType, Category, CustomerId, and ApplicabilityConfigScopePriceType are required:

INSERT INTO CreditGrants(AmountMonetaryCurrency, AmountMonetaryValue, AmountType, Category, CustomerId, ApplicabilityConfigScopePriceType) values('usd', 65000, 'monetary', 'paid', 'cus_RADJuiVg2CKwok', 'metered' )

Update

Only the ExpiresAt and MetadataAggregate fields can be modified. To modify a credit grant, specify the credit grant Id:

UPDATE CreditGrants SET ExpiresAt='2025-08-11 05:30:00', MetadataAggregate='{\"coupon\": \"dasvfsghasdfas\",\"promotion_code\": \"L9l9iBvo\"}' where Id='credgr_test_61St1fLV58W5r9v9G41ATXQzBWNrlRLE'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the object.

Object String True

String representing the object’s type. Objects of the same type share the same value.

AmountMonetaryCurrency String False

Three-letter ISO currency code, in lowercase. Must be a supported currency.

AmountMonetaryValue Integer False

A positive integer representing the amount.

AmountType String False

The type of this amount. We currently only support monetary billing credits.

The allowed values are monetary.

ApplicabilityConfigScopePriceType String False

The price type that credit grants can apply to. We currently only support the metered price type. This refers to prices that have a Billing Meter attached to them. Cannot be used in combination with prices.

The allowed values are metered.

ApplicabilityConfigScopePricesId String False

The prices that credit grants can apply to. We currently only support metered prices. This refers to prices that have a Billing Meter attached to them. Cannot be used in combination with price_type.

Category String False

The category of this credit grant. This is for tracking purposes and isn’t displayed to the customer.

The allowed values are paid, promotional.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

CustomerId String False

ID of the customer receiving the billing credits.

EffectiveAt Datetime False

The time when the billing credits become effective-when they’re eligible for use.

ExpiresAt Datetime False

The time when the billing credits expire. If not present, the billing credits don’t expire.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

MetadataAggregate String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

Name String False

A descriptive name shown in dashboard.

TestClockId String True

ID of the test clock this credit grant belongs to.

UpdatedAt String True

Time at which the object was last updated. Measured in seconds since the Unix epoch.

VoidedAt String True

The time when this credit grant was voided. If not present, the credit grant hasn’t been voided.

Priority Integer False

The priority for applying this credit grant. The highest priority is 0 and the lowest is 100.

CData Python Connector for Stripe

CreditNotes

Creates, updates, and queries a credit note to adjust an invoice's amount after the invoice is finalized.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
CustomerId=
InvoiceId=
AccountId=
Created=, >, >=, <, <=

The rest of the filter is executed client-side within the connector.

You can select from the CreditNotes table with the following queries:

SELECT * FROM CreditNotes WHERE Id = 'cn_1Pkjsdb';
SELECT * FROM CreditNotes WHERE CustomerId = 'cus_N8rO0qc7j1SJJ9';
SELECT * FROM CreditNotes WHERE InvoiceId = 'in_23341xds';
SELECT * FROM CreditNotes WHERE Created >= '2025-11-19 01:20:01.0';

Insert

To create a new credit note, InvoiceId and (Amount or Lines or ShippingCost) are required:

INSERT INTO CreditNotes (InvoiceId, Amount, Reason, OutOfBandAmount) VALUES ('in_23341xds', 1, 'duplicate', 1);
INSERT INTO CreditNotes (InvoiceId, lines) VALUES ('in_23341xds','{"type":"invoice_line_item","invoice_line_item": "il_123341xds","amount": 1}');

Update

To modify a credit note, specify the credit note Id:

UPDATE CreditNotes SET Memo = 'new_memo' WHERE id='cn_1Pkjsdb';

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the credit note.

Amount Integer False

The integer amount in cents representing the total amount of the credit note, including tax.

AmountShipping Integer True

The sum of all the shipping amounts.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

Currency String True

A three-letter ISO currency code, in lowercase.

CustomerId String True

The Id of customer.

CustomerBalanceTransaction String True

The customer balance transaction related to this credit note.

DiscountAmounts String True

The aggregate amounts calculated per discount for all line items.

EffectiveAt Datetime False

The date when this credit note goes into effect. This is the same as created unless overwritten.

InvoiceId String False

The Id of invoice.

Lines String False

Line items that make up the credit note.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

Memo String False

Customer-facing text that appears on the credit note PDF.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

Number String True

A unique number that identifies this particular credit note and appears on the PDF of the credit note and its associated invoice.

OutOfBandAmount Integer False

Amount that was credited outside of Stripe.

Pdf String True

The link to download the PDF of the credit note.

Reason String False

The reason for issuing this credit note, one of duplicate, fraudulent, order_change, or product_unsatisfactory.

The allowed values are duplicate, fraudulent, order_change, product_unsatisfactory.

Refund String False

The refund related to this credit note.

ShippingCost String False

The details of the cost of shipping

Status String True

The status of this credit note, one of issued or void.

Subtotal Integer True

The integer amount in cents representing the amount of the credit note, excluding exclusive tax and invoice level discounts.

SubtotalExcludingTax Integer True

The integer amount in cents representing the amount of the credit note, excluding all tax and invoice level discounts.

TaxAmounts String True

The aggregate amounts calculated per tax rate for all line items.

Total Integer True

The integer amount in cents representing the total amount of the credit note, including tax and all discount.

TotalExcludingTax Integer True

The integer amount in cents representing the total amount of the credit note, excluding tax, but including discounts.

Type String True

The type of this credit note, either pre_payment or post_payment.

VoidedAt Datetime True

The time at which the credit note was voided.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
CreditAmount Integer

The integer amount in cents representing the amount to credit the customer’s balance, which will be automatically applied to their next invoice.

RefundAmount Integer

The integer amount in cents representing the amount to refund. If set, a refund will be created for the charge associated with the invoice.

AccountId String

The Id of the connected account to get credit notes for.

CData Python Connector for Stripe

CryptoOnrampSessions

Create and retrieve Crypto Onramp Sessions.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Status=
TransactionDetailsDestinationCurrency=
TransactionDetailsDestinationNetwork=
Created<, >, >=, <, <=, =

You can select:

  • A Crypto Onramp Session by specifying its Id:

    SELECT * FROM CryptoOnrampSessions WHERE Id = 'cos_1NamBL2eZvKYlo2CP38sZVEW';

  • A Crypto Onramp Session created after a specific date (Created can be used twice to specify a range):

    SELECT * FROM CryptoOnrampSessions WHERE Created = '2023-07-21 19:00:27.0'

  • A Crypto Onramp Session by specifying its Status:

    SELECT * FROM CryptoOnrampSessions WHERE Status = 'initialized';

  • A Crypto Onramp Session by specifying its TransactionDetailsDestinationCurrency:

    SELECT * FROM CryptoOnrampSessions WHERE TransactionDetailsDestinationCurrency = 'USD'

  • A Crypto Onramp Session by specifying its TransactionDetailsDestinationNetwork:

    SELECT * FROM CryptoOnrampSessions WHERE TransactionDetailsDestinationNetwork = 'ethereum'

Insert

The columns that are not read-only can be inserted. For example:
INSERT INTO CryptoOnrampSessions (TransactionDetailsWalletAddressesEthereum) VALUES ('0xB00F0759DbeeF5E543Cc3E3B07A6442F5f3928a2')

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the Crypto Onramp Session object.

ClientSecret String True

A client secret that can be used to drive a single session using our embedded widget.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

KycDetailsProvided Boolean True

Has the value true if any user kyc details were provided during the creation of the onramp session. Otherwise, has the value false.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

MetadataAggregate String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

RedirectUrl String True

Redirect your users to the URL for a prebuilt frontend integration of the crypto onramp on the standalone hosted onramp.

Status String True

The status of the Onramp Session. One of = {initialized, rejected, requires_payment, fulfillment_processing, fulfillment_complete}.

Object String True

String representing the object's type. Objects of the same type share the same value.

TransactionDetailsDestinationAmount String False

The amount of crypto the customer will get deposited into their wallet. When left null, a default value is computed if source_amount, destination_currency, and destination_network are set. When set, both destination_currency and destination_network must also be set. All cryptocurrencies are supported to their full precisions (for example, 18 decimal places for eth). We validate and generate an error if the amount exceeds the supported precision based on the exchange currency. Setting source_amount is mutually exclusive with setting destination_amount (only one or the other is supported).

TransactionDetailsDestinationCurrencies String False

If a platform wants to lock the currencies a session will support, they can add supported currencies to this array. If left null, the experience will allow selection of all supported destination currencies and all supported cryptocurrencies are shown in the onramp UI subject to destination_networks if set. When set, it must be a non-empty array where all values in the array are valid cryptocurrencies. You can use it to lock users to a specific cryptocurrency by passing a single value array. Users cannot override this parameter.

TransactionDetailsDestinationCurrency String False

The selected destination_currency to convert the source to. This should be a crypto currency code. If supported_destination_currencies is set, it must be a value in that array. When left null, the first value of destination_currencies is selected. When set, if destination_currencies is also set, the value of destination_currency must be present in that array. To lock a destination_currency, specify that value as the single value for destination_currencies. Users can select a different cryptocurrency in the onramp UI subject to destination_currencies if set.

TransactionDetailsDestinationNetwork String False

The specific crypto network the destination_currency is settled on. If supported_destination_networks is set, it must be a value in that array. When left null, the first value of destination_networks is selected. When set, if destination_networks is also set, the value of destination_network must be present in that array. To lock a destination_network, specify that value as the single value for destination_networks. Users can select a different network in the onramp UI subject to destination_networks if set.

TransactionDetailsDestinationNetworks String False

If a platform wants to lock the supported networks, they can do so through this array. If left null, the experience will allow selection of all supported networks. When set, it must be a non-empty array where values in the array are each a valid crypto network. It can be used to lock users to a specific network by passing a single value array. Users cannot override this parameter.

TransactionDetailsFeesNetworkFeeAmount String True

The cost associated with moving crypto from Stripe to the end consumer's wallet. e.g: for ETH, this is called 'gas fee', for BTC this is a 'miner's fee'.

TransactionDetailsFeesTransactionFeeAmount String True

Fee for processing the transaction.

TransactionDetailsLockWalletAddress Boolean False

Whether to lock the suggested wallet address. If destination tags are provided, this will also lock the destination tags.

TransactionDetailsSourceAmount String False

The amount of fiat we intend to onramp - excluding fees. When left null, a default value is computed if destination_amount is set. When set, setting source_amount is mutually exclusive with setting destination_amount (only one or the other is supported). We don’t support fractional pennies. If fractional minor units of a currency are passed in, it generates an error. Users can update the value in the onramp UI.

TransactionDetailsSourceCurrency String False

A fiat currency code. When left null, a default currency is selected based on user locale. When set, it must be one of the fiat currencies supported by onramp. Users can still select a different currency in the onramp UI.

TransactionDetailsTransactionId String True

The transaction id of the transaction that was sent to the customer's wallet. This will only be set if the sessions hits the status=fulfillment_complete and we've transferred the crypto successfully to the external wallet. e.g: https://etherscan.io/tx/0xc2573af6b3a18e6f7c0e1cccc187a483f61d72cbb421f7166970d3ab45731a95.

TransactionDetailsWalletAddress String True

The consumer's wallet address (where crypto will be sent to).

TransactionDetailsWalletAddressesBaseNetwork String False

The end customer's crypto wallet base address (for each network) to use for this transaction.

TransactionDetailsWalletAddressesBitcoin String False

The end customer's crypto wallet bitcoin address (for each network) to use for this transaction.

TransactionDetailsWalletAddressesDestinationTagsStellar String False

The end customer's crypto wallet stellar destination tag (for each network) to use for this transaction.

TransactionDetailsWalletAddressesEthereum String False

The end customer's crypto wallet ethereum address (for each network) to use for this transaction.

TransactionDetailsWalletAddressesOptimism String False

The end customer's crypto wallet optimism address (for each network) to use for this transaction.

TransactionDetailsWalletAddressesPolygon String False

The end customer's crypto wallet polygon address (for each network) to use for this transaction.

TransactionDetailsWalletAddressesSolana String False

The end customer's crypto wallet solana address (for each network) to use for this transaction.

TransactionDetailsWalletAddressesStellar String False

The end customer's crypto wallet stellar address (for each network) to use for this transaction.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
CustomerIpAddress String

The IP address of the customer the platform intends to onramp. If the user’s IP is in a region Stripe can’t support, Stripe returns an HTTP 400 with an appropriate error code.

KycDetails String

Pre-populate some of the required KYC information for the user if you’ve already collected it within your application.

CData Python Connector for Stripe

Customers

Create, update, delete, and query the available Customers in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Created<, <=, =, >, >=
Email=
MetadataAggregate=, !=
Name=, !=, CONTAINS
Phone=, !=, CONTAINS
TestClock=
AccountId=

You can select:

  • A customer by specifying their Id:
    SELECT * FROM Customers WHERE Id = 'cus_AA9uRhvt0xicaf'
  • Customers created after a specific date:
    SELECT * FROM Customers WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Customers WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Insert

To create a new customer:

INSERT INTO Customers (Email, Description) VALUES ('test@test.com', 'New account')

To apply a discount to a new customer, provide the coupon code as CouponId. The customer will have a discount applied on all recurring charges:

INSERT INTO Customers (Email, Description, CouponId) VALUES ('test@test.com', 'New account', 'testing')

Update

To modify a customer, specify the customer's Id:

UPDATE Customers SET Description = 'An updated account' WHERE Id = 'cus_85PEPye2wfN4u4'

Delete

To delete a customer, specify the customer's Id:

DELETE FROM Customers WHERE Id = 'cus_8AcjiGnVMz2sMr'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the customer.

AddressAggregate String False

The customer's address.

Balance Integer False

The current balance of the customer.

Created Datetime True

The time of creation.

Currency String True

The currency the customer can be charged in for recurring billing purposes.

DefaultSource String False

The Id of the default source attached to this customer.

Delinquent Boolean True

Whether the latest charge for the latest invoice of the customer has failed.

CouponId String False

The Id of the discount coupon.

Description String False

The customer description.The description field on customer endpoints has a maximum character length limit of 350.

Email String False

The email of the customer.

Livemode Boolean True

Whether the customer is in live mode.

MetadataAggregate String False

The set of key/value pairs that you can attach to a customer object.

Name String False

The customer's full name or business name.

Phone String False

The customer's phone number.

ShippingAggregate String True

The shipping information associated with the customer.

TaxExempt String False

Describes the customer's tax exemption status. One of none, exempt, or reverse. When set to reverse, invoice and receipt PDFs include the text 'Reverse charge'.

InvoicePrefix String False

The prefix for the customer used to generate unique invoice numbers.

NextInvoiceSequence Integer False

The suffix of the customer's next invoice number, e.g., 0001.

TestClock String False

ID of the test clock this customer belongs to.

PreferredLocales String False

The customer's preferred locales (languages), ordered by preference.

InvoiceSettingsCustomFieldsAggregate String False

Default custom fields to be displayed on invoices for this customer.

InvoiceSettingsDefaultPaymentMethod String False

ID of a payment method that's attached to the customer, to be used as the customer's default payment method for subscriptions and invoices.

InvoiceSettingsFooter String False

Default footer to be displayed on invoices for this customer.

TaxIdsAggregate String False

The customer's tax IDs.

DiscountId String True

The Id of the discount.

DiscountCheckoutSession String True

The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Will not be present for subscription mode.

DiscountCustomer String True

The ID of the customer associated with this discount.

DiscountStart Datetime True

If the subscription has a trial, the beginning of that trial.

DiscountEnd Datetime True

If the subscription has a trial, the end of that trial.

DiscountInvoice String True

The invoice that the discount's coupon was applied to, if it was applied directly to a particular invoice.

DiscountInvoiceItem String True

The invoice line item id that the discount's coupon was applied to if it was applied directly to a invoice line item.

DiscountPromotionCode String True

The promotion code applied to create this discount.The promotion code applied to create this discount.

DiscountSubscription String True

The subscription that this coupon is applied to, if it is applied to a particular subscription.

DiscountCouponCreatedAt Datetime True

The creation date.

DiscountCouponCurrency String True

If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.

DiscountCouponName String True

Name of the coupon displayed to customers on, for instance, invoices or receipts.

DiscountCouponDuration String True

One of forever, once, and repeating. Describes how long a customer who applies this coupon will get the discount.

DiscountCouponDurationInMonths Integer True

the number of months the coupon applies.

DiscountCouponAmountOff Integer True

Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.

DiscountCouponPercentOff Decimal True

Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.

DiscountCouponValid Boolean True

Taking account of the above properties, whether this coupon can still be applied to a customer.

DiscountCouponMaxRedemptions Integer True

Maximum number of times this coupon can be redeemed, in total, before it is no longer valid.

DiscountCouponRedeemBy Datetime True

Date after which the coupon can no longer be redeemed.

DiscountCouponTimesRedeemed Integer True

Number of times this coupon has been applied to a customer.

DiscountCouponObject String True

String representing the object's type. Objects of the same type share the same value.

DiscountCouponLiveMode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

DiscountCouponMetadataAggregate String True

Set of key-value pairs that you can attach to an object.

SourcesAggregate String True

The customer?s payment sources.

SubscriptionsAggregate String True

The customer’s current subscriptions, if any.

TaxAutomaticTax String True

Surfaces if automatic tax computation is possible given the current customer location information.

The allowed values are supported, not_collecting, unrecognized_location, failed.

TaxIPAddress String False

A recent IP address of the customer used for tax reporting and tax location inference.

TaxCountry String True

The customer's country as identified by Stripe Tax.

TaxState String True

The customer's state, county, province, or region as identified by Stripe Tax.

TaxSource String True

The data source used to infer the customer?s location

InvoiceSettingsRenderingOptionsAmountTaxDisplay String False

How line-item prices and amounts will be displayed with respect to tax on invoice PDFs.

The allowed values are exclude_tax, include_inclusive_tax.

InvoiceSettingsRenderingOptionsTemplate String False

ID of the invoice rendering template to be used for this customer’s invoices. If set, the template will be used on all invoices for this customer unless a template is set directly on the invoice.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get customers for.

TaxValidateLocation String

A flag that indicates when Stripe should validate the customer tax location. Defaults to deferred. Use only for INSERT and UPDATE.

The allowed values are deferred, immediately.

CData Python Connector for Stripe

Disputes

Query the available Disputes in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Created=, >, >=, <, <=
AccountId=
PaymentIntent=
Charge=

You can select:

  • A dispute by specifying its Id:
    SELECT * FROM Disputes WHERE Id = 'dp_12345678'
  • Disputes opened after a specific date:
    SELECT * FROM Disputes WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Disputes WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Update

To modify a dispute, specify the dispute Id:

UPDATE Disputes SET EvidenceCustomerName = 'Test User' WHERE Id = 'dp_12345678'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the dispute.

Currency String True

Three-letter ISO currency code representing the currency of the amount that was disputed.

EvidenceAccessActivityLog String False

Any server or activity logs showing proof that the customer accessed or downloaded the purchased digital product.

EvidenceBillingAddress String False

The billing address provided by the customer.

EvidenceCancellationPolicy String False

Your subscription cancellation policy, as shown to the customer.

EvidenceCancellationPolicyDisclosure String False

An explanation of how and when the customer was shown your refund policy prior to purchase.

EvidenceCancellationRebuttal String False

A justification for why the customer's subscription was not canceled.

EvidenceCustomerCommunication String False

The (ID of a file upload) Any communication with the customer that you feel is relevant to your case (for example emails proving that they received the product or service, or demonstrating their use of or satisfaction with the product or service).

EvidenceCustomerEmailAddress String False

The email address of the customer.

EvidenceCustomerName String False

The name of the customer.

EvidenceCustomerPurchaseIp String False

The IP address that the customer used when making the purchase.

EvidenceCustomerSignature String False

The (ID of a file upload) A relevant document or contract showing the customer's signature.

EvidenceDuplicateChargeDocumentation String False

The (ID of a file upload) Documentation for the prior charge that can uniquely identify the charge, such as a receipt, shipping label, work order, etc.

EvidenceDuplicateChargeExplanation String False

The explanation of the difference between the disputed charge and the prior charge that appears to be a duplicate.

EvidenceDuplicateChargeId String False

The Stripe ID for the prior charge which appears to be a duplicate of the disputed charge.

EvidenceProductDescription String False

The description of the product or service which was sold.

EvidenceReceipt String False

The (ID of a file upload) Any receipt or message sent to the customer notifying them of the charge.

EvidenceRefundPolicy String False

The (ID of a file upload) Your refund policy, as shown to the customer.

EvidenceRefundPolicyDisclosure String False

The documentation demonstrating that the customer was shown your refund policy prior to purchase.

EvidenceRefundRefusalExplanation String False

The justification for why the customer is not entitled to a refund.

EvidenceServiceDate String False

The date on which the customer received or began receiving the purchased service, in a clear human-readable format.

EvidenceServiceDocumentation String False

The (ID of a file upload) Documentation showing proof that a service was provided to the customer. This could include a copy of a signed contract, work order, or other form of written agreement.

EvidenceShippingAddress String False

The address to which a physical product was shipped. You should try to include as much complete address information as possible.

EvidenceShippingCarrier String False

The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc. If multiple carriers were used for this purchase, please separate them with commas.

EvidenceShippingDate String False

The date on which a physical product began its route to the shipping address, in a clear human-readable format.

EvidenceShippingDocumentation String False

The (ID of a file upload) Documentation showing proof that a product was shipped to the customer at the same address the customer provided to you. This could include a copy of the shipment receipt, shipping label, etc, and should show the full shipping address of the customer, if possible.

EvidenceShippingTrackingNumber String False

The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.

EvidenceUncategorizedFile String False

The (ID of a file upload) Any additional evidence or statements.

EvidenceUncategorizedText String False

Any additional evidence or statements.

EvidenceDetailsDueBy Datetime True

Date by which evidence must be submitted in order to successfully challenge dispute.

EvidenceDetailsHasEvidence Boolean True

Whether evidence has been saved for this dispute.

EvidenceDetailsPastDue Boolean True

Whether the last evidence submission was submitted past.

EvidenceDetailsSubmissionCount Integer True

The number of times the evidence has been submitted.

Amount Integer True

The disputed amount.

BalanceTransactionsAggregate String True

List of zero, one, or two balance transactions that show funds withdrawn and reinstated to your Stripe account as a result of this dispute.

Charge String True

The Id of the charge that was disputed.

Created Datetime True

The Date dispute was opened.

IsChargeRefundable Boolean True

If true, it is still possible to refund the disputed payment.

Livemode Boolean True

Tells if the dispute is in livemode.

Reason String True

The reason given by cardholder for dispute.

Status String True

The current status of dispute.

MetadataAggregate String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

Object String True

String representing the object's type. Objects of the same type share the same value.

PaymentIntent String True

ID of the PaymentIntent that was disputed.

PaymentMethodDetails String True

Additional dispute information specific to the payment method type.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get disputes for.

Submit Boolean

Whether to immediately submit evidence to the bank. If false, evidence is staged on the dispute. Staged evidence is visible in the API and Dashboard, and can be submitted to the bank by making another request with this attribute set to true

CData Python Connector for Stripe

InvoiceItems

Create, update, delete, and query the available invoices items in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
InvoiceId=
Customer=
AccountId=
Date<, >, >=, <, <=, =

You can select:

  • An invoice item by specifying its Id:
    SELECT * FROM InvoiceItems WHERE Id = 'or_12345678'
  • Invoice items for a given customer:
    SELECT * FROM InvoiceItems WHERE Customer = 'cus_12345678'
  • Invoice items created after a specific date:
    SELECT * FROM InvoiceItems WHERE Date > '2018-11-16 10:59:00.0'
    • Date can also be used twice to specify a range:
      SELECT * FROM InvoiceItems WHERE Date >= '2018-01-01 00:00:00.0' AND Date <= '2018-12-31 23:59:59.0'

Insert

To create a new invoice item, the Customer, Currency, and Amount fields are required:

INSERT INTO InvoiceItems (Customer, Currency, Amount) VALUES ('cus_NBs3z63zmfCJy1', 'USD', '225')

INSERT can be executed by specifying the DiscountsAggregate column. The columns that are not read-only can be inserted (optional). DiscountsAggregate is an aggregate column.

To insert using this column as Temp table:

INSERT INTO InvoiceItemDiscounts#TEMP (Coupon) VALUES ('Pqx2fHKt');

INSERT INTO InvoiceItems (Customer, Amount, Currency, DiscountsAggregate) VALUES ('cus_O20ZOZfrjjJeGj', 25000, 'USD', 'InvoiceItemDiscounts#TEMP');

To insert using this column as JSON:

INSERT INTO InvoiceItems (Customer, currency, MetadataAggregate, PeriodEnd, PeriodStart, DiscountsAggregate, PriceDataProduct, PriceDataCurrency) Values ('cus_PARXAI77xUsWw1', 'USD' ,'[{\"key\":\"test2\",\"type\":\"text\",\"test\":\"value\"}]', '2023-11-03 14:00:09.000000', '2023-11-03 14:00:08.000000','[{\"discount\":\"text\"},{\"discount\":\"value\"}]', 'product1', 'usd')

INSERT can be executed by specifying the TaxRatesAggregate column. The columns that are not read-only can be inserted (optional):

INSERT INTO InvoiceItems (Customer, Currency, Amount, TaxRatesAggregate) VALUES ('cus_9s6XKzkNRiz8i3', 'USD', 125614, '[\"txr_1OL7oy2eZvKYlo2CLylDtkiI\",\"txr_1OL7oo2eZvKYlo2CHliiOEZT\"]');

Update

To update an invoice item, specify an Id:

UPDATE InvoiceItems SET PeriodStart = '2023-11-03 14:00:06.000000', PeriodEnd = '2023-11-03 14:00:08.000000' WHERE Id = 'ii_1OIS6s2eZvKYlo2COIxLnMms'

Delete

To delete an invoice item, specify an Id:

DELETE from InvoiceItems WHERE Id = 'ii_1OP2II2eZvKYlo2CLc0nHFnR'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the invoice item.

InvoiceId String False

Invoices.Id

The Id of the invoice.

Amount Int False

The amount, in cents.

Customer String False

Customers.Id

The ID of the customer who will be billed when this invoice item is billed.

Currency String False

Three-letter ISO currency code, in lowercase. Must be a supported currency.

Date Datetime False

Time at which the object was created.

Description String False

An arbitrary string attached to the object. Often useful for displaying to users. The description field on invoice line items has a maximum character length limit of 500.

Discountable Boolean False

If true, discounts will apply to this line item. Always false for prorations.

LiveMode Boolean False

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

PeriodStart Datetime False

The start of the period.

PeriodEnd Datetime False

The end of the period which must be greater than or equal to the start.

PlanId String False

Unique identifier for the plan.

PlanAggregate String True

The plan of the subscription, if the line item is a subscription or a proration.

PriceId String False

Unique identifier for the price.

PriceAggregate String True

The price of the invoice item.

Proration Boolean True

Whether this is a proration.

Quantity Int False

The quantity of the subscription, if the line item is a subscription or a proration. [DEPRECATED] Use QuantityDecimal instead.

Subscription String False

The Id of the subscription the item pertains to.

SubscriptionItems String False

The subscription item that this invoice item has been created for, if any.

TestClock String False

ID of the test clock this invoice item belongs to.

UnitAmount Integer False

Unit amount (in the currency specified) of the invoice item.

UnitAmountDecimal Decimal False

Decimal value of Unit amount (in the currency specified) of the invoice item.

MetadataAggregate String False

The metadata object.

DiscountsAggregate String False

The discounts which apply to the invoice item.

TaxRatesAggregate String False

The tax rates which apply to the invoice item. When set, the default_tax_rates on the invoice do not apply to this invoice item.

QuantityDecimal String False

Non-negative decimal with at most 12 decimal places. The quantity of units for the line item.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
PriceDataProduct String

The ID of the product that this price will belong to. This is a psuedo column to support insert operation.

PriceDataCurrency String

Three-letter ISO currency code, in lowercase. Must be a supported currency. This is a psuedo column to support insert operation.

PriceDataTaxBehavior String

Only required if a default tax behavior was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed. This is a psuedo column to support insert operation.

PriceDataUnitAmount Int

A positive integer in cents (or 0 for a free price) representing how much to charge. This is a psuedo column to support insert operation.

PriceDataUnitAmountDecimal String

Same as unit_amount, but accepts a decimal value in cents with at most 12 decimal places. Only one of unit_amount and unit_amount_decimal can be set. This is a psuedo column to support insert operation.

TaxBehavior String

Only required if a default tax behavior was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed. This is a psuedo column to support insert operation.

TaxCode String

A tax code ID.

AccountId String

The Id of the connected account to get invoice line items for.

CData Python Connector for Stripe

Invoices

Create, update, delete, and query the available Invoices in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CustomerId=
CollectionMethod=
Upcoming=
AutoAdvance=
Currency=
Metadata=
Number=
ReceiptNumber=
Status=
Subscription=
Created<, >, >=, <, <=, =
Total<, >, >=, <, <=, =

You can select:

  • An invoice by specifying its Id:
    SELECT * FROM Invoices WHERE Id = 'or_12345678'
  • An invoice created after a specific date:
    SELECT * FROM Invoices WHERE Created > '2023-07-21 19:00:27.0'
    • Created can also be used twice to specify a range:
      SELECT * FROM Invoices WHERE Created >= '2023-01-01 00:00:00.0' AND Created <= '2023-12-31 23:59:59.0'
  • Invoices for a given customer:
    SELECT * FROM Invoices WHERE CustomerId = 'cus_12345678'
  • Invoices by AutoAdvance:
    SELECT * FROM Invoices WHERE AutoAdvance = True
  • Invoices by Subscription:
    SELECT * FROM Invoices WHERE Subscription = 'sub_12345678'

Insert

To create a new invoice, the CustomerId, CollectionMethod, DaysUntilDue, and PendingInvoiceItemsBehavior fields are required. CustomFieldsAggregate is an aggregate column.

To insert using this column:

INSERT INTO Invoices (CustomerId, CollectionMethod, DaysUntilDue, PendingInvoiceItemsBehavior, CustomFieldsAggregate) VALUES ('cus_MDxevmmMzKidZc', 'send_invoice', 30, 'exclude', '{\"name\":\"cf_test\",\"value\":\"mycfvalue\"}')

INSERT can be executed by specifying the AccountTaxRates column. The columns that are not read-only can be inserted (optional). AccountTaxRates expects TaxRateIds as an array of strings.

INSERT INTO Invoices(CustomerID, Subscription, AccountTaxRates) VALUES ('cus_9s6XKzkNRiz8i3', 'sub_1OHM2S2eZvKYlo2C8dDGfEdN', '[\"txr_1OL7oy2eZvKYlo2CLylDtkiI\",\"txr_1OL7oo2eZvKYlo2CHliiOEZT\"]');

INSERT can be executed by specifying the Discounts column. The columns that are not read-only can be inserted (optional). Discounts is an aggregate column.

To insert using this column:

INSERT INTO InvoiceDiscounts#TEMP (Coupon) VALUES ('dsocsdc')

INSERT INTO Invoices (CustomerId, Discounts) VALUES ('cus_Oscvdvdw3fcd', 'InvoiceDiscounts#TEMP')

Update

To update an invoice, specify an Id:

UPDATE Invoices SET DefaultTaxRates = '[\"txr_1OL7oy2eZvKYlo2CLylDtkiI\",\"txr_1OL7oo2eZvKYlo2CHliiOEZT\"]' WHERE Id='in_1OMk0u2eZvKYlo2CGzA4kQ5A'

Delete

To delete an invoice, specify the Id of the invoice. Only draft invoices can be deleted.

DELETE FROM Invoices WHERE Id = 'in_1MOZcISC4snQ4WkOaa5LZmkj'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the invoice.

CustomerId String False

Customers.Id

The Id of the customer to be billed.

AccountCountry String True

The country of the business associated with this invoice, most often the business creating the invoice.

AccountName String True

The name of the business associated with this invoice, most often the business creating the invoice.

AccountTaxRates String False

The account tax IDs associated with the invoice.

AmountDue Int True

Final amount due at this time for this invoice.

AmountPaid Int True

The amount, in cents, that was paid.

AmountRemaining Int True

The amount remaining, in cents, that is due.

Application String True

ID of the Connect Application that created the invoice.

ApplicationFeeAmount Int False

The fee in cents that is applied to the invoice and transferred to the application owner's Stripe account when the invoice is paid.

AttemptCount Int True

Number of payment attempts made for this invoice, from the perspective of the payment retry schedule.

Attempted Boolean True

Whether an attempt has been made to pay the invoice.

AutomaticTaxEnabled Boolean False

Whether Stripe automatically computes tax on this invoice.

AutomaticTaxStatus String True

The status of the most recent automated tax calculation for this invoice.

BillingReason String True

Indicates the reason why the invoice was created.

CollectionMethod String False

Either charge_automatically, or send_invoice. When charging automatically, Stripe will attempt to pay this invoice using the default source attached to the customer. When sending an invoice, Stripe will email this invoice to the customer with payment instructions.

The allowed values are charge_automatically, send_invoice.

Charge String True

ID of the latest charge generated for this invoice, if any.

AutoAdvance Boolean False

Controls whether Stripe will perform automatic collection of the invoice. When false, the invoice's state will not automatically advance without an explicit action.

Currency String False

Three-letter ISO currency code, in lowercase.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

Description String False

An arbitrary string attached to the object. Often useful for displaying to users. Referenced as 'memo' in the Dashboard.

DefaultPaymentMethod String False

ID of the default payment method for the invoice.

DefaultSource String False

ID of the default payment source for the invoice.

DefaultTaxRates String False

The tax rates applied to this invoice.

DiscountName String True

Name of the coupon.

DiscountAmount String True

Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.

CouponId String True

Id of the coupon.

Discounts String False

The discounts applied to the invoice.

DueDate Datetime False

The date on which payment for this invoice is due. This value is null for invoices where collection_method=charge_automatically.

EndingBalance Int True

Ending customer balance after the invoice is finalized.

InvoicePdf String True

The link to download the PDF for the invoice. If the invoice has not been finalized yet, this is null.

Footer String False

Footer displayed on the invoice.

LastFinalizationError String True

The error encountered during the previous attempt to finalize the invoice. This field is cleared when the invoice is successfully finalized.

HostedInvoiceUrl String True

The URL for the hosted invoice page, which allows customers to view and pay an invoice.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

MetadataAggregate String False

The set of key/value pairs that you can attach to a subscription object.

CustomFieldsAggregate String False

Custom Fields object.

NextPaymentAttempt Datetime True

The time at which payment will next be attempted.

Number String True

A unique, identifying string that appears on emails sent to the customer for this invoice.

OnBehalfOf String False

The account (if any) for which the funds of the invoice payment are intended.

Paid Boolean True

Whether payment was successfully collected for this invoice. An invoice can be paid (most commonly) with a charge or with credit from the customer's account balance.

PaidOutOfBand Boolean True

Returns true if the invoice was manually marked paid, returns false if the invoice hasn't been paid yet or was paid on Stripe.

PaymentIntent String True

The PaymentIntent associated with this invoice.

PaymentMethodOptions String True

Payment-method-specific configuration to provide to the invoice's PaymentIntent.

PaymentMethodTypes String False

The list of payment method types (e.g. card) to provide to the invoice's PaymentIntent.

PostPaymentCreditNotesAmount Int True

Total amount of all post-payment credit notes issued for this invoice.

PrePaymentCreditNotesAmount Int True

Total amount of all pre-payment credit notes issued for this invoice.

Quote String True

The quote Id this invoice was generated from.

PeriodEnd Datetime True

End of the usage period during which invoice items were added to this invoice.

PeriodStart Datetime True

Start of the usage period during which invoice items were added to this invoice.

ReceiptNumber String True

This is the transaction number that appears on email receipts sent for this invoice.

StartingBalance Int True

Starting customer balance before the invoice is finalized. If the invoice has not been finalized yet, this will be the current customer balance.

StatementDescriptor String False

If provided, each invoice created by this subscription will apply the tax rate, increasing the amount billed to the customer.

Status String True

The status of the invoice, one of draft, open, paid, uncollectible, or void. Instead of checking the forgiven field on an invoice, check for the uncollectible status. Instead of setting the forgiven field on an invoice, mark it as uncollectible.

The allowed values are draft, open, paid, uncollectible, void.

Subscription String False

The subscription that this invoice was prepared for, if any.

StatusTransitionsFinalizedAt Datetime True

The time that the invoice draft was finalized.

StatusTransitionsMarkedUncollectibleAt Datetime True

The time that the invoice was marked uncollectible.

StatusTransitionsPaidAt Datetime True

The time that the invoice was paid.

StatusTransitionsVoidedAt Datetime True

The time that the invoice was voided.

Subtotal Int True

Total of all subscriptions, invoice items, and prorations on the invoice before any invoice level discount or tax is applied.

Tax Int True

The amount of tax on this invoice. This is the sum of all the tax amounts on this invoice.

TestClock String True

ID of the test clock this invoice item belongs to.

Total Int True

Total after discounts and taxes.

TotalDiscountAmounts String True

The aggregate amounts calculated per discount across all line items.

TotalTaxAmounts String True

The aggregate amounts calculated per tax rate for all line items.

TransferDataAmount Int False

The amount that will be transferred to the destination account when the invoice is paid.

TransferDataDestination String False

The account where funds from the payment will be transferred to upon payment success.

WebhooksDeliveredAt Datetime True

Invoices are automatically paid or sent 1 hour after webhooks are delivered, or until all webhook delivery attempts have been exhausted.

AmountShipping Int True

This is the sum of all the shipping amounts.

ShippingDetails String True

Shipping details for the invoice. The Invoice PDF will use the shipping_details value if it is set, otherwise the PDF will render the shipping address from the customer.

ShippingCost String False

The details of the cost of shipping, including the ShippingRate applied on the invoice.

CustomerAddress String True

The customer's address.

CustomerEmail String True

The customer's email.

CustomerName String True

The customer's name.

CustomerPhone String True

The customer's phone number.

CustomerShipping String True

The customer's shipping information.

CustomerTaxExempt String True

The customer's tax exempt status.

CustomerTaxIds String True

The customer's tax Ids.

EffectiveAt Datetime False

The date when this invoice is in effect. When defined, this value replaces the system-generated 'Date of issue' printed on the invoice PDF and receipt.

Lines String False

The individual line items that make up the invoice.

AutomaticTaxLiabilityAccount String False

The connected account being referenced when type is account.

AutomaticTaxLiabilityType String False

Type of the account referenced.

The allowed values are account, self.

FromInvoiceAction String False

The relation between this invoice and the cloned invoice.

FromInvoiceInvoice String False

The invoice that was cloned. For insertion use the id of the invoice that will be cloned.

IssuerAccount String False

The connected account being referenced when IssuerType is account.

IssuerType String False

Type of the account referenced.

The allowed values are account, self.

RenderingAmountTaxDisplay String False

How line-item prices and amounts will be displayed with respect to tax on invoice PDFs.

The allowed values are exclude_tax, include_inclusive_tax.

RenderingPdfPageSize String False

Page size of invoice pdf. Options include a4, letter, and auto. If set to auto, page size will be switched to a4 or letter based on customer locale.

The allowed values are a4, auto, letter.

RenderingTemplate String False

ID of the rendering template that the invoice is formatted by.

RenderingTemplateVersion Integer False

Version of the rendering template that the invoice is using.

SubscriptionDetailsMetadata String True

Set of key-value pairs defined as subscription metadata when an invoice is created. Becomes an immutable snapshot of the subscription metadata at the time of invoice finalization. Note: This attribute is populated only for invoices created on or after June 29, 2023.

PaymentSettingsDefaultMandate String False

ID of the mandate to be used for this invoice. It must correspond to the payment method used to pay the invoice, including the invoice’s default_payment_method or default_source, if set.

SubtotalExcludingTax Integer True

The integer amount in cents representing the subtotal of the invoice before any invoice level discount or tax is applied. Item discounts are already incorporated.

TotalExcludingTax Integer True

The integer amount in cents representing the total amount of the invoice including all discounts but excluding all tax.

LatestRevision String True

The ID of the most recent non-draft revision of this invoice.

AutomaticTaxDisabledReason String True

If Stripe disabled automatic tax, this enum describes why.

The allowed values are finalization_requires_location_inputs, finalization_system_error.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
PendingInvoiceItemsBehavior String

For Insert this column is required

The allowed values are exclude, include.

DaysUntilDue Int

The number of days from which the invoice is created until it is due. Only valid for invoices where billing=send_invoice.

Forgive Boolean

Determines if invoice should be forgiven if source has insufficient funds to fully pay the invoice.

Source String

A payment source to be charged. The source must be the ID of a source belonging to the customer associated with the invoice being paid.

AccountId String

The Id of the connected account to get invoices for

CData Python Connector for Stripe

Meters

Create, update and retrieve the configured meters in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Status=

You can select:

  • A meter by specifying its Id:
    SELECT * FROM Meters WHERE Id = 'mtr_test_61SVnB524GIp5I1qJ41SI44T5qOYG17Q'
  • A meter by specifying its status:
    SELECT * FROM Meters WHERE Status = 'active'

Insert

To create a new meter, the DisplayName, EventName, and DefaultAggregationFormula fields are required. To insert using these columns:

INSERT INTO Meters (DefaultAggregationFormula, DisplayName, EventName) VALUES ('last', 'displayName', 'event_name');

A new meter can be created with custom customer mapping and value setting event payload keys.

INSERT INTO Meters (DefaultAggregationFormula, DisplayName, EventName,CustomerMappingEventPayloadKey, CustomerMappingType, ValueSettingsEventPayloadKey) VALUES ('count', 'insert4', 'insert4D', 'star', 'by_id', 'platinum');;
The values inserted in the event payload keys must be used to execute the CreateBillingMeterEvent stored procedure.

Update

To update an meter, specify an Id. Only DisplayName can be updated.

UPDATE Meters SET DisplayName = 'UpdatedName' WHERE Id = 'mtr_test_61SW9E6CAVwliacFb41SI44T5qOYGXZ2';

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the Meter object.

Object String True

String representing the object's type. Objects of the same type share the same value.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

CustomerMappingEventPayloadKey String False

The key in the meter event payload to use for mapping the event to a customer.

CustomerMappingType String False

The method for mapping a meter event to a customer.

The allowed values are by_id.

DefaultAggregationFormula String False

Specifies how events are aggregated.

The allowed values are count, last, sum.

DisplayName String False

The meter's name.

EventName String False

The name of the meter event to record usage for. Corresponds with the event_name field on meter events.

EventTimeWindow String False

The time window to pre-aggregate meter events for, if any.

The allowed values are day, hour.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Status String True

The meter's status.

The allowed values are active, inactive.

StatusTransitionsDeactivatedAt Datetime True

The time the meter was deactivated, if any. Measured in seconds since Unix epoch.

Updated Datetime True

Time at which the object was last updated. Measured in seconds since the Unix epoch.

ValueSettingsEventPayloadKey String False

The key in the meter event payload to use as the value for this meter.

CData Python Connector for Stripe

PaymentIntent

A PaymentIntent guides you through the process of collecting a payment from your customer.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Amount=, >, <, >=, <=, !=
Customer=, !=
Currency=, !=
MetadataAggregate=
Status=, !=
Created=, !=, >, >=, <, <=

You can select from the PaymentIntent table with the following queries:

SELECT * FROM PaymentIntent WHERE Id = 'pi_3MOZgsSC4snQ4WkO1git8c00'
SELECT * FROM PaymentIntent WHERE Customer = 'cus_N8rO0qc7j1SJJ9'
SELECT * from PaymentIntent where MetadataAggregate ='{\"key\":\"value\"}'

Insert

Amount and Currency are required to create a payment intent:

INSERT INTO PaymentIntent(Amount,Currency,MetadataAggregate) values (123,'usd','[{\"nsame\":\"asdsa\"}]')

Update

To update a payment intent, specify the Id column:

Update PaymentIntent set description ='andasdn' where id = 'pi_3OQAkKCZ8rn6qR6h1liiAZfx'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the object.

Amount Integer False

Amount intended to be collected by this PaymentIntent.

AmountDetailsTip String True

Amount Details Tip

AmountCapturable Integer True

Amount that can be captured from this PaymentIntent.

AmountReceived Integer True

Amount that was collected by this PaymentIntent.

ApplicationFeeAmount Integer False

The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owners Stripe account.

AutomaticPaymentMethodsEnabled Boolean False

Automatically calculates compatible payment methods

AutomaticPaymentMethodsAllowRedirects String False

Controls whether this PaymentIntent will accept redirect-based payment methods.

CanceledAt Datetime True

Populated when status is canceled, this is the time at which the PaymentIntent was canceled.

CancellationReason String True

Reason for cancellation of this PaymentIntent, either user-provided (duplicate, fraudulent, requested_by_customer, or abandoned) or generated by Stripe internally (failed_invoice, void_invoice, or automatic).

CaptureMethod String False

Controls when the funds will be captured from the customers account.

ClientSecret String True

The client secret of this PaymentIntent. Used for client-side retrieval using a publishable key.

ConfirmationMethod String False

Possible enum values-automatic, manual

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

Currency String False

Three-letter ISO currency code, in lowercase.

Application String True

ID of the Connect application that created the PaymentIntent.

Customer String False

ID of the Customer this PaymentIntent belongs to, if one exists.

LatestCharge String True

The latest charge created by this payment intent.

PaymentMethod String False

ID of the payment method used in this PaymentIntent.

TransferDataDestination String False

The account (if any) the payment will be attributed to for tax reporting, and where funds from the payment will be transferred to upon payment success.

OnBehalfOf String False

The account (if any) for which the funds of the PaymentIntent are intended.

Invoice String True

ID of the invoice that created this PaymentIntent, if it exists.

Review String True

ID of the review associated with this PaymentIntent, if any.

Description String False

An arbitrary string attached to the object. Often useful for displaying to users.

LastPaymentErrorCharge String True

For card errors, the ID of the failed charge.

LastPaymentErrorCode String True

For some errors that could be handled programmatically, a short string indicating the error code reported.

LastPaymentErrorDeclineCode String True

For some errors that could be handled programmatically, a short string indicating the error code reported.

LastPaymentErrorDocURL String True

A URL to more information about the error code reported.

LastPaymentErrorMessage String True

A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.

LastPaymentErrorParam String True

If the error is parameter-specific, the parameter related to the error. For example, you can use this to display a message near the correct form field.

LastPaymentErrorPaymentMethod String True

The PaymentMethod object for errors returned on a request involving a PaymentMethod.

LastPaymentErrorPaymentMethodType String True

If the error is specific to the type of payment method, the payment method type that had a problem. This field is only populated for invoice-related errors.

LastPaymentErrorType String True

The type of error returned. One of api_error, card_error, idempotency_error, or invalid_request_error

LiveMode Boolean True

Has the value true if the object exists in live mode or the value true if the object exists in test mode.

NextAction String True

If present, this property tells you what actions you need to take in order for your customer to fulfill a payment using the provided source.

Object String True

String representing the objects type. Objects of the same type share the same value.

PaymentMethodOptions String False

Payment-method-specific configuration for this PaymentIntent.

PaymentMethodTypes String False

The list of payment method types (e.g. card) that this PaymentIntent is allowed to use.

PaymentMethodConfigurationDetailsId String False

ID of the payment method configuration used.

PaymentMethodConfigurationDetailsParent String False

ID of the parent payment method configuration used.

ProcessingCard String True

If the PaymentIntents payment_method_types includes card, this hash contains the details on the processing state of the payment.

ProcessingType String True

Type of the payment method for which payment is in processing state, one of card.

ReceiptEmail String False

Set of key-value pairs that you can attach to an object.

MetadataAggregate String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

SetupFutureUsage String False

Indicates that you intend to make future payments with this PaymentIntents payment method.

ShippingAddressCity String False

City, district, suburb, town, or village..

ShippingAddressCountry String False

Two-letter country code

ShippingAddressline1 String False

Address line 1

ShippingAddressline2 String False

Address line 2

ShippingAddressPostalCode String False

ZIP or postal code.

ShippingAddressState String False

State, county, province, or region.

ShippingCarrier String False

The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.

ShippingName String False

Recipient name.

ShippingPhone String False

Recipient phone (including extension).

ShippingTrackingNumber String False

The tracking number for a physical product, obtained from the delivery service.

StatementDescriptor String False

For non-card charges, you can use this value as the complete description that appears on your customers statements.

StatementDescriptorSuffix String False

Provides information about a card payment that customers see on their statements.

Status String True

Status of this PaymentIntent, one of requires_payment_method, requires_confirmation, requires_action, processing, requires_capture, canceled, or succeeded. Read more about each PaymentIntent status.

TransferDataAmount Integer False

Amount intended to be collected by this PaymentIntent.

TransferGroup String False

A string that identifies the resulting payment as part of a group. See the PaymentIntents use case for connected accounts for details.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
Confirm Boolean

Set to true to attempt to confirm this PaymentIntent immediately. This column is supported in INSERT.

OffSession Boolean

Set to true to indicate that the customer isn't in your checkout flow during this payment attempt and can't authenticate. This parameter can only be used with confirm=true. This column is supported in INSERT.

ErrorOnRequiresAction Boolean

Set to true to fail the payment attempt if the PaymentIntent transitions into requires_action. Use this parameter for simpler integrations that don't handle customer actions, such as saving cards without authentication. This parameter can only be used with confirm=true. This column is supported in INSERT.

Mandate String

ID of the mandate that's used for this payment. This parameter can only be used with confirm=true. This column is supported in INSERT.

MandateDataCustomerAcceptanceType String

The type of customer acceptance information included with the Mandate. One of online or offline. This parameter can only be used with confirm=true. This column is supported in INSERT.

The allowed values are online, offline.

MandateDataCustomerAcceptanceAcceptedAt Datetime

The time at which the customer accepted the Mandate. This parameter can only be used with confirm=true. This column is supported in INSERT.

MandateDataCustomerAcceptanceOffline String

If this is a Mandate accepted offline, this hash contains details about the offline acceptance. This parameter can only be used with confirm=true. This column is supported in INSERT.

MandateDataCustomerAcceptanceOnlineIPAddress String

The IP address from which the Mandate was accepted by the customer. This parameter can only be used with confirm=true. This column is supported in INSERT.

MandateDataCustomerAcceptanceOnlineUserAgent String

The user agent of the browser from which the Mandate was accepted by the customer. This parameter can only be used with confirm=true. This column is supported in INSERT.

RadarOptionsSession String

A Radar Session is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments. This column is supported in INSERT.

ReturnURL String

The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. This parameter can only be used with confirm=true. This column is supported in INSERT.

CData Python Connector for Stripe

PaymentLinks

CData Python Connector for Stripe

PaymentMethodConfigurations

Create, update, and query Payment Method Configurations in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Application=

You can select:

  • All payment method configurations:
    SELECT * FROM PaymentMethodConfigurations
  • A payment method configuration by specifying its Id:
    SELECT * FROM PaymentMethodConfigurations WHERE Id = 'pmc_1Q3YXeATXQzBWNrl5zbq9orM'
  • Payment method configurations associated with an application:
    SELECT * FROM PaymentMethodConfigurations WHERE Application = 'ca_81Gw6dl5WN1GwS1VOKGC3vPUwwY7HvDD'

Insert

The Name column is required to create a new payment method configuration:

INSERT INTO PaymentMethodConfigurations (Name, CardDisplayPreferencePreference, ApplePayLaterDisplayPreferencePreference, PaypalDisplayPreferencePreference, GooglePayDisplayPreferencePreference) VALUES ('homelander', 'on', 'on', 'on', 'on')

Update

To update a payment method configuration, specify the Id:

UPDATE PaymentMethodConfigurations SET GooglePayDisplayPreferencePreference = 'off' WHERE Id='pmc_1Q3YXeATXQzBWNrl5zbq9orM'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the Payment Method Configuration.

Active Boolean False

Whether the configuration can be used for new payments.

Application String True

For child configs, the Connect application associated with the configuration.

IsDefault Boolean True

The default configuration is used whenever a payment method configuration is not specified.

Name String False

The configuration's name.

Parent String False

For child configs, the configuration's parent configuration.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Object String True

String representing the object's type. Objects of the same type share the same value.

AcssDebitAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

AcssDebitDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

AcssDebitDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

AcssDebitDisplayPreferenceValue String True

The effective display preference value.

AffirmAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

AffirmDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

AffirmDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

AffirmDisplayPreferenceValue String True

The effective display preference value.

AfterpayClearpayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

AfterpayClearpayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

AfterpayClearpayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

AfterpayClearpayDisplayPreferenceValue String True

The effective display preference value.

AlipayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

AlipayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

AlipayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

AlipayDisplayPreferenceValue String True

The effective display preference value.

AmazonPayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

AmazonPayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

AmazonPayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

AmazonPayDisplayPreferenceValue String True

The effective display preference value.

ApplePayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

ApplePayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

ApplePayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

ApplePayDisplayPreferenceValue String True

The effective display preference value.

AuBecsDebitAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

AuBecsDebitDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

AuBecsDebitDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

AuBecsDebitDisplayPreferenceValue String True

The effective display preference value.

BacsDebitAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

BacsDebitDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

BacsDebitDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

BacsDebitDisplayPreferenceValue String True

The effective display preference value.

BancontactAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

BancontactDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

BancontactDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

BancontactDisplayPreferenceValue String True

The effective display preference value.

BlikAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

BlikDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

BlikDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

BlikDisplayPreferenceValue String True

The effective display preference value.

BoletoAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

BoletoDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

BoletoDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

BoletoDisplayPreferenceValue String True

The effective display preference value.

CardAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

CardDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

CardDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

CardDisplayPreferenceValue String True

The effective display preference value.

CartesBancairesAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

CartesBancairesDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

CartesBancairesDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

CartesBancairesDisplayPreferenceValue String True

The effective display preference value.

CashappAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

CashappDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

CashappDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

CashappDisplayPreferenceValue String True

The effective display preference value.

CustomerBalanceAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

CustomerBalanceDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

CustomerBalanceDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

CustomerBalanceDisplayPreferenceValue String True

The effective display preference value.

EpsAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

EpsDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

EpsDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

EpsDisplayPreferenceValue String True

The effective display preference value.

FpxAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

FpxDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

FpxDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

FpxDisplayPreferenceValue String True

The effective display preference value.

GiropayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

GiropayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

GiropayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

GiropayDisplayPreferenceValue String True

The effective display preference value.

GooglePayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

GooglePayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

GooglePayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

GooglePayDisplayPreferenceValue String True

The effective display preference value.

GrabpayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

GrabpayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

GrabpayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

GrabpayDisplayPreferenceValue String True

The effective display preference value.

IdealAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

IdealDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

IdealDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

IdealDisplayPreferenceValue String True

The effective display preference value.

JcbAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

JcbDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

JcbDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

JcbDisplayPreferenceValue String True

The effective display preference value.

KlarnaAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

KlarnaDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

KlarnaDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

KlarnaDisplayPreferenceValue String True

The effective display preference value.

KonbiniAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

KonbiniDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

KonbiniDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

KonbiniDisplayPreferenceValue String True

The effective display preference value.

LinkAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

LinkDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

LinkDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

LinkDisplayPreferenceValue String True

The effective display preference value.

MobilepayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

MobilepayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

MobilepayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

MobilepayDisplayPreferenceValue String True

The effective display preference value.

MultibancoAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

MultibancoDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

MultibancoDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

MultibancoDisplayPreferenceValue String True

The effective display preference value.

OxxoAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

OxxoDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

OxxoDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

OxxoDisplayPreferenceValue String True

The effective display preference value.

P24Available Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

P24DisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

P24DisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

P24DisplayPreferenceValue String True

The effective display preference value.

PaynowAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

PaynowDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

PaynowDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

PaynowDisplayPreferenceValue String True

The effective display preference value.

PaypalAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

PaypalDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

PaypalDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

PaypalDisplayPreferenceValue String True

The effective display preference value.

PromptpayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

PromptpayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

PromptpayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

PromptpayDisplayPreferenceValue String True

The effective display preference value.

RevolutPayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

RevolutPayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

RevolutPayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

RevolutPayDisplayPreferenceValue String True

The effective display preference value.

SepaDebitAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

SepaDebitDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

SepaDebitDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

SepaDebitDisplayPreferenceValue String True

The effective display preference value.

SofortAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

SofortDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

SofortDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

SofortDisplayPreferenceValue String True

The effective display preference value.

SwishAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

SwishDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

SwishDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

SwishDisplayPreferenceValue String True

The effective display preference value.

TwintAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

TwintDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

TwintDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

TwintDisplayPreferenceValue String True

The effective display preference value.

UsBankAccountAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

UsBankAccountDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

UsBankAccountDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

UsBankAccountDisplayPreferenceValue String True

The effective display preference value.

WechatPayAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

WechatPayDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

WechatPayDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

WechatPayDisplayPreferenceValue String True

The effective display preference value.

ZipAvailable Boolean True

Whether this payment method may be offered at checkout. True if display_preference is on and the payment method’s capability is active.

ZipDisplayPreferenceOverridable Boolean True

For child configs, whether or not the account’s preference will be observed. If false, the parent configuration’s default is used.

ZipDisplayPreferencePreference String False

The account's display preference.

The allowed values are none, off, on.

ZipDisplayPreferenceValue String True

The effective display preference value.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
ApplePayLaterDisplayPreferencePreference String

The account’s preference for whether or not to display this payment method. Used only in INSERT and UPDATE operations.

The allowed values are none, off, on.

CData Python Connector for Stripe

PaymentMethods

Create, update and query the available PaymentMethods in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CustomerId=
Type=
AccountId=

You can select from the PaymentMethods table with the following queries:

SELECT * FROM PaymentMethods WHERE Id = 'src_1MTIO2SC4snQ4WkOadEObFqk'
SELECT * FROM PaymentMethods WHERE CustomerId = 'cus_N8rO0qc7j1SJJ9'
SELECT * FROM PaymentMethods WHERE CustomerId = 'cus_N8rO0qc7j1SJJ9' AND Type = 'card'
SELECT * FROM PaymentMethods WHERE CustomerId = 'cus_N8rO0qc7j1SJJ9' AND AccountId = 'acct_1MGcyqSC4snQ4WkO'

Insert

To create a new payment method, at least Type is required:

INSERT INTO PaymentMethods (Type) VALUES ('affirm')
INSERT INTO PaymentMethods (Type, CardExpMonth, CardExpYear, CardNumber, CardCVC, BillingDetailsAddressCity, BillingDetailsAddressCountry, BillingDetailsAddressLine1, BillingDetailsAddressLine2, BillingDetailsAddressPostalCode, BillingDetailsAddressState, BillingDetailsEmail, BillingDetailsName, BillingDetailsPhone) VALUES ('card', '11', '24', '4242424242424242', '531', 'Bengaluru', 'IN', 'Neeladri', 'Ecity', '5601001', 'Karnataka', 'mangalyogesh.22@gmail.com', 'YOEGSH MANGAL', '7728062870')

Update

To modify a payment method, specify the payment method's Id:

UPDATE PaymentMethods SET BillingDetailsAddressCity = 'Jaipur' WHERE Id = 'src_1MSDXZSC4snQ4WkOUER8uzmc'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the Payment Method.

CustomerId String True

The Id of the Customer.

BillingDetailsAddressCity String False

City, district, suburb, town, or village name for Billing Address.

BillingDetailsAddressCountry String False

2-letter country code for Billing Address.

BillingDetailsAddressLine1 String False

Address line 1 for Billing Address.

BillingDetailsAddressLine2 String False

Address line 2 for Billing Address.

BillingDetailsAddressPostalCode String False

ZIP or postal code for Billing Address.

BillingDetailsAddressState String False

State, county, province, or region for Billing Address.

BillingDetailsEmail String False

Email address for Billing Address.

BillingDetailsName String False

Full name for Billing Address.

BillingDetailsPhone String False

Billing phone number (including extension).

MetadataAggregate String False

Set of key-value pairs that you can attach to an object.

Type String False

The type of the PaymentMethod. The type of PaymentMethods supported are: acss_debit, affirm, afterpay_clearpay, alipay, au_becs_debit, bacs_debit, bancontact, blik, boleto, card, customer_balance, eps, fps, giropay, grabpay, ideal, klarna, konbini, oxxo, p24, paynow, pix, promptpay, sepa_debit, sofort, us_bank_account, wechat_pay, zip.

The allowed values are acss_debit, affirm, afterpay_clearpay, alipay, au_becs_debit, bacs_debit, bancontact, blik, boleto, card, card_present, cashapp, customer_balance, eps, fpx, giropay, grabpay, ideal, klarna, konbini, link, oxxo, p24, paynow, paypal, pix, promptpay, revolut_pay, sepa_debit, sofort, us_bank_account, wecha_pay, zip.

Object String True

String representing the object type. Objects of the same type share the same value.

AcssDebitBankName String True

Bank name for the payment method type acss_debit.

AcssDebitFingerprint String True

Uniquely identifies this particular bank account for the payment method type acss_debit.

AcssDebitInstitutionNumber String False

Institution number of the customer bank.

AcssDebitLast4 String True

Last four digits of the bank account number for the payment method type acss_debit.

AcssDebitTransitNumber String False

Transit number of the customer bank.

Affirm String False

This hash contains details about the Affirm payment method.

AfterpayClearpay String False

This hash contains details about the AfterpayClearpay payment method.

Alipay String False

This hash contains details about the Alipay payment method.

AuBecsDebitBsbNumber String False

Six-digit number identifying bank and branch associated with this bank account.

AuBecsDebitFingerprint String True

Uniquely identifies this particular bank account for the payment method type au_becs_debit.

AuBecsDebitLast4 String True

Last four digits of the bank account number for the payment method type au_becs_debit.

BacsDebitSortCode String False

Sort code of the bank account(e.g., 10-20-30). for the payment method type bacs_debit.

BacsDebitLast4 String True

Uniquely identifies this particular bank account for the payment method type bacs_debit.

BacsDebitFingerprint String True

Last four digits of the bank account number for the payment method type bacs_debit.

Bancontact String False

This hash contains details about the Bancontact payment method.

Blik String False

This hash contains details about the blik payment method.

CardBrand String True

Card brand. Can be amex, diners, discover, jcb, mastercard, unionpay, visa, or unknown.

CardChecksAddressLine1Check String True

If a address line1 was provided, results of the check, one of pass, fail, unavailable, or unchecked.

CardChecksAddressPostalCodeCheck String True

If a address postal code was provided, results of the check, one of pass, fail, unavailable, or unchecked.

CardChecksCvcCheck String True

If a CVC was provided, results of the check, one of pass, fail, unavailable, or unchecked.

CardCountry String True

Two-letter ISO code representing the country of the card.

CardExpMonth Integer False

Two-digit number representing the card expiration month.

CardExpYear Integer False

Four-digit number representing the card expiration year.

CardFingerprint String True

Uniquely identifies this particular card number.

CardFunding String True

Card funding type. Can be credit, debit, prepaid, or unknown.

CardGeneratedFrom String True

Details of the original PaymentMethod that created this object.

CardLast4 String True

The last four digits of the card.

CardNetworksAvailable String True

All available networks for the card.

CardNetworksPreferred String True

The preferred network for the card.

CardThreeDSecureUsageSupported Boolean True

Whether 3D Secure is supported on this card.

CardWallet String True

If this Card is part of a card wallet, this contains the details of the card wallet.

CashAppBuyerId String True

A unique and immutable identifier assigned by Cash App to every buyer.

CashAppCashTag String True

A public identifier for buyers using Cash App.

CustomerBalance String False

This hash contains details about the CustomerBalance payment method.

EpsBank String False

The customer bank. EPS is an Austria-based bank redirect payment method.

FpxAccountHolderType String True

Account holder type for FPX bank. FPX is a Malaysia-based bank redirect payment method.

FpxBank String False

The customer bank name and it should be Malaysia-based bank.

GIROPAY String False

This hash contains details about the Giropay payment method.

Grabpay String False

This hash contains details about the grabpay payment method.

IdealBank String False

The customer bank name and it is a Netherlands-based bank redirect payment method.

IdealBic String True

Bank Identifier code for Ideal Bank.

Konbini String False

This hash contains details about the konbini payment method.

Link String False

This hash contains details about the link payment method.

Oxxo String False

This hash contains details about the oxxo payment method.

P24Bank String False

The customer bank. P24 stands for Przelewy24 is a bank redirect payment method used in Poland.

Paynow String False

This hash contains details about the paynow payment method.

Paypal String False

This hash contains details about the paypal payment method.

Pix String False

This hash contains details about the pix payment method.

Promptpay String False

This hash contains details about the promptpay payment method.

RevolutPay String False

This hash contains details about the RevolutPay payment method.

SepaDebitBankCode String True

Bank Code for SepaDebit.

SepaDebitBranchCode String True

Branch Code for SepaDebit.

SepaDebitCountry String True

Country for SepaDebit.

SepaDebitFingerprint String True

Fingerprint for SepaDebit.

SepaDebitGeneratedFromCharge String True

SepaDebit generated from Charge.

SepaDebitGeneratedFromSetupAttempt String True

SepaDebit generated from setup attempt.

SepaDebitLast4 String True

Last 4 digits of IBAN of the Bank Account.

SofortCountry String False

Two-letter ISO code representing the country the bank account is located in. Sofort is a bank redirect payment method used in Europe.

UsBankAccountAccountHolderType String False

Account holder type: individual or company.

UsBankAccountAccountType String False

Account type: checkings or savings. Defaults to checking if omitted.

UsBankAccountBankName String True

Bank name.

UsBankAccountFinancialConnectionsAccount String False

The ID of a Financial Connections Account to use as a payment method.

UsBankAccountFingerprint String True

Fingerprint of UsBank Account.

UsBankAccountLast4 String True

Last4 digits of the UsBank Account number.

UsBankAccountNetworksPreferred String True

Contains information about US bank account networks that can be used. The preferred network.

UsBankAccountNetworksSupported String True

Contains information about US bank account networks that can be used. All supported networks.

UsBankAccountRoutingNumber String False

Routing number of the bank account.

UsBankAccountStatusDetails String True

Contains information about the future reusability of this PaymentMethod.

WechatPay String False

This hash contains details about the WechatPay payment method.

Zip String False

This hash contains details about the Zip payment method.

Created Timestamp True

Time at which the object was created.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

PaypalPayerId String True

PayPal account PayerID. PayPal account PayerID.

PaypalPayerEmail String True

Owner's email. Values are provided by PayPal directly (if supported) at the time of authorization or settlement.

RadarOptionsSession String False

A Radar Session is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.

CardDisplayBrand String True

The brand to use when displaying the card, this accounts for customer’s brand choice on dual-branded cards. Can be american_express, cartes_bancaires, diners_club, discover, eftpos_australia, interac, jcb, mastercard, union_pay, visa, or other and may contain more values in the future.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
CardNumber String

Card Number.

CardCVC String

Card CVC number.

AcssDebitAccountNumber String

Customer bank account number. Pre-authorized debit payments are used to debit Canadian bank accounts through the Automated Clearing Settlement System (ACSS).

AuBecsDebitAccountNumber String

The account number for the bank account. BECS Direct Debit is used to debit Australian bank accounts through the Bulk Electronic Clearing System (BECS).

BacsDebitAccountNumber String

Account number of the bank account that the funds will be debited from. Bacs Direct Debit is used to debit UK bank accounts.

BoletoTaxId String

The tax ID of the customer. Boleto is a voucher-based payment method used in Brazil.

KlarnaDobDay String

The day of birth, between 1 and 31 of Customer for paymentmethod type klarna.

KlarnaDobMonth String

The month of birth, between 1 and 12 of Customer for paymentmethod type klarna.

KlarnaDobYear String

The four-digit year of birth of Customer for paymentmethod type klarna.

SepaDebitIban String

IBAN of the bank account. SEPA Direct Debit is used to debit bank accounts within the Single Euro Payments Area (SEPA) region.

UsBankAccountAccountNumber String

Account number of the bank account. ACH Direct Debit is used to debit US bank accounts through the Automated Clearing House (ACH) payments system.

AccountId String

The Id of the connected account.

CData Python Connector for Stripe

Payouts

Query the available Payouts in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Destination=
Status=
AccountId=
ArrivalDate<, <=, =, >, >=
Created<, <=, =, >, >=

You can select from the Payouts table with the following queries:

SELECT * FROM Payouts WHERE Status = 'paid'
SELECT * FROM Payouts WHERE Destination = 'ba_1LylJA2eZvKYlo2CFndhyBc6'
SELECT * FROM Payouts WHERE Created > '2024-01-01'
SELECT * FROM Payouts WHERE ArrivalDate < '2024-08-01'

You can select from the Payouts table with the following queries:

SELECT * FROM Payouts WHERE Status = 'paid'
SELECT * FROM Payouts WHERE Destination = 'ba_1LylJA2eZvKYlo2CFndhyBc6'
SELECT * FROM Payouts WHERE Created > '2024-01-01'
SELECT * FROM Payouts WHERE ArrivalDate < '2024-08-01'
SELECT * FROM Payouts WHERE Currency = 'usd'
SELECT * FROM Payouts WHERE Status = 'failed'

Insert

To create a new payout amount, Currency is required. The columns that are not read-only can be inserted optionally.

INSERT INTO Payouts(amount, currency, description, Metadata, StatementDescriptor, Destination, `Method`, sourcetype) VALUES ('20','usd','Weekly commision payout', '[{"order_id":"15426"}]','Commission Payment','ba_1LylJA2eZvKYlo2CFndhyBc6','standard','bitcoin_receiver' )

Update

Update can be executed by specifying Id. The columns that are not read-only can be updated optionally.

UPDATE Payouts SET Metadata='[{\"order_id\":\"25869633\"}]' where id ='po_1OPRUn2eZvKYlo2COA33LQ2S'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the payout.

Object String True

String representing the type of the object.

Amount Integer False

Amount (in cents) to be transferred to the bank account or debit card.

ArrivalDate Datetime True

Date the payout is expected to arrive in the bank. .

BalanceTransaction String True

BalanceTransactions.Id

The Id of the balance transaction that describes the impact of this payout on the account balance.

Created Datetime True

Time of creation.

Currency String False

Three-letter ISO currency code.

Description String False

The payout description.

Destination String False

Accounts.Id

The Id of the bank account or card the payout was sent to.

FailureBalanceTransaction String True

If the payout failed or was canceled, this will be the ID of the balance transaction that reversed the initial balance transaction.

FailureCode String True

Error code explaining reason for payout failure if available.

FailureMessage String True

Error code explaining reason for payout failure if available.

Metadata String False

Set of key/value pairs that you can attach to an object.

Method String False

TThe method used to send this payout. instant is only supported for payouts to debit cards.

The allowed values are standard, instant.

SourceType String False

The source balance this payout came from.

The allowed values are card, bank_account, bitcoin_receiver, alipay_account, fpx.

StatementDescriptor String False

Extra information about a payout to be displayed on the bank statement.

Status String True

Current status of the payout.

The allowed values are paid, pending, in_transit, canceled, failed.

Type String True

Can be bank_account or card.

The allowed values are bank_account, card.

Automatic Boolean True

Returns true if the payout was created by an automated payout schedule, and false if it was requested manually.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

OriginalPayout String True

If the payout reverses another, this is the ID of the original payout.

ReversedBy String True

If the payout was reversed, this is the ID of the payout that reverses this payout.

ReconciliationStatus String True

If completed, you can use the Balance Transactions API to list all balance transactions that are paid out in this payout.

The allowed values are completed, in_progress, not_applicable.

TraceIdStatus String True

When payout.status is pending or in_transit, this will be pending. When the payout transitions to paid, failed, or canceled, this status will become supported or unsupported shortly after in most cases. In some cases, this may appear as pending for up to 10 days after arrival_date until transitioning to supported or unsupported.

The allowed values are pending, supported, unsupported.

TraceIdValue String True

The trace ID value if trace_id.status is supported, otherwise nil.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get payouts for

CData Python Connector for Stripe

Persons

Usage information for the operation Persons.rsd.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
Account=
RelationshipDirector=
RelationshipExecutive=
RelationshipOwner=
RelationshipLegalGuardian=
RelationshipRepresentative=

The rest of the filter is executed client-side within the connector.

You can select from the Persons table with the following queries:

SELECT * FROM Persons WHERE Id = '123124' AND Account = 'acc_wr3r23r'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r' AND RelationshipDirector = 'true'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r' AND RelationshipExecutive = 'true'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r' AND RelationshipOwner = 'true'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r' AND RelationshipPercentOwnership = '35.5'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r' AND RelationshipRepresentative = '35'
SELECT * FROM Persons WHERE Account = 'acc_wr3r23r' AND RelationshipTitle = 'Owner'

Insert

To add new details to the Stripe account, an Account value is required:

INSERT INTO Persons(Account, RegisteredAddressCity, RegisteredAddressCountry, RegisteredAddressLine1, RegisteredAddressLine2, RegisteredAddressPostalCode, RegisteredAddressState) values('acct_1OOtmyGdCIl7jorZ','jaipur','US','TestLine1','TestLine2','321001','Rajasthan')

Update

To modify details, specify the person's Id and associated Account Id:

UPDATE Persons SET RelationshipDirector='false' WHERE Id='123124' AND Account = 'acc_wr3r23r'

Delete

To delete details, specify the person's Id:

DELETE FROM Persons WHERE Id='123124' and AccountId='123445'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the person.

Account [KEY] String False

The mode of the Checkout Session.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

DobDay Integer False

The day of birth, between 1 and 31.

DobMonth Integer False

The month of birth, between 1 and 12.

DobYear Integer False

The four-digit year of birth.

Email String False

The person's email address.

FirstName String False

The person's first name.

LastName String False

The person's last name.

MaidenName String False

The person’s maiden name.

FutureRequirementsAlternatives String True

Fields that are due and can be satisfied by providing the corresponding alternative fields instead.

FutureRequirementsCurrentlyDue String True

Fields that need to be collected to keep the person's account enabled.

FutureRequirementsErrors String True

Fields that are currently_due and need to be collected again because validation or verification failed.

FutureRequirementsEventuallyDue String True

Fields that need to be collected, assuming all volume thresholds are reached.

FutureRequirementsPastDue String True

Fields that were not collected by the account's requirements.current_deadline.

FutureRequirementsPendingVerification String True

Fields that may become required, depending on the results of verification or review.

IdNumber String False

The Id number.

IdNumberProvided Boolean True

Whether the person's id_number was provided.

IdNumberSecondaryProvided Boolean True

Whether the person’s id_number_secondary was provided.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

RelationshipDirector Boolean False

Whether the person is a director of the account's legal entity.

RelationshipExecutive Boolean False

Whether the person has significant responsibility to control, manage, or direct the organization.

RelationshipLegalGuardian Boolean False

Whether the person is the legal guardian of the account’s representative.

RelationshipOwner Boolean False

Whether the person is an owner of the account's legal entity.

RelationshipPercentOwnership Double False

The percent owned by the person of the account's legal entity.

RelationshipRepresentative Boolean False

Whether the person is authorized as the primary representative of the account.

RelationshipTitle String False

The person's title

RequirementsAlternatives String True

Fields that are due and can be satisfied by providing the corresponding alternative fields instead.

RequirementsCurrentlyDue String True

Fields that need to be collected to keep the person's account enabled.

RequirementsErrors String True

Fields that are currently_due and need to be collected again because validation or verification failed.

RequirementsEventuallyDue String True

Fields that need to be collected assuming all volume thresholds are reached.

RequirementsPastDue String True

Fields that were not collected by the account's requirements.current_deadline.

RequirementsPendingVerification String True

Fields that may become required depending on the results of verification or review. If verification fails, these fields move to eventually_due or currently_due.

SsnLas4Provided Boolean True

Whether the last four digits of the person's Social Security Number have been provided (U.S. only).

VerificationAdditionalDocumentBack String False

The back of an Id returned by a file upload with a purpose value of identity_document.

VerificationAdditionalDocumentDetails String True

A user-displayable string describing the verification state of this document.

VerificationAdditionalDocumentDetailsCode String True

A machine-readable code specifying the verification state for this document.

VerificationAdditionalDocumentFront String False

The front of an Id returned by a file upload with a purpose value of identity_document.

VerificationDetails String True

A user-displayable string describing the verification state for the person.

VerificationDetailsCode String True

A machine-readable code specifying the verification state for the person.

VerificationDocumentBack String False

The back of an Id returned by a file upload with a purpose value of identity_document.

VerificationDocumentDetails String True

A user-displayable string describing the verification state of this document.

VerificationDocumentDetailsCode String True

A machine-readable code specifying the verification state for this document.

VerificationDocumentFront String False

The front of an Id returned by a file upload with a purpose value of identity_document.

VerificationStatus String True

The state of verification for the person. Possible values are unverified, pending, or verified.

AddressCity String False

The City of the person.

AddressCountry String False

The Country of the person.

AddressLine1 String False

The Address line 1.

AddressLine2 String False

The Address line 2.

AddressPostalCode String False

The Postal code of the person.

AddressState String False

The State of the person.

Phone String False

The person’s phone number.

AdditionalTosAcceptancesAccountDate Datetime False

Details on the legal guardian’s acceptance of the required Stripe agreements. The Unix timestamp marking when the account representative accepted the service agreement.

AdditionalTosAcceptancesAccountIp String False

Details on the legal guardian’s acceptance of the required Stripe agreements. The IP address from which the account representative accepted the service agreement.

AdditionalTosAcceptancesAccountUserAgent String False

Details on the legal guardian’s acceptance of the required Stripe agreements. The user agent of the browser from which the account representative accepted the service agreement.

Gender String False

The person’s gender (International regulations require either “male” or “female”).

Nationality String False

The country where the person is a national.

PoliticalExposure String False

Indicates if the person or any of their representatives, family members, or other closely related persons, declares that they hold or have held an important public job or function, in any jurisdiction.

The allowed values are existing, none.

RegisteredAddressCity String False

The person’s registered address. The City of the person.

RegisteredAddressCountry String False

The person’s registered address. The Country of the person.

RegisteredAddressLine1 String False

The person’s registered address. The Address line 1.

RegisteredAddressLine2 String False

The person’s registered address. The Address line 2.

RegisteredAddressPostalCode String False

The person’s registered address. The Postal code of the person.

RegisteredAddressState String False

The person’s registered address. The State of the person.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
DocumentsCompanyAuthorizationFiles String

Documents that may be submitted to satisfy various informational requests. One or more documents that demonstrate proof that this person is authorized to represent the company.

DocumentsPassportFiles String

Documents that may be submitted to satisfy various informational requests. One or more documents showing the person’s passport page with photo and personal data.

DocumentsVisaFiles String

Documents that may be submitted to satisfy various informational requests. One or more documents showing the person’s visa required for living in the country where they are residing.

FullNameAliases String

A list of alternate names or aliases that the person is known by.

IdNumberSecondary String

The person’s secondary ID number, as appropriate for their country, will be used for enhanced verification checks.

PersonToken String

A person token, used to securely provide details to the person.

SsnLas4 String

The last 4 digits of the person's Social Security Number. This is a psuedo column to add support for insert and update.

CData Python Connector for Stripe

Plans

Create, update, delete, and query the available Plans in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Active=
AccountId=
ProductId=
Created<, >, >=, <, <=, =

You can select:

  • A plan by specifying its Id:
    SELECT * FROM Plans WHERE Id = 'gold'
  • Plans created after a specific date:
    SELECT * FROM Plans WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Plans WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Insert

The ProductId or ProductName, Currency, and Interval columns are required to create a new plan:

INSERT INTO Plans (Active, AggregateUsage, BillingScheme, Currency, Nickname, ProductName, ProductActive, ProductStatementDescriptor, ProductTaxCode, ProductUnitLabel, [Interval], IntervalCount, TrialPeriodDays, UsageType, Tiersmode, TiersAggregate, MetadataAggregate) values (true,'last_ever','tiered','aud','Test2','MYNEWPRODUCT6',true,'Example statement','txcd_30040003','TestLabel','week',3,15,'metered','volume','[{\"up_to\":\"inf\",\"flat_amount_decimal\":\"356\",\"unit_amount_decimal\":\"785\"}]','[{\"Test\":\"123\",\"Test1\":\"456\",\"Test2\":\"789\"}]'

Note: There are multiple ways to create a new plan. For more details, refer to Stripe's API documentation.

Update

To update a plan, specify the Id:

UPDATE Plans SET Active = false, MetadataAggregate = '[{\"order_id\":\"124\"}]', Nickname = 'updatednickname', TrialPeriodDays = 25, ProductId = 'prod_PDnk45sKPO58Cy' where Id = 'plan_PDnshHrzdDXeUE'

Delete

To delete a plan, specify the Id:

DELETE FROM Plans WHERE Id = '123easdas5'

Columns

Name Type ReadOnly References Description
Id [KEY] String False

The Id of the plan.

Active Boolean False

Whether the plan can be used for new purchases.

Amount Integer False

The amount in cents to be charged on the interval specified.

AmountDecimal Decimal False

The decimal value of amount in cents to be charged on the interval specified.

UnitAmount Decimal True

The amount in cents to be charged on the interval specified.

AggregateUsage String False

Specifies a usage aggregation strategy for plans of usage_type=metered.

The allowed values are last_during_period, last_ever, max, sum.

BillingScheme String False

Describes how to compute the price per period. Either per_unit or tiered.

The allowed values are per_unit, tiered.

Created Datetime True

The creation date.

Currency String False

Currency in which subscription will be charged.

Nickname String False

A brief description of the plan, hidden from customers.

ProductId String False

The product whose pricing this plan determines.

ProductName String False

The product whose pricing this plan determines. The product’s name, meant to be displayable to the customer.

ProductActive Boolean False

The product whose pricing this plan determines. Whether the product is currently available for purchase. Defaults to true.

ProductMetadata String False

The product whose pricing this plan determines. Set of key-value pairs that you can attach to an object.

ProductStatementDescriptor String False

The product whose pricing this plan determines. An arbitrary string to be displayed on your customer’s credit card or bank statement.

ProductTaxCode String False

The product whose pricing this plan determines. A tax code ID.

ProductUnitLabel String False

The product whose pricing this plan determines. A label that represents units of this product.

LiveMode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Interval String False

One of day, week, month or year. The frequency with which a subscription should be billed.

The allowed values are day, week, month, year.

IntervalCount Integer False

The number of intervals (specified in the interval property) between each subscription billing. For example, interval=month and interval_count=3 bills every 3 months.

TrialPeriodDays Integer False

Number of trial period days granted when subscribing a customer to this plan. Null if the plan has no trial period.

MetadataAggregate String False

Number of trial period days granted when subscribing a customer to this plan. Null if the plan has no trial period.

TiersAggregate String False

Each element represents a pricing tier.

TiersMode String False

Defines if the tiering price should be graduated or volume based.

TransformUsageDivideBy Integer False

Divide usage by this number.

TransformUsageRound String False

After division, either round the result up or down.

UsageType String False

Configures how the quantity per period should be determined. Can be either metered or licensed.

ProductDefaultPrice String True

The product whose pricing this plan determines. The ID of the Price object that is the default price for this product.

ProductDescription String True

The product whose pricing this plan determines. The product’s description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.

ProductObject String True

The product whose pricing this plan determines. String representing the object’s type. Objects of the same type share the same value.

ProductCreated Datetime True

The product whose pricing this plan determines. String representing the object’s type. Time at which the object was created.

ProductImages String True

The product whose pricing this plan determines. A list of up to 8 URLs of images for this product, meant to be displayable to the customer.

ProductLivemode Boolean True

The product whose pricing this plan determines. Has the value true if the object exists in live mode or the value false if the object exists in test mode.

ProductMarketingFeatures String True

The product whose pricing this plan determines. A list of up to 15 marketing features for this product. These are displayed in pricing tables.

ProductPackageDimensionsHeight Double True

The product whose pricing this plan determines. Height, in inches.

ProductPackageDimensionsLength Double True

The product whose pricing this plan determines. Length, in inches.

ProductPackageDimensionsWeight Double True

The product whose pricing this plan determines. Weight, in inches.

ProductPackageDimensionsWidth Double True

The product whose pricing this plan determines. Width, in inches.

ProductShippable Boolean True

The product whose pricing this plan determines. Whether this product is shipped (i.e., physical goods).

ProductUpdated Datetime True

The product whose pricing this plan determines. Time at which the object was last updated.

ProductUrl String True

The product whose pricing this plan determines. A URL of a publicly-accessible webpage for this product.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get plans for.

CData Python Connector for Stripe

Prices

Create, update, and query the available prices in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Active=
Created=, >=, <=, >, <
Currency=
LookupKey=
MetadataAggregate=
Product=
RecurringInterval=
RecurringUsageType=
Type=
AccountId=

You can select:

  • Price by specifying its Id:
    SELECT * FROM Prices WHERE Id = 'price_1HeiRmATXQzBWNrlQOSoEytH'
  • Prices created after a specific date:
    SELECT * FROM Prices WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Prices WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Insert

ProductId or ProductName, and Currency are required to create a price:

INSERT INTO Prices (Active, BillingScheme, LookupKey, Nickname, Currency, Product, RecurringInterval, RecurringAggregateUsage, RecurringIntervalCount, RecurringUsageType, TransformQuantityDivideBy, TransformQuantityRound, UnitAmount, TaxBehavior) VALUES (true, 'per_unit', 'def', 'test_insert', usd, 'prod_P8AoSHyvPlfYMp', 'month', 'max', 3, 'metered', 2, 'up', 10, 'unspecified') 

INSERT INTO Prices (Active, BillingScheme, Currency, LookupKey, MetadataAggregate, Nickname, Product, RecurringInterval, RecurringAggregateUsage, RecurringIntervalCount, RecurringUsageType, Tiersmode, TiersAggregate) values (false, 'tiered', 'usd', 'TestKey5', '[{\"A\":\"BCD\",\"E\":\"FGH\",\"I\":\"JKL\"}]', 'Nickname1', 'prod_PDm7du7ErjMSwY', 'week', 'last_during_period', 5, 'metered', 'volume', '[{\"up_to\":\"inf\",\"flat_amount_decimal\":\"356\",\"unit_amount_decimal\":\"785\"}]') 

Update

To update a price, specify the Id:

UPDATE Prices SET Active = false, MetadataAggregate = '{\"title\" : \"test price\"}'  WHERE Id = 'price_1HeiRmATXQzBWNrlQOSoEytH'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the price.

Active Boolean False

Whether the price can be used for new purchases.

BillingScheme String False

Describes how to compute the price per period.

Created Datetime True

The creation date.

Currency String False

Currency in which subscription will be charged.

CustomUnitAmountEnabled Boolean False

Pass in true to enable custom_unit_amount, otherwise omit custom_unit_amount.

CustomUnitAmountMaximum Integer False

The maximum unit amount the customer can specify for this item.

CustomUnitAmountMinimum Integer False

The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount.

CustomUnitAmountPreset Integer False

The starting unit amount which can be updated by the customer.

LookupKey String False

A lookup key used to retrieve prices dynamically from a static string.

MetadataAggregate String False

Set of key-value pairs that you can attach to an object.

Nickname String False

A brief description of the plan, hidden from customers.

Product String False

Products.Id

The Id of the product this price is associated with.

ProductDataName String False

These fields can be used to create a new product that this price will belong to. The product's name, meant to be displayable to the customer.

ProductDataActive Boolean False

These fields can be used to create a new product that this price will belong to. Whether the product is currently available for purchase. Defaults to true.

ProductDataMetadata String False

These fields can be used to create a new product that this price will belong to. Set of key-value pairs that you can attach to an object.

ProductDataStatementDescriptor String False

These fields can be used to create a new product that this price will belong to. An arbitrary string to be displayed on your customer's credit card or bank statement.

ProductDataTaxCode String False

These fields can be used to create a new product that this price will belong to. A tax code ID.

ProductDataUnitLabel String False

These fields can be used to create a new product that this price will belong to. A label that represents units of this product. When set, this will be included in customers' receipts, invoices, Checkout, and the customer portal.

RecurringInterval String False

The frequency at which a subscription is billed. One of day, week, month or year.

The allowed values are day, month, week, year.

RecurringAggregateUsage String False

Specifies a usage aggregation strategy for prices of usage_type=metered.

RecurringIntervalCount Integer False

The number of intervals (specified in the interval attribute) between subscription billings. For example, interval=month and interval_count=3 bills every 3 months.

RecurringUsageType String False

Configures how the quantity per period should be determined. Can be either metered or licensed. Defaults to licensed.

The allowed values are licensed, metered.

Type String True

Value is either 'one_time' or 'recurring' depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.

The allowed values are one_time, recurring.

TiersAggregate String False

Array of elements representing a pricing tier.

TiersMode String False

Defines if the tiering price should be graduated or volume based.

TransformQuantityDivideBy Integer False

Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with tiers. Divide usage by this number.

TransformQuantityRound String False

Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with tiers. After division, either round the result up or down.

UnitAmount Integer False

The unit amount in paise to be charged, represented as a whole integer if possible.

UnitAmountDecimal String False

The unit amount in paise to be charged, represented as a decimal string

Object String True

String representing the object's type. Objects of the same type share the same value.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

TaxBehavior String False

Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.

ProductDataDefaultPrice String True

These fields can be used to view the fields of the product that this price will belong to. The ID of the Price object that is the default price for this product.

ProductDataDescription String True

These fields can be used to view the fields of the product that this price will belong to. The product’s description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.

ProductDataObject String True

These fields can be used to view the fields of the product that this price will belong to. String representing the object’s type. Objects of the same type share the same value.

ProductDataCreated Datetime True

These fields can be used to view the fields of the product that this price will belong to. String representing the object’s type. Time at which the object was created.

ProductDataImages String True

These fields can be used to view the fields of the product that this price will belong to. A list of up to 8 URLs of images for this product, meant to be displayable to the customer.

ProductDataLivemode Boolean True

These fields can be used to view the fields of the product that this price will belong to. Has the value true if the object exists in live mode or the value false if the object exists in test mode.

ProductDataMarketingFeatures String True

These fields can be used to view the fields of the product that this price will belong to. A list of up to 15 marketing features for this product. These are displayed in pricing tables.

ProductDataPackageDimensionsHeight Double True

These fields can be used to view the fields of the product that this price will belong to. Height, in inches.

ProductDataPackageDimensionsLength Double True

These fields can be used to view the fields of the product that this price will belong to. Length, in inches.

ProductDataPackageDimensionsWeight Double True

These fields can be used to view the fields of the product that this price will belong to. Weight, in inches.

ProductDataPackageDimensionsWidth Double True

These fields can be used to view the fields of the product that this price will belong to. Width, in inches.

ProductDataShippable Boolean True

These fields can be used to view the fields of the product that this price will belong to. Whether this product is shipped (i.e., physical goods).

ProductDataUpdated Datetime True

These fields can be used to view the fields of the product that this price will belong to. Time at which the object was last updated.

ProductDataUrl String True

These fields can be used to view the fields of the product that this price will belong to. A URL of a publicly-accessible webpage for this product.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get prices for.

TransferLookupKey Boolean

If set to true, will atomically remove the lookup key from the existing price, and assign it to this price.

CData Python Connector for Stripe

Products

Query the available products in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Active=
Created<, <=, =, >, >=
Shippable=
Type=
Url=
Description=
Name=
Metadata=

You can select:

  • A product by specifying its Id:
    SELECT * FROM Products WHERE Id = '12345678'
  • Multiple products by specifying their Ids:
    SELECT * FROM Products WHERE Id IN ('12345678', '123456789', '123456788',)
  • Products that can be shipped:
    SELECT * FROM Products WHERE Shippable = 'true'
  • Products for a given URL:
    SELECT * FROM Products WHERE URL = '/v1/skus?product=1234\u0026active=true'
  • Active products:
    SELECT * FROM Products WHERE Active = True
  • Products created after a certain date:
    SELECT * FROM Products WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Products WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Insert

A name is required to create a product:

INSERT INTO Products(Name, Images, FeaturesAggregate, MetadataAggregate) values ('asdwd','[\"http://da.cs/fs.jpg\",\"http://da.cs/fss.jpg\"]','[{\"name\":\"asdsa\"}]','[{\"nsame\":\"asdsa\"}]')

Update

To update a product, specify the Id:

Update Products SET Name = 'fafs' WHERE Id = 'prod_PEcZQqWgJzbBCW'

Delete

To delete a product, specify the Id:

Delete Products WHERE Id = 'prod_PEcZQqWgJzbBCW'

Columns

Name Type ReadOnly References Description
Id [KEY] String False

ID of product.

Active Boolean False

Whether the product is currently available for purchase. afterwards stripe:version = 2016-06-15 setting active to false no longer marks the product's SKUs as inactive.

MarketingFeaturesAggregate String False

A list of up to 5 attributes that each SKU can provide value.

Created Datetime True

The time when product is created.

DefaultPrice String False

The ID of the Price object that is the default price for this product. Can be used in Update.

Description String False

The product's description, meant to be displayable to the customer.

Name String False

The product's name, meant to be displayable to the customer.maximum character length limit of 250

PackageDimensionsHeight Double False

The height dimension of this product for shipping purposes.

PackageDimensionsLength Double False

The length dimension of this product for shipping purposes.

PackageDimensionsWeight Double False

The weight dimension of this product for shipping purposes.

PackageDimensionsWidth Double False

The width dimension of this product for shipping purposes.

Shippable Boolean False

Whether this product is a shipped good.

StatementDescriptor String False

Extra information about a charge for the credit card statement of the customer.

Updated Datetime True

The last updated time.

Type String True

The type of the product.

Url String False

The URL of a publicly-accessible webpage for this product.

TaxCode String False

A tax code ID.

Livemode Boolean True

Tells if the dispute is in livemode.

MetadataAggregate String False

Set of key-value pairs

Object String True

String representing the object's type. Objects of the same type share the same value.

UnitLabel String False

A label that represents units of this product in Stripe and on customers receipts and invoices. When set, this will be included in associated invoice line item descriptions.

Images String False

A list of up to 8 URLs of images for this product, meant to be displayable to the customer.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get products for.

CData Python Connector for Stripe

PromotionCodes

Creates, updates, and retrieves a promotion code that represents a customer-redeemable code for a coupon.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
Active=
Code=
CouponId=
Created=, >, >=, <, <=
Customer=
AccountId=

The rest of the filter is executed client-side within the connector.

You can select from the PromotionCodes table with the following queries:

SELECT * FROM PromotionCodes
SELECT * FROM PromotionCodes WHERE Id = '123124'

Insert

To create a promotion code, the CouponId is required:

INSERT INTO PromotionCodes (Active, Code, CouponId, Customer, MaxRedemptions) values ('true', 'FIRST5', 'WN3VpE01', 'cus_NBs3z63zmfCJy1' ,4)

INSERT INTO PromotionCodes (Code, Active, Customer, CouponId, Metadata, Expiresat, MaxRedemptions, RestrictionsFirstTimeTransaction, RestrictionsMinimumAmount, RestrictionsMinimumAmountCurrency) values ('TestCode', true, 'cus_PE90A5xYP8TpeM', 'WG4hYi8e', '[{"A":"BCD","E":"FGH","I":"JKL"}]', '2023-12-30 12:40:20', 15, true, 25, 'eur')

Update

To modify a promotion code, specify the code's Id:

UPDATE PromotionCodes SET Active='false' WHERE id='123124'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the promotion code.

Active Boolean False

Whether the promotion code is currently active. A promotion code is only active if the coupon is also valid.

Code String False

The customer-facing code.

CouponAmountOff Integer True

The amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.

CouponCreated Datetime True

The time at which the coupon was created.

CouponCurrency String True

If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.

CouponDuration String True

One of forever, once, and repeating.

CouponDurationInMonths Integer True

If duration is repeating, the number of months the coupon applies. The value is Null if coupon duration is forever or once.

CouponId String False

The Id of the coupon.

CouponLivemode Boolean True

true if the object is in live mode andfalse if in test mode.

CouponMaxRedemptions Integer True

The maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.

CouponMetadata String True

The set of key-value pairs that you can attach to a coupon.

CouponName String True

Name of the coupon displayed to customers.

CouponPercentOff Double True

The percent to be taken off the subtotal of any invoices for this customer for the duration of the coupon.

CouponRedeemBy Datetime True

The date after which the coupon can no longer be redeemed.

CouponTimesRedeemed Integer True

The number of times this coupon has been applied to a customer.

CouponAppliesToProducts Integer True

Contains information about what this coupon applies to. A list of product IDs this coupon applies to.

CouponValid Boolean True

Whether this coupon can still be applied to a customer, taking the above properties into account .

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

Customer String False

The customer that this promotion code can be used by.

ExpiresAt Datetime False

The date at which the promotion code can no longer be redeemed.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

MaxRedemptions Integer False

The maximum number of times this promotion code can be redeemed.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

RestrictionsCurrencyOptions String True

Promotion codes defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.

RestrictionsFirstTimeTransaction Boolean False

A Boolean indicating if the Promotion Code should only be redeemed for Customers without any successful payments or invoices.

RestrictionsMinimumAmount Integer False

The minimum amount required to redeem this Promotion Code into a Coupon.

RestrictionsMinimumAmountCurrency String False

A three-letter ISO code for minimum_amount.

TimesRedeemed Integer True

The number of times this promotion code has been used.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get promotion code for.

CData Python Connector for Stripe

Quotes

Creates, updates, and queries the quotes available.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
CustomerId=
Status=
TestClock=

The rest of the filter is executed client-side within the connector.

You can select from the Quotes table with the following queries:

SELECT * FROM Quotes WHERE Id = '123124'
SELECT * FROM Quotes WHERE CustomerId = 'cus_NVasad'
SELECT * FROM Quotes WHERE Status = 'draft'
SELECT * FROM Quotes WHERE TestClock = 'clock_id'

Insert

To create a quote for the invoice:

INSERT INTO Quotes (AutomaticTaxEnabled, CollectionMethod, CustomerId, Description, InvoiceSettingsDaysUntilDue, Metadata, SubscriptionDataTrialPeriodDays) values ('false', 'send_invoice', 'cus_NBs3z63zmfCJy1', 'Thanks for using YMBusiness!!', 25, '{"name":"test name 2", "surname":"test surname", "age" : "23"}', 20)

INSERT INTO Quotes (DefaultTaxRates, FromQuote, Discounts, TransferData, LineItems) VALUES ('[\"txr_1OL7oy2eZvKYlo2CLylDtkiI\",\"txr_1OL7oo2eZvKYlo2CHliiOEZT\"]', '{\"quote\":\"qt_1N6vEL2eZvKYlo2CwySMFZbA\",\"is_revision\":\"true\"}', '{\"coupon\":\"test1\"}', '{\"destination\":\"acc_123566677\",\"amount\":\"440\",\"amount_percent\":\"23\"}', '[{\"price\":\"price_1OM02h2eZvKYlo2CiiTU7dCm\",\"quantity\":\"10\"}]')

Update

To modify a quote, specify the quote's Id:

UPDATE Quotes SET InvoiceSettingsDaysUntilDue = 20 WHERE Id='123124'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the quotes.

AmountSubtotal Integer True

The total before any discounts or taxes are applied.

AmountTotal Integer True

The total after discounts and taxes are applied.

Application String True

The Id of the Connect Application that created the quote.

ApplicationFeeAmount Integer False

The amount of the application fee.

ApplicationFeePercent Double False

A non-negative decimal between 0 and 100, with at most two decimal places.

AutomaticTaxEnabled Boolean False

Automatically calculates taxes.

AutomaticTaxStatus String True

The status of the most recent automated tax calculation for this quote.

CollectionMethod String False

The method to collect charge money, either charge_automatically or send_invoice.

ComputedRecurring String True

The definitive totals and line items the customer is charged on a recurring basis.

ComputedUpfrontAmountSubtotal Integer True

The total before any discounts or taxes are applied.

ComputedUpfrontAmountTotal Integer True

The total after discounts and taxes are applied.

ComputedUpfrontTotalDetailsAmountDiscount Integer True

The sum of all the discounts.

ComputedUpfrontTotalDetailsAmountShipping Integer True

The sum of all the shipping amounts.

ComputedUpfrontTotalDetailsAmountTax Integer True

The sum of all the tax amounts.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

Currency String True

A three-letter ISO currency code, in lowercase.

CustomerId String False

The Id of the customer.

DefaultTaxRates String False

The tax rates applied to this quote.

Description String False

A description that is displayed on the quote PDF.

Discounts String False

The discounts applied to this quote.

ExpiresAt Datetime False

The date on which the quote is canceled if in open or draft status.

Footer String False

A footer that is displayed on the quote PDF.

FromQuote String False

Details of the quote that was cloned.

Header String False

A header that is displayed on the quote PDF.

InvoiceId String True

The Id of the invoice that was created from this quote.

InvoiceSettingsDaysUntilDue Integer False

The number of days within which a customer must pay invoices generated by this quote.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

LineItems String False

The line items representing what is being sold. Each line item represents an item being sold.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

Number String True

A unique number that identifies this particular quote.

OnBehalfOf String False

The account on behalf of which to charge.

Status String True

The status of the quote.

StatusTransitionsAcceptedAt Datetime True

The time that the quote was accepted.

StatusTransitionsCanceledAt Datetime True

The time that the quote was canceled.

StatusTransitionsFinalizedAt Datetime True

The time that the quote was finalized.

Subscription String True

The subscription that was created or updated from this quote.

SubscriptionDataDescription String False

The subscription's description, meant to be displayable to the customer.

SubscriptionDataEffectiveDate Datetime False

When creating a new subscription, the date of which the subscription schedule starts after the quote is accepted.

SubscriptionDataTrialPeriodDays Integer False

An integer representing the number of trial period days before the customer is charged for the first time.

SubscriptionSchedule String True

The subscription schedule that was created or updated from this quote.

TestClock String False

The Id of the test clock this quote belongs to.

TotalDetailsAmountDiscount Integer True

The sum of all the discounts.

TotalDetailsAmountShipping Integer True

The sum of all the shipping amounts.

TotalDetailsAmountTax Integer True

The sum of all the tax amounts.

TransferData String False

The account (if any) the payments are attributed to for tax reporting, and where funds from each payment are transferred to for each of the invoices.

AutomaticTaxLiabilityAccount String False

The connected account being referenced when type is account.

AutomaticTaxLiabilityType String False

Type of the account referenced.

InvoiceSettingsIssuerAccount String False

The connected account being referenced when type is account.

InvoiceSettingsIssuerType String False

Type of the account referenced.

The allowed values are account, self.

SubscriptionDataMetadata String False

Set of key-value pairs that will set metadata on the subscription or subscription schedule when the quote is accepted. If a recurring price is included in line_items, this field will be passed to the resulting subscription’s metadata field. If subscription_data.effective_date is used, this field will be passed to the resulting subscription schedule’s phases.metadata field. Unlike object-level metadata, this field is declarative. Updates will clear prior values.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account for which to get a quote.

CData Python Connector for Stripe

Refunds

Create and query the available refunds in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Charge=
PaymentIntent=
AccountId=
Created<, >, >=, <, <=, =

You can select:

  • A refund by specifying its Id:
    SELECT * FROM Refunds WHERE Id = 're_19keFRGOsuAdslZgO7zSbS2j'
  • Refunds associated with a specific charge:
    SELECT * FROM Refunds WHERE Charge = 'MyChargeId'

Insert

To insert a refund, provide a specifc charge:

INSERT INTO Refunds (Charge, Amount, Reason) VALUES ('ch_fj57lKDg460322552g', 40, 'duplicate')

INSERT INTO Refunds (Charge, Amount, Reason, MetadataAggregate) values ('ch_3LrL0PHWDgcyHde00jCW5AYz', 100, 'duplicate', '[{\"A\":\"BCD\",\"E\":\"FGH\",\"I\":\"JKL\"}]')

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the refund.

Charge String False

The Id of the charge that was refunded.

Amount Integer False

The Amount, in cents.

Status String True

The status of the refund.

BalanceTransaction String True

The balance transaction that describes the impact on your account balance.

Created Datetime True

The refund datetime.

Currency String True

Three-letter ISO code representing the currency.

Reason String False

The reason for the refund.

ReceiptNumber String True

This is the transaction number that appears on email receipts sent for this refund.

MetadataAggregate String False

The refund metadata object.

Description String True

An arbitrary string attached to the object. Often useful for displaying to users.

PaymentIntent String False

ID of the PaymentIntent that was refunded.

Object String True

String representing the object's type. Objects of the same type share the same value.

FailureBalanceTransaction String True

If the refund failed, this balance transaction describes the adjustment made on your account balance that reverses the initial balance transaction.

FailureReason String True

If the refund failed, the reason for refund failure if known.

The allowed values are lost_or_stolen_card, expired_or_canceled_card, or unknown..

NextAction String True

This property will describe what the refund needs in order to continue processing.

SourceTransferReversal String True

The transfer reversal that is associated with the refund. Only present if the charge came from another Stripe account. See the Connect documentation for details.

TransferReversal String True

If the accompanying transfer was reversed, the transfer reversal object. Only applicable if the charge was created using the destination parameter.

InstructionsEmail String True

For payment methods without native refund support (for example, Konbini, PromptPay), provide an email address for the customer to receive refund instructions.

DestinationDetailsAffirm String True

If this is a affirm refund, this hash contains the transaction specific details of the affirm refund method.

DestinationDetailsAfterpayClearpay String True

If this is a afterpay_clearpay refund, this hash contains the transaction specific details of the afterpay_clearpay refund method.

DestinationDetailsAlipay String True

If this is a alipay refund, this hash contains the transaction specific details of the alipay refund method.

DestinationDetailsAmazonPay String True

If this is a amazon_pay refund, this hash contains the transaction specific details of the amazon_pay refund method.

DestinationDetailsAuBankTransfer String True

If this is a au_bank_transfer refund, this hash contains the transaction specific details of the au_bank_transfer refund method.

DestinationDetailsBlikReference String True

If this is a blik refund, this contains the reference assigned to the refund.

DestinationDetailsBlikReferenceStatus String True

If this is a blik refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsBrBankTransferReference String True

If this is a br_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsBrBankTransferReferenceStatus String True

If this is a br_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsCardReference String True

If this is a card refund, this contains the value of the reference number assigned to the refund.

DestinationDetailsCardReferenceStatus String True

If this is a card refund, this contains the status of the reference number on the refund. This can be pending, available or unavailable.

DestinationDetailsCardReferenceType String True

If this is a card refund, this contains the type of the reference number assigned to the refund.

DestinationDetailsCardType String True

If this is a card refund, this contains the type of refund. This can be refund, reversal, or pending.

DestinationDetailsCashapp String True

If this is a cashapp refund, this hash contains the transaction specific details of the cashapp refund method.

DestinationDetailsCustomerCashBalance String True

If this is a customer_cash_balance refund, this hash contains the transaction specific details of the customer_cash_balance refund method.

DestinationDetailsEps String True

If this is a eps refund, this hash contains the transaction specific details of the eps refund method.

DestinationDetailsEuBankTransferReference String True

If this is a eu_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsEuBankTransferReferenceStatus String True

If this is a eu_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsGbBankTransferReference String True

If this is a gb_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsGbBankTransferReferenceStatus String True

If this is a gb_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsGiropay String True

If this is a giropay refund, this hash contains the transaction specific details of the giropay refund method.

DestinationDetailsGrabpay String True

If this is a grabpay refund, this hash contains the transaction specific details of the grabpay refund method.

DestinationDetailsJpBankTransferReference String True

If this is a jp_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsJpBankTransferReferenceStatus String True

If this is a jp_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsKlarna String True

If this is a klarna refund, this hash contains the transaction specific details of the klarna refund method.

DestinationDetailsMultibancoReference String True

If this is a multibanco refund, this contains the reference assigned to the refund.

DestinationDetailsMultibancoReferenceStatus String True

If this is a multibanco refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsMxBankTransferReference String True

If this is a mx_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsMxBankTransferReferenceStatus String True

If this is a mx_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsP24Reference String True

If this is a p24 refund, this contains the reference assigned to the refund.

DestinationDetailsP24ReferenceStatus String True

If this is a p24 refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsPaynow String True

If this is a paynow refund, this hash contains the transaction specific details of the paynow refund method.

DestinationDetailsPaypal String True

If this is a paypal refund, this hash contains the transaction specific details of the paypal refund method.

DestinationDetailsPix String True

If this is a pix refund, this hash contains the transaction specific details of the pix refund method.

DestinationDetailsRevolut String True

If this is a revolut refund, this hash contains the transaction specific details of the revolut refund method.

DestinationDetailsSofort String True

If this is a sofort refund, this hash contains the transaction specific details of the sofort refund method.

DestinationDetailsSwishReference String True

If this is a swish refund, this contains the reference assigned to the refund.

DestinationDetailsSwishReferenceStatus String True

If this is a swish refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsThBankTransferReference String True

If this is a th_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsThBankTransferReferenceStatus String True

If this is a th_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsType String True

The type of transaction-specific details of the payment method used in the refund (e.g., card). An additional hash is included on destination_details with a name matching this value. It contains information specific to the refund transaction.

DestinationDetailsUsBankTransferReference String True

If this is a us_bank_transfer refund, this contains the reference assigned to the refund.

DestinationDetailsUsBankTransferReferenceStatus String True

If this is a us_bank_transfer refund, this contains the status of the reference on the refund. This can be pending, available or unavailable.

DestinationDetailsWechatPay String True

If this is a wechat_pay refund, this hash contains the transaction specific details of the wechat_pay refund method.

DestinationDetailsZip String True

If this is a zip refund, this hash contains the transaction specific details of the zip refund method.

DestinationDetailsBlikNetworkDeclineCode String True

For refunds declined by the network, a decline code provided by the network which indicates the reason the refund failed.

DestinationDetailsSwishNetworkDeclineCode String True

For refunds declined by the network, a decline code provided by the network which indicates the reason the refund failed.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get refunds for.

CData Python Connector for Stripe

ShippingRates

Query the available Shipping rates in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
Active=
Created=,>,>=,<,<=
AccountId=
FixedAmountCurrency=

The rest of the filter is executed client-side within the connector.

You can select from the ShippingRates table with the following queries:

SELECT * FROM ShippingRates WHERE Id = 'shr_1MHKKGSC4snQ4WkONC7OYQuS'
SELECT * FROM ShippingRates WHERE Id = 'shr_1MHKKGSC4snQ4WkONC7OYQuS' AND AccountId = 'acct_1MGcyqSC4snQ4WkO'

Insert

DisplayName and Type are required to create a shipping rate:

INSERT INTO ShippingRates(DisplayName,Type,MetadataAggregate,FixedAmountAmount,FixedAmountCurrency) values ('asdsswd','fixed_amount','[{\"nsame\":\"asdsa\"}]',230,'usd')

Update

To update a shipping rate, specify the Id:

UPDATE ShippingRates SET Active = true WHERE Id = 'shr_1OQ9ScCZ8rn6qR6h3H86TWDn'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the Shipping Rates.

Active Boolean False

Whether the shipping rate can be used for new purchases. Its default value is true.

Created Timestamp True

Time at which the object was created. Measured in seconds since the Unix epoch.

DeliveryEstimateMaximumUnit String False

A unit of time.

DeliveryEstimateMaximumValue Integer False

Must be greater than 0.

DeliveryEstimateMinimumUnit String False

A unit of time.

DeliveryEstimateMinimumValue Integer False

Must be greater than 0.

DisplayName String False

The name of the shipping rate, meant to be displayable to the customer.

FixedAmountAmount Integer False

A non-negative integer in cents representing how much to charge.

FixedAmountCurrency String False

Three-letter ISO currency code, in lowercase. Must be a supported currency.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

MetadataAggregate String False

Set of key-value pairs

Object String True

The Object type.

TaxBehavior String False

Whether the rate is considered inclusive of taxes or exclusive of taxes.

TaxCode String False

Tax code Id.

Type String False

The type of calculation to use on the shipping rate.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account.

CData Python Connector for Stripe

SubscriptionItems

Create, update, delete, and query the available subscription items in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
SubscriptionId=
AccountId=

To query the SubscriptionItems table, the SubscriptionId column is required:

SELECT * FROM SubscriptionItems WHERE SubscriptionId = 'sub_A9WZGVTbvgBJ4t'

Insert

The SubscriptionId and PlanId columns are required to create a new subscription item:

INSERT INTO SubscriptionItems (SubscriptionId, PlanId, ProrationDate, Quantity) VALUES ('sub_1OMqdl2eZvKYlo2CIci8bOT8', 'price_1OPjac2eZvKYlo2Cm8XeR5YQ', '2014-12-12', 10)

Update

To update a subscription item, specify its Id:

UPDATE SubscriptionItems SET PlanId = 'price_1OPjac2eZvKYlo2Cm8XeR5YQ', ProrationDate = '2014-12-12', Quantity = 12 WHERE Id = 'si_PDakKMQHunYX0k'

Delete

To delete a subscription item, specify its Id:

DELETE FROM SubscriptionItems WHERE Id = 'sit_A9WZGVTbvgBJ4t'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the subscription item.

SubscriptionId String False

Subscriptions.Id

The Id of the subscription.

PlanId String False

Plans.Id

The Id of the plan.

PlanActive Boolean True

Whether the plan can be used for new purchases.

PlanAggregateUsage String True

Specifies a usage aggregation strategy for plans of usage_type=metered.

PlanAmount Integer True

The unit amount in cents to be charged, represented as a whole integer if possible.

PlanAmountDecimal String True

The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.

PlanBillingScheme String True

Describes how to compute the price per period.

PlanCreated Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

PlanCurrency String True

Three-letter ISO currency code, in lowercase. Must be a supported currency.

PlanInterval String True

The frequency at which a subscription is billed. One of day, week, month or year.

PlanIntervalCount Integer True

The number of intervals (specified in the interval attribute) between subscription billings.

PlanLivemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

PlanMetadata String True

Set of key-value pairs that you can attach to an object.

PlanMeter String True

The meter tracking the usage of a metered price.

PlanNickname String True

A brief description of the plan, hidden from customers.

PlanObject String True

String representing the object's type. Objects of the same type share the same value.

PlanProduct String True

The product whose pricing this plan determines.

PlanTiersMode String True

Defines if the tiering price should be graduated or volume based.

PlanTransformUsage String True

Apply a transformation to the reported usage or set quantity before computing the amount billed.

PlanTrialPeriodDays Integer True

Default number of trial days when subscribing a customer to this plan using trial_from_plan=true.

PlanUsageType String True

Configures how the quantity per period should be determined.

Quantity Double False

The quantity of the plan to which the customer should be subscribed.

Created Datetime True

Creation date.

MetadataAggregate String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

PriceId String False

Prices.Id

Unique identifier for the price.

PriceActive Boolean True

Whether the price can be used for new purchases.

PriceBillingScheme String True

Describes how to compute the price per period.

PriceCreated Datetime True

The creation date.

PriceCurrency String True

Currency in which subscription will be charged.

PriceCustomUnitAmount String True

Price custom unit amount.

PriceLivemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

PriceLookupKey String True

A lookup key used to retrieve prices dynamically from a static string.

PriceMetadata String True

Set of key-value pairs that you can attach to an object.

PriceNickname String True

A brief description of the plan, hidden from customers.

PriceObject String True

String representing the object's type. Objects of the same type share the same value.

PriceProduct String True

The Id of the product this price is associated with.

PriceRecurringAggregateUsage String True

Price recurring aggregate usage.

PriceRecurringInterval String True

Price recurring interval.

PriceRecurringIntervalCount Integer True

Price recurring interval count.

PriceRecurringMeter String True

Price recurring meter.

PriceRecurringTrialPeriodDays Integer True

Price recurring trial period days.

PriceRecurringUsageType String True

Price recurring usage type.

PriceTaxBehaviour String True

Price tax behaviour.

PriceTiersMode String True

Price tiers mode.

PriceTransformQuantity String True

Price transform quantity.

PriceType String True

Price type.

PriceUnitAmount Integer True

Price unit amount.

PriceUnitAmountDecimal String True

Price unit amount decimal.

Object String True

String representing the object's type. Objects of the same type share the same value.

BillingThresholdsUsageGte Integer False

Usage threshold that triggers the subscription to create an invoice

TaxRatesAggregate String False

The tax rates which apply to this subscription_item. When set, the default_tax_rates on the subscription do not apply to this subscription_item.

Discounts String False

The coupons to redeem into discounts for the subscription item.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
IsProrate Boolean

Flag indicating whether to prorate switching plans during a billing cycle.

ProrationDate Date

If set, the proration will be calculated as though the subscription was updated at the given time.

PaymentBehavior String

Payment Behavior. Valid for INSERT, DELETE and UPDATE.

The allowed values are allow_incomplete, default_incomplete, error_if_incomplete, pending_if_incomplete.

ProrationBehavior String

Determines how to handle prorations when the billing cycle changes. Valid for INSERT, DELETE and UPDATE.

The allowed values are always_invoice, create_prorations, none.

AccountId String

The Id of the connected account to get subscription items for

CData Python Connector for Stripe

Subscriptions

Create, update, delete, and query the available Subscriptions in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CustomerId=
PlanId=
Status=
MetadataAggregate=
AutomaticTaxEnabled=
CollectionMethod=
TestClock=
AccountId=
CreatedAt=, !=, >, >=, <, <=
CanceledAt=, !=, >, >=, <, <=
CurrentPeriodEnd=, !=, >, >=, <, <=
CurrentPeriodStart=, !=, >, >=, <, <=

You can select:

  • A subscription by specifying its Id:
    SELECT * FROM Subscriptions WHERE Id = 'mySubscriptionId'
  • Subscriptions created after a specific date:
    SELECT * FROM Subscriptions WHERE CreatedAt > '2016-01-03'
    • CreatedAt can also be used twice to specify a range:
      SELECT * FROM Subscriptions WHERE CreatedAt >= '2016-01-01' AND CreatedAt <= '2016-12-31'
  • Subscriptions that belong to a customer:
    SELECT * FROM Subscriptions WHERE CustomerId = 'cus_12345678'
  • Subscriptions that belong to a plan:
    SELECT * FROM Subscriptions WHERE PlanId = 'myPlanId'
  • Subscriptions with a specific status:
    SELECT * FROM Subscriptions WHERE Status = 'active'
  • Subscriptions with metadata:
    SELECT * from Subscriptions where MetadataAggregate ='{\"fdgm\":\"gdfgkm\"}'

Insert

CustomerId and ItemsAggregate columns are required to create a new subscription:

INSERT INTO Subscriptions (CustomerId, TrialEnd, ItemsAggregate,CancelAtPeriodEnd) VALUES ('cus_PDYvuww0WynoTg', '2023-12-22', '[{\"price\": \"43\",\"quantity\":\"12\"}]', true)

Alternatively, you can provide CustomerId and PlanId columns to create a new subscription:

INSERT INTO Subscriptions (CustomerId, PlanId, TrialEnd,CancelAtPeriodEnd) VALUES ('cus_LMchUD47S8Eumg', 'price_1ONAgvCZ8rn6wdu','2024-12-22', true)

Update

To update a subscription, specify the Id:

UPDATE Subscriptions SET ApplicationFeePercent = 0, MetadataAggregate='[{\"order\":\"14453\"}]' WHERE Id = 'sub_A9WZGVTbvgBJ4t'

Delete

To delete a subscription, specify the Id.

DELETE FROM Subscriptions WHERE Id = 'sub_A9WZGVTbvgBJ4t'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the subscription.

CustomerId String False

Customers.Id

The Id of the customer who owns the subscription.

PlanId String False

Plans.Id

The Id of the plan.

PlanActive Boolean True

Whether the plan can be used for new purchases.

PlanAggregateUsage String True

Specifies a usage aggregation strategy for plans of usage_type=metered.

PlanAmount Integer True

The unit amount in cents to be charged, represented as a whole integer if possible.

PlanAmountDecimal String True

The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.

PlanBillingScheme String True

Describes how to compute the price per period.

PlanCreated Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

PlanCurrency String True

Three-letter ISO currency code, in lowercase. Must be a supported currency.

PlanInterval String True

The frequency at which a subscription is billed. One of day, week, month or year.

PlanIntervalCount Integer True

The number of intervals (specified in the interval attribute) between subscription billings.

PlanLivemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

PlanMetadata String True

Set of key-value pairs that you can attach to an object.

PlanMeter String True

The meter tracking the usage of a metered price.

PlanNickname String True

A brief description of the plan, hidden from customers.

PlanObject String True

String representing the object's type. Objects of the same type share the same value.

PlanProduct String True

The product whose pricing this plan determines.

PlanTiersMode String True

Defines if the tiering price should be graduated or volume based.

PlanTransformUsage String True

Apply a transformation to the reported usage or set quantity before computing the amount billed.

PlanTrialPeriodDays Integer True

Default number of trial days when subscribing a customer to this plan using trial_from_plan=true.

PlanUsageType String True

Configures how the quantity per period should be determined.

ApplicationFeePercent Decimal False

A positive decimal that represents the fee percentage of the subscription invoice amount that will be transferred to the application of the Stripe account owner each billing period.

CancelAtPeriodEnd Boolean False

If the subscription has been canceled with the at_period_end flag set to true, cancel_at_period_end on the subscription will be true. You can use this attribute to determine whether a subscription that has a status of active is scheduled to be canceled at the end of the current period.

CanceledAt Datetime True

If the subscription has been canceled, the date of that cancellation. If the subscription was canceled with cancel_at_period_end, canceled_at will still reflect the date of the initial cancellation request, not the end of the subscription period when the subscription is automatically moved to a canceled state.

CreatedAt Datetime True

The creation date.

CurrentPeriodEnd Datetime True

End of the current period that the subscription has been invoiced for. At the end of this period, a new invoice will be created.

CurrentPeriodStart Datetime True

Start of the current period that the subscription has been invoiced for.

CouponId String False

The id of the discount coupon.

EndedAt Datetime True

If the subscription has ended (either because it was canceled or because the customer was switched to a subscription to a new plan), the date the subscription ended.

Quantity Double True

The quantity of the plan to which the customer should be subscribed. For example, if your plan is $10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged $50 (5 x $10) monthly.

StartDate Datetime True

Date the most recent update to this subscription started.

Status String True

The status of the subscription

The allowed values are active, past_due, unpaid, canceled, incomplete, incomplete_expired, trialing, all, ended, paused.

TaxPercent Decimal True

If provided, each invoice created by this subscription will apply the tax rate, increasing the amount billed to the customer.

TrialEnd Datetime False

If the subscription has a trial, the end of that trial.

TrialStart Datetime True

If the subscription has a trial, the beginning of that trial.

MetadataAggregate String False

The set of key/value pairs that you can attach to a subscription object.

BillingCycleAnchor Datetime False

Determines the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices.

DefaultPaymentMethod String False

ID of the default payment method for the subscription

ItemsAggregate String False

List of subscription items, each with an attached price.

LatestInvoice String True

The ID of the most recent invoice this subscription has generated.

PendingSetupIntent String True

You can use this SetupIntent to collect user authentication when creating a subscription without immediate payment or updating a subscription's payment method, allowing you to optimize for off-session payments.

PendingUpdate String True

If specified, pending updates that will be applied to the subscription once the latest_invoice has been paid.

BillingThresholds String False

Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period

AutomaticTaxEnabled Boolean False

Automatic tax settings for this subscription.

AutomaticTaxLiabilityAccount String False

The connected account being referenced when type is account.

AutomaticTaxLiabilityType String False

Type of the account referenced.

CollectionMethod String False

Either charge_automatically, or send_invoice. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer.

The allowed values are charge_automatically, send_invoice.

DaysUntilDue Integer False

Number of days a customer has to pay invoices generated by this subscription. This value is null for subscriptions where collection_method=charge_automatically

DefaultSource String False

ID of the default payment source for the subscription.

DefaultTaxRates String False

The tax rates that will apply to any subscription item that does not have tax_rates set. Invoices created will have their default_tax_rates populated from the subscription.

LiveMode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

NextPendingInvoiceItemInvoice Datetime True

Specifies the approximate timestamp on which any pending invoice items will be billed according to the schedule provided at pending_invoice_item_interval

PauseCollectionBehavior String False

If specified, payment collection for this subscription will be paused. The payment collection behavior for this subscription while paused. One of keep_as_draft, mark_uncollectible, or void.

PauseCollectionResumesAt Datetime False

If specified, payment collection for this subscription will be paused. The time after which the subscription will resume collecting payments.

PaymentSettings String False

Payment settings passed on to invoices created by the subscription.

PendingInvoiceItemInterval String False

Specifies an interval for how often to bill for any pending invoice items. It is analogous to calling Create an invoice for the given subscription at the specified interval. Specifies invoicing frequency. Either day, week, month or year.

PendingInvoiceItemIntervalCount Integer False

Specifies an interval for how often to bill for any pending invoice items. It is analogous to calling Create an invoice for the given subscription at the specified interval. The number of intervals between invoices.

Schedule String True

The schedule attached to the subscription

TestClock String True

ID of the test clock this customer belongs to.

TransferData String False

The account (if any) the subscription's payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription's invoices.

CancelAt Datetime False

A date in the future at which the subscription will automatically get canceled.

Description String False

The subscription's description.

CancellationDetailsComment String False

Details about why this subscription was cancelled. Additional comments about why the user canceled the subscription, if the subscription was canceled explicitly by the user.

CancellationDetailsFeedback String False

Details about why this subscription was cancelled. The customer submitted reason for why they canceled, if the subscription was canceled explicitly by the user.

CancellationDetailsReason String False

Details about why this subscription was cancelled. The reason why this subscription was cancelled.

Currency String False

Three-letter ISO currency code, in lowercase. Must be a supported currency.

TrialSettingsEndBehaviorPaymentMethod String False

Settings related to subscription trials. Indicates how the subscription should change when the trial ends if the user did not provide a payment method.

The allowed values are cancel, pause, create_invoice.

OnBehalfOf String False

The account on behalf of which to charge, for each of the subscription?s invoices.

DiscountId String True

The Id of the discount.

DiscountCheckoutSession String True

The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Will not be present for subscription mode.

DiscountCustomer String True

The ID of the customer associated with this discount.

DiscountStart Datetime True

If the subscription has a trial, the beginning of that trial.

DiscountEnd Datetime True

If the subscription has a trial, the end of that trial.

DiscountInvoice String True

The invoice that the discount's coupon was applied to, if it was applied directly to a particular invoice.

DiscountInvoiceItem String True

The invoice line item id that the discount's coupon was applied to if it was applied directly to a invoice line item.

DiscountPromotionCode String True

The promotion code applied to create this discount.The promotion code applied to create this discount.

DiscountSubscription String True

The subscription that this coupon is applied to, if it is applied to a particular subscription.

DiscountCouponCreatedAt Datetime True

The creation date.

DiscountCouponCurrency String True

If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.

DiscountCouponName String True

Name of the coupon displayed to customers on, for instance, invoices or receipts.

DiscountCouponDuration String True

One of forever, once, and repeating. Describes how long a customer who applies this coupon will get the discount.

DiscountCouponDurationInMonths Integer True

the number of months the coupon applies.

DiscountCouponAmountOff Integer True

Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.

DiscountCouponPercentOff Decimal True

Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.

DiscountCouponValid Boolean True

Taking account of the above properties, whether this coupon can still be applied to a customer.

DiscountCouponMaxRedemptions Integer True

Maximum number of times this coupon can be redeemed, in total, before it is no longer valid.

DiscountCouponRedeemBy Datetime True

Date after which the coupon can no longer be redeemed.

DiscountCouponTimesRedeemed Integer True

Number of times this coupon has been applied to a customer.

DiscountCouponObject String True

String representing the object's type. Objects of the same type share the same value.

DiscountCouponLiveMode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

DiscountCouponMetadataAggregate String True

Set of key-value pairs that you can attach to an object.

Application String True

ID of the Connect Application that created the subscription.

BillingCycleAnchorConfigDayofMonth Integer False

The day of the month of the billing_cycle_anchor.

BillingCycleAnchorConfigHour Integer False

The hour of the day of the billing_cycle_anchor.

BillingCycleAnchorConfigminute Integer False

The minute of the hour of the billing_cycle_anchor.

BillingCycleAnchorConfigmonth Integer False

The month to start full cycle billing periods.

BillingCycleAnchorConfigsecond Integer False

The second of the minute of the billing_cycle_anchor.

InvoiceSettingsAccountTaxIds String False

Invoice settings account tax ids.

InvoiceSettingsIssuerType String False

Invoice settings issuer type.

InvoiceSettingsIssuerAccount String False

The connected account being referenced when InvoiceSettingsIssuerType is account.

AutomaticTaxDisabledReason String True

If Stripe disabled automatic tax, this enum describes why

The allowed values are requires_location_inputs.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
IsProrate Boolean

Flag indicating whether to prorate switching plans during a billing cycle.

ProrationDate Date

If set, the proration will be calculated as though the subscription was updated at the given time. It can also be used to implement custom proration logic, such as prorating by day instead of by second, by providing the time that you wish to use for proration calculations.

PaymentBehavior String

Use allow_incomplete to transition the subscription to status=past_due if a payment is required but cannot be paid. This allows you to manage scenarios where additional user actions are needed to pay a subscription?s invoice.

ProrationBehavior String

Determines how to handle prorations when the billing cycle changes (e.g., when switching plans, resetting billing_cycle_anchor=now, or starting a trial), or if an item?s quantity changes. The default value is create_prorations.

TrialPeriodDays Integer

The number of trial period days before the customer is charged for the first time. If set, trial_period_days overrides the default trial period days of the plan the customer is being subscribed to.

AccountId String

The Id of the connected account to get subscriptions for.

CData Python Connector for Stripe

TaxIds

Creates, deletes and queries the Tax Ids in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
OwnerType=
OwnerAccount=
OwnerCustomer=
AccountId=

You can select:

  • A tax Id by specifying its Id:
    SELECT * FROM TaxIds WHERE Id = 'txi_1Q3XrEATXQzBWNrlcebspJzb'
  • Tax Ids associated with an account:
    SELECT * FROM TaxIds WHERE OwnerType = 'account' AND OwnerAccount = 'acct_1B42lgHolImcIH68'
  • Tax Ids associated with a customer:
    SELECT * FROM TaxIds WHERE OwnerType = 'customer' AND OwnerCustomer = 'cus_82RUaYXb4z4XFV'
  • Tax Ids associated with an application (Either provide the account Id in the query or in the AccountId connection property):
    SELECT * FROM TaxIds WHERE OwnerType = 'application' AND AccountId = 'acct_1B42lgHolImcIH68'
  • Tax Ids associated with the current authenticated account:
    SELECT * FROM TaxIds

Insert

The Type and Value columns are required to create a new tax Id:

INSERT INTO TaxIds (Type, Value) VALUES ('eu_vat', 'DE131156989')

To create a tax Id on a particular account, specify OwnerType as account:

INSERT INTO TaxIds (Type, Value, OwnerType, OwnerAccount) VALUES ('eu_vat', 'DE993156911', 'account', 'acct_1B42lgHolImcIH68')

To create a tax Id on a particular customer, specify OwnerType as customer:

INSERT INTO TaxIds (Type, Value, OwnerType, OwnerCustomer) VALUES ('eu_vat', 'DE991911189', 'customer', 'cus_82RUaYXb4z4XFV')

To create a tax Id on the connected application, specify OwnerType as application along with the AccountId:

INSERT INTO TaxIds (Type, Value, OwnerType, AccountId) VALUES ('eu_vat', 'DE999411789', 'application', 'acct_1B42lgHolImcIH68')

Delete

To delete a tax Id, specify the Id:

DELETE FROM TaxIds WHERE Id = 'txi_1Q3XrEATXQzBWNrlcebspJzb'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the tax codes.

Country String True

Two-letter ISO code representing the country of the tax ID.

Customer String True

ID of the customer.

Type String False

Type of the tax ID, one of ad_nrt, ae_trn, ar_cuit, au_abn, au_arn, bg_uic, bh_vat, bo_tin, br_cnpj, br_cpf, ca_bn, ca_gst_hst, ca_pst_bc, ca_pst_mb, ca_pst_sk, ca_qst, ch_uid, ch_vat, cl_tin, cn_tin, co_nit, cr_tin, de_stn, do_rcn, ec_ruc, eg_tin, es_cif, eu_oss_vat, eu_vat, gb_vat, ge_vat, hk_br, hr_oib, hu_tin, id_npwp, il_vat, in_gst, is_vat, jp_cn, jp_rn, jp_trn, ke_pin, kr_brn, kz_bin, li_uid, mx_rfc, my_frp, my_itn, my_sst, ng_tin, no_vat, no_voec, nz_gst, om_vat, pe_ruc, ph_tin, ro_tin, rs_pib, ru_inn, ru_kpp, sa_vat, sg_gst, sg_uen, si_tin, sv_nit, th_vat, tr_tin, tw_vat, ua_vat, us_ein, uy_ruc, ve_rif, vn_tin, za_vat, am_tin, ao_tin, ba_tin, bb_tin, bs_tin, cd_nif, gn_nif, kh_tin, li_vat, me_pib, mk_vat, mr_nif, np_pan, sn_ninea, sr_fin, tj_tin, ug_tin, zm_tin or zw_tin. Note that some legacy tax IDs have type unknown.

The allowed values are ad_nrt, ae_trn, ar_cuit, au_abn, au_arn, bg_uic, bh_vat, bo_tin, br_cnpj, br_cpf, ca_bn, ca_gst_hst, ca_pst_bc, ca_pst_mb, ca_pst_sk, ca_qst, ch_uid, ch_vat, cl_tin, cn_tin, co_nit, cr_tin, de_stn, do_rcn, ec_ruc, eg_tin, es_cif, eu_oss_vat, eu_vat, gb_vat, ge_vat, hk_br, hr_oib, hu_tin, id_npwp, il_vat, in_gst, is_vat, jp_cn, jp_rn, jp_trn, ke_pin, kr_brn, kz_bin, li_uid, mx_rfc, my_frp, my_itn, my_sst, ng_tin, no_vat, no_voec, nz_gst, om_vat, pe_ruc, ph_tin, ro_tin, rs_pib, ru_inn, ru_kpp, sa_vat, sg_gst, sg_uen, si_tin, sv_nit, th_vat, tr_tin, tw_vat, ua_vat, unknown, us_ein, uy_ruc, ve_rif, vn_tin, za_vat, am_tin, ao_tin, ba_tin, bb_tin, bs_tin, cd_nif, gn_nif, kh_tin, li_vat, me_pib, mk_vat, mr_nif, np_pan, sn_ninea, sr_fin, tj_tin, ug_tin, zm_tin, zw_tin.

Value String False

Value of the tax ID.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

OwnerType String False

Type of owner referenced. The default value is 'self'.

The allowed values are account, application, customer, self.

OwnerAccount String False

The account being referenced when type is account.

OwnerCustomer String False

The customer being referenced when type is customer.

OwnerApplication String True

The Connect Application being referenced when type is application.

VerificationStatus String True

Tax ID verification status, one of pending, verified, unverified, or unavailable.

VerificationVerifiedAddress String True

Tax ID Verified address.

VerificationVerifiedName String True

Tax ID Verified name.

Object String True

String representing the object’s type. Objects of the same type share the same value.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account. Required when OwnerType = 'Application'.

CData Python Connector for Stripe

TaxRates

Creates, updates, and queries the tax rates that applies to Invoices, Subscriptions, and Checkout Sessions to collect tax.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
Active=
Created>, >=, <, <=, =
Inclusive=
AccountId=

The rest of the filter is executed client-side within the connector.

You can select from the TaxRates table with the following queries:

SELECT * FROM TaxRates WHERE Id = '123124'
SELECT * FROM TaxRates WHERE Active = 'true'
SELECT * FROM TaxRates WHERE Created >= '2023-07-14T05:36:46.000-04:00'
SELECT * FROM TaxRates WHERE Inclusive = 'true'

Insert

To create a new tax rate:

INSERT INTO TaxRates (Active, Country, Description, DisplayName, Inclusive, Jurisdiction, Percentage, TaxType) values ('true', 'IN', 'GST', 'GST India.', 'false', 'IN', '18', 'sales_tax')

Update

To modify a tax rate, specify the Id:

UPDATE TaxRates SET Description='GST for Country India' WHERE Id='123124'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the tax rates

Active Boolean False

Defaults to true. When set to false, this tax rate cannot be used with new applications or Checkout Sessions, but still works for subscriptions and invoices that already have it set.

Country String False

A two-letter country code.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

Description String False

An arbitrary string attached to the tax rate for your internal use only. It is not visible to your customers.

DisplayName String False

The display name of the tax rates as it appears to your customer on their receipt email, PDF, and the hosted invoice page.

EffectivePercentage Double True

The actual/effective tax rate percentage out of 100.

Inclusive Boolean False

Specifies if the tax rate is inclusive or exclusive.

Jurisdiction String False

The jurisdiction for the tax rate. You can use this label field for tax reporting purposes.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

Percentage Double False

The tax rate percentage out of 100.

State String False

An ISO 3166-2 subdivision code, without country prefix.

TaxType String False

The high-level tax type, such as vat or sales_tax.

The allowed values are amusement_tax, communications_tax, gst, hst, igst, jct, lease_tax, pst, qst, rst, sales_tax, service_tax, vat.

JurisdictionLevel String True

The level of the jurisdiction that imposes this tax rate. Will be null for manually defined tax rates.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get topups for.

CData Python Connector for Stripe

TestClocks

Create, delete, and query the available TestClocks in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=

You can select from the TestClocks table with the following queries:

SELECT * FROM TestClocks WHERE Name = 'TestName'
SELECT * FROM TestClocks WHERE Status = 'active'
SELECT * FROM TestClocks WHERE Created > '2024-01-01'
SELECT * FROM TestClocks WHERE DeletesAfter < '2025-01-01'
SELECT * FROM TestClocks WHERE Id = 'clock_1PYNnU2eZvKYlo2CNSmVfWJP'

Insert

To create a new test clock, the FrozenTime column is required:

INSERT INTO TestClocks (FrozenTime, Name) VALUES ('2024-07-03', 'TestName')

Delete

To delete a test clock, specify the Id:

DELETE FROM TestClocks WHERE Id = 'clock_1PYNnU2eZvKYlo2CNSmVfWJP'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the object.

Name String False

The custom name supplied at creation.

Status String True

The status of the Test Clock.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

DeletesAfter Datetime True

Time at which this clock is scheduled to auto delete.

FrozenTime Datetime False

The initial frozen time for this test clock.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

StatusDetailsAdvancingTargetFrozenTime Datetime True

The frozen_time that the Test Clock is advancing towards.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get coupons for.

CData Python Connector for Stripe

TopUps

Creates, updates, and queries the top-up of the Stripe balance.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Amount=
Created>, >=, <, <=, =
Status=
AccountId=

You can select from the TopUps table with the following queries:

SELECT * FROM TopUps WHERE Id = '123124'
SELECT * FROM TopUps WHERE Amount = 1500
SELECT * FROM TopUps WHERE Created >= '2023-07-14T05:36:46.000-04:00'
SELECT * FROM TopUps WHERE Status = 'succeeded'

Insert

To create a new topup, at least Amount and Currency are required:

INSERT INTO TopUps (Amount, Currency, Description) values (500, 'USD', 'This is the first topup of 5000 USD.')

Update

To modify a topup, specify the Id:

UPDATE TopUps SET Description='This is the initial topup of 500 USD.' WHERE Id='123124'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the top-ups.

Amount Integer False

The amount transferred.

BalanceTransaction String True

The Id of the balance transaction.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

Currency String False

A three-letter ISO currency code, in lowercase.

Description String False

The top-up description.

ExpectedAvailabilityDate Datetime True

The date the funds are expected to arrive in the Stripe account for payouts.

FailureCode String True

An error code explaining reason for top-up failure if available.

FailureMessage String True

A message to the user that further explains reason for top-up failure if available.

Livemode Boolean True

true if the object exists in live mode and false if in test mode.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

Source String True

The source details of the Stripe user.

StatementDescriptor String False

Extra information about a top-up.

Status String True

The status of the top-up is either canceled, failed, pending, reversed, or succeeded.

TransferGroup String False

A string that identifies this top-up as part of a group.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
SourceId String

The ID of a source to transfer funds from. It is a psuedo column only supported for insert.

AccountId String

The Id of the connected account to get topups for.

CData Python Connector for Stripe

TransferReversals

Create, update, and query the available reversals belonging to a specific transfer.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Transfer=
AccountId=

To query the TransferReversals table, the Id of the transfer whose reversals are retrieved is required:

SELECT * FROM  TransferReversals WHERE Transfer = 'tr_12345678'

Insert

The Transfer column is required to insert to this table:

INSERT INTO TransferReversals (Amount, Transfer) VALUES (2000, 'tr_12345678')

Update

To update metadata or description in this table, specify both the Id and Transfer values:

UPDATE TransferReversals SET Metadata = '{"Description": "test metadata update"}' WHERE Id = 'trr_13jgn4kj' AND Transfer = 'tr_12345678'

UPDATE TransferReversals SET Description = 'Test Description' WHERE Id = 'trr_13jgn4kj' AND Transfer = 'tr_12345678'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the reversal.

Transfer [KEY] String False

The Id of the transfer that was reversed.

Amount Integer False

A positive integer in cents representing how much of this transfer to reverse.

RefundApplicationFee Boolean False

Boolean indicating whether the application fee should be refunded when reversing this transfer.

Currency String True

The currency.

Metadata String False

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

Object String True

String representing the object's type. Objects of the same type share the same value.

BalanceTransaction String True

Balance transaction that describes the impact on your account balance.

DestinationPaymentRefund String True

Linked payment refund for the transfer reversal.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

SourceRefund String True

ID of the refund responsible for the transfer reversal.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
Description String

An arbitrary string which you can attach to a reversal object. It is displayed alongside the reversal in the dashboard. This will be unset if you POST an empty value.

AccountId String

The Id of the connected account to get Transfer reversals for.

CData Python Connector for Stripe

Transfers

Create, update, and query the available transfers in Stripe.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
AccountId=
Destination=
Created<, >, >=, <, <=, =

You can select:

  • A transfer by specifying its Id:
    SELECT * FROM Transfers WHERE Id = 'tr_12345678'
  • A transfer created after a specific date:
    SELECT * FROM Transfers WHERE Created > '2023-07-21 19:00:27.0'
    • Created can also be used twice to specify a range:
      SELECT * FROM Transfers WHERE Created >= '2023-01-01 00:00:00.0' AND Created <= '2023-12-31 23:59:59.0'

Insert

Currency, Amount, and Destination are required to insert into this table. The destination is the Id of a connected Stripe account:

INSERT INTO Transfers (Amount, Currency, Destination, TransferGroup) VALUES (1000, 'USD', 'acct_19abC2DFGl5DVRzj', 'ORDER_95')

Update

To update a transfer, set a description or metadata and specify an Id in the WHERE clause:

UPDATE Transfers SET Description = 'New desc', MetadataAggregate = '{\"test\" : \"test\"}' WHERE Id = 'tr_123456788'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the transfer.

Currency String False

The currency.

Amount Integer False

Amount (in cents) to be transferred to your bank account.

AmountReversed Integer True

Amount in cents reversed (can be less than the amount attribute on the transfer if a partial reversal was issued).

BalanceTransaction String True

Balance transaction that describes the impact of this transfer on your account balance.

Created Datetime True

Time that this record of the transfer was first created.

Date Datetime True

Date the transfer is scheduled to arrive in the bank. This doesn't factor in delays like weekends or bank holidays.

Description String False

Internal-only description of the transfer.

Destination String False

The Id of the bank account, card, or Stripe account the transfer was sent to.

DestinationPayment String True

If the destination is a Stripe account, this will be the Id of the payment that the destination account received for the transfer.

FailureCode String True

Error code explaining reason for transfer failure if available.

FailureMessage String True

Message to user further explaining reason for transfer failure if available.

Reversed Boolean True

Whether the transfer has been fully reversed. If the transfer is only partially reversed, this attribute will still be false.

SourceTransaction String False

The Id of the charge (or other transaction) that was used to fund the transfer. If null, the transfer was funded from the available balance.

SourceType String False

The source balance this transfer came from.

StatementDescriptor String True

Extra information about a transfer to be displayed on the user's bank statement.

Status String True

Current status of the transfer.

Type String True

The type of the transfer.Can be card, bank_account, or stripe_account.

MetadataAggregate String False

The transfer metadata object.

Object String True

String representing the object's type. Objects of the same type share the same value.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

ReversalsAggregate String True

A list of reversals that have been applied to the transfer.

TransferGroup String False

A string that identifies this transaction as part of a group.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get transfers for.

CData Python Connector for Stripe

UsageRecords

Creates and retrieves the customer usage and metrics to Stripe for metered billing for subscription prices.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
SubscriptionItem=
AccountId=

To retrieve a usage record, SubscriptionItem is required:

SELECT * FROM UsageRecords WHERE SubscriptionItem='si_NBswnjzMefKen7'

Insert

To create a usage record for a subscription item, you must specify at least a SubscriptionItem value:

INSERT INTO UsageRecords (SubscriptionItem, Timestamp, Quantity) values ('si_NBswnjzMefKen7', '2023-07-14T05:36:46.000-04:00', 100)

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the usage record.

Invoice String True

The Id of the invoice.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

PeriodEnd Datetime True

The time of the period end.

PeriodStart Datetime True

The time of the period start.

SubscriptionItem String False

The Id of the subscription item.

Timestamp Datetime False

The timestamp for the usage event.

TotalUsage Integer True

The total usage.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get value list for.

Quantity Integer

The usage quantity for the specified date. This column supports only insert operation.

CData Python Connector for Stripe

ValueListItems

Creates, deletes, and queries the Values list items.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Created>, >=, <, <=, =
Value=, LIKE
ValueList=
AccountId=

You can select from the ValueListItems table with the following queries:

SELECT * FROM ValueListItems
SELECT * FROM ValueListItems WHERE Id = '123124'
SELECT * FROM ValueListItems WHERE Created >= '2023-07-14T05:36:46.000-04:00'
SELECT * FROM ValueListItems WHERE Value = 'This is the value.'
SELECT * FROM ValueListItems WHERE ValueList = 'rsl_1MGcyqSC4snQ'

Insert

To create a value list item:

INSERT INTO ValueListItems (Value, ValueList) values ('This is the list item.', 'rsl_1MGcyqSC4snQ')

Delete

To delete a value list item, specify the list item Id:

DELETE FROM ValueListItems WHERE Id='123124'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the value list items.

Created Datetime True

The time at which the object was created. Measured in seconds since the Unix epoch.

CreatedBy String True

The name or email address of the user who created this value list.

Livemode Boolean True

true if the object exists in live mode and false if in test mode.

Value String False

The value of the item.

ValueList String False

The Id of the value list.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get value list for.

CData Python Connector for Stripe

ValueLists

Creates, updates, deletes, and queries values in a list.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Alias=
Created>, >=, <, <=, =
AccountId=

You can select from the ValueLists table with the following queries:

SELECT * FROM ValueLists WHERE Id = '123124'
SELECT * FROM ValueLists WHERE Alias = 'customer_email_list'
SELECT * FROM ValueLists WHERE Created >= '2023-07-14T05:36:46.000-04:00'

Insert

To create a value list:

INSERT INTO ValueLists (Alias, ItemType, Name) values ('customer_email_li', 'email', 'Customer Email List')

Update

To modify a value list, specify the list's Id:

UPDATE ValueLists SET Alias ='customer_email_list' WHERE Id='123124'

Delete

To delete a value list, specify the list's Id:

DELETE FROM ValueLists WHERE Id='123124'

Columns

Name Type ReadOnly References Description
Id [KEY] String True

The Id of the value list.

Alias String False

The name of the value list for use in rules.

Created Datetime True

Time at which the object was created. Measured in seconds since the Unix epoch.

CreatedBy String True

The name or email address of the user who created this value list.

ItemType String False

The type of items in the value list. Possible values are card_fingerprint, card_bin, email, ip_address, country, string, case_sensitive_string, or customer_id.

ListItemsUrl String True

The URL where this list can be accessed.

Livemode Boolean True

true if the object is in live mode andfalse if in test mode.

Name String False

The name of the value list.

Metadata String False

The set of key/value pairs that you can attach to a value list object.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String

The Id of the connected account to get value list for.

CData Python Connector for Stripe

Views

Views are similar to tables in the way that data is represented; however, views are read-only.

Queries can be executed against a view as if it were a normal table.

CData Python Connector for Stripe Views

Name Description
ApplicationFeeRefunds Returns a list of application fees youve previously collected.
ApplicationFees Returns a list of file links.
Authorizations Returns a list of Issuing Authorization objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
AvailableBalance Query the Available Balance in Stripe.
BalanceChangeFromActivitySummaryReport Query the Balance change from activity summary report in Stripe.
BalanceSummaryReport Query the Balance Summary report in Stripe.
BalanceTransactions Query Balance History in Stripe.
Cardholders Returns a list of Issuing Cardholder objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
CashBalance Get the cash balance for the customer.
CashBalanceTransactions Query Cash Balance Transactions in Stripe.
CheckoutSessionLineItems Returns a list of Checkout Sessions.
CountrySpecs Query the available Country Specs in Stripe.
CreditNoteLineItems Query the available Credit Note line items in Stripe.
CreditNoteLineItemsDiscounts Get the available discounts from Credit Note line items in Stripe.
CreditNotePreviewLineItems Query the available Credit Note preview line items in Stripe.
CryptoOnrampQuotes Retrieve Crypto Onramp Quote objects.
CustomerBalanceTransactions Returns a list of transactions that updated the customers balances.
CustomerSubscriptions Get the available subscriptions of a Customer.
EarlyFraudWarning Query an early fraud reported by the customer.
EndingBalanceReconciliationSummaryReport Query the Ending balance reconciliation summary report in Stripe.
Events Query the available events in Stripe.
FileLinks Returns a list of file links.
Files Retrieves a file hosted on Stripe's servers.
InvoiceDiscounts Get the available discounts of invoices in Stripe.
InvoiceItemDiscounts Get the available discounts from invoices items in Stripe.
InvoiceLineItemDiscounts Get the available discounts from invoices line items in Stripe.
InvoiceLineItems Query the available invoices line items in Stripe.
InvoicePayments Get the available invoice payment objects in Stripe.
InvoiceRenderingTemplates Create, update, delete, and query the Accounts you manage in Stripe.
IssuingCards Returns a list of Issuing Card objects.
IssuingDisputes Returns a list of Issuing Dispute objects.
ItemizedBalanceChangeFromActivityReport Query the Itemized balance change from Activity report in Stripe.
ItemizedEndingBalanceReconciliationReport Query the Itemized ending balance change from activity report in Stripe.
ItemizedPayoutReconciliationReport Query the Itemized payout reconciliation report in Stripe.
ItemizedPayoutsReport Query the Itemized payouts report in Stripe.
ItemizedReconciliationForASinglePayoutReport Query the Itemized reconciliation for a single payout report in Stripe.
Mandates Retrieves a Mandate object.
PaymentLinkLineItems Query the available PaymentLink line items in Stripe.
PaymentMethodDomains Lists the details of existing payment method domains.
PayoutsReconciliationSummaryForASinglePayoutReport Payouts reconciliation summary for a single payout in Stripe.
PayoutsReconciliationSummaryReport Query the Payouts reconciliation summary report in Stripe.
PayoutsSummaryReport Query the Payouts summary report in Stripe.
PendingBalance Query the available balance in Stripe.
Reports To Create and Query the Report Run object, which represents an instance of a report type generated with specific run parameters.
ReportTypes To query the available report types.
Reviews Queries the reviews.
SetupAttempts Returns a list of SetupAttempts that associate with a provided SetupIntent.
SetupIntents Returns a list of SetupIntents.
SubscriptionSchedules Retrieves the list of your subscription schedules.
TaxCodes Queries the tax codes which classify goods and services for tax purposes.
Transactions Returns a list of Issuing Transaction objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.

CData Python Connector for Stripe

ApplicationFeeRefunds

Returns a list of application fees youve previously collected.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
ApplicationFeeId=
Id=

You can select from ApplicationFeeRefunds with the following queries:

    SELECT * FROM ApplicationFeeRefunds WHERE ApplicationFeeId = 'fee_1ACvR6I2xUg5aQMAnqlDqwJY'
    SELECT * FROM ApplicationFeeRefunds WHERE Id = 'fr_A2ZYOWsSreeFvP'

Columns

Name Type References Description
Id [KEY] String The id of files.
ApplicationFeeId [KEY] String The Id of the application fee.
Amount Integer Amount, in cents.
BalanceTransaction String Balance transaction that describes the impact on your account balance.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get files for.

CData Python Connector for Stripe

ApplicationFees

Returns a list of file links.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Charge=
Created=, >, >=, <, <=

You can select from ApplicationFees with the following queries:

    SELECT * from ApplicationFees where charge = 'py_1Ofr5O2cbZNns1OzqCZGhR9a'
    SELECT * FROM ApplicationFees WHERE Created > '2024-01-01'
    SELECT * FROM ApplicationFees WHERE Refunded = true
    SELECT * FROM ApplicationFees WHERE Currency = 'usd'

Columns

Name Type References Description
Id [KEY] String The id of files.
Amount Integer Amount, in cents.
AmountRefunded Integer Amount in cents refunded (can be less than the amount attribute on the fee if a partial refund was issued).
Application String ID of the Connect application that earned the fee.
BalanceTransaction String Balance transaction that describes the impact on your account balance.
Charge String ID of the charge that the application fee was taken from.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
OriginatingTransaction String ID of the corresponding charge on the platform account, if this fee was the result of a charge using the destination parameter.
Refunded Boolean Whether the fee has been fully refunded. If the fee is only partially refunded, this attribute will still be false.
Refunds String A list of refunds that have been applied to the fee.
AccountId String The Id of the connected account to get files for.

CData Python Connector for Stripe

Authorizations

Returns a list of Issuing Authorization objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CardId=
CardCardholderId=
Status=
Created=, >, >=, <, <=

You can select from Authorizations with the following queries:

    SELECT * from Authorizations WHERE CardId = 'ic_1Nsse72eZvKYlo2CWBGm2WQ5'
    SELECT * from Authorizations WHERE CardCardholderId = 'ich_1NpvWO2eZvKYlo2CAQ7YPOvp'
    SELECT * from Authorizations WHERE Id = 'iauth_1ObVV22eZvKYlo2C9UYAEpOT'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
Amount Integer The total amount that was authorized or rejected.
AmountDetailsAtmFee Integer The fee charged by the ATM for the cash withdrawal.
AmountDetailsCashbackAmount Integer The amount of cash requested by the cardholder.
Approved Boolean Indicates whether the authorization has been approved.
AuthorizationMethod String How the card details were provided.
BalanceTransactions String List of balance transactions associated with this authorization.
CardId String Unique identifier for the object.
CardObject String String representing the object's type. Objects of the same type share the same value.
CardBrand String The brand of the card.
CardCancellation_reason String The reason why the card was canceled.
CardCardholderId String Unique identifier for the object.
CardCardholderObject String String representing the object's type. Objects of the same type share the same value.
CardCardholderBillingAddressCity String City, district, suburb, town, or village.
CardCardholderBillingAddressCountry String Two-letter country code
CardCardholderBillingAddressLine1 String Address line 1
CardCardholderBillingAddressLine2 String Address line 2
CardCardholderBillingAddressPostalCode String ZIP or postal code.
CardCardholderBillingAddressState String State, county, province, or region.
CardCardholderCompanyTaxIdProvided Boolean Indicates whether the company's business Id number was provided.
CardCardholderCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
CardCardholderEmail String The cardholder's email address.
CardIssuingUserTermsAcceptanceDate Datetime The Unix timestamp marking when the cardholder accepted the Authorized User Terms.
CardIssuingUserTermsAcceptanceIP String The IP address from which the cardholder accepted the Authorized User Terms.
CardIssuingUserTermsAcceptanceUserAgent String The user agent of the browser from which the cardholder accepted the Authorized User Terms.
CardCardholderDOBDay Integer The day of birth, between 1 and 31.
CardCardholderDOBMonth Integer The month of birth, between 1 and 12.
CardCardholderDOBYear Integer The four-digit year of birth.
CardCardholderFirstName String The first name of this cardholder.
CardCardholderLastName String The last name of this cardholder.
CardCardholderVerficationDocBack String The back of a document returned by a file upload with a purpose value of identity_document.
CardCardholderVerficationDocFront String The front of a document returned by a file upload with a purpose value of identity_document.
CardCardholderLivemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
CardCardholderMetadataAggregate String The set of key/value pairs that you can attach to a an object.
CardCardholderName String The cardholder's name. This will be printed on cards issued to them.
CardCardholderPhoneNumber String The cardholder's phone number. This is required for all cardholders who will be creating EU cards.
CardCardholderPreferredLocales String The cardholder's preferred locales (languages), ordered by preference.
CardCardholderRequirementsDisabledReason String If disabled_reason is present, all cards will decline authorizations with cardholder_verification_required reason.
CardCardholderRequirementsPastDue String Array of fields that need to be collected in order to verify and re-enable the cardholder.
CardCardholderSpendingControlsAllowedCategories String Array of strings containing categories of authorizations to allow.
CardCardholderSpendingControlsBlockedCategories String Array of strings containing categories of authorizations to decline.
CardCardholderSpendingControlsSpendingLimits String Limit spending with amount-based rules that apply across this cardholders cards.
CardCardholderSpendingControlsSpendingLimitsCurrency String Currency of the amounts within spending_limits.
CardCardholderStatus String Specifies whether to permit authorizations on this cardholder’s cards.
CardCardholderType String One of individual or company.
CardCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
CardCurrency String Three-letter ISO currency code, in lowercase.
CardCVC String The cards CVC. For security reasons, this is only available for virtual cards, and will be omitted unless you explicitly request it with the expand parameter.
CardExpMonth Integer The expiration month of the card.
CardExpYear Integer The expiration year of the card.
CardLast4 String The last 4 digits of the card number.
CardLivemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
CardMetadataAggregate String The set of key/value pairs that you can attach to a an object.
CardNumber String The full unredacted card number.
CardReplacedBy String The latest card that replaces this card, if any.
CardReplacementFor String The card this card replaces, if any.
CardReplacementReason String The reason why the previous card needed to be replaced.
CardShipping String Where and how the card will be shipped.
CardCardholderSpendingControlsAllowedMerchantCountries String Array of strings containing representing countries from which authorizations will be allowed. Authorizations from merchants in all other countries will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with blocked_merchant_countries. Provide an empty value to unset this control.
CardCardholderSpendingControlsBlockedMerchantCountries String Array of strings containing representing countries from which authorizations will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with allowed_merchant_countries. Provide an empty value to unset this control.
CardPersonalizationDesign String The personalization design object belonging to this card.
CardSpendingControlsAllowedCategories String Array of strings containing categories of authorizations to allow. All other categories will be blocked. Cannot be set with blocked_categories.
CardSpendingControlsAllowedMerchantCountries String Array of strings containing representing countries from which authorizations will be allowed. Authorizations from merchants in all other countries will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with blocked_merchant_countries. Provide an empty value to unset this control.
CardSpendingControlsBlockedCategories String Array of strings containing categories of authorizations to decline. All other categories will be allowed. Cannot be set with allowed_categories.
CardSpendingControlsBlockedMerchantCountries String Array of strings containing representing countries from which authorizations will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with allowed_merchant_countries. Provide an empty value to unset this control.
CardSpendingControlsSpendingLimits String Limit spending with amount-based rules that apply across any cards this card replaced (i.e., its replacement_for card and that card’s replacement_for card, up the chain).
CardSpendingControlsSpendingLimitsCurrency String Currency of the amounts within spending_limits. Always the same as the currency of the card.
CardType String The type of the card. Possible enum values: physical, virtual.
CardWalletsApplePayEligible Boolean Apple Pay Eligibility.
CardWalletsApplePayIneligibleReason String Reason the card is ineligible for Apple Pay.
CardWalletsGooglePayEligible Boolean Google Pay Eligibility.
CardWalletsGooglePayIneligibleReason String Reason the card is ineligible for Google Pay.
CardWalletsPrimaryAccountIdentifier String Unique identifier for a card used with digital wallets.
Cardholder String The cardholder to whom this authorization belongs.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.

CData Python Connector for Stripe

AvailableBalance

Query the Available Balance in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
AccountId=

You can select from AvailableBalance with the following queries:

    SELECT * FROM AvailableBalance WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'
    SELECT * FROM AvailableBalance WHERE Currency = 'usd'
    SELECT * FROM AvailableBalance WHERE Livemode = true
    SELECT * FROM AvailableBalance WHERE Amount > 10000

Columns

Name Type References Description
Currency String The currency of the available balance.
Amount Long The available amount.
SourceTypesCard Long The source cards.
SourceTypesBankAccount Long Amount for bank account.
SourceTypesBitcoinReceiver Long Amount for Bitcoin Receiver.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get available balance for

CData Python Connector for Stripe

BalanceChangeFromActivitySummaryReport

Query the Balance change from activity summary report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • Id
  • ParametersColumns
  • ParametersCurrency

// This first creates the new Report and displays it. Report Creation takes time; once it is created it displays the report.
SELECT * FROM BalanceChangeFromActivitySummaryReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28'

Select

You can run the following queries to retrieve report data:

SELECT * FROM BalanceChangeFromActivitySummaryReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'balance_change_from_activity.summary.1')
SELECT * FROM BalanceChangeFromActivitySummaryReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY')  // This shows multiple reports
SELECT * FROM BalanceChangeFromActivitySummaryReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This shows a respective report

Columns

Name Type References Description
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Count Int The number of transactions associated with the reporting_category.
Gross Decimal Sum of the gross amounts of the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Sum of the fees paid for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Sum of the net amounts for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.

CData Python Connector for Stripe

BalanceSummaryReport

Query the Balance Summary report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • Id
  • ParametersColumns
  • ParametersCurrency
  • ParametersTimezone

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM BalanceSummaryReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28' 

Select

You can run the following queries to retrieve report data:

SELECT * FROM BalanceSummaryReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'balance.summary.1')
SELECT * FROM BalanceSummaryReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM BalanceSummaryReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Category String One of starting_balance, ending_balance, activity or payouts.
Description String One of Starting balance (YYYY-MM-DD) - the balance at the start of the period, Activity - the net amount of all transactions that affected your balance except for payouts, Less payouts - the amount of payouts to your bank account, or Ending balance (YYYY-MM-DD) - the balance left over at the end of the period after subtracting payouts from the Starting balance and Activity.
Net_Amount Decimal Net amount for the transactions associated with category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Currency String Three-letter ISO code for the currency in which net_amount is defined.
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.

CData Python Connector for Stripe

BalanceTransactions

Query Balance History in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Currency=
Source=
Type=
Payout=
AccountId=
Created>, >=, <, <=, =

You can select from BalanceTransactions with the following queries:

    SELECT * FROM BalanceTransactions
    SELECT * FROM BalanceTransactions WHERE Id = 'txn_1K2M4c2eZvKYlo2C1C1A1bQq'
    SELECT * FROM BalanceTransactions WHERE Created >= '2023-01-01' AND Created <= '2023-12-31'
    SELECT * FROM BalanceTransactions WHERE Created >= '2023-01-01' AND Created <= '2023-12-31'

You can also filter balance transactions by a specified payout:

SELECT * FROM BalanceTransactions WHERE Payout = '123'

Columns

Name Type References Description
Id [KEY] String The Id of the balance transaction.
Amount Integer Gross amount of the transaction, in cents.
AvailableOn Datetime The date the net funds of the transaction will become available in the Stripe balance.
Created Datetime The datetime of creation.
Currency String The currency of the transaction.
Description String The transaction description.
Fee Integer Fees (in cents) paid for this transaction.
FeeDetailsAggregate String The fee details.
Net Integer Net amount of the transaction, in cents.
Source String The Stripe object this transaction is related to.
Status String If the net funds of the transaction are available in the Stripe balance yet. Either available or pending.
Type String Transaction type.
ReportingCategory String reporting categories can help you understand balance transactions from an accounting perspective.
ExchangeRate Decimal The exchange rate used, if applicable, for this transaction.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
Transfer String For automatic Stripe transfers only, only returns transactions that were transferred out on the specified transfer Id.
Payout String For automatic Stripe payouts only, only returns transactions that were payed out on the specified payout ID.
AccountId String The Id of the connected account to get balance history for

CData Python Connector for Stripe

Cardholders

Returns a list of Issuing Cardholder objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Created=, >, >=, <, <=
Email=
PhoneNumber=
Status=
Type=

You can select from Cardholders with the following queries:

    SELECT * FROM Cardholders WHERE Id = 'ich_1OctV22eZvKYlo2C6ETSndgk'
    SELECT * FROM Cardholders WHERE Created = '2024-01-18 02:16:47.0'
    SELECT * FROM Cardholders WHERE PhoneNumber = '+1234567890'
    SELECT * FROM Cardholders WHERE Email = 'example@example.com'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
BillingAddressCity String City, district, suburb, town, or village.
BillingAddressCountry String Two-letter country code
BillingAddressLine1 String Address line 1
BillingAddressLine2 String Address line 2
BillingAddressPostalCode String ZIP or postal code.
BillingAddressState String State, county, province, or region.
Email String The cardholders email address.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
Name String The cardholders name. This will be printed on cards issued to them.
IsCompanyTaxIdProvided Boolean The cardholders phone number.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Individual String Additional information about an individual cardholder.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Object String String representing the objects type. Objects of the same type share the same value.
PhoneNumber String The cardholders phone number.
RequirementsDisabledReason String If disabled_reason is present, all cards will decline authorizations with cardholder_verification_required reason.
RequirementsPastDue String Array of fields that need to be collected in order to verify and re-enable the cardholder.
SpendingControlsAllowedCategories String Array of strings containing categories of authorizations to allow.
SpendingControlsBlockedCategories String Array of strings containing categories of authorizations to decline.
SpendingControlsSpendingLimits String Limit spending with amount-based rules that apply across this cardholders cards.
SpendingControlsSpendingLimitsCurrency String Currency of the amounts within spending_limits.
Status String Specifies whether to permit authorizations on this cardholders cards.
Type String One of individual or company.
PreferredLocales String The cardholder's preferred locales (languages), ordered by preference. Locales can be de, en, es, fr, or it. This changes the language of the 3D Secure flow and one-time password messages sent to the cardholder.
SpendingControlsAllowedMerchantCountries String Array of strings containing representing countries from which authorizations will be allowed. Authorizations from merchants in all other countries will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with blocked_merchant_countries. Provide an empty value to unset this control.
SpendingControlsBlockedMerchantCountries String Array of strings containing representing countries from which authorizations will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with allowed_merchant_countries. Provide an empty value to unset this control.

CData Python Connector for Stripe

CashBalance

Get the cash balance for the customer.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
CustomerId=
AccountId=

You can select from CashBalance with the following queries:

    SELECT * FROM CashBalance WHERE CustomerId = 'cus_qwew123'
    SELECT * FROM CashBalance WHERE Livemode = true
    SELECT * FROM CashBalance WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'

Columns

Name Type References Description
CustomerId [KEY] String The Id of the customer.
Available String A hash of all cash balances available to this customer.
Livemode Boolean true if the object is in live mode andfalse if in test mode.
object String String representing the object's type.
ReconciliationMode String The configuration for how funds that land in the customer cash balance are reconciled.
UsingMerchantDefault Boolean A flag to indicate if reconciliation mode returned is the user?s default or is specific to this customer cash balance.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get customer discounts for

CData Python Connector for Stripe

CashBalanceTransactions

Query Cash Balance Transactions in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CustomerId=

You can select:

All cash balance transactions:

SELECT * FROM CashBalanceTransactions

A cash balance transaction by specifying both its Id and CustomerId:

SELECT * FROM CashBalanceTransactions WHERE Id = 'ccsbtxn_1Q0yb2ATXQzBWNrl8rqvEizC' AND CustomerId = 'cus_PwQLqslVNldED7'

Cash balance transactions associated with its associated CustomerId:

SELECT * FROM CashBalanceTransactions WHERE CustomerId = 'cus_PwQLqslVNldED7'

Cash balance transactions associated with its Id:

SELECT * FROM CashBalanceTransactions WHERE Id = 'ccsbtxn_1Q3XBhATXQzBWNrlqd5UcD8l'

Columns

Name Type References Description
Id [KEY] String The Id of the Cash Balance Transaction.
CustomerId [KEY] String

Customers.Id

The customer whose available cash balance changed as a result of this transaction.
AdjustedForOverdraftBalanceTransaction String If this is a type=adjusted_for_overdraft transaction, contains the Balance Transaction that corresponds to funds taken out of your Stripe balance.
AdjustedForOverdraftLinkedTransaction String If this is a type=adjusted_for_overdraft transaction, contains the Cash Balance Transaction that brought the customer balance negative, triggering the clawback of funds.
AppliedToPaymentPaymentIntent String If this is a type=applied_to_payment transaction, contains the Payment Intent that funds were applied to.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
EndingBalance Integer The total available cash balance for the specified currency after this transaction was applied. Represented in the smallest currency unit.
FundedBankTransferEuBankTransferBic String If this is a type=funded transaction, and the bank transfer is an EU bank transfer which funded the customer's cash balance, contains the BIC of the bank of the sender of the funding.
FundedBankTransferEuBankTransferIbanLast4 Integer If this is a type=funded transaction, and the bank transfer is an EU bank transfer which funded the customer's cash balance, contains the last 4 digits of the IBAN of the sender of the funding.
FundedBankTransferEuBankTransferSenderName String If this is a type=funded transaction, and the bank transfer is an EU bank transfer which funded the customer's cash balance, contains the full name of the sender, as supplied by the sending bank.
FundedBankTransferGbBankTransferAccountNumberLast4 Integer If this is a type=funded transaction, and the bank transfer is a UK bank transfer which funded the customer's cash balance, contains the last 4 digits of the account number of the sender of the funding.
FundedBankTransferGbBankTransferSenderName String If this is a type=funded transaction, and the bank transfer is a UK bank transfer which funded the customer's cash balance, contains the full name of the sender, as supplied by the sending bank.
FundedBankTransferGbBankTransferSortCode String If this is a type=funded transaction, and the bank transfer is a UK bank transfer which funded the customer's cash balance, contains the sort code of the bank of the sender of the funding.
FundedBankTransferJpBankTransferSenderBank String If this is a type=funded transaction, and the bank transfer is a Japan bank transfer which funded the customer's cash balance, contains the name of the bank of the sender of the funding.
FundedBankTransferJpBankTransferSenderBranch String If this is a type=funded transaction, and the bank transfer is a Japan bank transfer which funded the customer's cash balance, contains the name of the bank branch of the sender of the funding.
FundedBankTransferJpBankTransferSenderName String If this is a type=funded transaction, and the bank transfer is a Japan bank transfer which funded the customer's cash balance, contains the full name of the sender, as supplied by the sending bank.
FundedBankTransferReference String If this is a type=funded transaction, contains the user-supplied reference field on the bank transfer.
FundedBankTransferType String If this is a type=funded transaction, contains the funding method type used to fund the customer balance. Permitted values include: eu_bank_transfer, gb_bank_transfer, jp_bank_transfer, mx_bank_transfer, or us_bank_transfer.
FundedBankTransferUsBankTransferNetwork String If this is a type=funded transaction, contains US-specific banking network used for this funding.
FundedBankTransferUsBankTransferSenderName String If this is a type=funded transaction, contains US-specific full name of the sender, as supplied by the sending bank.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
NetAmount Integer The amount by which the cash balance changed, represented in the smallest currency unit. A positive value represents funds being added to the cash balance, a negative value represents funds being removed from the cash balance.
RefundedFromPaymentRefund String If this is a type=refunded_from_payment transaction, contains the Refund that moved these funds into the customer’s cash balance.
TransferredToBalanceBalanceTransaction String If this is a type=transferred_to_balance transaction, contains the Balance Transaction that corresponds to funds transferred to your Stripe balance.
Type String The type of the cash balance transaction. New types may be added in future.
UnappliedFromPaymentPaymentIntent String If this is a type=unapplied_from_payment transaction, contains the Payment Intent that funds were unapplied from.
Object String String representing the object’s type. Objects of the same type share the same value.

CData Python Connector for Stripe

CheckoutSessionLineItems

Returns a list of Checkout Sessions.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
CheckoutSessionId=

You can select from CheckoutSessionLineItems with the following queries:

    SELECT * FROM CheckoutSessionLineItems WHERE CheckoutSessionId = 'cs_test_c1niqxjO1iwaT5asACq3TXhErRm3T7iuPV6AEbcP5ReTfutnEloisMpGol'
    SELECT * FROM CheckoutSessionLineItems WHERE Currency = 'usd'
    SELECT * FROM CheckoutSessionLineItems WHERE AmountTotal > 5000
    SELECT * FROM CheckoutSessionLineItems WHERE PriceLiveMode = true

Columns

Name Type References Description
Id [KEY] String The Id of the Checkout Session line item.
CheckoutSessionId String The Id of the Checkout Session
Object String String representing the objects type. Objects of the same type share the same value.
AmountDiscount Integer Total discount amount applied. If no discounts were applied, defaults to 0.
AmountTax Integer Total tax amount applied. If no tax was applied, defaults to 0.
AmountSubtotal Integer Total before any discounts or taxes are applied.
AmountTotal Integer Total after discounts and taxes.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Description String An arbitrary string attached to the object. Often useful for displaying to users. Defaults to product name.
Discounts String The discounts applied to the line item.
PriceId String Unique identifier for the object.
PriceObject String String representing the object’s type. Objects of the same type share the same value.
PriceActive Boolean Whether the price can be used for new purchases.
PriceBillingScheme String Describes how to compute the price per period.
PriceCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
PriceCurrency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
PriceCustomUnitAmountMaximum Integer The maximum unit amount the customer can specify for this item.
PriceCustomUnitAmountMinimum Integer The minimum unit amount the customer can specify for this item.
PriceCustomUnitAmountPreset Integer The starting unit amount which can be updated by the customer.
PriceLiveMode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
PriceLookupKey String A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.
PriceMetadata String Set of key-value pairs that you can attach to an object.
PriceNickName String A brief description of the price, hidden from customers.
PriceProduct String The ID of the product this price is associated with.
PriceRecurringAggregateUsage String Specifies a usage aggregation strategy for prices of usage_type=metered.
PriceRecurringInterval String The frequency at which a subscription is billed.
PriceRecurringIntervalCount Integer The number of intervals
PriceRecurringUsageType String Configures how the quantity per period should be determined
PriceTaxBehaviour String Only required if a default tax behavior was not provided in the Stripe Tax settings.
PriceTiers String Each element represents a pricing tier.
PriceTiersMode String Defines if the tiering price should be graduated or volume based.
PriceTransformQuantityDivideBy Integer Divide usage by this number.
PriceTransformQuantityRound String After division, either round the result up or down.
PriceType String One of one_time or recurring depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.
PriceUnitAmount Integer The unit amount in cents to be charged, represented as a whole integer if possible.
PriceUnitAmountDecimal String The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.
Quantity String The quantity of products being purchased.
Taxes String The taxes applied to the line item.

CData Python Connector for Stripe

CountrySpecs

Query the available Country Specs in Stripe.

View-Specific Information

Country Specs can be used when an account is created.

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
AccountId=

You can select from CountrySpecs with the following queries:

    SELECT * FROM CountrySpecs WHERE Id = 'MyCountrySpecsId'
    SELECT * FROM CountrySpecs WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'
    SELECT * FROM CountrySpecs WHERE DefaultCurrency = 'usd'

Columns

Name Type References Description
Id [KEY] String The ISO Country code for this country.
SupportedBankAccountCurrenciesAggregate String Currencies that can be accepted in the specific country.
SupportedPaymentCurrenciesAggregate String Currencies that can be accepted in the specified country.
SupportedPaymentMethodsAggregate String Payment methods available in the specified country. You will need to enable BitCoin and ACH payments on your account for those methods to appear in this list.
VerificationFieldsAggregate String Lists the types of verification data needed to keep an account open. Includes 'minimum' fields, which every account must eventually provide, as well as additional fields, which are only required for some merchants.
SupportedTransferCountriesAggregate String Countries that can accept transfers from the specified country.
DefaultCurrency String The default currency for this country.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get country specs for

CData Python Connector for Stripe

CreditNoteLineItems

Query the available Credit Note line items in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
CreditNoteId=
AccountId=

You can select from CreditNoteLineItems with the following queries:

    SELECT * FROM CreditNoteLineItems WHERE CreditNoteId = 'cn_1N8iWQ2eZvKYlo2CnrPpfSnK'
    SELECT * FROM CreditNoteLineItems WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'
    SELECT * FROM CreditNoteLineItems WHERE Amount > 5000
    SELECT * FROM CreditNoteLineItems WHERE Livemode = true

Columns

Name Type References Description
Id [KEY] String ID of Credit Note LineItem.
CreditNoteId String

CreditNotes.Id

Credit Note Id.
Amount Integer The integer amount in cents representing the gross amount being credited for this line item, excluding (exclusive) tax and discounts.
AmountExcludingTax Integer The integer amount in cents representing the amount being credited for this line item, excluding all tax and discounts.
Description String Description of the item being credited.
DiscountAmounts String The amount of discount calculated per discount for this line item.
InvoiceLineItem String ID of the invoice line item being credited.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Quantity Integer The number of units of product being credited.
TaxAmounts String The amount of tax calculated per tax rate for this line item.
TaxRates String The tax rates which apply to the line item.
Type String The type of the credit note line item, one of invoice_line_item or custom_line_item. When the type is invoice_line_item there is an additional invoice_line_item property on the resource the value of which is the id of the credited line item on the invoice.
UnitAmount Integer The cost of each unit of product being credited.
UnitAmountDecimal Decimal Same as unit_amount, but contains a decimal value with at most 12 decimal places.
UnitAmountExcludingTax Decimal The amount in cents representing the unit amount being credited for this line item, excluding all tax and discounts.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get orders for.

CData Python Connector for Stripe

CreditNoteLineItemsDiscounts

Get the available discounts from Credit Note line items in Stripe.

View-Specific Information

Select

You can select from CreditNoteLineItemsDiscounts with the following queries:

    SELECT * FROM CreditNoteLineItemsDiscounts WHERE CreditNoteId = 'cn_1N8iWQ2eZvKYlo2CnrPpfSnK'
    SELECT * FROM CreditNoteLineItemsDiscounts WHERE CustomerId = 'cus_ABC123'
    SELECT * FROM CreditNoteLineItemsDiscounts WHERE CouponPercentOff > 20.0
    SELECT * FROM CreditNoteLineItemsDiscounts WHERE CouponValid = true

Columns

Name Type References Description
Id [KEY] String The Id of the discount object.
CreditNoteId String The Id of the credit note.
CustomerId String The Id of the customer.
Start Datetime Date that the coupon was applied.
End Datetime If the coupon has a duration of repeating, the date that this discount will end. If the coupon has a duration of once or forever, this attribute will be null.
CouponId String The Id of the coupon.
CouponAmountOff Integer Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.
CouponCurrency String If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.
CouponName String Name of the coupon displayed to customers on, for instance, invoices or receipts.
CouponCreatedAt Datetime The creation date.
CouponDuration String Describes how long a customer who applies this coupon will get the discount. One of forever, once, and repeating.
CouponDurationInMonths Integer If duration is repeating, the number of months the coupon applies. Null if coupon duration is forever or once.
CouponPercentOff Decimal Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.
CouponRedeemBy Datetime Date after which the coupon can no longer be redeemed.
CouponTimesRedeemed Integer Number of times this coupon has been applied to a customer.
CouponValid Boolean Taking account of the above properties, whether this coupon can still be applied to a customer.
CouponMaxRedemptions Integer Maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.
PromotionCode String The promotion code applied to create this discount.
Subscription String The subscription that this coupon is applied to, if it is applied to a particular subscription.
Amount Integer The amount, in cents, of the discount.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get orders for.

CData Python Connector for Stripe

CreditNotePreviewLineItems

Query the available Credit Note preview line items in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
InvoiceId=
AccountId=

The rest of the filter is executed client-side within the connector.

You can select from CreditNotePreviewLineItems with the following queries:

    SELECT * FROM CreditNotePreviewLineItems where InvoiceId = 'in_1PDhVw2eZvKYlo2C6J4CKKUd'
    SELECT * FROM CreditNotePreviewLineItems WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'
    SELECT * FROM CreditNotePreviewLineItems WHERE Amount > 10000
    SELECT * FROM CreditNotePreviewLineItems WHERE Currency = 'usd'

Columns

Name Type References Description
Id [KEY] String ID of the Credit Note Preview LineItem.
InvoiceId String

Invoices.Id

ID of the invoice.
Amount Integer The integer amount in cents representing the total amount of the credit note.
CreditAmount Integer The integer amount in cents representing the amount to credit the customer's balance, which will be automatically applied to their next invoice.
AmountShipping Integer Amount shipping.
Created Datetime Date of creation.
Currency String Currency name.
Customer String Customer Id.
CustomerBalanceTransaction String Customer balance transaction.
DiscountAmounts String Discount amounts.
EffectiveAt Datetime The date when this credit note is in effect. Same as created unless overwritten. When defined, this value replaces the system-generated Date of issue printed on the credit note PDF.
Lines String Line items that make up the credit note.
Livemode Boolean Boolean value of Livemode.
Memo String The credit note's memo appears on the credit note PDF.
Metadata String Set of key-value pairs that you can attach to an object.
Number String Number.
OutOfBandAmount Integer The integer amount in cents representing the amount that is credited outside of Stripe.
Pdf String Pdf url.
Reason String Reason for issuing this credit note, one of duplicate, fraudulent, order_change, or product_unsatisfactory.
Refund String ID of an existing refund to link this credit note to.
RefundAmount Integer The integer amount in cents representing the amount to refund. If set, a refund will be created for the charge associated with the invoice.
ShippingCost String When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note.
Status String Status.
Subtotal Integer Subtotal.
SubtotalExcludingTax Integer Subtotal excluding tax.
TaxAmounts String Tax amounts.
Total Integer Total.
TotalExcludingTax Integer Total excluding tax.
Type String Type.
VoidedAt Datetime Voided at.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get orders for.

CData Python Connector for Stripe

CryptoOnrampQuotes

Retrieve Crypto Onramp Quote objects.

View-Specific Information

Select

The connector uses the Stripe API to fetch data.

You can query the table using a SELECT query:

SELECT * FROM CryptoOnrampQuotes

Columns

Name Type References Description
Id [KEY] String Unique identifier for the Crypto Onramp Quote object.
Object String String representing the object's type. Objects of the same type share the same value.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
RateFetchedAt Double The time at which this quote was created (when the prices in quotes are applicable).
SourceAmount String The amount of fiat we intend to onramp.
SourceCurrency String A fiat currency code.
DestinationNetworkQuotesAvalanche String Quotes for Avalanche.
DestinationNetworkQuotesBaseNetwork String Quotes for Base.
DestinationNetworkQuotesBitcoin String Quotes for Bitcoin.
DestinationNetworkQuotesEthereum String Quotes for Ethereum.
DestinationNetworkQuotesOptimism String Quotes for Optimism.
DestinationNetworkQuotesPolygon String Quotes for Polygon.
DestinationNetworkQuotesSolana String Quotes for Solana.
DestinationNetworkQuotesStellar String Quotes for Stellar.

CData Python Connector for Stripe

CustomerBalanceTransactions

Returns a list of transactions that updated the customers balances.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
CustomerIdId=

You can select from CustomerBalanceTransactions with the following queries:

    SELECT * from CustomerBalanceTransactions where  Id = 'cbtxn_1OduT9SC4snQ4WkOY0nOBfpk'
    SELECT * from CustomerBalanceTransactions where  CustomerId = 'cbtxn_1OduT9SC4snQ4WkOY0nOBfpk'
    SELECT * FROM CustomerBalanceTransactions WHERE Amount > 5000
    SELECT * FROM CustomerBalanceTransactions WHERE Currency = 'usd'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
CustomerId [KEY] String The ID of the customer the transaction belongs to.
Amount Integer The amount of the transaction.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Description String An arbitrary string attached to the object. Often useful for displaying to users.
EndingBalance Integer The customer’s balance after the transaction was applied.
Type String Transaction type
CreditNote String The ID of the credit note (if any) related to the transaction.
Invoice String The ID of the invoice (if any) related to the transaction.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
Object String

CData Python Connector for Stripe

CustomerSubscriptions

Get the available subscriptions of a Customer.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
AccountId=

You can select from CustomerSubscriptions with the following queries:

    SELECT * FROM CustomerSubscriptions WHERE CustomerId = 'cus_ABC123'
    SELECT * FROM CustomerSubscriptions WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'
    SELECT * FROM CustomerSubscriptions WHERE Status = 'active'
    SELECT * FROM CustomerSubscriptions WHERE Currency = 'usd'

Columns

Name Type References Description
Id [KEY] String The Id of the Subscription object.
CustomerId String

Customers.Id

The Id of the customer.
PlanId String

Plans.Id

The Id of the plan.
ApplicationFeePercent Decimal A positive decimal that represents the fee percentage of the subscription invoice amount that will be transferred to the application of the Stripe account owner each billing period.
AutomaticTaxEnabled Boolean Automatic tax settings for this subscription.
BillingCycleAnchor Datetime Determines the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices.
BillingThreshold String Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period
CanceledAt Datetime If the subscription has been canceled, the date of that cancellation. If the subscription was canceled with cancel_at_period_end, canceled_at will still reflect the date of the initial cancellation request, not the end of the subscription period when the subscription is automatically moved to a canceled state.
CurrentPeriodEnd Datetime End of the current period that the subscription has been invoiced for. At the end of this period, a new invoice will be created.
CurrentPeriodStart Datetime Start of the current period that the subscription has been invoiced for.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Description String The subscription's description.
DaysUntilDue Integer Number of days a customer has to pay invoices generated by this subscription. This value is null for subscriptions where collection_method=charge_automatically
DefaultSource String Id of the default payment source for the subscription.
DefaultTaxRates String The tax rates that will apply to any subscription item that does not have tax_rates set. Invoices created will have their default_tax_rates populated from the subscription.
EndedAt Datetime If the subscription has ended (either because it was canceled or because the customer was switched to a subscription to a new plan), the date the subscription ended.
Quantity Double The quantity of the plan to which the customer should be subscribed. For example, if your plan is $10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged $50 (5 x $10) monthly.
Schedule String The schedule attached to the subscription
TestClock String Id of the test clock this customer belongs to.
TransferData String The account (if any) the subscription's payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription's invoices.
MetadataAggregate String The set of key/value pairs that you can attach to a subscription object.
LiveMode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
LatestInvoice String Three-letter ISO currency code, in lowercase. Must be a supported currency.
NextPendingInvoiceItemInvoice Datetime Specifies the approximate timestamp on which any pending invoice items will be billed according to the schedule provided at pending_invoice_item_interval
PauseCollection String If specified, payment collection for this subscription will be paused.
PaymentSettings String Payment settings passed on to invoices created by the subscription.
PendingSetupIntent String You can use this SetupIntent to collect user authentication when creating a subscription without immediate payment or updating a subscription's payment method, allowing you to optimize for off-session payments.
PendingUpdate String If specified, pending updates that will be applied to the subscription once the latest_invoice has been paid.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get customer discounts for

CData Python Connector for Stripe

EarlyFraudWarning

Query an early fraud reported by the customer.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
ChargeId=
Created=, >, <, >=, <=
PaymentIntent=
AccountId=

You can select from EarlyFraudWarning with the following queries:

    SELECT * FROM EarlyFraudWarning WHERE Id = '123321'
    SELECT * FROM EarlyFraudWarning WHERE ChargeId = 'ch_3NASvLJSsh'
    SELECT * FROM EarlyFraudWarning WHERE Created >= '2024-01-01'
    SELECT * FROM EarlyFraudWarning WHERE Livemode = true

Columns

Name Type References Description
Id [KEY] String The Id of fraud warning.
Actionable Boolean An EFW is actionable if it has not received a dispute and has not been fully refunded.
ChargeId String The Id of the charge.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
FraudType String The type of fraud labelled by the issuer. Supported values are card_never_received, fraudulent_card_application, made_with_counterfeit_card, made_with_lost_card, made_with_stolen_card, misc, and unauthorized_use_of_card.
Livemode Boolean true if the object is in live mode andfalse if in test mode.
PaymentIntentId String The Id of the Payment Intent.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get fraud warning for.

CData Python Connector for Stripe

EndingBalanceReconciliationSummaryReport

Query the Ending balance reconciliation summary report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalEnd

You can also include the following optional parameters:

  • Id
  • ParametersColumns
  • ParametersCurrency

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM EndingBalanceReconciliationSummaryReport WHERE ParametersIntervalEnd = '2020-12-28' 

Select

You can run the following queries to retrieve report data:

SELECT * FROM EndingBalanceReconciliationSummaryReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'ending_balance_reconciliation.summary.1')
SELECT * FROM EndingBalanceReconciliationSummaryReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM EndingBalanceReconciliationSummaryReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Count Int The number of transactions associated with the reporting_category.
Gross Decimal Sum of the gross amounts of the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Sum of the fees paid for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Sum of the net amounts for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.

CData Python Connector for Stripe

Events

Query the available events in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Type=
AccountId=
Created<, >, >=, <, <=, =

You can select:

  • An event by specifying its Id:
    SELECT * FROM Events WHERE Id = 'dp_12345678'
  • Events that happened after a specific date:
    SELECT * FROM Events WHERE Created > '2018-01-01'
    • Created can also be used twice to specify a range:
      SELECT * FROM Events WHERE Created >= '2018-01-01 00:00:00.0' AND Created <= '2018-12-31 23:59:59.0'

Columns

Name Type References Description
Id [KEY] String The Id of the event.
ApiVersion String The Stripe API version used to render data.
Created Datetime The datetime event was created.
ObjectId String The event Id.
ObjectName String The object name for which event occured.
Livemode Boolean Tells if the event is in livemode.
PendingWebhooks Integer The number of webhooks yet to be delivered successfully (return a 20x response) to the URLs you've specified.
RequestId String The Id of the API request that caused the event.
RequestIdempotencyKey String The idempotency key transmitted during the request, if any. Note: This property is populated only for events on or after May 23, 2017.
Type String The description of the event.
Description String An arbitrary string attached to the object. Often useful for displaying to users.The description field on invoice line items has a maximum character length limit of 500
PreviousAttributes String Object containing the names of the attributes that have changed.
DataObject String Object containing the API resource relevant to the event.
DataObjectAmount Integer Data object amount.
DataObjectAmountCapturable Integer Data object capturable amount.
DataObjectAmountDetails String Data object amount details.
DataObjectAmountReceived Integer Data object received amount.
DataObjectApplication String Data object application.
DataObjectApplicationFeeAmount String Data object application fee amount.
DataObjectAutomaticPaymentMethods String Data object automatic payment methods.
DataObjectCanceledAt Datetime Canceled At.
DataObjectCancellationReason String Cancellation reason.
DataObjectCaptureMethod String Capture Method.
DataObjectClientSecret String Client secret.
DataObjectConfirmationMethod String Confirmation method.
DataObjectCreated Datetime Created timestamp.
DataObjectCurrency String Currency code.
DataObjectCustomer String Customer Id.
DataObjectDescription String Description.
DataObjectInvoice String Invoice Id of the data object.
DataObjectLastPaymentError String Last payment error.
DataObjectLatestCharge String Latest charge.
DataObjectLivemode Boolean Boolean value of livemode.
DataObjectMetadata String Metadata.
DataObjectNextAction String Next action details.
DataObjectOnBehalfOf String On behalf of.
DataObjectPaymentMethod String Payment method.
DataObjectPaymentMethodConfigurationDetails String Payment method configuration details.
DataObjectPaymentMethodOptions String Payment method options.
DataObjectPaymentMethodTypes String Payment method types.
DataObjectProcessing String Processing.
DataObjectReceiptEmail String Receipt email.
DataObjectReview String Review.
DataObjectSetupFutureUsage String Setup future usage.
DataObjectShipping String Shipping details.
DataObjectSource String Source.
DataObjectStatementDescriptor String Statement descriptor.
DataObjectStatementDescriptorSuffix String Statement descriptor suffix.
DataObjectStatus String Status.
DataObjectTransferData String Transfer data.
DataObjectTransferGroup String Transfer group.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get events for.

CData Python Connector for Stripe

FileLinks

CData Python Connector for Stripe

Files

Retrieves a file hosted on Stripe's servers.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
Purpose=
Created>, >=, <, <=, =
AccountId=

The rest of the filter is executed client-side within the connector.

You can select from Files with the following queries:

    SELECT * FROM Files WHERE Id = '123321'
    SELECT * FROM Files WHERE Purpose = 'dispute_evidence'
    SELECT * FROM Files WHERE Created >= '2023-07-14T05:36:46.000-04:00'

Columns

Name Type References Description
Id [KEY] String The id of files.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
ExpiresAt Datetime The time at which the file expires and is no longer available in epoch seconds.
Filename String A filename for the file, suitable for saving to a filesystem.
Links String A list of file links that point at this file.
Purpose String The purpose of the uploaded file.
Size Integer The size in bytes of the file object.
Title String A user friendly title for the document.
Type String The type of the file returned (e.g., csv, pdf, jpg, or png).
Url String The URL from which the file can be downloaded using your live secret API key.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get files for.

CData Python Connector for Stripe

InvoiceDiscounts

Get the available discounts of invoices in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
InvoiceId=
Customer=

The rest of the filters are executed client-side within the connector.

You can select from InvoiceDiscounts with the following queries:

    SELECT * FROM InvoiceDiscounts WHERE Id = 'discount_1GhPzLJXTn'
    SELECT * FROM InvoiceDiscounts WHERE InvoiceId = 'in_1SCtzeSRznu641gI05V3A7cN'
    SELECT * FROM InvoiceDiscounts WHERE Customer = 'cus_ABC123'
    SELECT * FROM InvoiceDiscounts WHERE CouponPercentOff > 20.0
    SELECT * FROM InvoiceDiscounts WHERE CouponValid = true
    SELECT * FROM InvoiceDiscounts WHERE Start >= '2024-01-01'

Columns

Name Type References Description
Id [KEY] String The Id of the discount object.
InvoiceId String

Invoices.Id

The Id of the Invoice, which the discount is attached to.
Customer String The Id of the Customer.
Start Datetime Date that the coupon was applied.
End Datetime If the coupon has a duration of repeating, the date that this discount will end. If the coupon has a duration of once or forever, this attribute will be null.
Coupon String The Id of the coupon.
CouponAmountOff Integer Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.
CouponCurrency String If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.
CouponName String Name of the coupon displayed to customers on, for instance, invoices or receipts.
CouponCreatedAt Datetime The creation date.
CouponDuration String Describes how long a customer who applies this coupon will get the discount. One of forever, once, and repeating.
CouponDurationInMonths Integer If duration is repeating, the number of months the coupon applies. Null if coupon duration is forever or once.
CouponPercentOff Decimal Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.
CouponRedeemBy Datetime Date after which the coupon can no longer be redeemed.
CouponTimesRedeemed Integer Number of times this coupon has been applied to a customer.
CouponValid Boolean Taking account of the above properties, whether this coupon can still be applied to a customer.
CouponMaxRedemptions Integer Maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.
PromotionCode String The promotion code applied to create this discount.
Subscription String The subscription that this coupon is applied to, if it is applied to a particular subscription.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get invoices for

CData Python Connector for Stripe

InvoiceItemDiscounts

Get the available discounts from invoices items in Stripe.

View-Specific Information

Select

You can select from InvoiceItemDiscounts with the following queries:

    SELECT * FROM InvoiceItemDiscounts WHERE Id = 'discount_1GhPzLJXTn'
    SELECT * FROM InvoiceItemDiscounts WHERE Customer = 'cus_ABC123'
    SELECT * FROM InvoiceItemDiscounts WHERE CouponPercentOff > 20.0
    SELECT * FROM InvoiceItemDiscounts WHERE CouponValid = true
    SELECT * FROM InvoiceItemDiscounts WHERE Start >= '2024-01-01'

Columns

Name Type References Description
Id [KEY] String The Id of the discount object.
InvoiceItemId String

InvoiceItems.Id

The Id of the Invoice item, which the discount is attached to.
Customer String The Id of the Customer.
Start Datetime Date that the coupon was applied.
End Datetime If the coupon has a duration of repeating, the date that this discount will end. If the coupon has a duration of once or forever, this attribute will be null.
Coupon String The Id of the coupon.
CouponAmountOff Integer Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.
CouponCurrency String If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.
CouponName String Name of the coupon displayed to customers on, for instance, invoices or receipts.
CouponCreatedAt Datetime The creation date.
CouponDuration String Describes how long a customer who applies this coupon will get the discount. One of forever, once, and repeating.
CouponDurationInMonths Integer If duration is repeating, the number of months the coupon applies. Null if coupon duration is forever or once.
CouponPercentOff Decimal Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.
CouponRedeemBy Datetime Date after which the coupon can no longer be redeemed.
CouponTimesRedeemed Integer Number of times this coupon has been applied to a customer.
CouponValid Boolean Taking account of the above properties, whether this coupon can still be applied to a customer.
CouponMaxRedemptions Integer Maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.
PromotionCode String The promotion code applied to create this discount.
Subscription String The subscription that this coupon is applied to, if it is applied to a particular subscription.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get invoices for.

CData Python Connector for Stripe

InvoiceLineItemDiscounts

Get the available discounts from invoices line items in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
InvoiceId=
AccountId=

You can select from InvoiceLineItemDiscounts with the following queries:

    SELECT * FROM InvoiceLineItemDiscounts WHERE Id = 'discount_1GhPzLJXTn'
    SELECT * FROM InvoiceLineItemDiscounts WHERE CustomerId = 'cus_ABC123'
    SELECT * FROM InvoiceLineItemDiscounts WHERE CouponPercentOff > 20.0
    SELECT * FROM InvoiceLineItemDiscounts WHERE CouponValid = true
    SELECT * FROM InvoiceLineItemDiscounts WHERE Start >= '2024-01-01'

Columns

Name Type References Description
Id [KEY] String The Id of the discount object.
InvoiceId String The Id of the invoice.
CustomerId String The Id of the customer.
Start Datetime Date that the coupon was applied.
End Datetime If the coupon has a duration of repeating, the date that this discount will end. If the coupon has a duration of once or forever, this attribute will be null.
CouponId String The Id of the coupon.
CouponAmountOff Integer Amount (in the currency specified) that is taken off the subtotal of any invoices for this customer.
CouponCurrency String If amount_off has been set, the three-letter ISO code for the currency of the amount to take off.
CouponName String Name of the coupon displayed to customers on, for instance, invoices or receipts.
CouponCreatedAt Datetime The creation date.
CouponDuration String Describes how long a customer who applies this coupon will get the discount. One of forever, once, and repeating.
CouponDurationInMonths Integer If duration is repeating, the number of months the coupon applies. Null if coupon duration is forever or once.
CouponPercentOff Decimal Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with a percent_off of 50 will make a $100 invoice $50 instead.
CouponRedeemBy Datetime Date after which the coupon can no longer be redeemed.
CouponTimesRedeemed Integer Number of times this coupon has been applied to a customer.
CouponValid Boolean Taking account of the above properties, whether this coupon can still be applied to a customer.
CouponMaxRedemptions Integer Maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.
PromotionCode String The promotion code applied to create this discount.
Subscription String The subscription that this coupon is applied to, if it is applied to a particular subscription.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get invoices for.

CData Python Connector for Stripe

InvoiceLineItems

Query the available invoices line items in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
InvoiceId=
AccountId=

You can select from InvoiceLineItems with the following queries:

    SELECT * FROM InvoiceLineItems WHERE Id = 'lineitem_1GhPzLJXTn'
    SELECT * FROM InvoiceLineItems WHERE InvoiceId = 'in_123456'
    SELECT * FROM InvoiceLineItems WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'
    SELECT * FROM InvoiceLineItems WHERE Amount > 10000
    SELECT * FROM InvoiceLineItems WHERE Currency = 'usd'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
InvoiceId String The Id of the invoice.
Amount Integer The amount, in cents.
AmountExcludingTax Integer The integer amount in cents representing the amount for this line item, excluding all tax and discounts.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Description String An arbitrary string attached to the object. Often useful for displaying to users.
Discountable Boolean If true, discounts will apply to this line item. Always false for prorations.
InvoiceItem String The Id of the invoice item associated with this line item if any.
LiveMode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Metadata String The metadata object.
Object String String representing the object's type. Objects of the same type share the same value.
PeriodEnd Datetime The end of the period, which must be greater than or equal to the start.
PeriodStart Datetime The start of the period.
PriceId String Unique identifier for the price.
PriceObject String String representing the object's type. Objects of the same type share the same value.
PriceActive Boolean Whether the price can be used for new purchases.
PriceBillingScheme String Describes how to compute the price per period.
PriceCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
PriceCurrency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
PriceCustomUnitAmount String When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.
PriceLiveMode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
PriceLookupKey String A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.
PriceMetadata String Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
PriceNickname String A brief description of the price, hidden from customers.
PriceProduct String The Id of the product this price is associated with.
PriceRecurring String The recurring components of a price such as interval and usage_type.
PriceTaxBehavior String Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.
PriceTiersMode String Defines if the tiering price should be graduated or volume based. In volume-based tiering, the maximum quantity within a period determines the per unit price. In graduated tiering, pricing can change as the quantity grows.
PriceTransformQuantity String Apply a transformation to the reported usage or set quantity before computing the amount billed. Cannot be combined with tiers.
PriceType String One of one_time or recurring depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.
PriceUnitAmount Integer The unit amount in cents to be charged, represented as a whole integer if possible. Only set if billing_scheme=per_unit.
PriceUnitAmountDecimal Float The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places. Only set if billing_scheme=per_unit.
Proration Boolean Whether this is a proration.
ProrationDetails String Additional details for proration line items.
Quantity Integer The quantity of the subscription, if the line item is a subscription or a proration.
Subscription String The subscription that the invoice item pertains to, if any.
SubscriptionItems String The subscription item that generated this invoice item. Left empty if the line item is not an explicit result of a subscription.
Type String A string identifying the type of the source of this line item, either an invoiceitem or a subscription.
UnitAmountExcludingTax String The amount in cents representing the unit amount for this line item, excluding all tax and discounts.
DiscountAmountsAggregate String The amount of discount calculated per discount for this line item.
TaxAmountsAggregate String The amount of tax calculated per tax rate for this line item.
TaxRatesAggregate String The tax rates which apply to the line item.
DiscountsAggregate String The discounts which apply to the invoice item.
PlanActive Boolean Active.
PlanAggregateUsage String Aggregate Usage.
PlanAmount Integer Amount.
PlanAmountDecimal String Amount in decimal.
PlanBillingScheme String Billing scheme.
PlanCreated Datetime Created timestamp.
PlanCurrency String Currency code.
PlanId String Id of the plan.
PlanInterval String Interval.
PlanIntervalCount Integer Interval count.
PlanLivemode Boolean Livemode.
PlanMetadata String Metadata of the Plan.
PlanMeter String Meter.
PlanNickname String Nickname.
PlanObject String Object.
PlanProduct String Product.
PlanTiersMode String Tiers mode.
PlanTransformUsage String Transform usage.
PlanTrialPeriodDays Integer Trial period days.
PlanUsageType String Usage type.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get invoice line items for.

CData Python Connector for Stripe

InvoicePayments

Get the available invoice payment objects in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
InvoiceId=
Status=

The rest of the filter is executed client-side within the connector.

You can select from InvoicePayments with the following queries:

    SELECT * FROM InvoicePayments WHERE Id = 'inpay_1RMiwb02nMQhszwxxSLgJ9XU'
    SELECT * FROM InvoicePayments WHERE InvoiceId = 'in_1RMivP02nMQhszwx2UyrvB3x'
    SELECT * FROM InvoicePayments WHERE Status = 'open'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the InvoicePayment object.
InvoiceId String

Invoices.Id

The invoice that was paid.
AmountPaid Integer Amount that was actually paid for this invoice, in cents. This field is null until the payment is paid. This amount can be less than the amount_requested if the PaymentIntent’s amount_received is not sufficient to pay all of the invoices that it is attached to.
AmountRequested Integer Amount intended to be paid toward this invoice, in cents.
IsDefault Boolean Stripe automatically creates a default InvoicePayment when the invoice is finalized, and keeps it synchronized with the invoice’s amount_remaining. The PaymentIntent associated with the default payment can’t be edited or canceled directly.
PaymentType String Type of payment object associated with this invoice payment.

The allowed values are charge, payment_intent.

PaymentIntentId String

PaymentIntent.Id

ID of the PaymentIntent associated with this payment when type is payment_intent. Note: This property is only populated for invoices finalized on or after March 15th, 2019.
PaymentChargeId String

Charges.Id

ID of the successful charge for this payment when type is charge.
Status String The status of the payment, one of open, paid, or canceled.

The allowed values are canceled, open, paid.

Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
StatusTransitionsCanceledAt Datetime The time that the payment was canceled.
StatusTransitionsPaidAt Datetime The time that the payment succeeded.
Object String String representing the object's type. Objects of the same type share the same value.

CData Python Connector for Stripe

InvoiceRenderingTemplates

Create, update, delete, and query the Accounts you manage in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=

The rest of the filter is executed client-side within the connector.

You can select from the InvoiceRenderingTemplates table with the following queries:

SELECT * FROM InvoiceRenderingTemplates;
SELECT * FROM InvoiceRenderingTemplates WHERE Id = 'alrt_61StTIaW2Fbu9eu8g41ATXQzBWNrl3s8';

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
Object String String representing the object’s type. Objects of the same type share the same value.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
MetadataAggregate String Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
Nickname String A brief description of the template, hidden from customers.
Status String The status of the template, one of active or archived.

The allowed values are active, archived.

Version Integer Version of this template; version increases by one when an update on the template changes any field that controls invoice rendering.

CData Python Connector for Stripe

IssuingCards

Returns a list of Issuing Card objects.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Cardholder=
Type=
Created=, >, >=, <, <=
ExpMonth=
ExpYear=
Last4=
Status=

You can select from IssuingCards with the following queries:

    SELECT * FROM IssuingCards WHERE Id = 'ic_1Mwg8K2eZvKYlo2C90clp5gj'
    SELECT * FROM IssuingCards WHERE Cardholder = 'cardholder_12345'
    SELECT * FROM IssuingCards WHERE Last4 = '0921'
    SELECT * FROM IssuingCards WHERE ExpMonth = 12
    SELECT * FROM IssuingCards WHERE ExpYear = 2025

Columns

Name Type References Description
Id [KEY] String The id of files.
CancellationReason String The reason why the card was canceled.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
CardholderId String Unique identifier for the object.
CardholderObject String String representing the objects type. Objects of the same type share the same value.
CardholderBillingAddress String The cardholders billing address.
CardholderIsCompanyTaxIdProvided Boolean Whether the companys business ID number was provided.
CardholderCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
CardholderEmail String The cardholders email address.
CardholderIndividual String Additional information about an individual cardholder.
CardholderName String The cardholders name. This will be printed on cards issued to them.
CardholderPhoneNumber String The cardholders phone number. This is required for all cardholders who will be creating EU cards. See the 3D Secure documentation for more details.
CardholderPreferredLocales String The cardholders preferred locales (languages), ordered by preference.
CardholderRequirementsDisabledReason String If disabled_reason is present, all cards will decline authorizations with cardholder_verification_required reason.
CardholderRequirementsPastDue String Array of fields that need to be collected in order to verify and re-enable the cardholder.
CardholderSpendingControlsAllowedCategories String Array of strings containing categories of authorizations to allow. All other categories will be blocked. Cannot be set with blocked_categories.
CardholderSpendingControlsBlockedCategories String Array of strings containing categories of authorizations to decline. All other categories will be allowed. Cannot be set with allowed_categories.
CardholderSpendingControlsSpendingLimits String Limit spending with amount-based rules that apply across this cardholders cards.
CardholderSpendingControlsSpendingLimitsCurrency String Currency of the amounts within spending_limits.
CardholderStatus String Specifies whether to permit authorizations on this cardholders cards.
CardholderType String One of individual or company. See Choose a cardholder type for more details.
ExpMonth Integer The expiration month of the card.
ExpYear Integer The expiration year of the card.
Last4 String The last 4 digits of the card number.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
Status String Whether authorizations can be approved on this card. May be blocked from activating cards depending on past-due Cardholder requirements. Defaults to inactive.
Type String The type of the card.
Object String String representing the objects type. Objects of the same type share the same value.
Brand String The brand of the card.
CVC String The cards CVC. For security reasons, this is only available for virtual cards.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Number String The full unredacted card number.
ReplacedBy String The latest card that replaces this card, if any.
ReplacementFor String The card this card replaces, if any.
ReplacementReason String The reason why the previous card needed to be replaced.
ShippingAddress String Shipping address.
ShippingCarrier String The delivery company that shipped a card.
ShippingCustoms String Additional information that may be required for clearing customs.
ShippingETA String A unix timestamp representing a best estimate of when the card will be delivered.
ShippingName String Recipient name.
ShippingPhoneNumber String The phone number of the receiver of the shipment
ShippingRequireSignature Boolean Whether a signature is required for card delivery.
ShippingService String Shipment service, such as standard or express.
ShippingStatus String The delivery status of the card.
ShippingTrackingNumber String A tracking number for a card shipment.
ShippingTrackingURL String A link to the shipping carriers site where you can view detailed information about a card shipment.
ShippingType String Packaging options.
SpendingControlsAllowedCategories String
SpendingControlsBlockedCategories String
SpendingControlsSpendingLimits String
SpendingControlsSpendingLimitsCurrency String
WalletsApplePay String
WalletsGooglePay String
WalletsPrimaryAccountIdentifier String
CardholderSpendingControlsAllowedMerchantCountries String Array of strings containing representing countries from which authorizations will be allowed. Authorizations from merchants in all other countries will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with blocked_merchant_countries. Provide an empty value to unset this control.
CardholderSpendingControlsBlockedMerchantCountries String Array of strings containing representing countries from which authorizations will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with allowed_merchant_countries. Provide an empty value to unset this control.
SpendingControlsAllowedMerchantCountries String Array of strings containing representing countries from which authorizations will be allowed. Authorizations from merchants in all other countries will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with blocked_merchant_countries. Provide an empty value to unset this control.
SpendingControlsBlockedMerchantCountries String Array of strings containing representing countries from which authorizations will be declined. Country codes should be ISO 3166 alpha-2 country codes (e.g. US). Cannot be set with allowed_merchant_countries. Provide an empty value to unset this control.
PersonalizationDesign String The personalization design object belonging to this card.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get files for.

CData Python Connector for Stripe

IssuingDisputes

Returns a list of Issuing Dispute objects.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Created=, >, >=, <, <=
Transaction=
Status=

You can select from IssuingDisputes with the following queries:

    SELECT * FROM IssuingDisputes WHERE Id = 'id_1GhPzLJXTn'
    SELECT * FROM IssuingDisputes WHERE Created >= '2024-01-01'
    SELECT * FROM IssuingDisputes WHERE Transaction = 'txn_12345'
    SELECT * FROM IssuingDisputes WHERE Status = 'expired'
    SELECT * FROM IssuingDisputes WHERE Currency = 'usd'

Columns

Name Type References Description
Id [KEY] String The id of files.
Amount Integer Disputed amount in the cards currency and in the smallest currency unit. Usually the amount of the transaction.
BalanceTransactions String List of balance transactions associated with the dispute.
Currency String The currency the transaction was made in.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
EvidenceCanceled String Evidence provided when reason is canceled.
EvidenceDuplicate String Evidence provided when reason is duplicate.
EvidenceFraudulent String Evidence provided when reason is fraudulent.
EvidenceMerchandiseNotAsDescribed String Evidence provided when reason is merchandise_not_as_described.
EvidenceNotReceived String Evidence provided when reason is not_received.
EvidenceOther String Evidence provided when reason is other.
EvidenceReason String The reason for filing the dispute. Its value will match the field containing the evidence.
EvidenceServiceNotAsDescribed String The service was not as described.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
Status String Current status of the dispute.
Transaction String The transaction being disputed.
Object String Object.
Livemode Boolean LiveMode.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String Account Id.

CData Python Connector for Stripe

ItemizedBalanceChangeFromActivityReport

Query the Itemized balance change from Activity report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersCurrency
  • ParametersTimezone
  • ParametersReportingCategory

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM ItemizedBalanceChangeFromActivityReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28' 

Select

You can run the following queries to retrieve report data:

SELECT * FROM ItemizedBalanceChangeFromActivityReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'balance_change_from_activity.itemized.3')
SELECT * FROM ItemizedBalanceChangeFromActivityReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM ItemizedBalanceChangeFromActivityReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Automatic_Payout_Id String ID of the automatically created payout associated with this balance transaction (only set if your account is on an automatic payout schedule).
Automatic_Payout_Effective_At Datetime The date we expect this automatic payout to arrive in your bank account, in the requested timezone, or UTC if not provided. This is also when the paid-out funds are deducted from your Stripe balance.
Balance_Transaction_Id String Unique identifier for the balance transaction.
Created_UTC Datetime Time at which the balance transaction was created. Dates in UTC.
Created Datetime Time at which the balance transaction was created. Dates in the requested timezone, or UTC if not provided.
Available_On_UTC Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in UTC.
Available_On Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in the requested timezone, or UTC if not provided.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Gross Decimal Gross amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Fees paid for this transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Net amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Source_Id String The Stripe object to which this transaction is related.
Description String An arbitrary string attached to the balance transaction. Often useful for displaying to users.
Customer_Facing_Amount Decimal For transactions associated with charges or refunds, the amount of the original charge or refund.
Customer_Facing_Currency String For transactions associated with charges or refunds, the three-letter ISO code for the currency for customer_facing_amount.
Automatic_Payout_Effective_At_UTC Datetime The date we expect this automatic payout to arrive in your bank account, in UTC. This is also when the paid-out funds are deducted from your Stripe balance.
Customer_Id String The unique ID of the related customer, if any.
Customer_Email String Email address of the customer, if any, associated with this balance transaction.
Customer_Name String Name of the customer, if any, associated with this balance transaction.
Customer_Description String Description provided when creating the customer, often used to store the customer name.
Shipping_Address_Line1 String First line of the shipping address associated with this charge, if any
Shipping_Address_Line2 String Second line of the shipping address associated with this charge, if any
Shipping_Address_City String City of the shipping address associated with this charge, if any
Shipping_Address_State String State of the shipping address associated with this charge, if any
Shipping_Address_Postal_Code String Postal code of the shipping address associated with this charge, if any
Shipping_Address_Country String Country of the shipping address associated with this charge, if any
Charge_Id String Unique identifier for the original charge associated with this balance transaction. Available for charges, refunds and disputes.
Payment_Intent_Id String The unique ID of the related Payment Intent, if any.
Charge_Created_UTC Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in UTC.
Charge_Created Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in the requested timezone, or UTC if not provided.
Invoice_Id String Unique ID for the invoice associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing invoice.
Subscription_Id String Unique ID for the subscription associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing subscription.
Payment_Method_Type String The type of payment method used in the related payment.
Card_Brand String Card brand, if applicable.
Card_Funding String Card funding type, if applicable.
Card_Country String Two-letter ISO code representing the country of the card.
Statement_Descriptor String The dynamic statement descriptor or suffix specified when the related charge was created.
Dispute_Reason String Reason given by cardholder for dispute.
Connected_Account_Id String For Stripe Connect activity related to a connected account, the unique ID for the account.
Connected_Account_Name String For Stripe Connect activity related to a connected account, the name of the account.
Connected_Account_Country String For Stripe Connect activity related to a connected account, the two-letter ISO code representing the country of the account.
Regulatory_Tag String ??An identifier reflecting the classification of this transaction according to local regulations, if applicable. Accounts with automatic payouts enabled receive a separate payout for each regulatory tag. ??This column is only populated for Brazilian accounts.
Payment_Metadata String Metadata associated with the related PaymentIntent, if any. If no PaymentIntent metadata exists, metadata from any related charge object will be returned. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Refund_Metadata String Metadata associated with the related refund object, if any. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Transfer_Metadata String Metadata associated with the related transfer object, if any. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.
ParametersReportingCategory String Category of balance transactions to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.

CData Python Connector for Stripe

ItemizedEndingBalanceReconciliationReport

Query the Itemized ending balance change from activity report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalEnd

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersCurrency
  • ParametersTimezone
  • ParametersReportingCategory

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM ItemizedEndingBalanceReconciliationReport WHERE ParametersIntervalEnd = '2020-12-28' 

Select

You can run the following queries to retrieve report data:

SELECT * FROM ItemizedEndingBalanceReconciliationReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'ending_balance_reconciliation.itemized.4')
SELECT * FROM ItemizedEndingBalanceReconciliationReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY')// This will show multiple reports
SELECT * FROM ItemizedEndingBalanceReconciliationReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Balance_Transaction_Id String Unique identifier for the balance transaction.
Created_UTC Datetime Time at which the balance transaction was created. Dates in UTC.
Created Datetime Time at which the balance transaction was created. Dates in the requested timezone, or UTC if not provided.
Available_On_UTC Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in UTC.
Available_On Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in the requested timezone, or UTC if not provided.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Gross Decimal Gross amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Fees paid for this transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Net amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Source_Id String The Stripe object to which this transaction is related.
Description String An arbitrary string attached to the balance transaction. Often useful for displaying to users.
Customer_Facing_Amount Decimal For transactions associated with charges or refunds, the amount of the original charge or refund.
Customer_Facing_Currency String For transactions associated with charges or refunds, the three-letter ISO code for the currency for customer_facing_amount.
Automatic_Payout_Id String ID of the automatically created payout associated with this balance transaction (only set if your account is on an automatic payout schedule).
Automatic_Payout_Effective_At_UTC Datetime The date we expect this automatic payout to arrive in your bank account, in UTC. This is also when the paid-out funds are deducted from your Stripe balance.
Automatic_Payout_Effective_At Datetime The date we expect this automatic payout to arrive in your bank account, in the requested timezone, or UTC if not provided. This is also when the paid-out funds are deducted from your Stripe balance.
Customer_Id String The unique ID of the related customer, if any.
Customer_Email String Email address of the customer, if any, associated with this balance transaction.
Customer_Name String Name of the customer, if any, associated with this balance transaction.
Customer_Description String Description provided when creating the customer, often used to store the customer name.
Shipping_Address_Line1 String First line of the shipping address associated with this charge, if any
Shipping_Address_Line2 String Second line of the shipping address associated with this charge, if any
Shipping_Address_City String City of the shipping address associated with this charge, if any
Shipping_Address_State String State of the shipping address associated with this charge, if any
Shipping_Address_Postal_Code String Postal code of the shipping address associated with this charge, if any
Shipping_Address_Country String Country of the shipping address associated with this charge, if any
Charge_Id String Unique identifier for the original charge associated with this balance transaction. Available for charges, refunds and disputes.
Payment_Intent_Id String The unique ID of the related Payment Intent, if any.
Charge_Created_UTC Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in UTC.
Charge_Created Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in the requested timezone, or UTC if not provided.
Invoice_Id String Unique ID for the invoice associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing invoice.
Subscription_Id String Unique ID for the subscription associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing subscription.
Payment_Method_Type String The type of payment method used in the related payment.
Card_Brand String Card brand, if applicable.
Card_Funding String Card funding type, if applicable.
Card_Country String Two-letter ISO code representing the country of the card.
Statement_Descriptor String The dynamic statement descriptor or suffix specified when the related charge was created.
Dispute_Reason String Reason given by cardholder for dispute.
Connected_Account_Id String For Stripe Connect activity related to a connected account, the unique ID for the account.
Connected_Account_Name String For Stripe Connect activity related to a connected account, the name of the account.
Connected_Account_Country String For Stripe Connect activity related to a connected account, the two-letter ISO code representing the country of the account.
Regulatory_Tag String ??An identifier reflecting the classification of this transaction according to local regulations, if applicable. Accounts with automatic payouts enabled receive a separate payout for each regulatory tag. ??This column is only populated for Brazilian accounts.
Payment_Metadata String Metadata associated with the related PaymentIntent, if any. If no PaymentIntent metadata exists, metadata from any related charge object will be returned. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Refund_Metadata String Metadata associated with the related refund object, if any. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Transfer_Metadata String Metadata associated with the related transfer object, if any. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.
ParametersReportingCategory String Category of balance transactions to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.

CData Python Connector for Stripe

ItemizedPayoutReconciliationReport

Query the Itemized payout reconciliation report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersCurrency
  • ParametersTimezone
  • ParametersReportingCategory

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM ItemizedPayoutReconciliationReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28'

Select

You can run the following queries to retrieve report data:

SELECT * FROM ItemizedPayoutReconciliationReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'payout_reconciliation.itemized.4')	
SELECT * FROM ItemizedPayoutReconciliationReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM ItemizedPayoutReconciliationReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Balance_Transaction_Id String Unique identifier for the balance transaction.
Created_UTC Datetime Time at which the balance transaction was created. Dates in UTC.
Created Datetime Time at which the balance transaction was created. Dates in the requested timezone, or UTC if not provided.
Available_On_UTC Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in UTC.
Available_On Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in the requested timezone, or UTC if not provided.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Gross Decimal Gross amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Fees paid for this transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Net amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Source_Id String The Stripe object to which this transaction is related.
Description String An arbitrary string attached to the balance transaction. Often useful for displaying to users.
Customer_Facing_Amount Decimal For transactions associated with charges or refunds, the amount of the original charge or refund.
Customer_Facing_Currency String For transactions associated with charges or refunds, the three-letter ISO code for the currency for customer_facing_amount.
Automatic_Payout_Id String ID of the automatically created payout associated with this balance transaction (only set if your account is on an automatic payout schedule).
Automatic_Payout_Effective_At_UTC Datetime The date we expect this automatic payout to arrive in your bank account, in UTC. This is also when the paid-out funds are deducted from your Stripe balance.
Automatic_Payout_Effective_At Datetime The date we expect this automatic payout to arrive in your bank account, in the requested timezone, or UTC if not provided. This is also when the paid-out funds are deducted from your Stripe balance.
Customer_Id String The unique ID of the related customer, if any.
Customer_Email String Email address of the customer, if any, associated with this balance transaction.
Customer_Name String Name of the customer, if any, associated with this balance transaction.
Customer_Description String Description provided when creating the customer, often used to store the customer name.
Shipping_Address_Line1 String First line of the shipping address associated with this charge, if any
Shipping_Address_Line2 String Second line of the shipping address associated with this charge, if any
Shipping_Address_City String City of the shipping address associated with this charge, if any
Shipping_Address_State String State of the shipping address associated with this charge, if any
Shipping_Address_Postal_Code String Postal code of the shipping address associated with this charge, if any
Shipping_Address_Country String Country of the shipping address associated with this charge, if any
Charge_Id String Unique identifier for the original charge associated with this balance transaction. Available for charges, refunds and disputes.
Payment_Intent_Id String The unique ID of the related Payment Intent, if any.
Charge_Created_UTC Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in UTC.
Charge_Created Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in the requested timezone, or UTC if not provided.
Invoice_Id String Unique ID for the invoice associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing invoice.
Subscription_Id String Unique ID for the subscription associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing subscription.
Payment_Method_Type String The type of payment method used in the related payment.
Card_Brand String Card brand, if applicable.
Card_Funding String Card funding type, if applicable.
Card_Country String Two-letter ISO code representing the country of the card.
Statement_Descriptor String The dynamic statement descriptor or suffix specified when the related charge was created.
Dispute_Reason String Reason given by cardholder for dispute.
Connected_Account_Id String For Stripe Connect activity related to a connected account, the unique ID for the account.
Connected_Account_Name String For Stripe Connect activity related to a connected account, the name of the account.
Connected_Account_Country String For Stripe Connect activity related to a connected account, the two-letter ISO code representing the country of the account.
Regulatory_Tag String ??An identifier reflecting the classification of this transaction according to local regulations, if applicable. Accounts with automatic payouts enabled receive a separate payout for each regulatory tag. ??This column is only populated for Brazilian accounts.
Payment_Metadata String Metadata associated with the related PaymentIntent, if any. If no PaymentIntent metadata exists, metadata from any related charge object will be returned. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Refund_Metadata String Metadata associated with the related refund object, if any. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Transfer_Metadata String Metadata associated with the related transfer object, if any. API requests including this column must specify a metadata key in brackets. This column can be specified multiple times to retrieve data from additional metadata keys.
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.
ParametersReportingCategory String Category of balance transactions to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.

CData Python Connector for Stripe

ItemizedPayoutsReport

Query the Itemized payouts report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersCurrency
  • ParametersTimezone
  • ParametersReportingCategory

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM ItemizedPayoutsReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28'

Select

You can run the following queries to retrieve report data:

SELECT * FROM ItemizedPayoutsReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'payouts.itemized.3')
SELECT * FROM ItemizedPayoutsReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM ItemizedPayoutsReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Payout_Id String The Stripe object to which this transaction is related.
Effective_At_UTC Datetime For automatic payouts, this is the date we expect funds to arrive in your bank account. For manual payouts, this is the date the payout was initiated. In both cases, its the date the paid-out funds are deducted from your Stripe balance. All dates in UTC.
Effective_At Datetime For automatic payouts, this is the date we expect funds to arrive in your bank account. For manual payouts, this is the date the payout was initiated. In both cases, its the date the paid-out funds are deducted from your Stripe balance. All dates in the requested timezone, or UTC if not provided.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Gross Decimal Gross amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Fees paid for this transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Net amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Balance_Transaction_Id String Unique identifier for the balance transaction.
Description String An arbitrary string attached to the balance transaction. Often useful for displaying to users.
Payout_Expected_Arrival_Date Datetime Date the payout is scheduled to arrive in the bank. This factors in delays like weekends or bank holidays.
Payout_Status String Current status of the payout (paid, pending, in_transit, canceled or failed). A payout will be pending until it is submitted to the bank, at which point it becomes in_transit. It will then change to paid if the transaction goes through. If it does not go through successfully, its status will change to failed or canceled.
Payout_Reversed_At_UTC Datetime Typically this field will be empty. However, if the payouts status is canceled or failed, this field will reflect the time at which it entered that status. Times in UTC.
Payout_Reversed_At Datetime Typically this field will be empty. However, if the payouts status is canceled or failed, this field will reflect the time at which it entered that status. Times in the requested timezone, or UTC if not provided.
Payout_Type String Can be bank_account or card.
Payout_Description String An arbitrary string attached to the payout. Often useful for displaying to users.
Payout_Destination_Id String ID of the bank account or card the payout was sent to.
Regulatory_Tag String ??An identifier reflecting the classification of this transaction according to local regulations, if applicable. Accounts with automatic payouts enabled receive a separate payout for each regulatory tag. ??This column is only populated for Brazilian accounts.
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.
ParametersReportingCategory String Category of balance transactions to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.

CData Python Connector for Stripe

ItemizedReconciliationForASinglePayoutReport

Query the Itemized reconciliation for a single payout report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersPayout

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersTimezone
  • ParametersReportingCategory

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM ItemizedReconciliationForASinglePayoutReport WHERE ParametersPayout = '123456789'

Select

You can run the following queries to retrieve report data:

SELECT * FROM ItemizedReconciliationForASinglePayoutReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'payout_reconciliation.by_id.itemized.4')
SELECT * FROM ItemizedReconciliationForASinglePayoutReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM ItemizedReconciliationForASinglePayoutReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Balance_Transaction_Id String Unique identifier for the balance transaction.
Created_UTC Datetime Time at which the balance transaction was created. Dates in UTC.
Created Datetime Time at which the balance transaction was created. Dates in the requested timezone, or UTC if not provided.
Available_On_UTC Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in UTC.
Available_On Datetime The date the balance transactions net funds will become available in the Stripe balance. Dates in the requested timezone, or UTC if not provided.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Gross Decimal Gross amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Fees paid for this transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Net amount of the transaction. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Source_Id String The Stripe object to which this transaction is related.
Description String An arbitrary string attached to the balance transaction. Often useful for displaying to users.
Customer_Facing_Amount Decimal For transactions associated with charges or refunds, the amount of the original charge or refund.
Customer_Facing_Currency String For transactions associated with charges or refunds, the three-letter ISO code for the currency for customer_facing_amount.
Automatic_Payout_Id String ID of the automatically created payout associated with this balance transaction (only set if your account is on an automatic payout schedule).
Automatic_Payout_Effective_At_UTC Datetime The date we expect this automatic payout to arrive in your bank account, in UTC. This is also when the paid-out funds are deducted from your Stripe balance.
Automatic_Payout_Effective_At Datetime The date we expect this automatic payout to arrive in your bank account, in the requested timezone, or UTC if not provided. This is also when the paid-out funds are deducted from your Stripe balance.
Customer_Id String The unique ID of the related customer, if any.
Customer_Email String Email address of the customer, if any, associated with this balance transaction.
Customer_Name String Name of the customer, if any, associated with this balance transaction.
Customer_Description String Description provided when creating the customer, often used to store the customer name.
Shipping_Address_Line1 String First line of the shipping address associated with this charge, if any
Shipping_Address_Line2 String Second line of the shipping address associated with this charge, if any
Shipping_Address_City String City of the shipping address associated with this charge, if any
Shipping_Address_State String State of the shipping address associated with this charge, if any
Shipping_Address_Postal_Code String Postal code of the shipping address associated with this charge, if any
Shipping_Address_Country String Country of the shipping address associated with this charge, if any
Charge_Id String Unique identifier for the original charge associated with this balance transaction. Available for charges, refunds and disputes.
Payment_Intent_Id String The unique ID of the related Payment Intent, if any.
Charge_Created_UTC Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in UTC.
Charge_Created Datetime Creation time of the original charge associated with this balance transaction. Available for charges, refunds and disputes. For charges that were separately authorized and captured, this is the authorization time. Dates in the requested timezone, or UTC if not provided.
Invoice_Id String Unique ID for the invoice associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing invoice.
Subscription_Id String Unique ID for the subscription associated with this balance transaction. Available for charges, refunds, and disputes made in connection with a Stripe Billing subscription.
Payment_Method_Type String The type of payment method used in the related payment.
Card_Brand String Card brand, if applicable.
Card_Funding String Card funding type, if applicable.
Card_Country String Two-letter ISO code representing the country of the card.
Statement_Descriptor String The dynamic statement descriptor or suffix specified when the related charge was created.
Dispute_Reason String Reason given by cardholder for dispute.
Connected_Account_Id String For Stripe Connect activity related to a connected account, the unique ID for the account.
Connected_Account_Name String For Stripe Connect activity related to a connected account, the name of the account.
Connected_Account_Country String For Stripe Connect activity related to a connected account, the two-letter ISO code representing the country of the account.
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersPayout String

Payouts.Id

Payout ID by which to filter the report run.
ParametersReportingCategory String Category of balance transactions to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.

CData Python Connector for Stripe

Mandates

Retrieves a Mandate object.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=

To select from Mandates, you must specify the Id:

    SELECT * FROM Mandates WHERE Id = 'mandate_1MvojA2eZvKYlo2CvqTABjZs'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the InvoicePayment object.
CustomerAcceptanceType String The mandate includes the type of customer acceptance information, such as: online or offline.

The allowed values are offline, online.

CustomerAcceptanceAcceptedAt Datetime The time that the customer accepts the mandate.
CustomerAcceptanceOffline String If this mandate is accepted offline, this hash provides details about the offline acceptance.
CustomerAcceptanceOnlineIpAddress String The customer accepts the mandate from this IP address, if this mandate is accepted online.
CustomerAcceptanceOnlineUserAgent String The customer accepts the mandate using the user agent of the browser, if this mandate is accepted online.
Status String The mandate status indicates whether or not you can use it to initiate a payment.

The allowed values are active, inactive, pending.

Type String The type of the mandate.

The allowed values are multi_use, single_use.

Object String String representing the object's type. Objects of the same type share the same value.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
MultiUse String If this is a multi_use mandate, this hash contains details about the mandate.
SingleUseAmount String If this is a single_use mandate, this field contains the amount of the payment on a single use mandate.
SingleUseCurrency String If this is a single_use mandate, this field contains currency of the payment on a single use mandate.
OnBehalfOf String The account (if any) that the mandate is intended for.
PaymentMethodId String

PaymentMethods.Id

ID of the payment method associated with this mandate.
PaymentMethodDetailsType String This mandate corresponds with a specific payment method type. The payment_method_details includes an additional hash with the same name and contains mandate information that’s specific to that payment method.
PaymentMethodDetailsAcssDebitDefaultFor String If this mandate associates with an acss_debit payment method, this field contains a list of Stripe products where this mandate can be selected automatically.

The allowed values are invoice, subscription.

PaymentMethodDetailsAcssDebitIntervalDescription String If this mandate associates with an acss_debit payment method, this field contains the description of the interval. Only required if the 'payment_schedule' parameter is 'interval' or 'combined'.
PaymentMethodDetailsAcssDebitPaymentSchedule String If this mandate associates with an acss_debit payment method, this field contains the payment schedule for the mandate.

The allowed values are combined, interval, sporadic.

PaymentMethodDetailsAcssDebitTransactionType String If this mandate associates with an acss_debit payment method, this field contains the transaction type of the mandate.

The allowed values are personal, business.

PaymentMethodDetailsAmazonPay String If this mandate associates with an amazon_pay payment method, this hash contains mandate information specific to the amazon_pay payment method.
PaymentMethodDetailsAuBecsDebitUrl String If this mandate associates with an au_becs_debit payment method, this field contains the URL of the mandate. This URL generally contains sensitive information about the customer and should be shared with them exclusively.
PaymentMethodDetailsBacsDebitNetworkStatus String If this mandate associates with a bacs_debit payment method, this field contains the status of the mandate on the Bacs network. Can be one of pending, revoked, refused, or accepted.

The allowed values are accepted, pending, refused, revoked.

PaymentMethodDetailsBacsDebitReference String If this mandate associates with a bacs_debit payment method, this field contains the unique reference identifying the mandate on the Bacs network.
PaymentMethodDetailsBacsDebitRevocationReason String If this mandate associates with a bacs_debit payment method, this field contains the reason for the revocation when the mandate is revoked on the Bacs network.

The allowed values are account_closed, bank_account_restricted, bank_ownership_changed, could_not_process, debit_not_authorized.

PaymentMethodDetailsBacsDebitUrl String If this mandate associates with a bacs_debit payment method, this field contains the URL that will contain the mandate that the customer has signed.
PaymentMethodDetailsCard String If this mandate associates with a card payment method, this hash contains mandate information specific to the card payment method.
PaymentMethodDetailsCashapp String If this mandate associates with a cashapp payment method, this hash contains mandate information specific to the cashapp payment method.
PaymentMethodDetailsKakaoPay String If this mandate associates with a kakao_pay payment method, this hash contains mandate information specific to the kakao_pay payment method.
PaymentMethodDetailsKrCard String If this mandate associates with a kr_card payment method, this hash contains mandate information specific to the kr_card payment method.
PaymentMethodDetailsLink String If this mandate associates with a link payment method, this hash contains mandate information specific to the link payment method.
PaymentMethodDetailsNaverPay String If this mandate associates with a naver_pay payment method, this hash contains mandate information specific to the naver_pay payment method.
PaymentMethodDetailsNzBankAccount String If this mandate associates with a nz_bank_account payment method, this hash contains mandate information specific to the nz_bank_account payment method.
PaymentMethodDetailsPaypalBillingAgreementId String If this mandate associates with a paypal payment method, this field contains the PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
PaymentMethodDetailsPaypalPayerId String If this mandate associates with a paypal payment method, this field contains the PayPal account PayerID. This identifier uniquely identifies the PayPal customer.
PaymentMethodDetailsRevolutPay String If this mandate associates with a revolut_pay payment method, this hash contains mandate information specific to the revolut_pay payment method.
PaymentMethodDetailsSepaDebitReference String If this mandate associates with a sepa_debit payment method, this field contains the unique reference of the mandate.
PaymentMethodDetailsSepaDebitUrl String If this mandate associates with a sepa_debit payment method, this field contains the URL of the mandate. This URL generally contains sensitive information about the customer and should be shared with them exclusively.
PaymentMethodDetailsUsBankAccountCollectionMethod String If this mandate associates with a us_bank_account payment method, this field contains the mandate collection method.

The allowed values are paper.

CData Python Connector for Stripe

PaymentLinkLineItems

Query the available PaymentLink line items in Stripe.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
PaymentLinkId=
AccountId=

You can select from PaymentLinkLineItems with the following queries:

SELECT * FROM PaymentLinkLineItems WHERE PaymentLinkId = 'plink_1MHJbZSC4snQ4WkOqF4MChgG'
SELECT * FROM PaymentLinkLineItems WHERE PaymentLinkId = 'plink_1MHJbZSC4snQ4WkOqF4MChgG' AND AccountId = 'acct_1MGcyqSC4snQ4WkO'

Columns

Name Type References Description
Id [KEY] String Id of the PaymentLinkLineItems.
PaymentLinkId String

PaymentLinks.Id

Payment Links Id.
AmountDiscount Integer Total discount amount applied. If no discounts were applied, defaults to 0.
AmountSubtotal Integer Total before any discounts or taxes are applied.
AmountTax Integer Total tax amount applied. If no tax was applied, defaults to 0.
AmountTotal Integer Total after discounts and taxes.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
Description String An arbitrary string attached to the object. Often useful for displaying to users. Defaults to product name.
Object String Name of the Object.
PriceActive Boolean Whether the price can be used for new purchases.
PriceBillingScheme String How to compute the price per period. Either per_unit or tiered. per_unit indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity (for prices with usage_type=licensed), or per unit of total usage (for prices with usage_type=metered). tiered indicates that the unit pricing will be computed using a tiering strategy as defined using the tiers and tiers_mode attributes.
PriceCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
PriceCurrency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
PriceCustomUnitAmount String When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.
PriceId String Id of the price.
PriceLivemode Boolean True if the object exists in live mode. False if the object exists in test mode.
PriceLookupKey String A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.
PriceNickname String A brief description of the price, hidden from customers.
PriceObject String The object name for the price.
PriceProduct String The ID of the product this price is associated with.
PriceRecurring String The recurring components of a price such as interval and usage_type.
PriceTaxBehavior String Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.
PriceTiersMode String Each element represents a pricing tier. This parameter requires billing_scheme to be set to tiered. See also the documentation for billing_scheme. This field is not included by default. To include it in the response, expand the tiers field.
PriceTransformQuantity String Apply a transformation to the reported usage or set quantity before computing the amount billed. Cannot be combined with tiers.
PriceType String One of one_time or recurring depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.
PriceUnitAmount Integer The unit amount in paise to be charged, represented as a whole integer if possible. Only set if billing_scheme=per_unit.
PriceUnitAmountDecimal Decimal The unit amount in paise to be charged, represented as a decimal string with at most 12 decimal places. Only set if billing_scheme=per_unit.
Quantity Integer The quantity of the products being purchased.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AdjustableQuantityEnabled Boolean Set to true if the quantity can be adjusted to any non-negative Integer.
AdjustableQuantityMinimum Integer The maximum quantity the customer can purchase. By default this value is 99. You can specify a value up to 999.
AdjustableQuantityMaximum Integer The minimum quantity the customer can purchase. By default this value is 0. If there is only one item in the cart then that item quantity cannot go down to 0.
AccountId String The Id of the connected account.

CData Python Connector for Stripe

PaymentMethodDomains

Lists the details of existing payment method domains.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
DomainName=
Enabled=

You can select from PaymentMethodDomains with the following queries:

    SELECT * FROM PaymentMethodDomains WHERE id='pmd_1OgQ87SC4snQ4WkOiSNV7rXG'
    SELECT * FROM PaymentMethodDomains WHERE domainname='www.paymentmethod.com'
    SELECT * FROM PaymentMethodDomains WHERE enabled = false

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
DomainName String The domain name that this payment method domain object represents.
Enabled Boolean Whether this payment method domain is enabled.
ApplePayStatus String The status of the payment method on the domain.
ApplePayStatusDetailsErrorMessage String The error message associated with the status of the payment method on the domain.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
GooglePayStatus String The status of the payment method on the domain.
GooglePayStatusDetailsErrorMessage String The error message associated with the status of the payment method on the domain.
LinkStatus String The status of the payment method on the domain.
LinkStatusDetailsErrorMessage String The error message associated with the status of the payment method on the domain.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Object String Has the value true if the object exists in live mode or the value false if the object exists in test mode.
PaypalStatus String The status of the payment method on the domain.
PaypalStatusDetailsErrorMessage String The error message associated with the status of the payment method on the domain.

CData Python Connector for Stripe

PayoutsReconciliationSummaryForASinglePayoutReport

Payouts reconciliation summary for a single payout in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersPayout

You can also include the following optional parameters:

  • ParametersColumns

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM PayoutsReconciliationSummaryForASinglePayoutReport WHERE ParametersPayout = '12345678'

Select

You can run the following queries to retrieve report data:

SELECT * FROM PayoutsReconciliationSummaryForASinglePayoutReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'payout_reconciliation.by_id.summary.1')
SELECT * FROM PayoutsReconciliationSummaryForASinglePayoutReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY')// This will show multiple reports
SELECT * FROM PayoutsReconciliationSummaryForASinglePayoutReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Count Int The number of transactions associated with the reporting_category.
Gross Decimal Sum of the gross amounts of the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Sum of the fees paid for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Sum of the net amounts for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersPayout String

Payouts.Id

Payout ID by which to filter the report run.

CData Python Connector for Stripe

PayoutsReconciliationSummaryReport

Query the Payouts reconciliation summary report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersCurrency

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM PayoutsReconciliationSummaryReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28' 

Select

You can run the following queries to retrieve report data:

SELECT * FROM PayoutsReconciliationSummaryReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'payout_reconciliation.summary.1')
SELECT * FROM PayoutsReconciliationSummaryReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY')// This will show multiple reports
SELECT * FROM PayoutsReconciliationSummaryReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Count Int The number of transactions associated with the reporting_category.
Gross Decimal Sum of the gross amounts of the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Sum of the fees paid for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Sum of the net amounts for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.

CData Python Connector for Stripe

PayoutsSummaryReport

Query the Payouts summary report in Stripe.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Creating the Report

To create a report, the following parameters are required:

  • ParametersIntervalStart
  • ParametersIntervalEnd

You can also include the following optional parameters:

  • ParametersColumns
  • ParametersCurrency

//  This first creates the new Report and displays it. Report Creation takes time once it is created will display the report.
SELECT * FROM PayoutsSummaryReport WHERE ParametersIntervalStart = '2020-12-27' AND ParametersIntervalEnd = '2020-12-28' 

Select

You can run the following queries to retrieve report data:

SELECT * FROM PayoutsSummaryReport WHERE Id IN (SELECT Id FROM Reports WHERE report_type = 'payouts.summary.1')
SELECT * FROM PayoutsSummaryReport WHERE Id IN ('frr_1I54dkATXQzBWNrlnaavpHGe', 'frr_1I3I59ATXQzBWNrl9VcczrDY') // This will show multiple reports
SELECT * FROM PayoutsSummaryReport WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x' // This will show a respective report

Columns

Name Type References Description
Reporting_Category String Reporting Category is a new categorization of balance transactions, meant to improve on the current type field.
Currency String Three-letter ISO code for the currency in which gross, fee and net are defined.
Count Int The number of transactions associated with the reporting_category.
Gross Decimal Sum of the gross amounts of the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Fee Decimal Sum of the fees paid for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Net Decimal Sum of the net amounts for the transactions associated with the reporting_category. Expressed in major units of the currency (e.g. dollars for USD, yen for JPY).
Id String

Reports.Id

Unique identifier for the reports run object.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersCurrency String Currency of objects to be included in the report run.

CData Python Connector for Stripe

PendingBalance

Query the available balance in Stripe.

View-Specific Information

Select

You can select from PendingBalance with the following queries:

    SELECT * FROM PendingBalance WHERE Currency = 'usd'
    SELECT * FROM PendingBalance WHERE Livemode = true
    SELECT * FROM PendingBalance WHERE SourceTypesCard > 1000
    SELECT * FROM PendingBalance WHERE SourceTypesBankAccount > 5000
    SELECT * FROM PendingBalance WHERE AccountId = 'acct_1Gqj58Ly0qyl5A'

Columns

Name Type References Description
Currency String The currency of the balance.
Amount Integer The pending amount.
SourceTypesAggregate String The source cards.
SourceTypesCard Integer The source cards.
SourceTypesBankAccount Integer The source Bank Account.
SourceTypesBitcoinReceiver Integer The source Bitcoin Receiver.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get pending balance for.

CData Python Connector for Stripe

Reports

To Create and Query the Report Run object, which represents an instance of a report type generated with specific run parameters.

View-Specific Information

Note: This report requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=, IN
Created=, >, >=, <, <=

You can select from Reports with the following queries:

    SELECT * FROM Reports WHERE Id = 'frr_1I480mATXQzBWNrlYQRaLQ9x'
    SELECT * FROM Reports WHERE Id IN ('frr_1I14hXATXQzBWNrlGP5pSxd9', 'frr_1I14h9ATXQzBWNrlEG32QcPH')
    SELECT * FROM Reports WHERE Created <= '2024-01-18 11:52:34.0'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Error String If something should go wrong during the run, a message about the failure (populated when status=failed).
Livemode Boolean Always true: reports can only be run on live-mode data
Object String String representing the objects type. Objects of the same type share the same value.
ParametersIntervalEnd Datetime Ending timestamp of data to be included in the report run (exclusive).
ParametersIntervalStart Datetime Starting timestamp of data to be included in the report run.
ParametersColumns String The set of output columns requested for inclusion in the report run.
ParametersConnectedAccount String Connected account ID by which to filter the report run.
ParametersCurrency String Currency of objects to be included in the report run.
ParametersPayout String

Payouts.Id

Payout ID by which to filter the report run.
ParametersReportingCategory String Category of balance transactions to be included in the report run.
ParametersTimezone String Defaults to Etc/UTC. The output timezone for all timestamps in the report.
Report_type String The ID of the report type to run, such as balance.summary.1

The allowed values are balance_change_from_activity.itemized.1, balance_change_from_activity.itemized.2, balance_change_from_activity.itemized.3, balance_change_from_activity.summary.1, payouts.itemized.1, payouts.itemized.2, payouts.itemized.3, payouts.summary.1, balance.summary.1, ending_balance_reconciliation.itemized.1, ending_balance_reconciliation.itemized.2, ending_balance_reconciliation.itemized.3, ending_balance_reconciliation.summary.1, ending_balance_reconciliation.itemized.4, payout_reconciliation.by_id.itemized.1, payout_reconciliation.by_id.itemized.2, payout_reconciliation.by_id.itemized.3, payout_reconciliation.by_id.itemized.4, payout_reconciliation.by_id.summary.1, payout_reconciliation.itemized.1, payout_reconciliation.itemized.2, payout_reconciliation.itemized.3, payout_reconciliation.itemized.4, payout_reconciliation.summary.1, payout_reconciliation.itemized.5.

ResultCreated Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
ResultExpiresAt Datetime The time at which the file expires and is no longer available in epoch seconds.
ResultFilename String A filename for the file, suitable for saving to a filesystem.
ResultId String Unique identifier for the object.
ResultLinksHas_more Boolean True if this list has another page of items after this one that can be fetched.
ResultLinksObject String String representing the objects type. Objects of the same type share the same value. Always has the value list.
ResultLinksUrl String The URL where this list can be accessed.
ResultObject String String representing the objects type. Objects of the same type share the same value.
ResultPurpose String The purpose of the uploaded file.

The allowed values are account_requirement, additional_verification, business_icon, business_logo, customer_signature, dispute_evidence, identity_document, pci_document, tax_document_user_upload.

ResultSize Integer The size in bytes of the file object.
ResultTitle String A user friendly title for the document.
ResultType String The type of the file returned (e.g., csv, pdf, jpg, or png).
ResultUrl String The URL from which the file can be downloaded using your live secret API key.
Status String Status of this report run. This will be pending when the run is initially created. When the run finishes, this will be set to succeeded and the result field will be populated. Rarely, we may encounter an error, at which point this will be set to failed and the error field will be populated.
Succeeded_at Timestamp Timestamp at which this run successfully finished (populated when status=succeeded). Measured in seconds since the Unix epoch.
ResultLinksDataAggregate String Details about each object of Result Links.

CData Python Connector for Stripe

ReportTypes

To query the available report types.

View-Specific Information

Note: This report type requires a live-mode API key, which can be set using the LiveAPIKey connection property. This view is not accessible without specifying the LiveAPIKey.

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=, IN

You can select from ReportTypes with the following queries:

	SELECT * FROM ReportTypes
    SELECT * FROM ReportTypes WHERE Id = 'balance.summary.1'
    SELECT * FROM ReportTypes WHERE Id IN ('balance.summary.1', 'balance_change_from_activity.itemized.1')

Columns

Name Type References Description
Id [KEY] String The ID of the Report Type, such as balance.summary.1.
Object String String representing the object's type. Objects of the same type share the same value.
DataAvailableEnd Datetime Most recent time for which this Report Type is available. Measured in seconds since the Unix epoch.
DataAvailableStart Datetime Earliest time for which this Report Type is available. Measured in seconds since the Unix epoch.
DefaultColumns String List of column names that are included by default when this Report Type gets run. (If the Report Type doesn't support the columns parameter, this will be null.)
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Name String Human-readable name of the Report Type.
Updated Datetime When this Report Type was latest updated. Measured in seconds since the Unix epoch.
Version Integer Version of the Report Type. Different versions report with the same ID will have the same purpose, but may take different run parameters or have different result schemas.

CData Python Connector for Stripe

Reviews

Queries the reviews.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators:

ColumnSupported Operators
Id=
AccountId=
Created>, >=, <, <=, =

The rest of the filter is executed client-side within the connector.

You can select from Reviews with the following queries:

    SELECT * FROM Reviews WHERE Id = '123321'
    SELECT * FROM Reviews WHERE Created >= '2023-07-14T05:36:46.000-04:00'

Columns

Name Type References Description
Id [KEY] String The Id of the reviews.
BillingZip String The ZIP or postal code of the card used, if applicable.
Charge String The charge associated with this review.
ClosedReason String The reason the review was closed, or null if it has not yet been closed.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
IpAddress String The IP address where the payment originated.
IpAddressLocation String Information related to the location of the payment.
Livemode Boolean true if the object exists in live mode andfalse if in test mode.
Open Boolean If true, the review needs action.
OpenedReason String The reason the review was opened. Either rule or manual.
PaymentIntent String The PaymentIntent ID associated with this review, if one exists.
Reason String The reason the review is currently open or closed. Possible values are rule, manual, approved, refunded, refunded_as_fraud, disputed, or redacted.
Session String Information related to the browsing session of the user who initiated the payment.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to be reviewed.

CData Python Connector for Stripe

SetupAttempts

Returns a list of SetupAttempts that associate with a provided SetupIntent.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
SetupIntent=
Created=, >, >=, <, <=

You can select from SetupAttempts with the following queries:

    SELECT * FROM SetupAttempts WHERE Id = 'setupatt_1GhPzLJXTn'
    SELECT * FROM SetupAttempts WHERE setupintent = 'seti_1Ogg5h2eZvKYlo2CRdyp2Ggk'
    SELECT * FROM SetupAttempts WHERE Status = 'succeeded'
    SELECT * FROM SetupAttempts WHERE Created >= '2024-01-01'
    SELECT * FROM SetupAttempts WHERE Livemode = true

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
Object String String representing the objects type. Objects of the same type share the same value.
Application String The value of application on the SetupIntent at the time of this confirmation.
AttachToSelf Boolean If present, the SetupIntents payment method will be attached to the in-context Stripe Account.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Customer String The value of customer on the SetupIntent at the time of this confirmation.
FlowDirections String Indicates the directions of money movement for which this payment method is intended to be used.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
OnBehalfOf String The value of on_behalf_of on the SetupIntent at the time of this confirmation.
PaymentMethod String ID of the payment method used with this SetupAttempt.
PaymentMethodDetailsAcssDebit String If this is a acss_debit payment method, this hash contains confirmation-specific information for the acss_debit payment method.
PaymentMethodDetailsAuBecsDebit String If this is a au_becs_debit payment method, this hash contains confirmation-specific information for the au_becs_debit payment method.
PaymentMethodDetailsBacsDebit String If this is a bacs_debit payment method, this hash contains confirmation-specific information for the bacs_debit payment method.
PaymentMethodDetailsBanContactBankCode String Bank code of bank associated with the bank account.
PaymentMethodDetailsBanContactBankName String Name of the bank associated with the bank account.
PaymentMethodDetailsBanContactBIC String Bank Identifier Code of the bank associated with the bank account.
PaymentMethodDetailsBanContactGeneratedSepaDebit String The ID of the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt.
PaymentMethodDetailsBanContactGeneratedSepaDebitMandate String The mandate for the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt.
PaymentMethodDetailsBanContactIBanLast4 String Last four characters of the IBAN.
PaymentMethodDetailsBanContactPreferredLanguage String Preferred language of the Bancontact authorization page that the customer is redirected to
PaymentMethodDetailsBanContactVerifiedName String Owners verified full name.
PaymentMethodDetailsBoleto String If this is a boleto payment method, this hash contains confirmation-specific information for the boleto payment method.
PaymentMethodDetailsCardBrand String Card brand.
PaymentMethodDetailsCardChecks String Check results by Card networks on Card address and CVC at the time of authorization
PaymentMethodDetailsCardCountry String Two-letter ISO code representing the country of the card.
PaymentMethodDetailsCardExpMonth String Two-digit number representing the cards expiration month.
PaymentMethodDetailsCardExpYear String Four-digit number representing the cards expiration year.
PaymentMethodDetailsCardFingerprint String Uniquely identifies this particular card number.
PaymentMethodDetailsCardFunding String Card funding type.
PaymentMethodDetailsCardLast4 String The last four digits of the card.
PaymentMethodDetailsCardNetwork String Identifies which network this charge was processed on.
PaymentMethodDetailsCardThreeDSecure String Populated if this authorization used 3D Secure authentication.
PaymentMethodDetailsCardWallet String If this Card is part of a card wallet, this contains the details of the card wallet.
PaymentMethodDetailsCardPresent String If this is a card_present payment method, this hash contains confirmation-specific information for the card_present payment method.
PaymentMethodDetailsCashApp String If this is a cashapp payment method, this hash contains confirmation-specific information for the cashapp payment method.
PaymentMethodDetailsIdealBank String The customers bank.
PaymentMethodDetailsIdealBIC String The Bank Identifier Code of the customers bank.
PaymentMethodDetailsIdealGeneratedSepaDebit String The ID of the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt.
PaymentMethodDetailsIdealGeneratedSepaDebitMandate String The mandate for the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt.
PaymentMethodDetailsIdealIBanLast4 String Last four characters of the IBAN.
PaymentMethodDetailsIdealVerifiedName String Owners verified full name.
PaymentMethodDetailsKlarna String If this is a klarna payment method, this hash contains confirmation-specific information for the klarna payment method.
PaymentMethodDetailsLink String If this is a link payment method, this hash contains confirmation-specific information for the link payment method
PaymentMethodDetailsPaypal String If this is a paypal payment method, this hash contains confirmation-specific information for the paypal payment method.
PaymentMethodDetailsSepaDebit String If this is a sepa_debit payment method, this hash contains confirmation-specific information for the sepa_debit payment method.
PaymentMethodDetailsSoFortBankCode String Bank code of bank associated with the bank account.
PaymentMethodDetailsSoFortBankName String Name of the bank associated with the bank account.
PaymentMethodDetailsSoFortBIC String Bank Identifier Code of the bank associated with the bank account.
PaymentMethodDetailsSoFortGeneratedSepaDebit String The ID of the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt.
PaymentMethodDetailsSoFortGeneratedSepaDebitMandate String The mandate for the SEPA Direct Debit PaymentMethod which was generated by this SetupAttempt.
PaymentMethodDetailsSoFortIBanLast4 String Last four characters of the IBAN.
PaymentMethodDetailsSoFortPreferredLanguage String Preferred language of the Sofort authorization page that the customer is redirected to.
PaymentMethodDetailsSoFortVerifiedName String Owners verified full name.
PaymentMethodDetailsType String The type of the payment method used in the SetupIntent
PaymentMethodDetailsUsBankAccount String If this is a us_bank_account payment method, this hash contains confirmation-specific information for the us_bank_account payment method.
SetupErrorCode String For some errors that could be handled programmatically, a short string indicating the error code reported.
SetupErrorDeclineCode String For card errors resulting from a card issuer decline, a short string indicating the card issuers reason for the decline if they provide one.
SetupErrorDocURL String A URL to more information about the error code reported.
SetupErrorMessage String A human-readable message providing more details about the error.
SetupErrorParam String If the error is parameter-specific, the parameter related to the error.
SetupErrorPaymentMethod String The PaymentMethod object for errors returned on a request involving a PaymentMethod.
SetupErrorPaymentMethodType String If the error is specific to the type of payment method, the payment method type that had a problem.
SetupErrorType String The type of error returned.
SetupIntent String ID of the SetupIntent that this attempt belongs to.
Status String Status of this SetupAttempt
Usage String The value of usage on the SetupIntent at the time of this confirmation
PaymentMethodDetailsKakaoPay String If this is a kakao_pay payment method, this hash contains confirmation-specific information for the kakao_pay payment method
PaymentMethodDetailsKrCard String If this is a kr_card payment method, this hash contains confirmation-specific information for the kr_card payment method

CData Python Connector for Stripe

SetupIntents

Returns a list of SetupIntents.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Customer=
PaymentMethod=
AttachToSelf=
Created=

You can select from SetupIntents with the following queries:

    SELECT * FROM SetupIntents
    SELECT * FROM SetupIntents where Customer = 'cus_PEW7WrieLzCMkW'
    SELECT * FROM SetupIntents WHERE PaymentMethod = 'pm_1GhPzLJXTn'
    SELECT * FROM SetupIntents WHERE AttachToSelf = true
    SELECT * FROM SetupIntents WHERE Created >= '2024-01-01'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
AutomaticPaymentMethodsAllowRedirects String Controls whether this SetupIntent will accept redirect-based payment methods.
AutomaticPaymentMethodsEnabled Boolean Automatically calculates compatible payment methods
Application String ID of the Connect application that created the SetupIntent.
AttachToSelf Boolean If present, the SetupIntent’s payment method will be attached to the in-context Stripe Account.
CancellationReason String Reason for cancellation of this SetupIntent
ClientSecret String The client secret of this SetupIntent. Used for client-side retrieval using a publishable key.
Created Integer Time at which the object was created. Measured in seconds since the Unix epoch.
Customer String ID of the Customer this SetupIntent belongs to
Description String An arbitrary string attached to the object. Often useful for displaying to users.
FlowDirections String Indicates the directions of money movement for which this payment method is intended to be used.
LastSetupErrorCode String For some errors that could be handled programmatically, a short string indicating the error code reported.
LastSetupErrorDeclineCode String For card errors resulting from a card issuer decline, a short string indicating the card issuer’s reason for the decline if they provide one.
LastSetupErrorDocURL String A URL to more information about the error code reported.
LastSetupErrorMessage String A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
LastSetupErrorParam String If the error is parameter-specific, the parameter related to the error.
LastSetupErrorPaymentMethod String The PaymentMethod object for errors returned on a request involving a PaymentMethod.
LastSetupErrorPaymentMethodType String If the error is specific to the type of payment method, the payment method type that had a problem.
LastSetupErrorType String The type of error returned.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
LatestAttempt String The most recent SetupAttempt for this SetupIntent.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
Mandate String ID of the multi use Mandate generated by the SetupIntent.
NextAction String If present, this property tells you what actions you need to take in order for your customer to continue payment setup.
PaymentMethod String ID of the payment method used with this SetupIntent.
Status String Status of this SetupIntent
Usage String Indicates how the payment method is intended to be used in the future.
Object String String representing the objects type. Objects of the same type share the same value.
OnBehalfOf String The account (if any) for which the setup is intended.
PaymentMethodConfigurationDetailsId String ID of the payment method configuration used.
PaymentMethodConfigurationDetailsParent String ID of the parent payment method configuration used.
PaymentmethodOptions String Payment method-specific configuration for this SetupIntent.
PaymentMethodTypes String The list of payment method types (e.g. card) that this SetupIntent is allowed to set up.
SingleUseMandate String ID of the single_use Mandate generated by the SetupIntent.

CData Python Connector for Stripe

SubscriptionSchedules

Retrieves the list of your subscription schedules.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Customer=
CanceledAt=, >, >=, <, <=
CompletedAt=, >, >=, <, <=
Created=, >, >=, <, <=
ReleasedAt=, >, >=, <, <=

You can select from SubscriptionSchedules with the following queries:

    SELECT * FROM SubscriptionSchedules WHERE Id = 'sub_sched_1GhPzLJXTn'
    SELECT * FROM SubscriptionSchedules WHERE Customer = 'cus_PEW7WrieLzCMkW'
    SELECT * FROM SubscriptionSchedules WHERE Created = '2024-01-18 02:16:47.0'
    SELECT * FROM SubscriptionSchedules WHERE Status = 'active'
    SELECT * FROM SubscriptionSchedules WHERE CanceledAt < '2025-12-03 06:03:35.0'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
Application String ID of the Connect Application that created the schedule.
CanceledAt Datetime Time at which the subscription schedule was canceled. Measured in seconds since the Unix epoch.
CompletedAt Datetime Time at which the subscription schedule was completed. Measured in seconds since the Unix epoch.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
CurrentPhaseEndDate Datetime The end of this phase of the subscription schedule.
CurrentPhaseStartDate Datetime The start of this phase of the subscription schedule.
Customer String ID of the customer who owns the subscription schedule.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
Phases String Configuration for the subscription schedules phases.
Status String The present status of the subscription schedule.
Subscription String ID of the subscription managed by the subscription schedule.
Object String String representing the objects type. Objects of the same type share the same value.
DefaultSettingsApplicationFeePercent Decimal A non-negative decimal between 0 and 100, with at most two decimal places.
DefaultSettingsAutomaticTaxEnabled Boolean Whether Stripe automatically computes tax on invoices created during this phase.
DefaultSettingsAutomaticTaxLiability String The account thats liable for tax.
DefaultSettingsBillingCycleAnchor String Possible values are phase_start or automatic.
DefaultSettingsBillingThresholds String Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period
DefaultSettingsCollectionMethod String Either charge_automatically, or send_invoice.
DefaultSettingsDefaultPaymentMethod String ID of the default payment method for the subscription schedule.
DefaultSettingsDescription String Subscription description, meant to be displayable to the customer.
DefaultSettingsInvoiceSettings String The subscription schedules default invoice settings.
DefaultSettingsOnBehalfOf String The account (if any) the charge was made on behalf of for charges associated with the schedules subscription.
DefaultSettingsTransferData String The account (if any) the associated subscriptions payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscriptions invoices.
EndBehavior String Behavior of the subscription schedule and underlying subscription when it ends.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
ReleasedAt Datetime Time at which the subscription schedule was released. Measured in seconds since the Unix epoch.
ReleasedSubscription String ID of the subscription once managed by the subscription schedule (if it is released).
TestClock String ID of the test clock this subscription schedule belongs to.
RenewalInterval String The renewal interval of the subscription schedule.
DefaultSettingsAutomaticTaxDisabledReason String If Stripe disabled automatic tax, this enum describes why

The allowed values are requires_location_inputs.

CData Python Connector for Stripe

TaxCodes

Queries the tax codes which classify goods and services for tax purposes.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=

You can select:

All tax codes:

SELECT * FROM TaxCodes

A tax code by specifying its Id:

SELECT * FROM TaxCodes WHERE Id = 'txcd_50021103'

Columns

Name Type References Description
Id [KEY] String The Id of the tax codes.
Description String A detailed description of which types of products the tax code represents.
Name String A short name for the tax code.
Object String String representing the object’s type. Objects of the same type share the same value.

CData Python Connector for Stripe

Transactions

Returns a list of Issuing Transaction objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
Card=
Cardholder=
Type=
Created=, >, >=, <, <=

You can select from Transactions with the following queries:

    SELECT * FROM Transactions WHERE Id = 'ipi_1ODMLL2eZvKYlo2CoarGZSSp'
    SELECT * FROM Transactions WHERE Card = 'card_1GhPzLJXTn'
    SELECT * FROM Transactions WHERE Cardholder = 'cardholder_12345'
    SELECT * FROM Transactions WHERE Type = 'purchase'
    SELECT * FROM Transactions WHERE Created >= '2024-01-01'

Columns

Name Type References Description
Id [KEY] String Unique identifier for the object.
Amount Integer The transaction amount, which will be reflected in your balance.
AmountDetailsAtmFee Integer The fee charged by the ATM for the cash withdrawal.
AmountDetailsCashbackAmount Integer The amount of cash requested by the cardholder.
Authorization String The Authorization object that led to this transaction.
BalanceTransaction String Balance transaction that describes the impact on your account balance.
Card String The card used to make this transaction.
Cardholder String The cardholder to whom this transaction belongs.
Currency String Three-letter ISO currency code, in lowercase. Must be a supported currency.
MetadataAggregate String The set of key/value pairs that you can attach to a an object.
Type String The nature of the transaction.
Created Datetime Time at which the object was created. Measured in seconds since the Unix epoch.
Dispute String If youve disputed the transaction, the ID of the dispute.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
MerchantAmount Integer The amount that the merchant will receive, denominated in merchant_currency and in the smallest currency unit
MerchantCurrency String The currency with which the merchant is taking payment.
MerchantDataCategory String A categorization of the seller’s type of business.
MerchantDataCategoryCode String The merchant category code for the sellers business
MerchantDataCity String City where the seller is located
MerchantDataCountry String Country where the seller is located
MerchantDataName String Name of the seller
MerchantDataNetworkId String Identifier assigned to the seller by the card network.
MerchantDataPostalCode String Postal code where the seller is located
MerchantDataState String State where the seller is located
MerchantDataTerminalId String An ID assigned by the seller to the location of the sale.
MerchantDataURL String URL provided by the merchant on a 3DS request
NetworkDataAuthorizationCode String A code created by Stripe which is shared with the merchant to validate the authorization.
NetworkDataProcessingDate String The date the transaction was processed by the card network.
NetworkDataTransactionId String Unique identifier for the authorization assigned by the card network used to match subsequent messages, disputes, and transactions.
PurchaseDetailsFlight String Information about the flight that was purchased with this transaction.
PurchaseDetailsFuel String Information about fuel that was purchased with this transaction.
PurchaseDetailsLodging String Information about lodging that was purchased with this transaction.
PurchaseDetailsReceipt String The line items in the purchase.
PurchaseDetailsReference String A merchant-specific order number.
Token String Token object used for this transaction.
Wallet String The digital wallet used for this transaction.
MerchantDataTaxId String State where the seller is located

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AccountId String The Id of the connected account to get files for.

CData Python Connector for Stripe

Stored Procedures

Stored procedures are function-like interfaces that extend the functionality of the connector beyond simple SELECT/INSERT/UPDATE/DELETE operations with Stripe.

Stored procedures accept a list of parameters, perform their intended function, and then return any relevant response data from Stripe, along with an indication of whether the procedure succeeded or failed.

CData Python Connector for Stripe Stored Procedures

Name Description
AcceptQuote To accept the quote and generate the Invoice for the accepted quote.
ApproveReview Approves a Review object, closing it and removing it from the list of reviews.
AttachPaymentMethodToCustomer Attaches a PaymentMethod object to a Customer. It is not applicable for future payments.
CancelPaymentIntent To cancel a PaymentIntent. The Status of PaymentIntent that you want to cancel should be one of the following: requires_payment_method, requires_capture, requires_confirmation, requires_action, processing.
CancelQuote To cancel the drafted quote.
CancelSubscription Cancels a customers subscription immediately.
CapturePaymentIntent To capture the funds of an existing uncaptured PaymentIntent when its status is requires_capture.
ConfirmPaymentIntent To confirm that your customer intends to pay with current or provided payment method.
CreateBillingMeterEvent Creates a billing meter event.
DeleteCustomerDiscount Removes the currently applied discount on a customer.
DeleteSubscriptionDiscount Removes the currently applied discount on a subscription.
DetachPaymentMethodFromCustomer Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.
DownloadFile Download the file in the Stripe account.
DownloadQuote Download the PDF for a finalized quote.
FinalizeInvoice To finalize a draft invoice manually.
FinalizeQuote To finalize the drafted quote.
GetOAuthAccessToken Gets the OAuth access token from Stripe.
GetOAuthAuthorizationURL Gets the Stripe authorization URL. Access the URL returned in the output in an Internet browser. This requests the access token that can be used as part of the connection string to Stripe.
RefreshOAuthAccessToken Refreshes the OAuth access token used for authentication with various Stripe services.
ResumeSubscription Initiates resumption of a paused subscription, optionally resetting the billing cycle anchor and creating prorations
UploadFile To upload a file to Stripe.
VoidCreditNotes To mark the credit note as void
VoidInvoice To mark a finalized invoice as void.

CData Python Connector for Stripe

AcceptQuote

To accept the quote and generate the Invoice for the accepted quote.

Input

Name Type Description
QuoteId String The Quote Id.

Result Set Columns

Name Type Description
InvoiceId String The Id of the invoice generated from the quote.
Success String Execution status of the stored procedure.

CData Python Connector for Stripe

ApproveReview

Approves a Review object, closing it and removing it from the list of reviews.

Input

Name Type Description
ReviewId String The Review Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

AttachPaymentMethodToCustomer

Attaches a PaymentMethod object to a Customer. It is not applicable for future payments.

Input

Name Type Description
PaymentMethodId String The PaymentMethod Id.
CustomerId String The Id of the customer to which to attach the PaymentMethod.

Result Set Columns

Name Type Description
Success String Sucess Message that the Customer is attached to the Payment.

CData Python Connector for Stripe

CancelPaymentIntent

To cancel a PaymentIntent. The Status of PaymentIntent that you want to cancel should be one of the following: requires_payment_method, requires_capture, requires_confirmation, requires_action, processing.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE CancelPaymentIntent PaymentIntentId = 'pi_3MRW9VSC4snQ4WkO1WLN77z2', CancellationReason = 'fraudulent'

Input

Name Type Description
PaymentIntentId String The PaymentIntent Id.
CancellationReason String Reason for canceling this PaymentIntent. Possible values are: duplicate, fraudulent, requested_by_customer, or abandoned.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

CancelQuote

To cancel the drafted quote.

Input

Name Type Description
QuoteId String The Quote Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure.

CData Python Connector for Stripe

CancelSubscription

Cancels a customers subscription immediately.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE CancelSubscription SubscriptionId = 'sub_1OhQdeSC4snQ4WkOg6UheEPI', InvoiceNow = 'false', IsProrate = 'false', CancellationDetailsComment ='commenting', CancellationDetailsFeedback = 'low_quality'

Input

Name Type Description
SubscriptionId String The Subscription Id.
CancellationDetailsComment String Additional comments about why the user canceled the subscription.
CancellationDetailsFeedback String The customer submitted reason for why they canceled.
InvoiceNow String Will generate a final invoice that invoices for any un-invoiced metered usage and new/pending proration invoice items.
IsProrate String Will generate a proration invoice item that credits remaining unused time until the subscription period end.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

CapturePaymentIntent

To capture the funds of an existing uncaptured PaymentIntent when its status is requires_capture.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE CapturePaymentIntent PaymentIntentId = 'pi_3Oe4fu2eZvKYlo2C1AtF19xU', AmountToCapture = 150, StatementDescriptor = 'test', Metadata = '{\"name\":\"test1\", \"age\":20}'

Input

Name Type Description
PaymentIntentId String The PaymentIntent Id.
AmountToCapture String The amount to capture from the PaymentIntent, which must be less than or equal to the original amount.
Metadata String Set of key-value pairs that you can attach to an object.
ApplicationFeeAmount String The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account.
FinalCapture String Defaults to true. When capturing a PaymentIntent, setting final_capture to false notifies Stripe to not release the remaining uncaptured funds to make sure that they're captured in future requests. You can only use this setting when multicapture is available for PaymentIntents.
StatementDescriptor String For card charges, use statement_descriptor_suffix.
StatementDescriptorSuffix String Provides information about a card payment that customers see on their statements.
TransferData String The parameters that you can use to automatically create a transfer after the payment is captured.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

ConfirmPaymentIntent

To confirm that your customer intends to pay with current or provided payment method.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE ConfirmPaymentIntent PaymentIntentId = 'pi_3Ote8z2eZvKYlo2C0ys504TM', ReturnUrl = 'https://localhost:9000'

Input

Name Type Description
PaymentIntentId String The PaymentIntent Id.
PaymentMethod String ID of the payment method (a PaymentMethod, Card, or compatible Source object) to attach to this PaymentIntent.
ReceiptEmail String Email address that the receipt for the resulting payment will be sent to. If receipt_email is specified for a payment in live mode, a receipt will be sent regardless of your email settings.
SetupFutureUsage String Indicates that you intend to make future payments with this PaymentIntent's payment method.
Shipping String Shipping information for this PaymentIntent.
CaptureMethod String Controls when the funds will be captured from the customer's account.
ErrorOnRequiresAction String Set to true to fail the payment attempt if the PaymentIntent transitions into requires_action. This parameter is intended for simpler integrations that do not handle customer actions, like saving cards without authentication.
Mandate String ID of the mandate that's used for this payment.
MandateData String This hash contains details about the mandate to create.
OffSession String Set to true to indicate that the customer isn't in your checkout flow during this payment attempt and can't authenticate.
PaymentMethodData String If provided, this hash will be used to create a PaymentMethod. The new PaymentMethod will appear in the payment_method property on the PaymentIntent.
PaymentMethodOptions String Payment method-specific configuration for this PaymentIntent.
PaymentMethodTypes String The list of payment method types (for example, a card) that this PaymentIntent can use.
RadarOptions String Options to configure Radar.
ReturnUrl String The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter is only used for cards and other redirect-based payment methods.
UseStripeSdk String Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

CreateBillingMeterEvent

Creates a billing meter event.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison.

The 'EventName', 'PayloadCustomerMappingValue' and 'PayloadValueSettingsValue' parameters are required to execute the procedure. Examples:

Creating a meter event without supplying the values of 'PayloadCustomerMappingKey' and 'PayloadValueSettingsKey' fields:

EXEC CreateBillingMeterEvent PayloadValueSettingsValue = '25', PayloadCustomerMappingValue = 'cus_SGxBCKpgR8gIhP', EventName = 'first_meter_event';
This will create a meter event with the value of 'PayloadCustomerMappingKey' field being 'stripe_customer_id' and 'PayloadValueSettingsKey' being 'value'.

If a meter was created using custom values of the customer mapping and value settings payload keys, you must supply those values in the 'PayloadCustomerMappingKey' and 'PayloadValueSettingsKey' respectively. The 'PayloadCustomerMappingKey' parameter corresponds to the 'CustomerMappingEventPayloadKey' column and the 'PayloadValueSettingsKey' parameter corresponds to the 'ValueSettingsEventPayloadKey' column of the 'Meters' table.

EXEC CreateBillingMeterEvent EventName = 'first_meter_event', PayloadCustomerMappingKey = 'cust_id', PayloadCustomerMappingValue = 'cus_SGxBCKpgR8gIhP', PayloadValueSettingsKey = 'valhere', PayloadValueSettingsValue = '25';

Input

Name Type Description
EventName String The name of the meter event. Corresponds with the event_name field on a meter.
PayloadCustomerMappingKey String Part of the payload of the event. This should contain the value of the field corresponding to a meter's customer_mapping.event_payload_key (default is stripe_customer_id).
PayloadCustomerMappingValue String Part of the payload of the event. This should contain the value for the customer mapping key.
PayloadValueSettingsKey String Part of the payload of the event. This should contain the value of the field corresponding to a meter's value_settings.event_payload_key (default is value).
PayloadValueSettingsValue String Part of the payload of the event. This should contain the value for the value settings key.
Identifier String A unique identifier for the event.
Timestamp Datetime The timestamp passed in when creating the event. Measured in seconds since the Unix epoch.

Result Set Columns

Name Type Description
* String The fields returned by Stripe.

CData Python Connector for Stripe

DeleteCustomerDiscount

Removes the currently applied discount on a customer.

Stored Procedure Specific Information

Execute this stored procedure by providing the required input parameters. For example:

EXECUTE DeleteCustomerDiscount CustomerId = 'cus_1Oh8LhSC4snQ4WkORvitHMQW'

Input

Name Type Description
CustomerId String The Customer Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure.

CData Python Connector for Stripe

DeleteSubscriptionDiscount

Removes the currently applied discount on a subscription.

Stored Procedure Specific Information

Execute this stored procedure by providing the required input parameters. For example:

EXECUTE DeleteSubscriptionDiscount SubscriptionId = 'sub_1Oh8LhSC4snQ4WkORvitHMQW'

Input

Name Type Description
SubscriptionId String The Subscription Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure.

CData Python Connector for Stripe

DetachPaymentMethodFromCustomer

Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.

Input

Name Type Description
PaymentMethodId String The PaymentMethod Id.

Result Set Columns

Name Type Description
Success String Success Message that the Customer is detached to the Payment.

CData Python Connector for Stripe

DownloadFile

Download the file in the Stripe account.

Input

Name Type Description
FileId String The File Id.
DownloadLocation String Download location. For example: C:\file.pdf
Encoding String The FileData input encoding type.

The allowed values are NONE, BASE64.

The default value is BASE64.

Result Set Columns

Name Type Description
Status String Execution status of the stored procedure
FileData String The FileData output

CData Python Connector for Stripe

DownloadQuote

Download the PDF for a finalized quote.

Input

Name Type Description
QuoteId String The PaymentMethod Id.
DownloadLocation String Download location. For example: C:\file.pdf
Encoding String The FileData input encoding type.

The allowed values are NONE, BASE64.

The default value is BASE64.

Result Set Columns

Name Type Description
Status String Execution status of the stored procedure
FileData String The FileData output

CData Python Connector for Stripe

FinalizeInvoice

To finalize a draft invoice manually.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE FinalizeInvoice InvoiceId ='in_1ObRyZ2eZvKYlo2CeC3MGg5O', AutoAdvance = true

Input

Name Type Description
InvoiceId String The Invoice Id.
AutoAdvance String Boolean value. It controls whether Stripe performs automatic collection of the invoice. If false, the invoice state does not automatically advance without an explicit action.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

FinalizeQuote

To finalize the drafted quote.

Input

Name Type Description
QuoteId String The Quote Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure.

CData Python Connector for Stripe

GetOAuthAccessToken

Gets the OAuth access token from Stripe.

Input

Name Type Description
Verifier String The verifier token returned by Stripe after using the URL obtained with GetOAuthAuthorizationURL. Required for only the Web AuthMode.
AuthMode String Enter either APP or WEB. The type of authentication mode to use. Set to APP to get authentication tokens via a desktop app. Set to WEB to get authentication tokens via a Web app.

The default value is APP.

Scope String The scope or permissions you are requesting.

The default value is read_write.

CallbackUrl String The URL the user will be redirected to after authorizing your application.
State String Indicates any state which may be useful to your application upon receipt of the response. Your application receives the same value it sent, as this parameter makes a round-trip to the Stripe authorization server and back. Uses include redirecting the user to the correct resource in your site, nonces, and cross-site-request-forgery mitigations.

Result Set Columns

Name Type Description
OAuthAccessToken String The OAuth token.
OAuthRefreshToken String The OAuth refresh token.
ExpiresIn String The remaining lifetime for the access token in seconds.
AccountId String The Id of the user with which user has authenticated.

CData Python Connector for Stripe

GetOAuthAuthorizationURL

Gets the Stripe authorization URL. Access the URL returned in the output in an Internet browser. This requests the access token that can be used as part of the connection string to Stripe.

Input

Name Type Description
CallbackUrl String The URL that Stripe will return to after the user has authorized your app.
Scope String The scope or permissions you are requesting.

The default value is read_write.

State String Indicates any state which may be useful to your application upon receipt of the response. Your application receives the same value it sent, as this parameter makes a round-trip to the Stripe authorization server and back. Uses include redirecting the user to the correct resource in your site, nonces, and cross-site-request-forgery mitigations.

Result Set Columns

Name Type Description
URL String The URL to be entered into a Web browser to obtain the verifier token and authorize the data provider with.

CData Python Connector for Stripe

RefreshOAuthAccessToken

Refreshes the OAuth access token used for authentication with various Stripe services.

Input

Name Type Description
OAuthRefreshToken String The refresh token returned with the previous access token.

Result Set Columns

Name Type Description
OAuthAccessToken String The authentication token returned from Stripe. This can be used in subsequent calls to other operations for this particular service.
OAuthRefreshToken String A token that may be used to obtain a new access token.
ExpiresIn String The remaining lifetime on the access token.
AccountId String The Id of the user with which user has authenticated.

CData Python Connector for Stripe

ResumeSubscription

Initiates resumption of a paused subscription, optionally resetting the billing cycle anchor and creating prorations

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE ResumeSubscription SubscriptionId = 'sub_1Oh8LhSC4snQ4WkORvitHMQW', BillingCycleAnchor = 'unchanged', ProrationBehavior = 'always_invoice'

Input

Name Type Description
SubscriptionId String The Subscription Id.
BillingCycleAnchor String Either now or unchanged. Setting the value to now resets the subscriptions billing cycle anchor to the current time (in UTC). Setting the value to unchanged advances the subscriptions billing cycle anchor to the period that surrounds the current time
ProrationBehavior String Determines how to handle prorations when the billing cycle changes (e.g., when switching plans, resetting billing_cycle_anchor=now, or starting a trial), or if an items quantity changes. The default value is create_prorations.Possible Values - always_invoice, create_prorations, none.
ProrationDate String Either now or unchanged. Setting the value to now resets the subscriptions billing cycle anchor to the current time (in UTC). Setting the value to unchanged advances the subscriptions billing cycle anchor to the period that surrounds the current time

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

UploadFile

To upload a file to Stripe.

Input

Name Type Description
FullPath String The full path to the file to upload. Allowed Extensions: gif, png, jpeg, jpg, pdf, xlsx, csv and docx.
Purpose String The purpose of this file in stripe.

The allowed values are account_requirement, additional_verification, business_icon, business_logo, business_logo, dispute_evidence, identity_document, pci_document, tax_document_user_upload, terminal_reader_splashscreen.

FileName String Name of the file. If content is not empty

Result Set Columns

Name Type Description
Success String Whether the operation was successful.

CData Python Connector for Stripe

VoidCreditNotes

To mark the credit note as void

Input

Name Type Description
CreditNoteId String The CreditNote Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure

CData Python Connector for Stripe

VoidInvoice

To mark a finalized invoice as void.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison. For example:

EXECUTE VoidInvoice InvoiceId ='in_1MRVroSC4snQ4WkOoEeU4LpZ'

Input

Name Type Description
InvoiceId String The Invoice Id.

Result Set Columns

Name Type Description
Success String Execution status of the stored procedure.

CData Python Connector for Stripe

StripeV2 Data Model

Overview

This section shows the available API objects and provides more information on executing SQL to Stripe APIs.

Please note that the Stripe does not allow access to the APIs in the v2 namespace using secret keys created under test mode. Secret keys created in either live mode or in sandbox mode are allowed.

Furthermore, restricted keys are not allowed for APIs in the v2 namespace.

Key Features

  • The connector models Stripe v2 namespace entities like ThinEvents and EventDestinations as relational tables, allowing you to write SQL to query and modify Stripe data.
  • Stored procedures allow you to execute operations to Stripe
  • Live connectivity to these objects means any changes to your Stripe account are immediately reflected when using the connector.

    Additionally, the Stripe API limits the number and combinations of columns that can be projected over the data or used to restrict the results returned.

CData Python Connector for Stripe

Tables

The connector models the data in Stripe as a list of tables in a relational database that can be queried using standard SQL statements.

CData Python Connector for Stripe Tables

Name Description
EventDestinations Create, update, query and delete event destinations.

CData Python Connector for Stripe

EventDestinations

Create, update, query and delete event destinations.

Table-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=


SELECT * FROM EventDestinations WHERE Id = 'ed_test_61ScMeWkvhZiG8UHk16SbC3W0eSQEvCjDyDENOLjs2G0';

Insert

The 'Name', 'Type', 'EventPayload' and 'EnabledEvents' columns are required for insertion.

Additionally, to create an event destination of Type: 'amazon_eventbridge', the 'AmazonEventbridgeAWSAccountId' and 'AmazonEventbridgeAwsRegion' columns are also required.

INSERT INTO EventDestinations (Name, Type, EnabledEvents, EventPayload, AmazonEventbridgeAWSAccountId, AmazonEventbridgeAwsRegion, EventsFrom, MetadataAggregate) VALUES ('eventdest.', 'amazon_eventbridge', '[\"v1.billing.meter.error_report_triggered\", \"v1.billing.meter.no_meter_found\"]', 'thin', '123456789012', 'us-east-2', '[\"other_accounts\", \"self\"]', '{\"key\": \"value\"}');

To create an event destination of Type: 'webhook_endpoint', the WebhookEndpointUrl column is also required.

INSERT INTO EventDestinations (Name, Type, EnabledEvents, EventPayload, WebhookEndpointUrl, EventsFrom, Description) VALUES ('eventdest2', 'webhook_endpoint', '[\"v1.billing.meter.error_report_triggered\", \"v1.billing.meter.no_meter_found\"]', 'thin', 'https://127.0.0.1:9210', '[\"other_accounts\", \"self\"]', 'the description.');

Update

Only the 'Description', 'EnabledEvents', 'MetadataAggregate', 'Name' and 'WebhookEndpointUrl' columns can be updated.

UPDATE EventDestinations SET Name = 'Updated name', Description = 'Updated description.', EnabledEvents = '[\"v1.billing.meter.error_report_triggered\"]', MetadataAggregate = '{\"key1\": \"updated value 1\", \"key2\": \"updated value 2\"}', WebhookEndpointUrl = 'https://127.0.0.1:1234' WHERE id = 'ed_test_61Sd4rsO8phhbLRqg16SbC3W0eSQEvCjDyDENOLjs4Rc';

To remove a key-value pair from the MetadataAggregate, set its key's value to null. The following example will remove the key-value pairs with keys 'key1' and 'key2' from MetadataAggregate.

UPDATE EventDestinations SET MetadataAggregate = '{\"key1\": null, \"key2\": null}' WHERE id = 'ed_test_61Sd4rsO8phhbLRqg16SbC3W0eSQEvCjDyDENOLjs4Rc';

Delete

Delete an event destination using its Id.

DELETE FROM EventDestinations WHERE Id = 'ed_test_61Sd5CO1V93vipg6v16SbC3W0eSQEvCjDyDENOLjs02C';

Columns

Name Type ReadOnly References Description
Id [KEY] String True

Unique identifier for the event.

Object String True

String representing the object’s type. Objects of the same type share the same value of the object field.

AmazonEventbridgeAWSAccountId String False

The AWS account ID.

AmazonEventbridgeAWSEventSourceArn String True

The ARN of the AWS event source.

AmazonEventbridgeAWSEventSourceStatus String True

The state of the AWS event source.

The allowed values are active, deleted, pending, unknown.

Created Datetime True

Time at which the object was created.

Description String False

An optional description of what the event destination is used for.

EnabledEvents String False

The list of events to enable for this endpoint.

EventPayload String False

Payload type of events being subscribed to.

The allowed values are snapshot, thin.

EventsFrom String False

Where events should be routed from.

Livemode Boolean True

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

MetadataAggregate String False

Metadata.

Name String False

Event destination name.

SnapshotApiVersion String False

If using the snapshot event payload, the API version events are rendered as.

Status String True

Status. It can be set to either enabled or disabled.

The allowed values are disabled, enabled.

StatusDetailsDisabledReason String True

Reason event destination has been disabled.

The allowed values are no_aws_event_source_exists, user.

Type String False

Event destination type.

The allowed values are amazon_eventbridge, webhook_endpoint.

Updated Datetime True

Time at which the object was last updated.

WebhookEndpointSigningSecret String True

The signing secret of the webhook endpoint, only includable on creation.

WebhookEndpointUrl String False

The URL of the webhook endpoint, includable.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.

Name Type Description
AmazonEventbridgeAwsRegion String

The region of the AWS event source.

CData Python Connector for Stripe

Views

Views are similar to tables in the way that data is represented; however, views are read-only.

Queries can be executed against a view as if it were a normal table.

CData Python Connector for Stripe Views

Name Description
ThinEvents Query the available thin events in Stripe using the Event's Id or the Id of the object on which events have happened for the last thirty days.

CData Python Connector for Stripe

ThinEvents

Query the available thin events in Stripe using the Event's Id or the Id of the object on which events have happened for the last thirty days.

View-Specific Information

Select

The connector uses the Stripe API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the connector.

ColumnSupported Operators
Id=
RelatedObjectId=

Either the Id column or the RelatedObjectId column must be provided in order to query ThinEvents.

To filter using Id:

SELECT * FROM ThinEvents WHERE Id = 'evt_test_61SbFL6NoxqLBDQLk16SbC3W0eSQEvCjDyDENOLjsSno';

To filter using RelatedObjectId:

SELECT * FROM ThinEvents WHERE RelatedObjectId = 'mtr_test_61SbGIffoO9LMP7Cc41P3yX0EwFB8S4e';

Columns

Name Type References Description
Id [KEY] String Unique identifier for the event.
Object String String representing the object’s type. Objects of the same type share the same value of the object field.
Type String The type of the event.
Context String Authentication context needed to fetch the event or related object.
Created Datetime Time at which the object was created.
DataDeveloperMessageSummary String Extra field included in the event's data when fetched from /v2/events.
DataReasonErrorCount Integer The total error count within this window.
DataReasonErrorTypes String The error details.
DataValidationEnd Datetime The end of the window that is encapsulated by this summary.
DataValidationStart Datetime The start of the window that is encapsulated by this summary.
Livemode Boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
ReasonRequestId String ID of the API request that caused the event.
ReasonRequestIdempotencyKey String The idempotency key transmitted during the request.
ReasonType String Event reason type.

The allowed values are request.

RelatedObjectId String Unique identifier for the object relevant to the event.
RelatedObjectType String Object tag of the resource relevant to the event.
RelatedObjectUrl String URL to retrieve the resource.

CData Python Connector for Stripe

Stored Procedures

Stored procedures are function-like interfaces that extend the functionality of the connector beyond simple SELECT/INSERT/UPDATE/DELETE operations with Stripe.

Stored procedures accept a list of parameters, perform their intended function, and then return any relevant response data from Stripe, along with an indication of whether the procedure succeeded or failed.

CData Python Connector for Stripe Stored Procedures

Name Description
CreateBillingMeterEvent Creates a billing meter event.
CreateBillingMeterEventAdjustment Creates a meter event adjustment object to cancel a previously sent meter event.
DisableEventDestination Disables an event destination.
EnableEventDestination Enables an event destination.
GetOAuthAccessToken Gets the OAuth access token from Stripe.
GetOAuthAuthorizationURL Gets the Stripe authorization URL. Access the URL returned in the output in an Internet browser. This requests the access token that can be used as part of the connection string to Stripe.
PingEventDestination Send a ping event to an event destination.
RefreshOAuthAccessToken Refreshes the OAuth access token used for authentication with various Stripe services.

CData Python Connector for Stripe

CreateBillingMeterEvent

Creates a billing meter event.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison.

The 'EventName', 'PayloadCustomerMappingValue' and 'PayloadValueSettingsValue' parameters are required to execute the procedure. Examples:

Creating a meter event without supplying the values of 'PayloadCustomerMappingKey' and 'PayloadValueSettingsKey' fields:

EXEC CreateBillingMeterEvent PayloadValueSettingsValue = '25', PayloadCustomerMappingValue = 'cus_SGxBCKpgR8gIhP', EventName = 'first_meter_event';
This will create a meter event with the value of 'PayloadCustomerMappingKey' field being 'stripe_customer_id' and 'PayloadValueSettingsKey' being 'value'.

If a meter was created using custom values of the customer mapping and value settings payload keys, you must supply those values in the 'PayloadCustomerMappingKey' and 'PayloadValueSettingsKey' respectively. The 'PayloadCustomerMappingKey' parameter corresponds to the 'CustomerMappingEventPayloadKey' column and the 'PayloadValueSettingsKey' parameter corresponds to the 'ValueSettingsEventPayloadKey' column of the 'Meters' table of the 'Stripe' schema.

EXEC CreateBillingMeterEvent EventName = 'first_meter_event', PayloadCustomerMappingKey = 'cust_id', PayloadCustomerMappingValue = 'cus_SGxBCKpgR8gIhP', PayloadValueSettingsKey = 'valhere', PayloadValueSettingsValue = '25';

Input

Name Type Description
EventName String The name of the meter event. Corresponds with the event_name field on a meter.
PayloadCustomerMappingKey String Part of the payload of the event. This should contain the value of the field corresponding to a meter's customer_mapping.event_payload_key (default is stripe_customer_id).
PayloadCustomerMappingValue String Part of the payload of the event. This should contain the value for the customer mapping key.
PayloadValueSettingsKey String Part of the payload of the event. This should contain the value of the field corresponding to a meter's value_settings.event_payload_key (default is value).
PayloadValueSettingsValue String Part of the payload of the event. This should contain the value for the value settings key.
Identifier String A unique identifier for the event. If not provided, one will be generated.
Timestamp Datetime The time of the event. Must be within the past 35 calendar days or up to 5 minutes in the future. Defaults to current timestamp if not specified.

Result Set Columns

Name Type Description
* String The fields returned by Stripe.

CData Python Connector for Stripe

CreateBillingMeterEventAdjustment

Creates a meter event adjustment object to cancel a previously sent meter event.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison.

The 'EventName' and 'CancelIdentifier' input parameters are required to execute the procedure.

As per the Stripe API, the procedure will create a MeterEventAdjustment object which will cancel the meter event identified in the 'CancelIdentifier' input parameter.

EXEC CreateBillingMeterEventAdjustment EventName = 'stripe_cli_billing_meter_for_fixture', CancelIdentifier = '18f9bee1-524a-4afa-bc17-23c76843f3ab';

Input

Name Type Description
EventName String The name of the meter event. Corresponds with the event_name field on a meter.
CancelIdentifier String Unique identifier for the event. You can only cancel events within 24 hours of Stripe receiving them.

Result Set Columns

Name Type Description
* String The fields returned by Stripe.

CData Python Connector for Stripe

DisableEventDestination

Disables an event destination.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison.

The 'EventDestinationId' input parameter is required to execute the procedure.

EXEC DisableEventDestination EventDestinationId = 'ed_test_61ScMnMqRNGvCdclT16SbC3W0eSQEvCjDyDENOLjs7dQ';

Input

Name Type Description
EventDestinationId String Identifier for the event destination to disable.

Result Set Columns

Name Type Description
Success Boolean Whether the procedure suceeded or not.
EventDestinationId String Identifier for the event destination to disable.

CData Python Connector for Stripe

EnableEventDestination

Enables an event destination.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison.

The 'EventDestinationId' input parameter is required to execute the procedure.

EXEC EnableEventDestination EventDestinationId = 'ed_test_61ScMnMqRNGvCdclT16SbC3W0eSQEvCjDyDENOLjs7dQ';

Input

Name Type Description
EventDestinationId String Identifier for the event destination to enable.

Result Set Columns

Name Type Description
Success Boolean Whether the procedure suceeded or not.
EventDestinationId String Identifier for the event destination to disable.

CData Python Connector for Stripe

GetOAuthAccessToken

Gets the OAuth access token from Stripe.

Input

Name Type Description
Verifier String The verifier token returned by Stripe after using the URL obtained with GetOAuthAuthorizationURL. Required for only the Web AuthMode.
AuthMode String Enter either APP or WEB. The type of authentication mode to use. Set to APP to get authentication tokens via a desktop app. Set to WEB to get authentication tokens via a Web app.

The default value is APP.

Scope String The scope or permissions you are requesting.

The default value is read_write.

CallbackUrl String The URL the user will be redirected to after authorizing your application.
State String Indicates any state which may be useful to your application upon receipt of the response. Your application receives the same value it sent, as this parameter makes a round-trip to the Stripe authorization server and back. Uses include redirecting the user to the correct resource in your site, nonces, and cross-site-request-forgery mitigations.

Result Set Columns

Name Type Description
OAuthAccessToken String The OAuth token.
OAuthRefreshToken String The OAuth refresh token.
ExpiresIn String The remaining lifetime for the access token in seconds.
AccountId String The Id of the user with which user has authenticated.

CData Python Connector for Stripe

GetOAuthAuthorizationURL

Gets the Stripe authorization URL. Access the URL returned in the output in an Internet browser. This requests the access token that can be used as part of the connection string to Stripe.

Input

Name Type Description
CallbackUrl String The URL that Stripe will return to after the user has authorized your app.
Scope String The scope or permissions you are requesting.

The default value is read_write.

State String Indicates any state which may be useful to your application upon receipt of the response. Your application receives the same value it sent, as this parameter makes a round-trip to the Stripe authorization server and back. Uses include redirecting the user to the correct resource in your site, nonces, and cross-site-request-forgery mitigations.

Result Set Columns

Name Type Description
URL String The URL to be entered into a Web browser to obtain the verifier token and authorize the data provider with.

CData Python Connector for Stripe

PingEventDestination

Send a ping event to an event destination.

Stored Procedure-Specific Information

Stripe allows only a small subset of columns to be used in the Exec query. These columns can typically be used with only = comparison.

The 'EventDestinationId' input parameter is required to execute the procedure.

EXEC PingEventDestination EventDestinationId = 'ed_test_61ScHxveU3etT63GO16SbC3W0eSQEvCjDyDENOLjsD0y';

Input

Name Type Description
EventDestinationId String Identifier for the event destination to ping.

Result Set Columns

Name Type Description
Success Boolean Whether the procedure suceeded or not.
EventDestinationId String Identifier for the event destination to disable.

CData Python Connector for Stripe

RefreshOAuthAccessToken

Refreshes the OAuth access token used for authentication with various Stripe services.

Input

Name Type Description
OAuthRefreshToken String The refresh token returned with the previous access token.

Result Set Columns

Name Type Description
OAuthAccessToken String The authentication token returned from Stripe. This can be used in subsequent calls to other operations for this particular service.
OAuthRefreshToken String A token that may be used to obtain a new access token.
ExpiresIn String The remaining lifetime on the access token.
AccountId String The Id of the user with which user has authenticated.

CData Python Connector for Stripe

System Tables

You can query the system tables described in this section to access schema information, information on data source functionality, and batch operation statistics.

Schema Tables

The following tables return database metadata for Stripe:

Data Source Tables

The following tables return information about how to connect to and query the data source:

  • sys_connection_props: Returns information on the available connection properties.
  • sys_sqlinfo: Describes the SELECT queries that the connector can offload to the data source.

Query Information Tables

The following table returns query statistics for data modification queries

  • sys_identity: Returns information about batch operations or single updates.

CData Python Connector for Stripe

sys_catalogs

Lists the available databases.

The following query retrieves all databases determined by the connection string:

SELECT * FROM sys_catalogs

Columns

Name Type Description
CatalogName String The database name.

CData Python Connector for Stripe

sys_schemas

Lists the available schemas.

The following query retrieves all available schemas:

          SELECT * FROM sys_schemas
          

Columns

Name Type Description
CatalogName String The database name.
SchemaName String The schema name.

CData Python Connector for Stripe

sys_tables

Lists the available tables.

The following query retrieves the available tables and views:

          SELECT * FROM sys_tables
          

Columns

Name Type Description
CatalogName String The database containing the table or view.
SchemaName String The schema containing the table or view.
TableName String The name of the table or view.
TableType String The table type (table or view).
Description String A description of the table or view.
IsUpdateable Boolean Whether the table can be updated.
IsInsertable Boolean Whether the table can be inserted into.
IsDeleteable Boolean Whether rows can be deleted from the table.

CData Python Connector for Stripe

sys_tablecolumns

Describes the columns of the available tables and views.

The following query returns the columns and data types for the Customers table:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName = 'Customers' 

Columns

Name Type Description
CatalogName String The name of the database containing the table or view.
SchemaName String The schema containing the table or view.
TableName String The name of the table or view containing the column.
ColumnName String The column name.
DataTypeName String The data type name.
DataType Int32 An integer indicating the data type. This value is determined at run time based on the environment.
Length Int32 The storage size of the column.
DisplaySize Int32 The designated column's normal maximum width in characters.
NumericPrecision Int32 The maximum number of digits in numeric data. The column length in characters for character and date-time data.
NumericScale Int32 The column scale or number of digits to the right of the decimal point.
IsNullable Boolean Whether the column can contain null.
Description String A brief description of the column.
Ordinal Int32 The sequence number of the column.
IsAutoIncrement String Whether the column value is assigned in fixed increments.
IsGeneratedColumn String Whether the column is generated.
IsHidden Boolean Whether the column is hidden.
IsArray Boolean Whether the column is an array.
IsReadOnly Boolean Whether the column is read-only.
IsKey Boolean Indicates whether a field returned from sys_tablecolumns is the primary key of the table.
ColumnType String The role or classification of the column in the schema. Possible values include SYSTEM, LINKEDCOLUMN, NAVIGATIONKEY, REFERENCECOLUMN, and NAVIGATIONPARENTCOLUMN.
ColumnCapabilities Int32 A bit mask denoting the column's write capabilities. The value is the sum of the following: 1 if the column is required for INSERTs, 2 if the column is allowed for INSERTs, and 4 if the column is allowed for UPDATEs. A value of 0 indicates that the write capabilities of the column are unknown or that the column is read-only.

CData Python Connector for Stripe

sys_procedures

Lists the available stored procedures.

The following query retrieves the available stored procedures:

          SELECT * FROM sys_procedures
          

Columns

Name Type Description
CatalogName String The database containing the stored procedure.
SchemaName String The schema containing the stored procedure.
ProcedureName String The name of the stored procedure.
Description String A description of the stored procedure.
ProcedureType String The type of the procedure, such as PROCEDURE or FUNCTION.

CData Python Connector for Stripe

sys_procedureparameters

Describes stored procedure parameters.

The following query returns information about all of the input parameters for the RefreshOAuthAccessToken stored procedure:

SELECT * FROM sys_procedureparameters WHERE ProcedureName = 'RefreshOAuthAccessToken' AND Direction = 1 OR Direction = 2

To include result set columns in addition to the parameters, set the IncludeResultColumns pseudo column to True:

SELECT * FROM sys_procedureparameters WHERE ProcedureName = 'RefreshOAuthAccessToken' AND IncludeResultColumns='True'

Columns

Name Type Description
CatalogName String The name of the database containing the stored procedure.
SchemaName String The name of the schema containing the stored procedure.
ProcedureName String The name of the stored procedure containing the parameter.
ColumnName String The name of the stored procedure parameter.
Direction Int32 An integer corresponding to the type of the parameter: input (1), input/output (2), or output(4). input/output type parameters can be both input and output parameters.
DataType Int32 An integer indicating the data type. This value is determined at run time based on the environment.
DataTypeName String The name of the data type.
NumericPrecision Int32 The maximum precision for numeric data. The column length in characters for character and date-time data.
Length Int32 The number of characters allowed for character data. The number of digits allowed for numeric data.
NumericScale Int32 The number of digits to the right of the decimal point in numeric data.
IsNullable Boolean Whether the parameter can contain null.
IsRequired Boolean Whether the parameter is required for execution of the procedure.
IsArray Boolean Whether the parameter is an array.
Description String The description of the parameter.
Ordinal Int32 The index of the parameter.
Values String The values you can set in this parameter are limited to those shown in this column. Possible values are comma-separated.
SupportsStreams Boolean Whether the parameter represents a file that you can pass as either a file path or a stream.
IsPath Boolean Whether the parameter is a target path for a schema creation operation.
Default String The value used for this parameter when no value is specified.
SpecificName String A label that, when multiple stored procedures have the same name, uniquely identifies each identically-named stored procedure. If there's only one procedure with a given name, its name is simply reflected here.
IsCDataProvided Boolean Whether the procedure is added/implemented by CData, as opposed to being a native Stripe procedure.

Pseudo-Columns

Name Type Description
IncludeResultColumns Boolean Whether the output should include columns from the result set in addition to parameters. Defaults to False.

CData Python Connector for Stripe

sys_keycolumns

Describes the primary and foreign keys.

The following query retrieves the primary key for the Customers table:

         SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Customers' 
          

Columns

Name Type Description
CatalogName String The name of the database containing the key.
SchemaName String The name of the schema containing the key.
TableName String The name of the table containing the key.
ColumnName String The name of the key column.
IsKey Boolean Whether the column is a primary key in the table referenced in the TableName field.
IsForeignKey Boolean Whether the column is a foreign key referenced in the TableName field.
PrimaryKeyName String The name of the primary key.
ForeignKeyName String The name of the foreign key.
ReferencedCatalogName String The database containing the primary key.
ReferencedSchemaName String The schema containing the primary key.
ReferencedTableName String The table containing the primary key.
ReferencedColumnName String The column name of the primary key.

CData Python Connector for Stripe

sys_foreignkeys

Describes the foreign keys.

The following query retrieves all foreign keys which refer to other tables:

         SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
          

Columns

Name Type Description
CatalogName String The name of the database containing the key.
SchemaName String The name of the schema containing the key.
TableName String The name of the table containing the key.
ColumnName String The name of the key column.
PrimaryKeyName String The name of the primary key.
ForeignKeyName String The name of the foreign key.
ReferencedCatalogName String The database containing the primary key.
ReferencedSchemaName String The schema containing the primary key.
ReferencedTableName String The table containing the primary key.
ReferencedColumnName String The column name of the primary key.
ForeignKeyType String Designates whether the foreign key is an import (points to other tables) or export (referenced from other tables) key.

CData Python Connector for Stripe

sys_primarykeys

Describes the primary keys.

The following query retrieves the primary keys from all tables and views:

         SELECT * FROM sys_primarykeys
          

Columns

Name Type Description
CatalogName String The name of the database containing the key.
SchemaName String The name of the schema containing the key.
TableName String The name of the table containing the key.
ColumnName String The name of the key column.
KeySeq String The sequence number of the primary key.
KeyName String The name of the primary key.

CData Python Connector for Stripe

sys_indexes

Describes the available indexes. By filtering on indexes, you can write more selective queries with faster query response times.

The following query retrieves all indexes that are not primary keys:

          SELECT * FROM sys_indexes WHERE IsPrimary='false'
          

Columns

Name Type Description
CatalogName String The name of the database containing the index.
SchemaName String The name of the schema containing the index.
TableName String The name of the table containing the index.
IndexName String The index name.
ColumnName String The name of the column associated with the index.
IsUnique Boolean True if the index is unique. False otherwise.
IsPrimary Boolean True if the index is a primary key. False otherwise.
Type Int16 An integer value corresponding to the index type: statistic (0), clustered (1), hashed (2), or other (3).
SortOrder String The sort order: A for ascending or D for descending.
OrdinalPosition Int16 The sequence number of the column in the index.

CData Python Connector for Stripe

sys_connection_props

Returns information on the available connection properties and those set in the connection string.

The following query retrieves all connection properties that have been set in the connection string or set through a default value:

SELECT * FROM sys_connection_props WHERE Value <> ''

Columns

Name Type Description
Name String The name of the connection property.
ShortDescription String A brief description.
Type String The data type of the connection property.
Default String The default value if one is not explicitly set.
Values String A comma-separated list of possible values. A validation error is thrown if another value is specified.
Value String The value you set or a preconfigured default.
Required Boolean Whether the property is required to connect.
Category String The category of the connection property.
IsSessionProperty String Whether the property is a session property, used to save information about the current connection.
Sensitivity String The sensitivity level of the property. This informs whether the property is obfuscated in logging and authentication forms.
PropertyName String A camel-cased truncated form of the connection property name.
Ordinal Int32 The index of the parameter.
CatOrdinal Int32 The index of the parameter category.
Hierarchy String Shows dependent properties associated that need to be set alongside this one.
Visible Boolean Informs whether the property is visible in the connection UI.
ETC String Various miscellaneous information about the property.

CData Python Connector for Stripe

sys_sqlinfo

Describes the SELECT query processing that the connector can offload to the data source.

See SQL Compliance for SQL syntax details.

Discovering the Data Source's SELECT Capabilities

Below is an example data set of SQL capabilities. Some aspects of SELECT functionality are returned in a comma-separated list if supported; otherwise, the column contains NO.

NameDescriptionPossible Values
AGGREGATE_FUNCTIONSSupported aggregation functions.AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNTWhether COUNT function is supported.YES, NO
IDENTIFIER_QUOTE_OPEN_CHARThe opening character used to escape an identifier.[
IDENTIFIER_QUOTE_CLOSE_CHARThe closing character used to escape an identifier.]
SUPPORTED_OPERATORSA list of supported SQL operators.=, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BYWhether GROUP BY is supported, and, if so, the degree of support.NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
OJ_CAPABILITIESThe supported varieties of outer joins supported.NO, LEFT, RIGHT, FULL, INNER, NOT_ORDERED, ALL_COMPARISON_OPS
OUTER_JOINSWhether outer joins are supported.YES, NO
SUBQUERIESWhether subqueries are supported, and, if so, the degree of support.NO, COMPARISON, EXISTS, IN, CORRELATED_SUBQUERIES, QUANTIFIED
STRING_FUNCTIONSSupported string functions.LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONSSupported numeric functions.ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONSSupported date/time functions.NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLESIndicates tables skipped during replication.
REPLICATION_TIMECHECK_COLUMNSA string array containing a list of columns which will be used to check for (in the given order) to use as a modified column during replication.
IDENTIFIER_PATTERNString value indicating what string is valid for an identifier.
SUPPORT_TRANSACTIONIndicates if the provider supports transactions such as commit and rollback.YES, NO
DIALECTIndicates the SQL dialect to use.
KEY_PROPERTIESIndicates the properties which identify the uniform database.
SUPPORTS_MULTIPLE_SCHEMASIndicates if multiple schemas may exist for the provider.YES, NO
SUPPORTS_MULTIPLE_CATALOGSIndicates if multiple catalogs may exist for the provider.YES, NO
DATASYNCVERSIONThe CData Data Sync version needed to access this driver.Standard, Starter, Professional, Enterprise
DATASYNCCATEGORYThe CData Data Sync category of this driver.Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQLWhether enhanced SQL functionality beyond what is offered by the API is supported.TRUE, FALSE
SUPPORTS_BATCH_OPERATIONSWhether batch operations are supported.YES, NO
SQL_CAPAll supported SQL capabilities for this driver.SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONSA string value specifies the preferred cacheOptions.
ENABLE_EF_ADVANCED_QUERYIndicates if the driver directly supports advanced queries coming from Entity Framework. If not, queries will be handled client side.YES, NO
PSEUDO_COLUMNSA string array indicating the available pseudo columns.
MERGE_ALWAYSIf the value is true, The Merge Mode is forcibly executed in Data Sync.TRUE, FALSE
REPLICATION_MIN_DATE_QUERYA select query to return the replicate start datetime.
REPLICATION_MIN_FUNCTIONAllows a provider to specify the formula name to use for executing a server side min.
REPLICATION_START_DATEAllows a provider to specify a replicate startdate.
REPLICATION_MAX_DATE_QUERYA select query to return the replicate end datetime.
REPLICATION_MAX_FUNCTIONAllows a provider to specify the formula name to use for executing a server side max.
IGNORE_INTERVALS_ON_INITIAL_REPLICATEA list of tables which will skip dividing the replicate into chunks on the initial replicate.
CHECKCACHE_USE_PARENTIDIndicates whether the CheckCache statement should be done against the parent key column.TRUE, FALSE
CREATE_SCHEMA_PROCEDURESIndicates stored procedures that can be used for generating schema files.

The following query retrieves the operators that can be used in the WHERE clause:

SELECT * FROM sys_sqlinfo WHERE Name = 'SUPPORTED_OPERATORS'
Note that individual tables may have different limitations or requirements on the WHERE clause; refer to the Data Model section for more information.

Columns

Name Type Description
NAME String A component of SQL syntax, or a capability that can be processed on the server.
VALUE String Detail on the supported SQL or SQL syntax.

CData Python Connector for Stripe

sys_identity

Returns information about attempted modifications.

The following query retrieves the Ids of the modified rows in a batch operation:

         SELECT * FROM sys_identity
          

Columns

Name Type Description
Id String The database-generated Id returned from a data modification operation.
Batch String An identifier for the batch. 1 for a single operation.
Operation String The result of the operation in the batch: INSERTED, UPDATED, or DELETED.
Message String SUCCESS or an error message if the update in the batch failed.

CData Python Connector for Stripe

sys_information

Describes the available system information.

The following query retrieves all columns:

SELECT * FROM sys_information

Columns

NameTypeDescription
ProductStringThe name of the product.
VersionStringThe version number of the product.
DatasourceStringThe name of the datasource the product connects to.
NodeIdStringThe unique identifier of the machine where the product is installed.
HelpURLStringThe URL to the product's help documentation.
LicenseStringThe license information for the product. (If this information is not available, the field may be left blank or marked as 'N/A'.)
LocationStringThe file path location where the product's library is stored.
EnvironmentStringThe version of the environment or rumtine the product is currently running under.
DataSyncVersionStringThe tier of CData Sync required to use this connector.
DataSyncCategoryStringThe category of CData Sync functionality (e.g., Source, Destination).

CData Python Connector for Stripe

Connection String Options

The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider. Click the links for further details.

For more information on establishing a connection, see Establishing a Connection.

Authentication


PropertyDescription
AuthSchemeThe type of authentication to use when connecting to Stripe.

OAuth


PropertyDescription
InitiateOAuthSpecifies the process for obtaining or refreshing the OAuth access token, which maintains user access while an authenticated, authorized user is working.
OAuthClientIdSpecifies the client ID (also known as the consumer key) assigned to your custom OAuth application. This ID is required to identify the application to the OAuth authorization server during authentication.
OAuthClientSecretSpecifies the client secret assigned to your custom OAuth application. This confidential value is used to authenticate the application to the OAuth authorization server. (Custom OAuth applications only.).
OAuthAccessTokenSpecifies the OAuth access token used to authenticate requests to the data source. This token is issued by the authorization server after a successful OAuth exchange.
OAuthSettingsLocationSpecifies the location of the settings file where OAuth values are saved.
CallbackURLIdentifies the URL users return to after authenticating to Stripe via OAuth (Custom OAuth applications only).
ScopeSpecifies the scope of the authenticating user's access to the application, to ensure they get appropriate access to data. If a custom OAuth application is needed, this is generally specified at the time the application is created.
OAuthVerifierSpecifies a verifier code returned from the OAuthAuthorizationURL . Used when authenticating to OAuth on a headless server, where a browser can't be launched. Requires both OAuthSettingsLocation and OAuthVerifier to be set.
OAuthRefreshTokenSpecifies the OAuth refresh token used to request a new access token after the original has expired.
OAuthExpiresInSpecifies the duration in seconds, of an OAuth Access Token's lifetime. The token can be reissued to keep access alive as long as the user keeps working.
OAuthTokenTimestampDisplays a Unix epoch timestamp in milliseconds that shows how long ago the current access token was created.

SSL


PropertyDescription
SSLServerCertSpecifies the certificate to be accepted from the server when connecting using TLS/SSL.

Firewall


PropertyDescription
FirewallTypeSpecifies the protocol the provider uses to tunnel traffic through a proxy-based firewall.
FirewallServerIdentifies the IP address, DNS name, or host name of a proxy used to traverse a firewall and relay user queries to network resources.
FirewallPortSpecifies the TCP port to be used for a proxy-based firewall.
FirewallUserIdentifies the user ID of the account authenticating to a proxy-based firewall.
FirewallPasswordSpecifies the password of the user account authenticating to a proxy-based firewall.

Proxy


PropertyDescription
ProxyAutoDetectSpecifies whether the provider checks your system proxy settings for existing proxy server configurations, rather than using a manually specified proxy server.
ProxyServerIdentifies the hostname or IP address of the proxy server through which you want to route HTTP traffic.
ProxyPortIdentifies the TCP port on your specified proxy server that has been reserved for routing HTTP traffic to and from the client.
ProxyAuthSchemeSpecifies the authentication method the provider uses when authenticating to the proxy server specified in the ProxyServer connection property.
ProxyUserProvides the username of a user account registered with the proxy server specified in the ProxyServer connection property.
ProxyPasswordSpecifies the password of the user specified in the ProxyUser connection property.
ProxySSLTypeSpecifies the SSL type to use when connecting to the proxy server specified in the ProxyServer connection property.
ProxyExceptionsSpecifies a semicolon-separated list of destination hostnames or IPs that are exempt from connecting through the proxy server set in the ProxyServer connection property.

Logging


PropertyDescription
LogfileSpecifies the file path to the log file where the provider records its activities, such as authentication, query execution, and connection details.
VerbositySpecifies the verbosity level of the log file, which controls the amount of detail logged. Supported values range from 1 to 5.
LogModulesSpecifies the core modules to include in the log file. Use a semicolon-separated list of module names. By default, all modules are logged.
MaxLogFileSizeSpecifies the maximum size of a single log file in bytes. For example, '10 MB'. When the file reaches the limit, the provider creates a new log file with the date and time appended to the name.
MaxLogFileCountSpecifies the maximum number of log files the provider retains. When the limit is reached, the oldest log file is deleted to make space for a new one.

Schema


PropertyDescription
LocationSpecifies the location of a directory containing schema files that define tables, views, and stored procedures. Depending on your service's requirements, this may be expressed as either an absolute path or a relative path.
BrowsableSchemasOptional setting that restricts the schemas reported to a subset of all available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC .
TablesOptional setting that restricts the tables reported to a subset of all available tables. For example, Tables=TableA,TableB,TableC .
ViewsOptional setting that restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC .
SchemaThe schema you want to interact with.

Caching


PropertyDescription
AutoCacheSpecifies whether the content of tables targeted by SELECT queries is automatically cached to the specified cache database.
CacheProviderThe namespace of an ADO.NET provider. The specified provider is used as the target database for all caching operations.
CacheDriverThe driver class of a JDBC driver. The specified driver is used to connect to the target database for all caching operations.
CacheConnectionSpecifies the connection string for the specified cache database.
CacheLocationSpecifies the path to the cache when caching to a file.
CacheToleranceNotes the tolerance, in seconds, for stale data in the specified cache database. Requires AutoCache to be set to True.
OfflineGets the data from the specified cache database instead of live Stripe data.
CacheMetadataDetermines whether the provider caches table metadata to a file-based cache database.

Miscellaneous


PropertyDescription
AccountIdThe ID of the Account that you want to use.
LiveAPIKeyLiveAPIKey is required to generate and view the Reports.
MaxRowsSpecifies the maximum number of rows returned for queries that do not include either aggregation or GROUP BY.
OtherSpecifies advanced connection properties for specialized scenarios. Use this property only under the guidance of our Support team to address specific issues.
PseudoColumnsSpecifies the pseudocolumns to expose as table columns, expressed as a string in the format 'TableName=ColumnName;TableName=ColumnName'.
ReadonlyToggles read-only access to Stripe from the provider.
RTKSpecifies the runtime key for licensing the provider. If unset or invalid, the provider defaults to the standard licensing method. This property is only required in environments where the standard licensing method is unsupported or requires a runtime key.
TimeoutSpecifies the maximum time, in seconds, that the provider waits for a server response before throwing a timeout error.
UserDefinedViewsSpecifies a filepath to a JSON configuration file that defines custom views. The provider automatically detects and uses the views specified in this file.
CData Python Connector for Stripe

Authentication

This section provides a complete list of the Authentication properties you can configure in the connection string for this provider.


PropertyDescription
AuthSchemeThe type of authentication to use when connecting to Stripe.
CData Python Connector for Stripe

AuthScheme

The type of authentication to use when connecting to Stripe.

Possible Values

APIKey, OAuth

Data Type

string

Default Value

"APIKey"

Remarks

  • APIKey: Set to this to perform APIKey authentication.
  • OAuth: Set to this to perform OAuth authentication.

CData Python Connector for Stripe

OAuth

This section provides a complete list of the OAuth properties you can configure in the connection string for this provider.


PropertyDescription
InitiateOAuthSpecifies the process for obtaining or refreshing the OAuth access token, which maintains user access while an authenticated, authorized user is working.
OAuthClientIdSpecifies the client ID (also known as the consumer key) assigned to your custom OAuth application. This ID is required to identify the application to the OAuth authorization server during authentication.
OAuthClientSecretSpecifies the client secret assigned to your custom OAuth application. This confidential value is used to authenticate the application to the OAuth authorization server. (Custom OAuth applications only.).
OAuthAccessTokenSpecifies the OAuth access token used to authenticate requests to the data source. This token is issued by the authorization server after a successful OAuth exchange.
OAuthSettingsLocationSpecifies the location of the settings file where OAuth values are saved.
CallbackURLIdentifies the URL users return to after authenticating to Stripe via OAuth (Custom OAuth applications only).
ScopeSpecifies the scope of the authenticating user's access to the application, to ensure they get appropriate access to data. If a custom OAuth application is needed, this is generally specified at the time the application is created.
OAuthVerifierSpecifies a verifier code returned from the OAuthAuthorizationURL . Used when authenticating to OAuth on a headless server, where a browser can't be launched. Requires both OAuthSettingsLocation and OAuthVerifier to be set.
OAuthRefreshTokenSpecifies the OAuth refresh token used to request a new access token after the original has expired.
OAuthExpiresInSpecifies the duration in seconds, of an OAuth Access Token's lifetime. The token can be reissued to keep access alive as long as the user keeps working.
OAuthTokenTimestampDisplays a Unix epoch timestamp in milliseconds that shows how long ago the current access token was created.
CData Python Connector for Stripe

InitiateOAuth

Specifies the process for obtaining or refreshing the OAuth access token, which maintains user access while an authenticated, authorized user is working.

Possible Values

OFF, REFRESH, GETANDREFRESH

Data Type

string

Default Value

"OFF"

Remarks

OAuth is an authorization framework that enables applications to obtain limited access to user accounts on an HTTP service. The OAuth flow defines the method to be used for:

  • Logging in users.
  • Exchanging user credentials for an OAuth access token to be used for authentication.
  • Providing limited access to applications.

The options for initiating and maintaining OAuth access are named for the parts of that flow that the connector handles:

OFF The connector provides no automatic OAuth flow initiation. The OAuth flow is handled entirely by the user.
This means that the user must refresh the token manually, and reconnect with an updated OAuthAccessToken property when the current token expires.
GETANDREFRESH The connector handles the entire OAuth flow (both GET and REFRESH). This means that if a token already exists, the connector refreshes it when necessary; if no token currently exists, the connector obtains it by prompting the user to login.
REFRESH The user obtains the OAuth Access Token and sets up the sequence for refreshing the OAuth Access Token. (The user is never prompted to log in to authenticate.) After the user logs in, the connector handles the refresh of the OAuth Access Token.

For more information on how to set up OAuth and use this property when configuring a connection, see Establishing a Connection.

CData Python Connector for Stripe

OAuthClientId

Specifies the client ID (also known as the consumer key) assigned to your custom OAuth application. This ID is required to identify the application to the OAuth authorization server during authentication.

Data Type

string

Default Value

""

Remarks

This property is required in two cases:

  • When using a custom OAuth application, such as in web-based authentication flows, service-based authentication, or certificate-based flows that require application registration.
  • If the driver does not provide embedded OAuth credentials.

(When the driver provides embedded OAuth credentials, this value may already be provided by the connector and thus not require manual entry.)

OAuthClientId is generally used alongside other OAuth-related properties such as OAuthClientSecret and OAuthSettingsLocation when configuring an authenticated connection.

OAuthClientId is one of the key connection parameters that need to be set before users can authenticate via OAuth. You can usually find this value in your identity provider’s application registration settings. Look for a field labeled Client ID, Application ID, or Consumer Key.

While the client ID is not considered a confidential value like a client secret, it is still part of your application's identity and should be handled carefully. Avoid exposing it in public repositories or shared configuration files.

For more information on how this property is used when configuring a connection, see Establishing a Connection.

CData Python Connector for Stripe

OAuthClientSecret

Specifies the client secret assigned to your custom OAuth application. This confidential value is used to authenticate the application to the OAuth authorization server. (Custom OAuth applications only.).

Data Type

string

Default Value

""

Remarks

This property (sometimes called the application secret or consumer secret) is required when using a custom OAuth application in any flow that requires secure client authentication, such as web-based OAuth, service-based connections, or certificate-based authorization flows. It is not required when using an embedded OAuth application.

The client secret is used during the token exchange step of the OAuth flow, when the driver requests an access token from the authorization server. If this value is missing or incorrect, authentication fails with either an invalid_client or an unauthorized_client error.

OAuthClientSecret is one of the key connection parameters that need to be set before users can authenticate via OAuth. You can obtain this value from your identity provider when registering the OAuth application.

Notes:

  • This value should be stored securely and never exposed in public repositories, scripts, or unsecured environments.
  • Client secrets may also expire after a set period. Be sure to monitor expiration dates and rotate secrets as needed to maintain uninterrupted access.

For more information on how this property is used when configuring a connection, see Establishing a Connection

CData Python Connector for Stripe

OAuthAccessToken

Specifies the OAuth access token used to authenticate requests to the data source. This token is issued by the authorization server after a successful OAuth exchange.

Data Type

string

Default Value

""

Remarks

OAuthAccessToken is a temporary credential that authorizes access to protected resources. It is typically returned by the identity provider after the user or client application completes an OAuth authentication flow. This property is most commonly used in automated workflows or custom OAuth implementations where you want to manage token handling outside of the driver.

The OAuth access token has a server-dependent timeout, limiting user access. The timeout is set using the OAuthExpiresIn property. However, it can be reissued between requests to keep access alive as long as the user keeps working.

If InitiateOAuth is set to REFRESH, we recommend that you also set both OAuthExpiresIn and OAuthTokenTimestamp. The connector uses these properties to determine when the token expires so it can refresh most efficiently. If OAuthExpiresIn and OAuthTokenTimestamp are not specified, the connector refreshes the token immediately.

Note: Access tokens should be treated as sensitive credentials and stored securely. Avoid exposing them in logs, scripts, or configuration files that are not access-controlled.

For more information on how this property is used when configuring a connection, see Establishing a Connection.

CData Python Connector for Stripe

OAuthSettingsLocation

Specifies the location of the settings file where OAuth values are saved.

Data Type

string

Default Value

"%APPDATA%\\CData\\Stripe Data Provider\\OAuthSettings.txt"

Remarks

Storing OAuth settings in a central location avoids the need for users to enter OAuth connection properties manually each time they log in. It also enables credentials to be shared across connections or processes.

You can store OAuth values in a central file for shared access to those values, in either of the following ways:

  • Set InitiateOAuth to either GETANDREFRESH or REFRESH and specify a filepath to the OAuth settings file.
  • Use memory storage to load the credentials into static memory.

The following sections provide more detail on each of these methods.

Specifying the OAuthSettingsLocation Filepath

The default OAuth setting location is %APPDATA%\\CData\\Stripe Data Provider\\OAuthSettings.txt, with %APPDATA% set to the user's configuration directory. Default values vary, depending on the user's operating system.

  • Windows (ODBC and Power BI): registry://%DSN%
  • Windows: %APPDATA%CDataStripe Data Provider\OAuthSettings.txt
  • Mac: %APPDATA%/CData/Stripe Data Provider/OAuthSettings.txt
  • Linux: %APPDATA%/CData/Stripe Data Provider/OAuthSettings.txt

Loading Credentials Via Memory Storage

Memory locations are specified by using a value starting with memory://, followed by a unique identifier for that set of credentials (for example, memory://user1). The identifier can be anything you choose, but it should be unique to the user.

Unlike file-based storage, where credentials persist across connections, memory storage loads the credentials into static memory and the credentials are shared between connections using the same identifier for the life of the process. To persist credentials outside the current process, you must manually store the credentials prior to closing the connection. This enables you to set them in the connection when the process is started again.

To retrieve OAuth property values, query the sys_connection_props system table. If there are multiple connections using the same credentials, the properties are read from the previously closed connection.

Supported Storage Types

  • memory://: Stores OAuth tokens in-memory (unique identifier, shared within same process, etc.)
  • registry://: Only supported in the Windows ODBC and Power BI editions. Stores OAuth tokens in the registry under the DSN settings. Must end in a DSN name like registry://CData Python Connector for Stripe Data Source, or registry://%DSN%.
  • %DSN%: The name of the DSN you are connecting with.
  • Default (no prefix): Stores OAuth tokens within files. The value can be either an absolute path, or a path starting with %APPDATA% or %PROGRAMFILES%.

For more information on how this property is used when configuring a connection, see Establishing a Connection.

CData Python Connector for Stripe

CallbackURL

Identifies the URL users return to after authenticating to Stripe via OAuth (Custom OAuth applications only).

Data Type

string

Default Value

""

Remarks

If you created a custom OAuth application, the OAuth authorization server redirects the user to this URL during the authentication process. This value must match the callback URL you specified when you configured the custom OAuth application.

CData Python Connector for Stripe

Scope

Specifies the scope of the authenticating user's access to the application, to ensure they get appropriate access to data. If a custom OAuth application is needed, this is generally specified at the time the application is created.

Data Type

string

Default Value

""

Remarks

Scopes are set to define what kind of access the authenticating user will have; for example, read, read and write, restricted access to sensitive information. System administrators can use scopes to selectively enable access by functionality or security clearance.

When InitiateOAuth is set to GETANDREFRESH, you must use this property if you want to change which scopes are requested.

When InitiateOAuth is set to either REFRESH or OFF, you can change which scopes are requested using either this property or the Scope input.

CData Python Connector for Stripe

OAuthVerifier

Specifies a verifier code returned from the OAuthAuthorizationURL . Used when authenticating to OAuth on a headless server, where a browser can't be launched. Requires both OAuthSettingsLocation and OAuthVerifier to be set.

Data Type

string

Default Value

""

Remarks

For detailed instructions about how to obtain the OAuthVerifier value, see Establishing a Connection.

CData Python Connector for Stripe

OAuthRefreshToken

Specifies the OAuth refresh token used to request a new access token after the original has expired.

Data Type

string

Default Value

""

Remarks

The refresh token is used to obtain a new access token when the current one expires. It enables seamless authentication for long-running or automated workflows without requiring the user to log in again. This property is especially important in headless, CI/CD, or server-based environments where interactive authentication is not possible.

The refresh token is typically obtained during the initial OAuth exchange by calling the GetOAuthAccessToken stored procedure. After that, it can be set using this property to enable automatic token refresh, or passed to the RefreshOAuthAccessTokenproc; stored procedure if you prefer to manage the refresh manually.

When InitiateOAuth is set to REFRESH, the driver uses this token to retrieve a new access token automatically. After the first refresh, the driver saves updated tokens in the location defined by OAuthSettingsLocation, and uses those values for subsequent connections.

Note: The OAuthRefreshToken should be handled securely and stored in a trusted location. Like access tokens, refresh tokens can expire or be revoked depending on the identity provider’s policies.

For more information on how this property is used when configuring a connection, see Establishing a Connection.

CData Python Connector for Stripe

OAuthExpiresIn

Specifies the duration in seconds, of an OAuth Access Token's lifetime. The token can be reissued to keep access alive as long as the user keeps working.

Data Type

string

Default Value

""

Remarks

The OAuth Access Token is assigned to an authenticated user, granting that user access to the network for a specified period of time. The access token is used in place of the user's login ID and password, which stay on the server.

An access token created by the server is only valid for a limited time. OAuthExpiresIn is the number of seconds the token is valid from when it was created. For example, a token generated at 2024-01-29 20:00:00 UTC that expires at 2024-01-29 21:00:00 UTC (an hour later) would have an OAuthExpiresIn value of 3600, no matter what the current time is.

To determine how long the user has before the Access Token will expire, check OAuthTokenTimestamp.

CData Python Connector for Stripe

OAuthTokenTimestamp

Displays a Unix epoch timestamp in milliseconds that shows how long ago the current access token was created.

Data Type

string

Default Value

""

Remarks

The OAuth access token is assigned to an authenticated user, granting that user access to the network for a specified period of time. The access token is used in place of the user's login ID and password, which stay on the server.

An access token created by the server is only valid for a limited time. OAuthTokenTimestamp is the Unix timestamp when the server created the token. For example, OAuthTokenTimestamp=1706558400 indicates the OAuthAccessToken was generated by the server at 2024-01-29 20:00:00 UTC.

CData Python Connector for Stripe

SSL

This section provides a complete list of the SSL properties you can configure in the connection string for this provider.


PropertyDescription
SSLServerCertSpecifies the certificate to be accepted from the server when connecting using TLS/SSL.
CData Python Connector for Stripe

SSLServerCert

Specifies the certificate to be accepted from the server when connecting using TLS/SSL.

Data Type

string

Default Value

""

Remarks

If you are using a TLS/SSL connection, use this property to specify the TLS/SSL certificate to be accepted from the server. If you specify a value for this property, all other certificates that are not trusted by the machine are rejected.

This property can take the following forms:

Description Example
A full PEM Certificate (example shortened for brevity) -----BEGIN CERTIFICATE-----
MIIChTCCAe4CAQAwDQYJKoZIhv......Qw==
-----END CERTIFICATE-----
A path to a local file containing the certificate C:\cert.cer
The public key (example shortened for brevity) -----BEGIN RSA PUBLIC KEY-----
MIGfMA0GCSq......AQAB
-----END RSA PUBLIC KEY-----
The MD5 Thumbprint (hex values can also be either space- or colon-separated) ecadbdda5a1529c58a1e9e09828d70e4
The SHA1 Thumbprint (hex values can also be either space- or colon-separated) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Note: It is possible to use '*' to signify that all certificates should be accepted, but due to security concerns this is not recommended.

CData Python Connector for Stripe

Firewall

This section provides a complete list of the Firewall properties you can configure in the connection string for this provider.


PropertyDescription
FirewallTypeSpecifies the protocol the provider uses to tunnel traffic through a proxy-based firewall.
FirewallServerIdentifies the IP address, DNS name, or host name of a proxy used to traverse a firewall and relay user queries to network resources.
FirewallPortSpecifies the TCP port to be used for a proxy-based firewall.
FirewallUserIdentifies the user ID of the account authenticating to a proxy-based firewall.
FirewallPasswordSpecifies the password of the user account authenticating to a proxy-based firewall.
CData Python Connector for Stripe

FirewallType

Specifies the protocol the provider uses to tunnel traffic through a proxy-based firewall.

Possible Values

NONE, TUNNEL, SOCKS4, SOCKS5

Data Type

string

Default Value

"NONE"

Remarks

A proxy-based firewall (or proxy firewall) is a network security device that acts as an intermediary between user requests and the resources they access. The proxy accepts the request of an authenticated user, tunnels through the firewall, and transmits the request to the appropriate server.

Because the proxy evaluates and transfers data backets on behalf of the requesting users, the users never connect directly with the servers, only with the proxy.

Note: By default, the connector connects to the system proxy. To disable this behavior and connect to one of the following proxy types, set ProxyAutoDetect to false.

The following table provides port number information for each of the supported protocols.

Protocol Default Port Description
TUNNEL 80 The port where the connector opens a connection to Stripe. Traffic flows back and forth via the proxy at this location.
SOCKS4 1080 The port where the connector opens a connection to Stripe. SOCKS 4 then passes theFirewallUser value to the proxy, which determines whether the connection request should be granted.
SOCKS5 1080 The port where the connector sends data to Stripe. If the SOCKS 5 proxy requires authentication, set FirewallUser and FirewallPassword to credentials the proxy recognizes.

To connect to HTTP proxies, use ProxyServer and ProxyPort. To authenticate to HTTP proxies, use ProxyAuthScheme, ProxyUser, and ProxyPassword.

CData Python Connector for Stripe

FirewallServer

Identifies the IP address, DNS name, or host name of a proxy used to traverse a firewall and relay user queries to network resources.

Data Type

string

Default Value

""

Remarks

A proxy-based firewall (or proxy firewall) is a network security device that acts as an intermediary between user requests and the resources they access. The proxy accepts the request of an authenticated user, tunnels through the firewall, and transmits the request to the appropriate server.

Because the proxy evaluates and transfers data backets on behalf of the requesting users, the users never connect directly with the servers, only with the proxy.

CData Python Connector for Stripe

FirewallPort

Specifies the TCP port to be used for a proxy-based firewall.

Data Type

int

Default Value

0

Remarks

A proxy-based firewall (or proxy firewall) is a network security device that acts as an intermediary between user requests and the resources they access. The proxy accepts the request of an authenticated user, tunnels through the firewall, and transmits the request to the appropriate server.

Because the proxy evaluates and transfers data backets on behalf of the requesting users, the users never connect directly with the servers, only with the proxy.

CData Python Connector for Stripe

FirewallUser

Identifies the user ID of the account authenticating to a proxy-based firewall.

Data Type

string

Default Value

""

Remarks

A proxy-based firewall (or proxy firewall) is a network security device that acts as an intermediary between user requests and the resources they access. The proxy accepts the request of an authenticated user, tunnels through the firewall, and transmits the request to the appropriate server.

Because the proxy evaluates and transfers data backets on behalf of the requesting users, the users never connect directly with the servers, only with the proxy.

CData Python Connector for Stripe

FirewallPassword

Specifies the password of the user account authenticating to a proxy-based firewall.

Data Type

string

Default Value

""

Remarks

A proxy-based firewall (or proxy firewall) is a network security device that acts as an intermediary between user requests and the resources they access. The proxy accepts the request of an authenticated user, tunnels through the firewall, and transmits the request to the appropriate server.

Because the proxy evaluates and transfers data backets on behalf of the requesting users, the users never connect directly with the servers, only with the proxy.

CData Python Connector for Stripe

Proxy

This section provides a complete list of the Proxy properties you can configure in the connection string for this provider.


PropertyDescription
ProxyAutoDetectSpecifies whether the provider checks your system proxy settings for existing proxy server configurations, rather than using a manually specified proxy server.
ProxyServerIdentifies the hostname or IP address of the proxy server through which you want to route HTTP traffic.
ProxyPortIdentifies the TCP port on your specified proxy server that has been reserved for routing HTTP traffic to and from the client.
ProxyAuthSchemeSpecifies the authentication method the provider uses when authenticating to the proxy server specified in the ProxyServer connection property.
ProxyUserProvides the username of a user account registered with the proxy server specified in the ProxyServer connection property.
ProxyPasswordSpecifies the password of the user specified in the ProxyUser connection property.
ProxySSLTypeSpecifies the SSL type to use when connecting to the proxy server specified in the ProxyServer connection property.
ProxyExceptionsSpecifies a semicolon-separated list of destination hostnames or IPs that are exempt from connecting through the proxy server set in the ProxyServer connection property.
CData Python Connector for Stripe

ProxyAutoDetect

Specifies whether the provider checks your system proxy settings for existing proxy server configurations, rather than using a manually specified proxy server.

Data Type

bool

Default Value

true

Remarks

When this connection property is set to True, the connector checks your system proxy settings for existing proxy server configurations (no need to manually supply proxy server details).

This connection property takes precedence over other proxy settings. If you want to configure the connector to connect to a specific proxy server, set ProxyAutoDetect to False.

On Windows, the connector reads the proxy settings from the Internet Options in the registry, specifically the registry key HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\. On Windows 10 and later, this corresponds to the Proxy Settings found in the Windows Settings.

Note that these settings apply only to the current user of the machine. If you're running an application as a service, the connector does not read your own user's settings. You must instead manually supply the proxy settings in the connector's connection properties.

On Mac, the connector reads proxy settings from the system-configured CFNetwork settings.

On Linux, this property is unsupported, and is set to False by default.

To connect to an HTTP proxy, see ProxyServer. For other proxies, such as SOCKS or tunneling, see FirewallType.

CData Python Connector for Stripe

ProxyServer

Identifies the hostname or IP address of the proxy server through which you want to route HTTP traffic.

Data Type

string

Default Value

""

Remarks

The connector only routes HTTP traffic through the proxy server specified in this connection property when ProxyAutoDetect is set to False.

If ProxyAutoDetect is set to True (the default), the connector instead routes HTTP traffic through the proxy server specified in your system proxy settings.

CData Python Connector for Stripe

ProxyPort

Identifies the TCP port on your specified proxy server that has been reserved for routing HTTP traffic to and from the client.

Data Type

int

Default Value

80

Remarks

The connector only routes HTTP traffic through the ProxyServer port specified in this connection property when ProxyAutoDetect is set to False.

If ProxyAutoDetect is set to True (the default), the connector instead routes HTTP traffic through the proxy server port specified in your system proxy settings.

For other proxy types, see FirewallType.

CData Python Connector for Stripe

ProxyAuthScheme

Specifies the authentication method the provider uses when authenticating to the proxy server specified in the ProxyServer connection property.

Possible Values

BASIC, DIGEST, NONE, NEGOTIATE, NTLM

Data Type

string

Default Value

"BASIC"

Remarks

Note: The connector only uses this ProxyAuthScheme when ProxyAutoDetect is set to False. If ProxyAutoDetect is set to True (the default), the connector instead uses the authentication method specified in your system proxy settings.

Supported authentication types :

  • BASIC: The connector performs HTTP basic authentication.
  • DIGEST: The connector performs HTTP digest authentication.
  • NTLM: The connector retrieves an NTLM token.
  • NEGOTIATE: The connector retrieves an NTLM or Kerberos token based on the applicable protocol for authentication.
  • NONE: Signifies that the ProxyServer does not require authentication.

For all values other than NONE, you must also set the ProxyUser and ProxyPassword connection properties.

If you need to use another authentication type, such as SOCKS 5 authentication, see FirewallType.

CData Python Connector for Stripe

ProxyUser

Provides the username of a user account registered with the proxy server specified in the ProxyServer connection property.

Data Type

string

Default Value

""

Remarks

The ProxyUser and ProxyPassword connection properties are used to connect and authenticate against the HTTP proxy specified in ProxyServer.

After selecting one of the available authentication types in ProxyAuthScheme, set this property as follows:

ProxyAuthScheme Value Value to set for ProxyUser
BASIC The username of a user registered with the proxy server.
DIGEST The username of a user registered with the proxy server.
NEGOTIATE The username of a Windows user who is a valid user in the domain or trusted domain that the proxy server is part of, in the format user@domain or domain\user.
NTLM The username of a Windows user who is a valid user in the domain or trusted domain that the proxy server is part of, in the format user@domain or domain\user.
NONE Do not set the ProxyPassword connection property.

Note: The connector only uses this username if ProxyAutoDetect is set to False. If ProxyAutoDetect is set to True (the default), the connector instead uses the username specified in your system proxy settings.

CData Python Connector for Stripe

ProxyPassword

Specifies the password of the user specified in the ProxyUser connection property.

Data Type

string

Default Value

""

Remarks

The ProxyUser and ProxyPassword connection properties are used to connect and authenticate against the HTTP proxy specified in ProxyServer.

After selecting one of the available authentication types in ProxyAuthScheme, set this property as follows:

ProxyAuthScheme Value Value to set for ProxyPassword
BASIC The password associated with the proxy server user specified in ProxyUser.
DIGEST The password associated with the proxy server user specified in ProxyUser.
NEGOTIATE The password associated with the Windows user account specified in ProxyUser.
NTLM The password associated with the Windows user account specified in ProxyUser.
NONE Do not set the ProxyPassword connection property.

For SOCKS 5 authentication or tunneling, see FirewallType.

Note: The connector only uses this password if ProxyAutoDetect is set to False. If ProxyAutoDetect is set to True (the default), the connector instead uses the password specified in your system proxy settings.

CData Python Connector for Stripe

ProxySSLType

Specifies the SSL type to use when connecting to the proxy server specified in the ProxyServer connection property.

Possible Values

AUTO, ALWAYS, NEVER, TUNNEL

Data Type

string

Default Value

"AUTO"

Remarks

This property determines when to use SSL for the connection to the HTTP proxy specified by ProxyServer. You can set this connection property to the following values :

AUTODefault setting. If ProxyServer is set to an HTTPS URL, the connector uses the TUNNEL option. If ProxyServer is set to an HTTP URL, the component uses the NEVER option.
ALWAYSThe connection is always SSL enabled.
NEVERThe connection is not SSL enabled.
TUNNELThe connection is made through a tunneling proxy. The proxy server opens a connection to the remote host and traffic flows back and forth through the proxy.

CData Python Connector for Stripe

ProxyExceptions

Specifies a semicolon-separated list of destination hostnames or IPs that are exempt from connecting through the proxy server set in the ProxyServer connection property.

Data Type

string

Default Value

""

Remarks

The ProxyServer is used for all addresses, except for addresses defined in this property. Use semicolons to separate entries.

Note: The connector uses the system proxy settings by default, without further configuration needed. If you want to explicitly configure proxy exceptions for this connection, set ProxyAutoDetect to False.

CData Python Connector for Stripe

Logging

This section provides a complete list of the Logging properties you can configure in the connection string for this provider.


PropertyDescription
LogfileSpecifies the file path to the log file where the provider records its activities, such as authentication, query execution, and connection details.
VerbositySpecifies the verbosity level of the log file, which controls the amount of detail logged. Supported values range from 1 to 5.
LogModulesSpecifies the core modules to include in the log file. Use a semicolon-separated list of module names. By default, all modules are logged.
MaxLogFileSizeSpecifies the maximum size of a single log file in bytes. For example, '10 MB'. When the file reaches the limit, the provider creates a new log file with the date and time appended to the name.
MaxLogFileCountSpecifies the maximum number of log files the provider retains. When the limit is reached, the oldest log file is deleted to make space for a new one.
CData Python Connector for Stripe

Logfile

Specifies the file path to the log file where the provider records its activities, such as authentication, query execution, and connection details.

Data Type

string

Default Value

""

Remarks

This property specifies the location and name of the log file where the connector records its operations, including authentication events, query execution, and connection details. If the specified file does not exist, the connector creates it. Ensure that the user or the service running the connector has write access to the specified path or file. Without sufficient permissions, the log file is not created.

Sensitive information from the connection string, such as passwords and tokens, is automatically masked in the logs. However, sensitive information present in the data itself may not be masked.

If you specify a relative path for Logfile, and if the Location property is set, that directory is used as the base path for the log file.

Additional properties allow you to customize logging behavior:

CData Python Connector for Stripe

Verbosity

Specifies the verbosity level of the log file, which controls the amount of detail logged. Supported values range from 1 to 5.

Data Type

string

Default Value

"1"

Remarks

This property defines the level of detail the connector includes in the log file. Higher verbosity levels increase the detail of the logged information, but may also result in larger log files and slower performance due to the additional data being captured.

The default verbosity level is 1, which is recommended for regular operation. Higher verbosity levels are primarily intended for debugging purposes. For more information on each level, refer to Logging.

When combined with the LogModules property, Verbosity can refine logging to specific categories of information.

CData Python Connector for Stripe

LogModules

Specifies the core modules to include in the log file. Use a semicolon-separated list of module names. By default, all modules are logged.

Data Type

string

Default Value

""

Remarks

The connector writes details about each operation it performs into the logfile specified by the Logfile connection property.

Each of these logged operations are assigned to a themed category called a module, and each module has a corresponding short code used to labels individual connector operations as belonging to that module.

When this connection property is set to a semicolon-separated list of module codes, only operations belonging to the specified modules are written to the logfile. Note that this only affects which operations are logged moving forward and doesn't retroactively alter the existing contents of the logfile. For example: INFO;EXEC;SSL;META;

By default, logged operations from all modules are included.

You can explicitly exclude a module by prefixing it with a "-". For example: -HTTP

To apply filters to submodules, identify them with the syntax <module name>.<submodule name>. For example, the following value causes the connector to only log actions belonging to the HTTP module, and further refines it to exclude actions belonging to the Res submodule of the HTTP module: HTTP;-HTTP.Res

Note that the logfile filtering triggered by the Verbosity connection property takes precedence over the filtering imposed by this connection property. This means that operations of a higher verbosity level than the level specified in the Verbosity connection property are not printed in the logfile, even if they belong to one of the modules specified in this connection property.

The available modules and submodules are:

Module Name Module Description Submodules
INFO General Information. Includes the connection string, product version (build number), and initial connection messages.
  • Connec – Information related to creating or destroying connections.
  • Messag – Generic label for messages pertaining to connections, the connection string, and product version. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
EXEC Query Execution. Includes execution messages for user-written SQL queries, parsed SQL queries, and normalized SQL queries. Success/failure messages for queries and query pages appear here as well.
  • Messag – Messages pertaining to query execution. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • Normlz – Query normalization steps. Query normalization is when the product takes the user-submitted query and rewrites the query to get the same results with optimal performance.
  • Origin – This label applies to any messages recording a user's original query (the exact, unaltered, non-normalized query executed by the user).
  • Page – Messages related to query paging.
  • Parsed – Query parsing steps. Parsing is the process of converting the user-submitted query into a standardized format for easier processing.
HTTP HTTP protocol messages. Includes HTTP requests/responses (including POST messages), as well as Kerberos related messages.
  • KERB – HTTP requests related to Kerberos.
  • Messag – Messages pertaining to HTTP protocols. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • Unpack – This label applies to messages about zipped data being returned from the service API and unpacked by the product.
  • Res – Messages containing HTTP responses.
  • Req – Messages containing HTTP requests.
WSDL Messages pertaining to the generation of WSDL/XSD files.
SSL SSL certificate messages.
  • Certif – Messages pertaining to SSL certificates.
AUTH Authentication related failure/success messages.
  • Messag – Messages pertaining to authentication. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • OAuth – Messages related to OAuth authentication.
  • Krbros – Kerberos-related authentication messages.
SQL Includes SQL transactions, SQL bulk transfer messages, and SQL result set messages.
  • Bulk – Messages pertaining to bulk query execution.
  • Cache – Messages related to reading row data from and writing row data to the product's cache for better performance.
  • Messag – Messages pertaining to SQL transactions. These messages are typically specific to the connector, rather than being received and passed along directly from the service.
  • ResSet – Query resultsets.
  • Transc – Messages related to handling transactions, including information about the number of jobs executed and backup table handling.
META Metadata cache and schema messages.
  • Cache – Messages related to reading from and modifying column and table definitions in the product's cache for better performance.
  • Schema – Messages related to retrieving metadata from or modifying the service schema.
  • MemSto – Messages related to writing to or reading from in-memory metadata cache.
  • Storag – Messages relating to storing metadata on disk or in an external data store, rather than in memory.
FUNC Information related to executing SQL functions.
  • Errmsg – Error messages related to executing SQL functions.
TCP Incoming and outgoing raw bytes on TCP transport layer messages.
  • Send – Raw data sent via the TCP protocol.
  • Receiv – Raw data received via the TCP protocol.
FTP Messages pertaining to the File Transfer Protocol.
  • Info – Status messages related to communication in the FTP protocol.
  • Client – Messages related to actions taken by the FTP client (the product) during FTP communication.
  • Server – Messages related to actions taken by the FTP server during FTP communication.
SFTP Messages pertaining to the Secure File Transfer Protocol.
  • Info – Status messages related to communication in the SFTP protocol.
  • To_Server – Messages related to actions taken by the SFTP client (the product) during SFTP communication.
  • From_Server – Messages related to actions taken by the SFTP server during SFTP communication.
POP Messages pertaining to data transferred via the Post Office Protocol.
  • Client – Messages related to actions taken by the POP client (the product) during POP communication.
  • Server – Messages related to actions taken by the POP server during POP communication.
  • Status – Status messages related to communication in the POP protocol.
SMTP Messages pertaining to data transferred via the Simple Mail Transfer Protocol.
  • Client – Messages related to actions taken by the SMTP client (the product) during SMTP communication.
  • Server – Messages related to actions taken by the SMTP server during SMTP communication.
  • Status – Status messages related to communication in the SMTP protocol.
CORE Messages relating to various internal product operations not covered by other modules.
DEMN Messages related to SQL remoting.
CLJB Messages about bulk data uploads (cloud job).
  • Commit – Submissions for bulk data uploads.
SRCE Miscellaneous messages produced by the product that don't belong in any other module.
TRANCE Advanced messages concerning low-level product operations.

CData Python Connector for Stripe

MaxLogFileSize

Specifies the maximum size of a single log file in bytes. For example, '10 MB'. When the file reaches the limit, the provider creates a new log file with the date and time appended to the name.

Data Type

string

Default Value

"100MB"

Remarks

For values lower than 100 KB, the connector uses 100 KB as the minimum allowable size.

To control the total number of log files retained, use the MaxLogFileCount property in conjunction with this property. Together, these properties allow you to manage the size and retention of log files effectively.

CData Python Connector for Stripe

MaxLogFileCount

Specifies the maximum number of log files the provider retains. When the limit is reached, the oldest log file is deleted to make space for a new one.

Data Type

int

Default Value

-1

Remarks

Each log file name includes the date and time for easier identification.

This property accepts the following values:

  • A value of 2 or higher sets the maximum number of log files retained.
  • A value of 1 retains only one log file. When it reaches the maximum size, the file is deleted and replaced by a new one, leaving no history beyond the current log.
  • A value of 0 or negative indicates no limit on the number of log files, and logging continues indefinitely.

To manage log file size, use the MaxLogFileSize property. The two properties work together to control the size and retention of log files in the logging folder.

CData Python Connector for Stripe

Schema

This section provides a complete list of the Schema properties you can configure in the connection string for this provider.


PropertyDescription
LocationSpecifies the location of a directory containing schema files that define tables, views, and stored procedures. Depending on your service's requirements, this may be expressed as either an absolute path or a relative path.
BrowsableSchemasOptional setting that restricts the schemas reported to a subset of all available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC .
TablesOptional setting that restricts the tables reported to a subset of all available tables. For example, Tables=TableA,TableB,TableC .
ViewsOptional setting that restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC .
SchemaThe schema you want to interact with.
CData Python Connector for Stripe

Location

Specifies the location of a directory containing schema files that define tables, views, and stored procedures. Depending on your service's requirements, this may be expressed as either an absolute path or a relative path.

Data Type

string

Default Value

"%APPDATA%\\CData\\Stripe Data Provider\\Schema"

Remarks

The Location property is only needed if you want to either customize definitions (for example, change a column name, ignore a column, etc.) or extend the data model with new tables, views, or stored procedures.

If left unspecified, the default location is %APPDATA%\\CData\\Stripe Data Provider\\Schema, where %APPDATA% is set to the user's configuration directory:

Platform %APPDATA%
Windows The value of the APPDATA environment variable
Linux ~/.config

CData Python Connector for Stripe

BrowsableSchemas

Optional setting that restricts the schemas reported to a subset of all available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC .

Data Type

string

Default Value

""

Remarks

Listing all available database schemas can take extra time, thus degrading performance. Providing a list of schemas in the connection string saves time and improves performance.

CData Python Connector for Stripe

Tables

Optional setting that restricts the tables reported to a subset of all available tables. For example, Tables=TableA,TableB,TableC .

Data Type

string

Default Value

""

Remarks

Listing all available tables from some databases can take extra time, thus degrading performance. Providing a list of tables in the connection string saves time and improves performance.

If there are lots of tables available and you already know which ones you want to work with, you can use this property to restrict your viewing to only those tables. To do this, specify the tables you want in a comma-separated list. Each table should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Note: If you are connecting to a data source with multiple schemas or catalogs, you must specify each table you want to view by its fully qualified name. This avoids ambiguity between tables that may exist in multiple catalogs or schemas.

CData Python Connector for Stripe

Views

Optional setting that restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC .

Data Type

string

Default Value

""

Remarks

Listing all available views from some databases can take extra time, thus degrading performance. Providing a list of views in the connection string saves time and improves performance.

If there are lots of views available and you already know which ones you want to work with, you can use this property to restrict your viewing to only those views. To do this, specify the views you want in a comma-separated list. Each view should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Note: If you are connecting to a data source with multiple schemas or catalogs, you must specify each view you want to examine by its fully qualified name. This avoids ambiguity between views that may exist in multiple catalogs or schemas.

CData Python Connector for Stripe

Schema

The schema you want to interact with.

Possible Values

Dahlia, Stripe, StripeV2

Data Type

string

Default Value

"Dahlia"

Remarks

Specify the Stripe API namespace to interact with. By default, it is set to Dahlia.

CData Python Connector for Stripe

Caching

This section provides a complete list of the Caching properties you can configure in the connection string for this provider.


PropertyDescription
AutoCacheSpecifies whether the content of tables targeted by SELECT queries is automatically cached to the specified cache database.
CacheProviderThe namespace of an ADO.NET provider. The specified provider is used as the target database for all caching operations.
CacheDriverThe driver class of a JDBC driver. The specified driver is used to connect to the target database for all caching operations.
CacheConnectionSpecifies the connection string for the specified cache database.
CacheLocationSpecifies the path to the cache when caching to a file.
CacheToleranceNotes the tolerance, in seconds, for stale data in the specified cache database. Requires AutoCache to be set to True.
OfflineGets the data from the specified cache database instead of live Stripe data.
CacheMetadataDetermines whether the provider caches table metadata to a file-based cache database.
CData Python Connector for Stripe

AutoCache

Specifies whether the content of tables targeted by SELECT queries is automatically cached to the specified cache database.

Data Type

bool

Default Value

false

Remarks

When this connection property is set to True, the connector automatically caches the contents of tables targeted by SELECT queries. The content of these tables is cached to the cache database specified by the CacheConnection and CacheProvider connection properties.

See Also

For additional information, see:

  • CacheMetadata: With CacheMetadata enabled, all retrieved metadata is mirrored in the cache database. This means that any subsequent attempts by the connector to discover metadata are much faster, as this metadata is then read directly from the cache database, without needing to spend time requesting metadata from Stripe.
  • Explicitly Caching Data: This topic provides examples for using AutoCache in Offline mode.
  • CACHE Statements: You can use the CACHE statement to explicitly cache the content of any table targeted by a SELECT query.

CData Python Connector for Stripe

CacheProvider

The namespace of an ADO.NET provider. The specified provider is used as the target database for all caching operations.

Data Type

string

Default Value

""

Remarks

You can cache to ADO.NET providers saved in your ADO.NET global assembly cache (GAC).

CData ADO.NET providers automatically register themselves with the GAC during installation, so you don't need to do so manually.

Third-party ADO.NET providers may or may not automatically register themselves with the GAC during installation. If you want to cache to a third-party ADO.NET provider, consult the documentation for that provider to determine what steps (if any) you must take to register them with the GAC. Once they have been registered, you can supply their namespace in this connection property.

You must also set the CacheConnection connection property to provide a connection string for the specified ADO.NET provider.

The following sections show connection examples and address other requirements for several popular database providers. Refer to CacheConnection for more information on typical connection properties.

SQLite

You can use the Microsoft ADO.NET Provider for SQLite to cache to SQLite databases.

CacheProvider=Microsoft.Data.Sqlite;CacheConnection='DataSource=C:\\Users\\Public\\cache.db;'InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

MySQL

To cache to MySQL, you can use the CData ADO.NET Provider for MySQL:
Cache Provider=System.Data.CData.MySQL;Cache Connection='Server=localhost;Port=3306;Database=cache;User=root;Password=123456';User=myUser;Password=myPassword;Security Token=myToken;

SQL Server

You can use the Microsoft .NET Framework Provider for SQL Server, included in the .NET Framework, to cache to SQL Server:

Cache Provider=System.Data.SqlClient;Cache Connection="Server=MyMACHINE\MyInstance;Database=SQLCACHE;User Id=root;Password=admin";InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

Oracle

To cache to Oracle, you can use the Oracle Data Provider for .NET, as shown in the following example:

Cache Provider=Oracle.DataAccess.Client;Cache Connection='User Id=scott;Password=tiger;Data Source=ORCL';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

The Oracle Data Provider for .NET also requires the Oracle Database Client. When you download the Oracle Database Client, ensure that its bitness matches the bitness of your machine. When you install, select either the Runtime or Administrator installation type. The Instant Client is not sufficient.

PostgreSQL

To cache to PostgreSQL, you can use the CData ADO.NET Provider for PostgreSQL:
Cache Provider=System.Data.CData.PostgreSQL;Cache Connection='Server=localhost;Port=5432;Database=cache;User=postgres;Password=123456';User=myUser;Password=myPassword;Security Token=myToken;

CData Python Connector for Stripe

CacheDriver

The driver class of a JDBC driver. The specified driver is used to connect to the target database for all caching operations.

Data Type

string

Default Value

""

Remarks

You can cache to any database for which you have a JDBC driver, including CData JDBC drivers.

Note: You must add the JAR file of the specified JDBC driver to the classpath. For CData JDBC drivers, you can find this JAR file in the "lib" subfolder of that driver's installation directory.

You must also set the CacheConnection connection property to provide a connection string for the specified JDBC driver.

For Linux systems and macOS, you need to create a config.ini file on the installation path of the driver (site-packages/cdata). The config.ini file has the following format (the driver and the path of the JDBC driver):

[salesforce.cpython-38-x86_64-linux-gnu.so]
CLASSPATH = /home/usrname/Downloads/lib/cdata.jdbc.postgresql.jar

Examples

The following examples show how to cache to several major databases. For more information on the JDBC URL syntax and typical connection properties, see CacheConnection.

Derby and Java DB

Java DB is the Oracle distribution of Derby. You must add the Derby JDBC driver's JAR file, derbytools.jar, to your classpath to cache to Java DB.

The Derby JDBC driver's JAR file is bundled in db-derby-10.17.1.0-bin.zip, which you can download from this page. You can find derbytools.jar in the "lib" subfolder of this zip file.

After adding derbytools.jar to the classpath, you can cache to a Java DB database as follows:

jdbc:stripe:CacheDriver=org.apache.derby.jdbc.EmbeddedDriver;CacheConnection='jdbc:derby:sample';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;
To cache to an in-memory database, use a JDBC URL like the following:
jdbc:stripe:CacheDriver=org.apache.derby.jdbc.EmbeddedDriver;CacheConnection='jdbc:derby:memory';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

SQLite

The following is a JDBC URL for the SQLite JDBC driver:

jdbc:stripe:CacheDriver=org.sqlite.JDBC;CacheConnection='jdbc:sqlite:C:/Temp/sqlite.db';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

MySQL

The following is a JDBC URL for the CData JDBC Driver for MySQL:

  jdbc:stripe:Cache Driver=cdata.jdbc.mysql.MySQLDriver;Cache Connection='jdbc:mysql:Server=localhost;Port=3306;Database=cache;User=root;Password=123456';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;
  

SQL Server

The following JDBC URL uses the Microsoft JDBC Driver for SQL Server:

jdbc:stripe:Cache Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Cache Connection='jdbc:sqlserver://localhost\sqlexpress:7437;user=sa;password=123456;databaseName=Cache';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

Oracle

The following is a JDBC URL for the Oracle Thin Client:

jdbc:stripe:Cache Driver=oracle.jdbc.OracleDriver;CacheConnection='jdbc:oracle:thin:scott/tiger@localhost:1521:orcldb';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;
NOTE: If using a version of Oracle older than 9i, the cache driver will instead be oracle.jdbc.driver.OracleDriver .

PostgreSQL

The following JDBC URL uses the official PostgreSQL JDBC driver:

jdbc:stripe:CacheDriver=cdata.jdbc.postgresql.PostgreSQLDriver;CacheConnection='jdbc:postgresql:User=postgres;Password=admin;Database=postgres;Server=localhost;Port=5432;';InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333;

CData Python Connector for Stripe

CacheConnection

Specifies the connection string for the specified cache database.

Data Type

string

Default Value

""

Remarks

The target cache database is determined by a combination of this connection property and the CacheProvider connection property. Both properties are required to use the specified cache database.

The connection string specified in this connection property is passed directly to the specified in the CacheProvider connection property. Consult the documentation for the specified for more information on its available connection properties.

Examples of common cache database settings can be found below.

SQLite

MySQL

The following are typical connection properties:

  • Server: The IP address or domain name of the server hosting the MySQL database that you want to cache to.
  • Port: The port on the specified server where your MySQL instance is running.
  • Database: The name of the MySQL database that you want to cache to. Must match the name of a MySQL database hosted on the specified server.
  • User: The username of a user registered with the selected MySQL database.
  • Password: The password associated with the specified MySQL user.

SQL Server

The following are typical SQL Server connection properties:

  • Server: The name or network address of the computer running SQL Server. To connect to a named instance instead of the default instance, specify the host name and the instance name, separated by a backslash.
  • Port: The port on the specified server where your SQL Server instance is running.
  • Database: The name of the SQL Server database you want to cache to. Must match the name of a SQL Server database hosted on the specified server.
  • Integrated Security: To use the current Windows account for authentication, set this option to True. To authenticate with User and Password instead, set this option to False.
  • User Id: The username of a user registered with the selected SQL Server database. This property is only needed if you are not using integrated security.
  • Password: The password associated with the specified SQL Server user. This property is only needed if you are not using integrated security.

Oracle

The following are typical connection properties:

  • Data Source: The connect descriptor that identifies the Oracle database. This can be a TNS connect descriptor, an Oracle Net Services name that resolves to a connect descriptor, or, after version 11g, an Easy Connect naming (the host name of the Oracle server with an optional port and service name).

  • User Id: The username of a user registered with the selected Oracle database.
  • Password: The password associated with the specified Oracle user.

PostgreSQL

The following are typical connection properties:

  • Host: The address of the server hosting the PostgreSQL database.
  • Port: The port on the specified host server where your PostgreSQL database is hosted.
  • Database: The name of the PostgreSQL database you want to cache to. Must match the name of a PostgreSQL database hosted on the specified server.
  • User name: The username of a user registered with the selected PostgreSQL database.
  • Password: The password associated with the specified user.

CData Python Connector for Stripe

CacheLocation

Specifies the path to the cache when caching to a file.

Data Type

string

Default Value

"%APPDATA%\\CData\\Stripe Data Provider"

Remarks

The CacheLocation is a simple, file-based cache.

If left unspecified, the default location is %APPDATA%\\CData\\Stripe Data Provider, where %APPDATA% is set to the user's configuration directory:

Platform %APPDATA%
Windows The value of the APPDATA environment variable
Linux ~/.config

See Also

  • AutoCache: Set to implicitly create and maintain a cache for later offline use.
  • CacheMetadata: Set to persist the Stripe catalog in CacheLocation.

CData Python Connector for Stripe

CacheTolerance

Notes the tolerance, in seconds, for stale data in the specified cache database. Requires AutoCache to be set to True.

Data Type

int

Default Value

600

Remarks

When you execute a query for tables in the cache, the connector checks the time elapsed since the last update to the cache.

If the last update to the cache is older than the value of this connection property (measured in seconds), the connector refreshes the cache.

Otherwise, the connector returns data directly from the cache.

CData Python Connector for Stripe

Offline

Gets the data from the specified cache database instead of live Stripe data.

Data Type

bool

Default Value

false

Remarks

When this connection property is set to True, all queries execute against the cache database instead of the live Stripe data.

In this mode, some SQL operations like INSERT, UPDATE, DELETE, and CACHE are disabled.

CData Python Connector for Stripe

CacheMetadata

Determines whether the provider caches table metadata to a file-based cache database.

Data Type

bool

Default Value

false

Remarks

When this connection property is set to True, as you execute queries, table metadata in the Stripe catalog is cached to the cache database specified by CacheConnection and CacheProvider, or, if those connection properties are not set, to the user's home directory.

The location of your home directory varies by platform:

PlatformHome Directory
Windows %APPDATA%\\CData\\Stripe Data Provider
Mac ~/Library/Application Support/CData/Stripe Data Provider
Unix ~/.config/CData/Stripe Data Provider

A table's metadata is retrieved only once, when the table is queried for the first time.

When to Use CacheMetadata

When there are a large number of Stripe tables and columns for the connector to retrieve during metadata discovery, the connector may take a while to list all table metadata.

You may experience slow metadata retrieval when:

  • Your Stripe instance naturally has a large table count.
  • The connector has been configured, via its connection properties, to discover more tables than it would under its default configuration.
  • You make many short-lived connections to the connector.
With CacheMetadata enabled, all retrieved metadata is mirrored in the cache database. This means that any subsequent attempts by the connector to discover metadata are much faster, as this metadata is then read directly from the cache database, without needing to spend time requesting metadata from Stripe.

When Not to Use CacheMetadata

The connector automatically persists metadata in memory for up to an hour when you first discover the metadata for a table or view, so CacheMetadata is generally not necessary.

CacheMetadata is not ideal in scenarios where you are working with volatile metadata. The first time you query a table, the connector caches its metadata to the cache database file. This cache is not dynamically updated to reflect updates to the table schema, so you must delete and rebuild the cache database file to pick up new, changed, or deleted columns.

CData Python Connector for Stripe

Miscellaneous

This section provides a complete list of the Miscellaneous properties you can configure in the connection string for this provider.


PropertyDescription
AccountIdThe ID of the Account that you want to use.
LiveAPIKeyLiveAPIKey is required to generate and view the Reports.
MaxRowsSpecifies the maximum number of rows returned for queries that do not include either aggregation or GROUP BY.
OtherSpecifies advanced connection properties for specialized scenarios. Use this property only under the guidance of our Support team to address specific issues.
PseudoColumnsSpecifies the pseudocolumns to expose as table columns, expressed as a string in the format 'TableName=ColumnName;TableName=ColumnName'.
ReadonlyToggles read-only access to Stripe from the provider.
RTKSpecifies the runtime key for licensing the provider. If unset or invalid, the provider defaults to the standard licensing method. This property is only required in environments where the standard licensing method is unsupported or requires a runtime key.
TimeoutSpecifies the maximum time, in seconds, that the provider waits for a server response before throwing a timeout error.
UserDefinedViewsSpecifies a filepath to a JSON configuration file that defines custom views. The provider automatically detects and uses the views specified in this file.
CData Python Connector for Stripe

AccountId

The ID of the Account that you want to use.

Data Type

string

Default Value

""

Remarks

By default the provider uses the authenticated account.

CData Python Connector for Stripe

LiveAPIKey

LiveAPIKey is required to generate and view the Reports.

Data Type

string

Default Value

""

Remarks

LiveAPIKey is required to generate and view the Reports.

CData Python Connector for Stripe

MaxRows

Specifies the maximum number of rows returned for queries that do not include either aggregation or GROUP BY.

Data Type

int

Default Value

-1

Remarks

The default value for this property, -1, means that no row limit is enforced unless the query explicitly includes a LIMIT clause. (When a query includes a LIMIT clause, the value specified in the query takes precedence over the MaxRows setting.)

Setting MaxRows to a whole number greater than 0 ensures that queries do not return excessively large result sets by default.

This property is useful for optimizing performance and preventing excessive resource consumption when executing queries that could otherwise return very large datasets.

CData Python Connector for Stripe

Other

Specifies advanced connection properties for specialized scenarios. Use this property only under the guidance of our Support team to address specific issues.

Data Type

string

Default Value

""

Remarks

This property allows advanced users to configure hidden properties for specialized situations, with the advice of our Support team. These settings are not required for normal use cases but can address unique requirements or provide additional functionality. To define multiple properties, use a semicolon-separated list.

Note: It is strongly recommended to set these properties only when advised by the Support team to address specific scenarios or issues.

Caching Configuration

PropertyDescription
CachePartial=TrueCaches only a subset of columns, which you can specify in your query.
QueryPassthrough=TruePasses the specified query to the cache database instead of using the SQL parser of the connector.

Integration and Formatting

PropertyDescription
DefaultColumnSizeSets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000.
ConvertDateTimeToGMT=TrueConverts date-time values to GMT, instead of the local time of the machine. The default value is False (use local time).
RecordToFile=filenameRecords the underlying socket data transfer to the specified file.

CData Python Connector for Stripe

PseudoColumns

Specifies the pseudocolumns to expose as table columns, expressed as a string in the format 'TableName=ColumnName;TableName=ColumnName'.

Data Type

string

Default Value

""

Remarks

This property allows you to define which pseudocolumns the connector exposes as table columns.

To specify individual pseudocolumns, use the following format:

Table1=Column1;Table1=Column2;Table2=Column3

To include all pseudocolumns for all tables use:

*=*

CData Python Connector for Stripe

Readonly

Toggles read-only access to Stripe from the provider.

Data Type

bool

Default Value

false

Remarks

When set to True, the connector allows only SELECT queries. Attempting an INSERT, UPDATE, DELETE, or stored procedure query fails with an error message.

CData Python Connector for Stripe

RTK

Specifies the runtime key for licensing the provider. If unset or invalid, the provider defaults to the standard licensing method. This property is only required in environments where the standard licensing method is unsupported or requires a runtime key.

Data Type

string

Default Value

""

Remarks

This property is typically unnecessary, as most configurations support a standard licensing mechanism.

Warning: The value of this property takes precedence over all existing licensing information. To avoid licensing errors, ensure the provided runtime key is correct.

CData Python Connector for Stripe

Timeout

Specifies the maximum time, in seconds, that the provider waits for a server response before throwing a timeout error.

Data Type

int

Default Value

60

Remarks

The timeout applies to each individual communication with the server rather than the entire query or operation. For example, a query could continue running beyond 60 seconds if each paging call completes within the timeout limit.

Timeout is set to 60 seconds by default. To disable timeouts, set this property to 0.

Disabling the timeout allows operations to run indefinitely until they succeed or fail due to other conditions such as server-side timeouts, network interruptions, or resource limits on the server.

Note: Use this property cautiously to avoid long-running operations that could degrade performance or result in unresponsive behavior.

CData Python Connector for Stripe

UserDefinedViews

Specifies a filepath to a JSON configuration file that defines custom views. The provider automatically detects and uses the views specified in this file.

Data Type

string

Default Value

""

Remarks

UserDefinedViews allows you to define and manage custom views through a JSON-formatted configuration file called UserDefinedViews.json. These views are automatically recognized by the connector and enable you to execute custom SQL queries as if they were standard database views. The JSON file defines each view as a root element with a child element called "query", which contains the SQL query for the view.

For example:

{
	"MyView": {
		"query": "SELECT * FROM Customers WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}

You can use this property to define multiple views in a single file and specify the filepath. For example:

UserDefinedViews=C:\Path\To\UserDefinedViews.json
When you specify a view in UserDefinedViews, the connector only sees that view.

For further information, see User Defined Views.

CData Python Connector for Stripe

Third Party Copyrights

LZMA from 7Zip LZMA SDK

LZMA SDK is placed in the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original LZMA SDK code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.

LZMA2 from XZ SDK

Version 1.9 and older are in the public domain.

Xamarin.Forms

Xamarin SDK

The MIT License (MIT)

Copyright (c) .NET Foundation Contributors

All rights reserved.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

NSIS 3.10

Copyright (C) 1999-2025 Contributors THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.

1. DEFINITIONS

"Contribution" means:

a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and b) in the case of each subsequent Contributor:

i) changes to the Program, and

ii) additions to the Program;

where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.

"Contributor" means any person or entity that distributes the Program.

"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.

"Program" means the Contributions distributed in accordance with this Agreement.

"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.

2. GRANT OF RIGHTS

a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.

b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.

c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.

d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.

3. REQUIREMENTS

A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:

a) it complies with the terms and conditions of this Agreement; and

b) its license agreement:

i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;

ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;

iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and

iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.

When the Program is made available in source code form:

a) it must be made available under this Agreement; and

b) a copy of this Agreement must be included with each copy of the Program.

Contributors may not remove or alter any copyright notices contained within the Program.

Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.

4. COMMERCIAL DISTRIBUTION

Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.

For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.

5. NO WARRANTY

EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.

6. DISCLAIMER OF LIABILITY

EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

7. GENERAL

If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.

If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.

All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.

Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.

This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.

AdoptOpenJDK / Adoptium Temurin JRE 17.0.18_8

Copyright (c) Eclipse Foundation AISBL. All Rights Reserved.

Apache License, Version 2.0

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.

"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

  1. You must give any other recipients of the Work or Derivative Works a copy of this License; and
  2. You must cause any modified files to carry prominent notices stating that You changed the files; and
  3. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
  4. If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

Eclipse Distribution License - v 1.0

All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of the Eclipse Foundation, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Eclipse Public License - v 2.0

THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.

1. DEFINITIONS "Contribution" means:

  • a) in the case of the initial Contributor, the initial content Distributed under this Agreement, and
  • b) in the case of each subsequent Contributor:
    • i) changes to the Program, and
    • ii) additions to the Program;
    where such changes and/or additions to the Program originate from and are Distributed by that particular Contributor. A Contribution "originates" from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include changes or additions to the Program that are not Modified Works.
"Contributor" means any person or entity that Distributes the Program. "Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.

"Program" means the Contributions Distributed in accordance with this Agreement.

"Recipient" means anyone who receives the Program under this Agreement or any Secondary License (as applicable), including Contributors.

"Derivative Works" shall mean any work, whether in Source Code or other form, that is based on (or derived from) the Program and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship.

"Modified Works" shall mean any work in Source Code or other form that results from an addition to, deletion from, or modification of the contents of the Program, including, for purposes of clarity any new file in Source Code form that contains any contents of the Program. Modified Works shall not include works that contain only declarations, interfaces, types, classes, structures, or files of the Program solely in each case in order to link to, bind by name, or subclass the Program or Modified Works thereof.

"Distribute" means the acts of a) distributing or b) making available in any manner that enables the transfer of a copy.

"Source Code" means the form of a Program preferred for making modifications, including but not limited to software source code, documentation source, and configuration files.

"Secondary License" means either the GNU General Public License, Version 2.0, or any later versions of that license, including any exceptions or additional permissions as identified by the initial Contributor.

2. GRANT OF RIGHTS

  • a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, Distribute and sublicense the Contribution of such Contributor, if any, and such Derivative Works.
  • b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in Source Code or other form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
  • c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to Distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.
  • d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
  • e) Notwithstanding the terms of any Secondary License, no Contributor makes additional grants to any Recipient (other than those set forth in this Agreement) as a result of such Recipient's receipt of the Program under the terms of a Secondary License (if permitted under the terms of Section 3).

3. REQUIREMENTS 3.1 If a Contributor Distributes the Program in any form, then:

  • a) the Program must also be made available as Source Code, in accordance with section 3.2, and the Contributor must accompany the Program with a statement that the Source Code for the Program is available under this Agreement, and informs Recipients how to obtain it in a reasonable manner on or through a medium customarily used for software exchange; and
  • b) the Contributor may Distribute the Program under a license different than this Agreement, provided that such license:
    • i) effectively disclaims on behalf of all other Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
    • ii) effectively excludes on behalf of all other Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
    • iii) does not attempt to limit or alter the recipients' rights in the Source Code under section 3.2; and
    • iv) requires any subsequent distribution of the Program by any party to be under a license that satisfies the requirements of this section 3.
3.2 When the Program is Distributed as Source Code:
  • a) it must be made available under this Agreement, or if the Program (i) is combined with other material in a separate file or files made available under a Secondary License, and (ii) the initial Contributor attached to the Source Code the notice described in Exhibit A of this Agreement, then the Program may be made available under the terms of such Secondary Licenses, and
  • b) a copy of this Agreement must be included with each copy of the Program.
3.3 Contributors may not remove or alter any copyright, patent, trademark, attribution notices, disclaimers of warranty, or limitations of liability (‘notices') contained within the Program from any copy of the Program which they Distribute, provided that Contributors may add their own appropriate notices.

4. COMMERCIAL DISTRIBUTION Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.

For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.

5. NO WARRANTY EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.

6. DISCLAIMER OF LIABILITY EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

7. GENERAL If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.

If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.

All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.

Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be Distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to Distribute the Program (including its Contributions) under the new version.

Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. Nothing in this Agreement is intended to be enforceable by any entity that is not a Contributor or Recipient. No third-party beneficiary rights are created under this Agreement.

Exhibit A – Form of Secondary Licenses Notice "This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), version(s), and exceptions or additional permissions here}."

Simply including a copy of this Agreement, including this Exhibit A is not sufficient to license the Source Code under Secondary Licenses.

If it is not possible or desirable to put the notice in a particular file, then You may include the notice in a location (such as a LICENSE file in a relevant directory) where a recipient would be likely to look for such a notice.

You may add additional accurate notices of copyright ownership.

GNU Classpath

Classpath is distributed under the terms of the GNU General Public License with the following clarification and special exception.

Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination.

As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.

As such, it can be used to run, create and distribute a large class of applications and applets. When GNU Classpath is used unmodified as the core class library for a virtual machine, compiler for the java languge, or for a program written in the java programming language it does not affect the licensing for distributing those programs directly.

OpenJDK Assembly Exception

The OpenJDK source code made available by Oracle America, Inc. (Oracle) at openjdk.java.net ("OpenJDK Code") is distributed under the terms of the GNU General Public License <http://www.gnu.org/copyleft/gpl.html> version 2 only ("GPL2"), with the following clarification and special exception.

Linking this OpenJDK Code statically or dynamically with other code is making a combined work based on this library. Thus, the terms and conditions of GPL2 cover the whole combination.

As a special exception, Oracle gives you permission to link this OpenJDK Code with certain code licensed by Oracle as indicated at http://openjdk.java.net/legal/exception-modules-2007-05-08.html ("Designated Exception Modules") to produce an executable, regardless of the license terms of the Designated Exception Modules, and to copy and distribute the resulting executable under GPL2, provided that the Designated Exception Modules continue to be governed by the licenses under which they were offered by Oracle.

As such, it allows licensees and sublicensees of Oracle's GPL2 OpenJDK Code to build an executable that includes those portions of necessary code that Oracle could not provide under GPL2 (or that Oracle has provided under GPL2 with the Classpath exception). If you modify or add to the OpenJDK code, that new GPL2 code may still be combined with Designated Exception Modules if the new code is made subject to this exception by its copyright holder.

Copyright (c) 2026 CData Software, Inc. - All rights reserved.
Build 26.0.9655