This integration is powered by Singer's recharge tap and certified by Stitch. Check out and contribute to the repo on GitHub.
For support, contact Stitch support.
Recharge integration summary
Stitch’s Recharge integration replicates data using the Recharge Payments API. To access the Recharge API documentation, you will need your API key. Refer to the Schema section for a list of objects available for replication.
Recharge feature snapshot
A high-level look at Stitch's Recharge (v1) integration, including release status, useful links, and the features supported in Stitch.
STITCH | |||
Release status |
Released on January 27, 2020 |
Supported by | |
Stitch plan |
Standard |
API availability |
Not available |
Singer GitHub repository | |||
REPLICATION SETTINGS | |||
Anchor Scheduling |
Supported |
Advanced Scheduling |
Supported |
Table-level reset |
Unsupported |
Configurable Replication Methods |
Unsupported |
DATA SELECTION | |||
Table selection |
Supported |
Column selection |
Supported |
Select all |
Supported |
||
TRANSPARENCY | |||
Extraction Logs |
Supported |
Loading Reports |
Supported |
Connecting Recharge
Recharge setup requirements
To set up Recharge in Stitch, you need:
-
A Shopify Account. You need this to access your Recharge information.
Step 1: Obtain your Recharge access token
- Log into your Shopify account, select Apps, and then click on your Recharge application.

- In the application, click the EXPLORE Recharge located near the top right corner of the page.
- Click on the Integrations tab, and then click API tokens….

- Click on Create an API token.
- On the Create an API token page:
- In the Details section, enter a Nickname and Contact email into their respective fields.
- In the Permission section, select the
Read Access
scope for each permission.
- Click Save to create the Access Token.

