This integration is powered by Singer's Recurly tap and certified by Stitch. Check out and contribute to the repo on GitHub.
For support, contact Support.
Recurly integration summary
Stitch’s Recurly integration replicates data using the Recurly Partner API (v2018-08-09). Refer to the Schema section for a list of objects available for replication.
Recurly feature snapshot
A high-level look at Stitch's Recurly (v1) integration, including release status, useful links, and the features supported in Stitch.
STITCH | |||
Release status |
Released on June 13, 2019 |
Supported by |
[Stitch] (https://community.qlik.com/t5/Support/ct-p/qlikSupport) |
Stitch plan |
Standard |
API availability |
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 Recurly
Recurly setup requirements
To set up Recurly in Stitch, you need:
-
Admin or Manager permissions in Recurly. These permissions are required to create an API key for Stitch.
Step 1: Generate a Recurly API key
In this step, you’ll create an API key for Stitch.
- Sign into your Recurly account.
- Click Admin > Users in the sidenav.
- On the Users page, click the Configure API Access button at the top of the page. Thsi will open the API Credentials page.
- Click the Add Private API Key button. The Add Private API Key page will display.
- Fill in the fields as follows:
- Key Name: Enter a name for the API key. For example:
Stitch
- Notes: Enter any notes you want about the API key.
- Key Name: Enter a name for the API key. For example:
- Click Save Changes.
Leave this page open for now - you’ll need it to complete the setup in Stitch.
Step 2: Add Recurly as a Stitch data source
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Recurly 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 Recurly” would create a schema called
stitch_recurly
in the destination. Note: Schema names cannot be changed after you save the integration. - In the API Key field, paste the Recurly API key you created in Step 1.
- In the Recurly Subdomain field, enter your Recurly subdomain. For example: If the full URL of the subdomain were
stitchdata.recurly.com
, you’d only enterstitchdata
into this field. - In the Quota Limit field, enter the percentage of the API rate limit you want to allocate to the integration. For example: A value of
30
would be30%
of the rate limit. Refer to Recurly’s documentation for more info.
Step 3: Define the historical replication start date
The Sync Historical Data setting defines the starting date for your Recurly integration. This means that data equal to or newer than this date will be replicated to your data warehouse.
Change this setting if you want to replicate data beyond Recurly’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.
Recurly 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 Recurly 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 Recurly, 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.
Recurly 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.
This is the latest version of the Recurly 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.
accounts
The accounts
table contains info about the customer accounts in your Recurly account. Account objects store the history of the customer, billing info, etc.
Custom fields
Stitch’s Recurly integration supports replicating custom fields for accounts objects.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join accounts with | on |
---|---|
adjustments |
accounts.id = adjustments.account.id accounts.parent_account_id = adjustments.account.id accounts.shipping_addresses.account_id = adjustments.account.id accounts.id = adjustments.account.parent_account_id accounts.parent_account_id = adjustments.account.parent_account_id accounts.shipping_addresses.account_id = adjustments.account.parent_account_id |
billing_info |
accounts.id = billing_info.account_id accounts.parent_account_id = billing_info.account_id accounts.shipping_addresses.account_id = billing_info.account_id |
coupon_redemptions |
accounts.id = coupon_redemptions.account_id accounts.parent_account_id = coupon_redemptions.account_id accounts.shipping_addresses.account_id = coupon_redemptions.account_id |
invoices |
accounts.id = invoices.account.id accounts.parent_account_id = invoices.account.id accounts.shipping_addresses.account_id = invoices.account.id accounts.id = invoices.account.parent_account_id accounts.parent_account_id = invoices.account.parent_account_id accounts.shipping_addresses.account_id = invoices.account.parent_account_id accounts.id = invoices.credit_payments.refund_transaction.account.id accounts.parent_account_id = invoices.credit_payments.refund_transaction.account.id accounts.shipping_addresses.account_id = invoices.credit_payments.refund_transaction.account.id accounts.id = invoices.line_items.data.shipping_addresses.account_id accounts.parent_account_id = invoices.line_items.data.shipping_addresses.account_id accounts.shipping_addresses.account_id = invoices.line_items.data.shipping_addresses.account_id |
subscriptions |
accounts.id = subscriptions.shipping_address.account_id accounts.parent_account_id = subscriptions.shipping_address.account_id accounts.shipping_addresses.account_id = subscriptions.shipping_address.account_id |
transactions |
accounts.id = transactions.account.id accounts.parent_account_id = transactions.account.id accounts.shipping_addresses.account_id = transactions.account.id accounts.id = transactions.account.parent_account_id accounts.parent_account_id = transactions.account.parent_account_id accounts.shipping_addresses.account_id = transactions.account.parent_account_id |
address OBJECT
|
||||||||||||||||||||||||||||||||||
bill_to STRING |
||||||||||||||||||||||||||||||||||
billing_info OBJECT
|
||||||||||||||||||||||||||||||||||
cc_emails STRING |
||||||||||||||||||||||||||||||||||
code STRING |
||||||||||||||||||||||||||||||||||
company STRING |
||||||||||||||||||||||||||||||||||
created_at DATE-TIME |
||||||||||||||||||||||||||||||||||
custom_fields ARRAY
|
||||||||||||||||||||||||||||||||||
deleted_at DATE-TIME |
||||||||||||||||||||||||||||||||||
STRING |
||||||||||||||||||||||||||||||||||
exemption_certificate STRING |
||||||||||||||||||||||||||||||||||
first_name STRING |
||||||||||||||||||||||||||||||||||
hosted_login_token STRING |
||||||||||||||||||||||||||||||||||
id STRING |
||||||||||||||||||||||||||||||||||
last_name STRING |
||||||||||||||||||||||||||||||||||
object STRING |
||||||||||||||||||||||||||||||||||
parent_account_id STRING |
||||||||||||||||||||||||||||||||||
preferred_locale STRING |
||||||||||||||||||||||||||||||||||
shipping_addresses ARRAY
|
||||||||||||||||||||||||||||||||||
state STRING |
||||||||||||||||||||||||||||||||||
tax_exempt BOOLEAN |
||||||||||||||||||||||||||||||||||
updated_at DATE-TIME |
||||||||||||||||||||||||||||||||||
username STRING |
||||||||||||||||||||||||||||||||||
vat_number STRING |
adjustments
The adjustments
table contains info about adjustments, which are credits and charges associated with your customers.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join adjustments with | on |
---|---|
accounts |
adjustments.account.id = accounts.id adjustments.account.parent_account_id = accounts.id adjustments.account.id = accounts.parent_account_id adjustments.account.parent_account_id = accounts.parent_account_id adjustments.account.id = accounts.shipping_addresses.account_id adjustments.account.parent_account_id = accounts.shipping_addresses.account_id |
billing_info |
adjustments.account.id = billing_info.account_id adjustments.account.parent_account_id = billing_info.account_id |
coupon_redemptions |
adjustments.account.id = coupon_redemptions.account_id adjustments.account.parent_account_id = coupon_redemptions.account_id |
invoices |
adjustments.account.id = invoices.account.id adjustments.account.parent_account_id = invoices.account.id adjustments.account.id = invoices.account.parent_account_id adjustments.account.parent_account_id = invoices.account.parent_account_id adjustments.account.id = invoices.credit_payments.refund_transaction.account.id adjustments.account.parent_account_id = invoices.credit_payments.refund_transaction.account.id adjustments.account.id = invoices.line_items.data.shipping_addresses.account_id adjustments.account.parent_account_id = invoices.line_items.data.shipping_addresses.account_id adjustments.invoice_id = invoices.id adjustments.invoice_id = invoices.credit_payments.applied_to_invoice.id adjustments.invoice_id = invoices.credit_payments.original_invoice.id adjustments.invoice_id = invoices.credit_payments.refund_transaction.invoice.id adjustments.invoice_id = invoices.credit_payments.refund_transaction.voided_by_invoice.id adjustments.invoice_id = invoices.line_items.data.invoice_id adjustments.invoice_id = invoices.subscription_ids adjustments.plan_id = invoices.line_items.data.plan_id adjustments.add_on_id = invoices.line_items.data.add_on_id |
subscriptions |
adjustments.account.id = subscriptions.shipping_address.account_id adjustments.account.parent_account_id = subscriptions.shipping_address.account_id adjustments.plan_id = subscriptions.pending_change.plan.id adjustments.add_on_id = subscriptions.add_ons.add_on.id |
transactions |
adjustments.account.id = transactions.account.id adjustments.account.parent_account_id = transactions.account.id adjustments.account.id = transactions.account.parent_account_id adjustments.account.parent_account_id = transactions.account.parent_account_id adjustments.invoice_id = transactions.invoice.id adjustments.invoice_id = transactions.voided_by_invoice.id |
plans |
adjustments.plan_id = plans.id |
plans_add_ons |
adjustments.plan_id = plans_add_ons.plan_id adjustments.add_on_id = plans_add_ons.id |
account OBJECT
|
|||||||||||||||||
accounting_code STRING |
|||||||||||||||||
add_on_code STRING |
|||||||||||||||||
add_on_id STRING |
|||||||||||||||||
amount NUMBER |
|||||||||||||||||
created_at DATE-TIME |
|||||||||||||||||
credit_applied NUMBER |
|||||||||||||||||
credit_reason_code STRING |
|||||||||||||||||
currency STRING |
|||||||||||||||||
description STRING |
|||||||||||||||||
discount NUMBER |
|||||||||||||||||
end_date DATE-TIME |
|||||||||||||||||
id STRING |
|||||||||||||||||
invoice_id STRING |
|||||||||||||||||
invoice_number STRING |
|||||||||||||||||
legacy_category STRING |
|||||||||||||||||
object STRING |
|||||||||||||||||
origin STRING |
|||||||||||||||||
original_line_item_invoice_id STRING |
|||||||||||||||||
plan_code STRING |
|||||||||||||||||
plan_id STRING |
|||||||||||||||||
previous_line_item_id STRING |
|||||||||||||||||
product_code STRING |
|||||||||||||||||
proration_rate NUMBER |
|||||||||||||||||
quantity INTEGER |
|||||||||||||||||
refund BOOLEAN |
|||||||||||||||||
refunded_quantity INTEGER |
|||||||||||||||||
shipping_address OBJECT
|
|||||||||||||||||
start_date DATE-TIME |
|||||||||||||||||
state STRING |
|||||||||||||||||
subscription_id STRING |
|||||||||||||||||
subtotal NUMBER |
|||||||||||||||||
tax NUMBER |
|||||||||||||||||
tax_code STRING |
|||||||||||||||||
tax_exempt BOOLEAN |
|||||||||||||||||
tax_info STRING |
|||||||||||||||||
taxable BOOLEAN |
|||||||||||||||||
type STRING |
|||||||||||||||||
unit_amount NUMBER |
|||||||||||||||||
updated_at DATE-TIME |
|||||||||||||||||
uuid STRING |
billing_info
The billing_info
table contains info about the billing information for accounts
.
Note: To replicate this table, you must also have the accounts
table set to replicate.
Custom fields
Stitch’s Recurly integration supports replicating custom fields for billing info objects.
Key-based Incremental |
|
Primary Key |
account_id |
Replication Key |
updated_at |
Useful links |
Join billing_info with | on |
---|---|
accounts |
billing_info.account_id = accounts.id billing_info.account_id = accounts.parent_account_id billing_info.account_id = accounts.shipping_addresses.account_id |
adjustments |
billing_info.account_id = adjustments.account.id billing_info.account_id = adjustments.account.parent_account_id |
coupon_redemptions |
billing_info.account_id = coupon_redemptions.account_id |
invoices |
billing_info.account_id = invoices.account.id billing_info.account_id = invoices.account.parent_account_id billing_info.account_id = invoices.credit_payments.refund_transaction.account.id billing_info.account_id = invoices.line_items.data.shipping_addresses.account_id |
subscriptions |
billing_info.account_id = subscriptions.shipping_address.account_id |
transactions |
billing_info.account_id = transactions.account.id billing_info.account_id = transactions.account.parent_account_id |
account_id STRING |
|||||||||
address OBJECT
|
|||||||||
company STRING |
|||||||||
created_at DATE-TIME |
|||||||||
custom_fields ARRAY
|
|||||||||
exemption_certificate STRING |
|||||||||
first_name STRING |
|||||||||
fraud OBJECT
|
|||||||||
id STRING |
|||||||||
last_name STRING |
|||||||||
object STRING |
|||||||||
payment_method OBJECT
|
|||||||||
updated_at DATE-TIME |
|||||||||
updated_by OBJECT
|
|||||||||
valid BOOLEAN |
|||||||||
vat_number STRING |
coupon_redemptions
The coupon_redemptions
table contains info about the coupons redeemed in your Recurly account.
Note: In order to replicate this table, you must also set the following tables to replicate:
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
created_at |
accounts subscription invoices |
|
Useful links |
Join coupon_redemptions with | on |
---|---|
accounts |
coupon_redemptions.account_id = accounts.id coupon_redemptions.account_id = accounts.parent_account_id coupon_redemptions.account_id = accounts.shipping_addresses.account_id |
adjustments |
coupon_redemptions.account_id = adjustments.account.id coupon_redemptions.account_id = adjustments.account.parent_account_id |
billing_info |
coupon_redemptions.account_id = billing_info.account_id |
invoices |
coupon_redemptions.account_id = invoices.account.id coupon_redemptions.account_id = invoices.account.parent_account_id coupon_redemptions.account_id = invoices.credit_payments.refund_transaction.account.id coupon_redemptions.account_id = invoices.line_items.data.shipping_addresses.account_id |
subscriptions |
coupon_redemptions.account_id = subscriptions.shipping_address.account_id coupon_redemptions.coupon.id = subscriptions.coupon_redemptions.coupon.id coupon_redemptions.id = subscriptions.coupon_redemptions.id |
transactions |
coupon_redemptions.account_id = transactions.account.id coupon_redemptions.account_id = transactions.account.parent_account_id |
coupons |
coupon_redemptions.coupon.id = coupons.id |
account OBJECT
|
||||||||||||||||||||||||||||||||||
account_id STRING |
||||||||||||||||||||||||||||||||||
coupon OBJECT
|
||||||||||||||||||||||||||||||||||
created_at DATE-TIME |
||||||||||||||||||||||||||||||||||
currency STRING |
||||||||||||||||||||||||||||||||||
discounted STRING |
||||||||||||||||||||||||||||||||||
id STRING |
||||||||||||||||||||||||||||||||||
object STRING |
||||||||||||||||||||||||||||||||||
removed_at DATE-TIME |
||||||||||||||||||||||||||||||||||
state STRING |
||||||||||||||||||||||||||||||||||
unique_code_template STRING |
||||||||||||||||||||||||||||||||||
updated_at DATE-TIME |
coupons
The coupons
table contains info about the coupons available in your Recurly account.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join coupons with | on |
---|---|
coupon_redemptions |
coupons.id = coupon_redemptions.coupon.id |
subscriptions |
coupons.id = subscriptions.coupon_redemptions.coupon.id |
applies_to_all_plans BOOLEAN |
||||||||
applies_to_non_plan_charges BOOLEAN |
||||||||
code STRING |
||||||||
coupon_type STRING |
||||||||
created_at DATE-TIME |
||||||||
discount OBJECT
|
||||||||
duration STRING |
||||||||
expired_at DATE-TIME |
||||||||
free_trial_amount INTEGER |
||||||||
free_trial_unit STRING |
||||||||
hosted_page_description STRING |
||||||||
id STRING |
||||||||
invoice_description STRING |
||||||||
max_redemptions INTEGER |
||||||||
max_redemptions_per_account INTEGER |
||||||||
name STRING |
||||||||
object STRING |
||||||||
plans ARRAY, STRING
|
||||||||
plans_names ARRAY |
||||||||
redeem_by DATE-TIME |
||||||||
redemption_resource STRING |
||||||||
state STRING |
||||||||
temporal_amount INTEGER |
||||||||
temporal_unit STRING |
||||||||
unique_coupon_codes_count INTEGER |
||||||||
updated_at DATE-TIME |
invoices
The invoices
table contains info about the invoices in your Recurly account.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join invoices with | on |
---|---|
accounts |
invoices.account.id = accounts.id invoices.account.parent_account_id = accounts.id invoices.credit_payments.refund_transaction.account.id = accounts.id invoices.line_items.data.shipping_addresses.account_id = accounts.id invoices.account.id = accounts.parent_account_id invoices.account.parent_account_id = accounts.parent_account_id invoices.credit_payments.refund_transaction.account.id = accounts.parent_account_id invoices.line_items.data.shipping_addresses.account_id = accounts.parent_account_id invoices.account.id = accounts.shipping_addresses.account_id invoices.account.parent_account_id = accounts.shipping_addresses.account_id invoices.credit_payments.refund_transaction.account.id = accounts.shipping_addresses.account_id invoices.line_items.data.shipping_addresses.account_id = accounts.shipping_addresses.account_id |
adjustments |
invoices.account.id = adjustments.account.id invoices.account.parent_account_id = adjustments.account.id invoices.credit_payments.refund_transaction.account.id = adjustments.account.id invoices.line_items.data.shipping_addresses.account_id = adjustments.account.id invoices.account.id = adjustments.account.parent_account_id invoices.account.parent_account_id = adjustments.account.parent_account_id invoices.credit_payments.refund_transaction.account.id = adjustments.account.parent_account_id invoices.line_items.data.shipping_addresses.account_id = adjustments.account.parent_account_id invoices.id = adjustments.invoice_id invoices.credit_payments.applied_to_invoice.id = adjustments.invoice_id invoices.credit_payments.original_invoice.id = adjustments.invoice_id invoices.credit_payments.refund_transaction.invoice.id = adjustments.invoice_id invoices.credit_payments.refund_transaction.voided_by_invoice.id = adjustments.invoice_id invoices.line_items.data.invoice_id = adjustments.invoice_id invoices.subscription_ids = adjustments.invoice_id invoices.line_items.data.plan_id = adjustments.plan_id invoices.line_items.data.add_on_id = adjustments.add_on_id |
billing_info |
invoices.account.id = billing_info.account_id invoices.account.parent_account_id = billing_info.account_id invoices.credit_payments.refund_transaction.account.id = billing_info.account_id invoices.line_items.data.shipping_addresses.account_id = billing_info.account_id |
coupon_redemptions |
invoices.account.id = coupon_redemptions.account_id invoices.account.parent_account_id = coupon_redemptions.account_id invoices.credit_payments.refund_transaction.account.id = coupon_redemptions.account_id invoices.line_items.data.shipping_addresses.account_id = coupon_redemptions.account_id |
subscriptions |
invoices.account.id = subscriptions.shipping_address.account_id invoices.account.parent_account_id = subscriptions.shipping_address.account_id invoices.credit_payments.refund_transaction.account.id = subscriptions.shipping_address.account_id invoices.line_items.data.shipping_addresses.account_id = subscriptions.shipping_address.account_id invoices.line_items.data.plan_id = subscriptions.pending_change.plan.id invoices.line_items.data.add_on_id = subscriptions.add_ons.add_on.id invoices.credit_payments.refund_transaction.subscription_ids = subscriptions.id invoices.line_items.data.subscription_id = subscriptions.id invoices.credit_payments.refund_transaction.subscription_ids = subscriptions.add_ons.subscription_id invoices.line_items.data.subscription_id = subscriptions.add_ons.subscription_id invoices.credit_payments.refund_transaction.subscription_ids = subscriptions.pending_change.add_ons.subscription_id invoices.line_items.data.subscription_id = subscriptions.pending_change.add_ons.subscription_id invoices.credit_payments.refund_transaction.subscription_ids = subscriptions.pending_change.subscription_id invoices.line_items.data.subscription_id = subscriptions.pending_change.subscription_id |
transactions |
invoices.account.id = transactions.account.id invoices.account.parent_account_id = transactions.account.id invoices.credit_payments.refund_transaction.account.id = transactions.account.id invoices.line_items.data.shipping_addresses.account_id = transactions.account.id invoices.account.id = transactions.account.parent_account_id invoices.account.parent_account_id = transactions.account.parent_account_id invoices.credit_payments.refund_transaction.account.id = transactions.account.parent_account_id invoices.line_items.data.shipping_addresses.account_id = transactions.account.parent_account_id invoices.id = transactions.invoice.id invoices.credit_payments.applied_to_invoice.id = transactions.invoice.id invoices.credit_payments.original_invoice.id = transactions.invoice.id invoices.credit_payments.refund_transaction.invoice.id = transactions.invoice.id invoices.credit_payments.refund_transaction.voided_by_invoice.id = transactions.invoice.id invoices.line_items.data.invoice_id = transactions.invoice.id invoices.subscription_ids = transactions.invoice.id invoices.id = transactions.voided_by_invoice.id invoices.credit_payments.applied_to_invoice.id = transactions.voided_by_invoice.id invoices.credit_payments.original_invoice.id = transactions.voided_by_invoice.id invoices.credit_payments.refund_transaction.invoice.id = transactions.voided_by_invoice.id invoices.credit_payments.refund_transaction.voided_by_invoice.id = transactions.voided_by_invoice.id invoices.line_items.data.invoice_id = transactions.voided_by_invoice.id invoices.subscription_ids = transactions.voided_by_invoice.id invoices.credit_payments.refund_transaction.subscription_ids = transactions.subscription_ids invoices.line_items.data.subscription_id = transactions.subscription_ids invoices.credit_payments.refund_transaction.id = transactions.id invoices.credit_payments.refund_transaction.original_transaction_id = transactions.id invoices.transactions.id = transactions.id invoices.credit_payments.refund_transaction.id = transactions.original_transaction_id invoices.credit_payments.refund_transaction.original_transaction_id = transactions.original_transaction_id invoices.transactions.id = transactions.original_transaction_id |
plans |
invoices.line_items.data.plan_id = plans.id |
plans_add_ons |
invoices.line_items.data.plan_id = plans_add_ons.plan_id invoices.line_items.data.add_on_id = plans_add_ons.id |
account OBJECT
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
address OBJECT
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
balance NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
closed_at DATE-TIME |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
collection_method STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
created_at DATE-TIME |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
credit_payments ARRAY
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
currency STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
customer_notes STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
discount NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
due_at DATE-TIME |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
id STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
line_items OBJECT
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
net_terms NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
number STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
origin STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
paid NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
po_number STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
previous_invoice_id STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
refundable_amount NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
state STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
subscription_ids ARRAY |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
subtotal NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
tax NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
tax_info OBJECT
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
terms_and_conditions STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
total NUMBER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
transactions ARRAY
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
type STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
updated_at DATE-TIME |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vat_number STRING |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vat_reverse_charge_notes STRING |
plans
The plans
table contains info about the plans in your Recurly account. A plan tells Recurly how much to charge customers.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join plans with | on |
---|---|
adjustments |
plans.id = adjustments.plan_id |
invoices |
plans.id = invoices.line_items.data.plan_id |
plans_add_ons |
plans.id = plans_add_ons.plan_id |
subscriptions |
plans.id = subscriptions.pending_change.plan.id |
accounting_code STRING |
||||
auto_renew BOOLEAN |
||||
code STRING |
||||
created_at DATE-TIME |
||||
currencies ARRAY
|
||||
deleted_at DATE-TIME |
||||
description STRING |
||||
hosted_pages OBJECT
|
||||
id STRING |
||||
interval_length INTEGER |
||||
interval_unit STRING |
||||
name STRING |
||||
object STRING |
||||
setup_fee_accounting_code STRING |
||||
state STRING |
||||
tax_code STRING |
||||
tax_exempt BOOLEAN |
||||
total_billing_cycles INTEGER |
||||
trial_length INTEGER |
||||
trial_unit STRING |
||||
updated_at DATE-TIME |
plans_add_ons
The plans_add_ons
table contains info about the add-ons in your Recurly account. An add-on is a charge billed each billing period in addition to a subscription’s base charge.
Note: To replicate this table, you must also have the plans
table set to replicate.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join plans_add_ons with | on |
---|---|
adjustments |
plans_add_ons.plan_id = adjustments.plan_id plans_add_ons.id = adjustments.add_on_id |
invoices |
plans_add_ons.plan_id = invoices.line_items.data.plan_id plans_add_ons.id = invoices.line_items.data.add_on_id |
plans |
plans_add_ons.plan_id = plans.id |
subscriptions |
plans_add_ons.plan_id = subscriptions.pending_change.plan.id plans_add_ons.id = subscriptions.add_ons.add_on.id |
accounting_code STRING |
||
code STRING |
||
created_at DATE-TIME |
||
currencies ARRAY
|
||
default_quantity INTEGER |
||
deleted_at DATE-TIME |
||
display_quantity BOOLEAN |
||
id STRING |
||
name STRING |
||
object STRING |
||
plan_id STRING |
||
state STRING |
||
tax_code STRING |
||
updated_at DATE-TIME |
subscriptions
The subscriptions
table contains info about the subscriptions in your Recurly account. Subscriptions are created when your customers subscribe to one of your plans. The customer’s subscription tells Recurly when and how much to bill the customer.
Custom fields
Stitch’s Recurly integration supports replicating custom fields for subscription objects.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
updated_at |
Useful links |
Join subscriptions with | on |
---|---|
accounts |
subscriptions.shipping_address.account_id = accounts.id subscriptions.shipping_address.account_id = accounts.parent_account_id subscriptions.shipping_address.account_id = accounts.shipping_addresses.account_id |
adjustments |
subscriptions.shipping_address.account_id = adjustments.account.id subscriptions.shipping_address.account_id = adjustments.account.parent_account_id subscriptions.pending_change.plan.id = adjustments.plan_id subscriptions.add_ons.add_on.id = adjustments.add_on_id |
billing_info |
subscriptions.shipping_address.account_id = billing_info.account_id |
coupon_redemptions |
subscriptions.shipping_address.account_id = coupon_redemptions.account_id subscriptions.coupon_redemptions.coupon.id = coupon_redemptions.coupon.id subscriptions.coupon_redemptions.id = coupon_redemptions.id |
invoices |
subscriptions.shipping_address.account_id = invoices.account.id subscriptions.shipping_address.account_id = invoices.account.parent_account_id subscriptions.shipping_address.account_id = invoices.credit_payments.refund_transaction.account.id subscriptions.shipping_address.account_id = invoices.line_items.data.shipping_addresses.account_id subscriptions.pending_change.plan.id = invoices.line_items.data.plan_id subscriptions.add_ons.add_on.id = invoices.line_items.data.add_on_id subscriptions.id = invoices.credit_payments.refund_transaction.subscription_ids subscriptions.add_ons.subscription_id = invoices.credit_payments.refund_transaction.subscription_ids subscriptions.pending_change.add_ons.subscription_id = invoices.credit_payments.refund_transaction.subscription_ids subscriptions.pending_change.subscription_id = invoices.credit_payments.refund_transaction.subscription_ids subscriptions.id = invoices.line_items.data.subscription_id subscriptions.add_ons.subscription_id = invoices.line_items.data.subscription_id subscriptions.pending_change.add_ons.subscription_id = invoices.line_items.data.subscription_id subscriptions.pending_change.subscription_id = invoices.line_items.data.subscription_id |
transactions |
subscriptions.shipping_address.account_id = transactions.account.id subscriptions.shipping_address.account_id = transactions.account.parent_account_id subscriptions.id = transactions.subscription_ids subscriptions.add_ons.subscription_id = transactions.subscription_ids subscriptions.pending_change.add_ons.subscription_id = transactions.subscription_ids subscriptions.pending_change.subscription_id = transactions.subscription_ids |
coupons |
subscriptions.coupon_redemptions.coupon.id = coupons.id |
plans |
subscriptions.pending_change.plan.id = plans.id |
plans_add_ons |
subscriptions.pending_change.plan.id = plans_add_ons.plan_id subscriptions.add_ons.add_on.id = plans_add_ons.id |
account OBJECT
|
||||||||||||||||||||||||||||||
activated_at DATE-TIME |
||||||||||||||||||||||||||||||
add_ons ARRAY
|
||||||||||||||||||||||||||||||
add_ons_total NUMBER |
||||||||||||||||||||||||||||||
auto_renew BOOLEAN |
||||||||||||||||||||||||||||||
bank_account_authorized_at DATE-TIME |
||||||||||||||||||||||||||||||
canceled_at DATE-TIME |
||||||||||||||||||||||||||||||
collection_method STRING |
||||||||||||||||||||||||||||||
coupon_redemptions ARRAY
|
||||||||||||||||||||||||||||||
created_at DATE-TIME |
||||||||||||||||||||||||||||||
currency STRING |
||||||||||||||||||||||||||||||
current_period_ends_at DATE-TIME |
||||||||||||||||||||||||||||||
current_period_started_at DATE-TIME |
||||||||||||||||||||||||||||||
current_term_ends_at DATE-TIME |
||||||||||||||||||||||||||||||
current_term_started_at DATE-TIME |
||||||||||||||||||||||||||||||
custom_fields ARRAY
|
||||||||||||||||||||||||||||||
customer_notes STRING |
||||||||||||||||||||||||||||||
expiration_reason STRING |
||||||||||||||||||||||||||||||
expires_at DATE-TIME |
||||||||||||||||||||||||||||||
id STRING |
||||||||||||||||||||||||||||||
net_terms INTEGER |
||||||||||||||||||||||||||||||
object STRING |
||||||||||||||||||||||||||||||
paused_at DATE-TIME |
||||||||||||||||||||||||||||||
pending_change OBJECT
|
||||||||||||||||||||||||||||||
plan OBJECT
|
||||||||||||||||||||||||||||||
po_number STRING |
||||||||||||||||||||||||||||||
quantity INTEGER |
||||||||||||||||||||||||||||||
remaining_billing_cycles INTEGER |
||||||||||||||||||||||||||||||
remaining_pause_cycles INTEGER |
||||||||||||||||||||||||||||||
renewal_billing_cycles INTEGER |
||||||||||||||||||||||||||||||
shipping_address OBJECT
|
||||||||||||||||||||||||||||||
state STRING |
||||||||||||||||||||||||||||||
subtotal NUMBER |
||||||||||||||||||||||||||||||
terms_and_conditions STRING |
||||||||||||||||||||||||||||||
total_billing_cycles INTEGER |
||||||||||||||||||||||||||||||
trial_ends_at DATE-TIME |
||||||||||||||||||||||||||||||
trial_started_at DATE-TIME |
||||||||||||||||||||||||||||||
unit_amount NUMBER |
||||||||||||||||||||||||||||||
updated_at DATE-TIME |
||||||||||||||||||||||||||||||
uuid STRING |
transactions
The transactions
table contains info about the transactions in your Recurly account.
Key-based Incremental |
|
Primary Key |
id |
Replication Key |
collected_at |
Useful links |
Join transactions with | on |
---|---|
accounts |
transactions.account.id = accounts.id transactions.account.parent_account_id = accounts.id transactions.account.id = accounts.parent_account_id transactions.account.parent_account_id = accounts.parent_account_id transactions.account.id = accounts.shipping_addresses.account_id transactions.account.parent_account_id = accounts.shipping_addresses.account_id |
adjustments |
transactions.account.id = adjustments.account.id transactions.account.parent_account_id = adjustments.account.id transactions.account.id = adjustments.account.parent_account_id transactions.account.parent_account_id = adjustments.account.parent_account_id transactions.invoice.id = adjustments.invoice_id transactions.voided_by_invoice.id = adjustments.invoice_id |
billing_info |
transactions.account.id = billing_info.account_id transactions.account.parent_account_id = billing_info.account_id |
coupon_redemptions |
transactions.account.id = coupon_redemptions.account_id transactions.account.parent_account_id = coupon_redemptions.account_id |
invoices |
transactions.account.id = invoices.account.id transactions.account.parent_account_id = invoices.account.id transactions.account.id = invoices.account.parent_account_id transactions.account.parent_account_id = invoices.account.parent_account_id transactions.account.id = invoices.credit_payments.refund_transaction.account.id transactions.account.parent_account_id = invoices.credit_payments.refund_transaction.account.id transactions.account.id = invoices.line_items.data.shipping_addresses.account_id transactions.account.parent_account_id = invoices.line_items.data.shipping_addresses.account_id transactions.invoice.id = invoices.id transactions.voided_by_invoice.id = invoices.id transactions.invoice.id = invoices.credit_payments.applied_to_invoice.id transactions.voided_by_invoice.id = invoices.credit_payments.applied_to_invoice.id transactions.invoice.id = invoices.credit_payments.original_invoice.id transactions.voided_by_invoice.id = invoices.credit_payments.original_invoice.id transactions.invoice.id = invoices.credit_payments.refund_transaction.invoice.id transactions.voided_by_invoice.id = invoices.credit_payments.refund_transaction.invoice.id transactions.invoice.id = invoices.credit_payments.refund_transaction.voided_by_invoice.id transactions.voided_by_invoice.id = invoices.credit_payments.refund_transaction.voided_by_invoice.id transactions.invoice.id = invoices.line_items.data.invoice_id transactions.voided_by_invoice.id = invoices.line_items.data.invoice_id transactions.invoice.id = invoices.subscription_ids transactions.voided_by_invoice.id = invoices.subscription_ids transactions.subscription_ids = invoices.credit_payments.refund_transaction.subscription_ids transactions.subscription_ids = invoices.line_items.data.subscription_id transactions.id = invoices.credit_payments.refund_transaction.id transactions.original_transaction_id = invoices.credit_payments.refund_transaction.id transactions.id = invoices.credit_payments.refund_transaction.original_transaction_id transactions.original_transaction_id = invoices.credit_payments.refund_transaction.original_transaction_id transactions.id = invoices.transactions.id transactions.original_transaction_id = invoices.transactions.id |
subscriptions |
transactions.account.id = subscriptions.shipping_address.account_id transactions.account.parent_account_id = subscriptions.shipping_address.account_id transactions.subscription_ids = subscriptions.id transactions.subscription_ids = subscriptions.add_ons.subscription_id transactions.subscription_ids = subscriptions.pending_change.add_ons.subscription_id transactions.subscription_ids = subscriptions.pending_change.subscription_id |
account OBJECT
|
|||||||||
amount NUMBER |
|||||||||
avs_check STRING |
|||||||||
billing_address OBJECT
|
|||||||||
collected_at DATE-TIME |
|||||||||
collection_method STRING |
|||||||||
created_at DATE-TIME |
|||||||||
currency STRING |
|||||||||
customer_message STRING |
|||||||||
customer_message_locale STRING |
|||||||||
cvv_check STRING |
|||||||||
gateway_approval_code STRING |
|||||||||
gateway_message STRING |
|||||||||
gateway_reference STRING |
|||||||||
gateway_response_code STRING |
|||||||||
gateway_response_time NUMBER |
|||||||||
gateway_response_values OBJECT
|
|||||||||
id STRING |
|||||||||
invoice OBJECT
|
|||||||||
ip_address_country STRING |
|||||||||
ip_address_v4 STRING |
|||||||||
object STRING |
|||||||||
origin STRING |
|||||||||
original_transaction_id STRING |
|||||||||
payment_gateway OBJECT
|
|||||||||
payment_method OBJECT
|
|||||||||
refunded BOOLEAN |
|||||||||
status STRING |
|||||||||
status_code STRING |
|||||||||
status_message STRING |
|||||||||
subscription_ids ARRAY |
|||||||||
success BOOLEAN |
|||||||||
type STRING |
|||||||||
uuid STRING |
|||||||||
voided_at DATE-TIME |
|||||||||
voided_by_invoice OBJECT
|
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.