Step 2: Add Recharge as a Stitch data source
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Recharge icon.
-
Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.
For example, the name “Stitch Recharge” would create a schema called
stitch_recharge
in the destination. Note: Schema names cannot be changed after you save the integration. - In the Access Token field, enter the access token you obtained in the previous step.
Step 3: Define the historical replication start date
The Sync Historical Data setting defines the starting date for your Recharge integration. This means that:
- For tables using Key-based Incremental Replication, data equal to or newer than this date will be replicated to your destination.
- For tables using Full Table Replication, all data - including records that are older, equal to, or newer than this date - will be replicated to your destination.
Change this setting if you want to replicate data beyond Recharge’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.
Step 4: Create a replication schedule
In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.
Recharge integrations support the following replication scheduling methods:
-
Advanced Scheduling using Cron (Advanced or Premium plans only)
To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.
Step 5: Set objects to replicate
The last step is to select the tables and columns you want to replicate. Learn about the available tables for this integration.
Note: If a replication job is currently in progress, new selections won’t be used until the next job starts.
For Recharge integrations, you can select:
-
Individual tables and columns
-
All tables and columns
Click the tabs to view instructions for each selection method.
- In the integration’s Tables to Replicate tab, locate a table you want to replicate.
-
To track a table, click the checkbox next to the table’s name. A blue checkmark means the table is set to replicate.
-
To track a column, click the checkbox next to the column’s name. A blue checkmark means the column is set to replicate.
- Repeat this process for all the tables and columns you want to replicate.
- When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.
- Click into the integration from the Stitch Dashboard page.
-
Click the Tables to Replicate tab.
- In the list of tables, click the box next to the Table Names column.
-
In the menu that displays, click Track all Tables and Fields:
- Click the Finalize Your Selections button at the bottom of the page to save your data selections.
Initial and historical replication jobs
After you finish setting up Recharge, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.
For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.
Initial replication jobs with Anchor Scheduling
If using Anchor Scheduling, an initial replication job may not kick off immediately. This depends on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.
Free historical data loads
The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.
Recharge table reference
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 1 of this integration.
Table and column names in your destination
Depending on your destination, table and column names may not appear as they are outlined below.
For example: Object names are lowercased in Redshift (CusTomERs
> customers
), while case is maintained in PostgreSQL destinations (CusTomERs
> CusTomERs
). Refer to the Loading Guide for your destination for more info.
addresses
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The addresses
table contains info about the addresses (shipping locations) a customer has. A subscription is tied to a given address, but a customer can have multiple addresses.
id
The address ID. Reference: |
|||
updated_at
The date and time the address was last updated. |
|||
address1
The street associated with the address. |
|||
address2
Any additional information associated with the address. |
|||
cart_attributes
This field has been deprecated by Recharge. Use
|
|||
cart_note
The note that that will be passed to the |
|||
city
The city associated with the address. |
|||
company
The company associated with the address. |
|||
country
The country associated with the address. |
|||
created_at
The date and time when the address was created. |
|||
customer_id
The ID of the customer associated with the address. Reference: |
|||
discount_id
The ID of the discount that is applied on the address. Reference: |
|||
first_name
The customer’s first name associated with the address. |
|||
last_name
The customer’s last name associated with the address. |
|||
note_attributes
Extra information that is added to the order.
|
|||
original_shipping_lines
This field has been deprecated by Recharge. Use
|
|||
phone
The phone number associated with the address. |
|||
province
The state or province associated with the address. |
|||
shipping_lines_override
Details about the shipping used if the original shipping for the address has been overridden.
|
|||
zip
The zip code associated with the address. |
charges
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The charges
table contains info about charges. A charge is a placeholder for an upcoming charge once the charge is processed successfully.
id
The charge ID. Reference: |
|||||||||||
updated_at
The date and time the charge was last updated. |
|||||||||||
address_id
Reference: |
|||||||||||
billing_address
The billing information related to the charge.
|
|||||||||||
browser_ip
|
|||||||||||
client_details
|
|||||||||||
created_at
The date and time the charge was created. |
|||||||||||
customer_hash
|
|||||||||||
customer_id
The ID of the customer associated with the charge. Reference: |
|||||||||||
discount_codes
Details about discounts applied to the charge.
|
|||||||||||
email
The email address associated with the charge. |
|||||||||||
first_name
The first name of the customer associated with the charge. |
|||||||||||
has_uncommited_changes
|
|||||||||||
last_name
The last name of the customer associated with the charge. |
|||||||||||
line_items
Details about the items in the charge.
|
|||||||||||
note
Shows the next order in sequence. |
|||||||||||
note_attributes
|
|||||||||||
processed_at
The date and time when the transaction was created. |
|||||||||||
processor_name
The name of the processor of the charge. |
|||||||||||
scheduled_at
The date the charge is scheduled for. |
|||||||||||
shipments_count
The number of successfully sent orders for the specific charge. |
|||||||||||
shipping_address
The shipping information related to the charge.
|
|||||||||||
shipping_lines
Details about the shipping used for the charge.
|
|||||||||||
shopify_order_id
The ID of the charge within Shopify. Reference: |
|||||||||||
status
The status of creating the charge within Shopify. Possible values are:
|
|||||||||||
sub_total
|
|||||||||||
subtotal_price
The item price without taxes and discounts. |
|||||||||||
tags
|
|||||||||||
tax_lines
Details about the tax lines associated with the order.
|
|||||||||||
total_discounts
The sum of the discounts applied to the product. |
|||||||||||
total_line_items_price
|
|||||||||||
total_price
The sum of all the prices of all the items in the charge, including taxes and discounts. |
|||||||||||
total_refunds
The sum of all refunds that were made on specific charge. |
|||||||||||
total_tax
The sum of the taxes applied to the product. |
|||||||||||
total_weight
|
|||||||||||
transaction_id
The ID of the transaction associated with the charge. Reference: |
|||||||||||
type
The type of the charge. |
collections
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The collections
table contains info about your collections.
id
The collection ID. Reference: |
updated_at
The date and time when the collection was last updated. |
created_at
The date and time when the collection was created. |
name
The name of the collection. |
customers
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The customers
table contains info about customer accounts with a shop.
id
The customer ID. Reference: |
updated_at
The date and time when the customer was last updated. |
billing_address1
The customer’s billing address. |
billing_address2
Additional data about the customer’s billing address. |
billing_city
The customer’s billing city. |
billing_company
The customer’s billing company. |
billing_country
The customer’s billing country. |
billing_phone
The customer’s billing phone. |
billing_province
The customer’s billing state or province. |
billing_zip
The customer’s billing zip code. |
braintree_customer_token
The customer’s token in Braintree. |
created_at
The date and time the customer was created. |
email
The customer’s email address. |
first_charge_processed_at
The date when first charge was processed for customer. |
first_name
The customer’s first name. |
has_card_error_in_dunning
If |
has_valid_payment_method
If |
hash
The string identifier used in the customer’s portal link. |
last_name
The customer’s last name. |
number_active_subscriptions
The number of active subscriptions associated with the customer. |
number_subscriptions
The number of subscriptions for the customer. |
paypal_customer_token
The customer’s token for PayPal. |
processor_type
The type of processor associated with the customer. |
reason_payment_method_not_valid
The reason the customer’s payment method is invalid. |
shopify_customer_id
The customer’s ID in Shopify. Reference: |
status
The status of the customer. Possible values are |
discounts
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The discounts
table contains info about discounts.
id
The discount ID. Reference: |
updated_at
The date and time the discount was created. |
applies_to_id
The ID of the product or collection associated with the discount. |
applies_to_product_type
The type of product the discount applies to. Possible values are:
|
applies_to_resource
The type of resource the discount applies to. Possible values are:
|
code
The name of the discount. |
created_at
The date and time the discount was created. |
duration
The number of times a discount will be automatically re-applied to a new queued charge after its first use on a successful charge. Possible values are:
|
duration_usage_limit
Applicable only when |
ends_at
The date when the discount expires. |
once_per_customer
If |
starts_at
The date when the discount begins. |
status
The status of the discount. Possible values are:
|
times_used
The number of times the discount was used by customers at checkout. |
usage_limit
The maximum number of times the discount can be used by all customers. |
value
The discounted value to be applied. |
metafields_customer
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The metafields_customer
table contains info about metafields related to customers.
id
The customer metafield ID. |
updated_at
The date and time the customer metafield was last updated. |
created_at
The date and time the customer metafield was created. |
description
The description of the metafield. |
key
The name of the metafield. |
namespace
The category or container that differentiates the metafield from other fields. |
owner_id
The ID of the owner resource. Reference: |
owner_resource
The type of resource that owns the metafield. This will be |
value
The content of the metafield. |
value_type
The data type of the metafield. For example: |
metafields_store
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The metafields_store
table contains info about metafields related to stores.
id
The store metafield ID. |
updated_at
The date and time the store metafield was last updated. |
created_at
The date and time the store metafield was created. |
description
The description of the metafield. |
key
The name of the metafield. |
namespace
The category or container that differentiates the metafield from other fields. |
owner_id
The ID of the owner resource. Reference: |
owner_resource
The type of resource that owns the metafield. This will be |
value
The content of the metafield. |
value_type
The data type of the metafield. For example: |
metafields_subscription
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The metafields_subscription
table contains info about metafields related to subscriptions.
id
|
updated_at
The date and time the subscription metafield was last updated. |
created_at
The date and time the subscription metafield was created. |
description
The description of the metafield. |
key
The name of the metafield. |
namespace
The category or container that differentiates the metafield from other fields. |
owner_id
The ID of the owner resource. |
owner_resource
The type of resource that owns the metafield. This will be |
value
The content of the metafield. |
value_type
The data type of the metafield. For example: |
onetimes
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The onetimes
table contains info about one time products.
id
The ID of the one time product. |
updated_at
The date and time the one time product was last updated. |
address_id
The ID of the address the one time product is associated with. Reference: |
created_at
The date and time the one time product was created. |
customer_id
The ID of the customer the one time product is associated with. Reference: |
next_charge_scheduled_at
The date of the one time product execution. |
price
The price of the item before discounts, taxes, or shipping have been applied. |
product_title
The name of the one time product in a shop’s catalog. |
properties
|
quantity
The number of items in the subscription. |
recharge_product_id
The ID of the product in Recharge. |
shopify_product_id
The ID of the product in Shopify. Reference: |
shopify_variant_id
The ID of the product variant in Shopify. Reference: |
sku
A unique identifier of the item in the fulfillment. |
status
The status of the one time product. |
variant_title
The name of the variant in a shop’s catalog. |
orders
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The orders
table contains info about orders. Orders are created after a charge is successfully processed.
id
The order ID. |
|||||||||||
updated_at
The date and time the order was last updated. |
|||||||||||
address_id
The ID of the customer address the order will ship to. Reference: |
|||||||||||
address_is_active
If |
|||||||||||
billing_address
The billing information related to the order.
|
|||||||||||
charge_id
The ID of the charge associated with the order. Reference: |
|||||||||||
charge_status
|
|||||||||||
created_at
The date and time the order was created. |
|||||||||||
customer_id
The ID of the customer associated with the order. Reference: |
|||||||||||
discount_codes
Details about the discounts applied to the order.
|
|||||||||||
email
The email address of the customer associated with the order. |
|||||||||||
first_name
The first name of the customer associated with the order. |
|||||||||||
hash
|
|||||||||||
is_prepaid
If true ( |
|||||||||||
last_name
The last name of the customer associated with the order. |
|||||||||||
line_items
Details about the items in the order.
|
|||||||||||
note
|
|||||||||||
note_attributes
|
|||||||||||
payment_processor
The type of payment the processor has chosen. |
|||||||||||
processed_at
The date when the order was submitted. |
|||||||||||
scheduled_at
The date when the order will ship. |
|||||||||||
shipped_date
The date when the order shipped. |
|||||||||||
shipping_address
The shipping information related to the order.
|
|||||||||||
shipping_date
The date when the order will be processed and sent to Shopify. |
|||||||||||
shipping_lines
Details about the shipping used for the order.
|
|||||||||||
shopify_cart_token
The token generated by Shopify when an item is added to the order cart. |
|||||||||||
shopify_customer_id
The ID of the customer in Shopify. Reference: |
|||||||||||
shopify_id
This field has been deprecated by Recharge. The ID of the order in Shopify. |
|||||||||||
shopify_order_id
The ID of the order in Shopify. Reference: |
|||||||||||
shopify_order_number
The order number in Shopify. |
|||||||||||
status
The status of creating the order in Shopify. |
|||||||||||
subtotal_price
The sum of all of the prices of the items in the order, including taxes and discounts. |
|||||||||||
tags
|
|||||||||||
tax_lines
Details about the tax lines associated with the order.
|
|||||||||||
total_discounts
The sum of total discounts applied to the order. |
|||||||||||
total_line_items_price
|
|||||||||||
total_price
|
|||||||||||
total_refunds
The sum of all refunds applied against the order. |
|||||||||||
total_tax
The sum of total tax applied to the order. |
|||||||||||
total_weight
The sum of all products in the order. |
|||||||||||
transaction_id
The ID of the transaction associated with the order. Reference: |
|||||||||||
type
Indicates if the order was made from checkout or a recurring charge. Possible values are:
|
products
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The products
table contains info about your products.
id
The product ID. Reference: |
|||||||||||||
updated_at
The date and time the product was last updated. |
|||||||||||||
collection_id
The ID of the ruleset created in Recharge. Reference: |
|||||||||||||
created_at
The date and time the product was created. |
|||||||||||||
discount_amount
The discount amount applied based on the Recharge ruleset. |
|||||||||||||
discount_type
The type of discount applied to the product. For example: |
|||||||||||||
images
Images of the product in Shopify.
|
|||||||||||||
product_id
This field has been deprecated by Recharge. Use |
|||||||||||||
shopify_product_id
The ID of the product in Shopify. |
|||||||||||||
subscription_defaults
Defaults applied to subscription products.
|
|||||||||||||
title
The title of the product in Shopify. |
Replication Method : |
Full Table |
Primary Key |
id |
API endpoint : |
The shop
table contains info about your shop.
id
The shop ID. |
checkout_logo_url
|
created_at
The date and time the shop was created. |
currency
The currency used by the store. For example: |
domain
The global domain name of the store. |
email
This field has been deprecated by Recharge. Use |
iana_timezone
The timezone of the shop in Iana database timezone format. |
my_shopify_domain
The store domain name in Shopify. |
name
The name of the store. |
shop_email
The email address of the shop owner. |
shop_phone
The phone number of the shop owner. |
timezone
The timezone of the shop. |
updated_at
The date and time the shop was last updated. |
subscriptions
Replication Method : |
Key-based Incremental |
Replication Key |
updated_at |
Primary Key |
id |
API endpoint : |
The subscriptions
table contains info about subscriptions. Subscriptions are individual items that customers receive on a recurring basis.
id
The ID of the subscription. Reference: |
updated_at
The date and time the subscription was created. |
address_id
The ID of the address the subscription is associated with. Reference: |
cancellation_reason
The reason for the subscription cancellation. |
cancellation_reason_comments
Additional information about cancellation. |
cancelled_at
The time the subscription was canceled. |
charge_interval_frequency
The number of units (specified in |
created_at
The date and time the subscription was created. |
customer_id
The ID of the customer associated with the subscription. Reference: |
expire_after_specific_number_of_charges
The number of charges until the subscription expires. |
has_queued_charges
Indicates if the subscription has a queued charge. If |
is_skippable
If |
is_swappable
If |
max_retries_reached
Indicates if the charge on the subscription has reached the maximum number of error retries. If |
next_charge_scheduled_at
The date of the next charge for subscription. |
order_day_of_month
Applicable only to subscriptions where |
order_day_of_week
Applicable only to subscriptions where |
order_interval_frequency
The number of units (specified in |
order_interval_unit
The frequency with which a subscription should have order created. Possible values are:
|
price
The price of the item before discounts, taxes, or shipping have been applied. |
product_title
The name of the product in a shop’s catalog. |
properties
A list of line item objects, each one containing information about the subscription. |
quantity
The number of items on the subscription. |
recharge_product_id
The ID of the product in Recharge. |
shopify_product_id
The ID of the product in Shopify. Reference: |
shopify_variant_id
The ID of the product variant in Shopify. Reference: |
sku
A unique identifier of the item in the fulfillment. |
sku_override
If |
status
The status of the subscription. Possible values are:
|
variant_title
The name of the variant in a shop’s catalog. |
Related | Troubleshooting |
Questions? Feedback?
Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.