Skip to main content
Connectors

Recurly connector

Set up the Recurly connector in Kaivo: authentication, configuration, the 18 BigQuery tables it syncs, and answers to common questions.

Written By Lauri Raivio

Last updated 16 days ago

Kaivo is a fully managed data platform that syncs your Recurly data into a Google BigQuery warehouse and keeps it up to date automatically. There is no pipeline to build and no infrastructure to run, so you can spend your time analysing your payment and finance data instead of moving it.

What is the Recurly connector

Sync your Recurly subscription data into BigQuery with Kaivo to analyse recurring revenue, churn, and billing alongside the rest of your finance data.

CategoryFinance & Payments
AuthenticationAPI key
SetupSelf-service

Getting started with the Recurly connector

  1. Sign up for Kaivo and create a workspace.
  2. Connect your Recurly account.
  3. Choose which tables to sync.
  4. Wait for the initial sync to finish.
  5. Query your data in BigQuery or your favourite AI or BI tool.

Authenticating Recurly

Authenticate with your API Key.

FieldDescription
API Key

Your Recurly API key. You can find it in your Recurly account under Admin → API Credentials.

Configuring the Recurly connector

When you set up the connector, you provide:

FieldDescription
Start Date

Any data before this date will not be fetched.

Use Sandbox Environment

Enable for sandbox accounts (400 requests/min). Disable for production accounts (1,000 GET requests/min).

Tables and columns synced from Recurly

Kaivo syncs 18 tables from Recurly into a dedicated dataset in your BigQuery warehouse. Click any table to see its columns and types.

ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account__bill_toSTRING
account__codeSTRING
account__companySTRING
account__dunning_campaign_idSTRING
account__emailSTRING
account__first_nameSTRING
account__idSTRING
account__last_nameSTRING
account__objectSTRING
account__parent_account_idSTRING
coupon__applies_to_all_itemsBOOL
coupon__applies_to_all_plansBOOL
coupon__applies_to_non_plan_chargesBOOL
coupon__codeSTRING
coupon__coupon_typeSTRING
coupon__created_atTIMESTAMP
coupon__discount__typeSTRING
coupon__discount__percentINT64This is only present when `type=percent`.
coupon__discount__trial__lengthINT64Trial length measured in the units specified by the sibling `unit` property
coupon__discount__trial__unitSTRINGTemporal unit of the free trial
coupon__durationSTRING
coupon__expired_atTIMESTAMP
coupon__free_trial_amountFLOAT64
coupon__free_trial_unitSTRING
coupon__hosted_page_descriptionSTRING
coupon__idSTRING
coupon__invoice_descriptionSTRING
coupon__max_redemptionsFLOAT64
coupon__max_redemptions_per_accountFLOAT64
coupon__nameSTRING
coupon__objectSTRING
coupon__redeem_bySTRING
coupon__redemption_resourceSTRING
coupon__stateSTRING
coupon__temporal_amountFLOAT64
coupon__temporal_unitSTRING
coupon__unique_code_templateSTRING
coupon__unique_coupon_code__bulk_coupon_codeSTRINGThe Coupon code of the parent Bulk Coupon
coupon__unique_coupon_code__bulk_coupon_idSTRINGThe Coupon ID of the parent Bulk Coupon
coupon__unique_coupon_code__codeSTRINGThe code the customer enters to redeem the coupon.
coupon__unique_coupon_code__created_atTIMESTAMP
coupon__unique_coupon_code__expired_atTIMESTAMPThe date and time the coupon was expired early or reached its `max_redemptions`.
coupon__unique_coupon_code__idSTRING
coupon__unique_coupon_code__objectSTRING
coupon__unique_coupon_code__redeemed_atTIMESTAMPThe date and time the unique coupon code was redeemed.
coupon__unique_coupon_code__stateSTRINGIndicates if the unique coupon code is redeemable or why not.
coupon__unique_coupon_code__updated_atTIMESTAMP
coupon__unique_coupon_codes_countFLOAT64
coupon__updated_atTIMESTAMP
created_atTIMESTAMPThe date and time when the redemption was created
currencySTRINGThe currency in which the redemption was made
discountedFLOAT64The amount discounted by the coupon
idSTRINGThe unique identifier for the redemption
objectSTRINGThe type of object this represents
removed_atTIMESTAMPThe date and time when the redemption was removed (if applicable)
stateSTRINGThe current state of the redemption
subscription_idSTRINGThe subscription associated with the redemption
updated_atTIMESTAMPThe date and time when the redemption was last updated
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • account_coupon_redemptions__coupon__discount__currencies (5 columns)
  • account_coupon_redemptions__coupon__items (4 columns)
  • account_coupon_redemptions__coupon__plans (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account_idSTRINGThe unique identifier of the account associated with this note.
created_atTIMESTAMPThe date and time when the note was created.
idSTRINGThe unique identifier for this note.
messageSTRINGThe content or message of the note.
objectSTRINGRepresents the object type, in this case, 'note'.
user__created_atTIMESTAMP
user__deleted_atTIMESTAMP
user__emailSTRING
user__first_nameSTRING
user__idSTRING
user__last_nameSTRING
user__objectSTRING
user__time_zoneSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
address__citySTRINGCity of the address
address__countrySTRINGCountry, 2-letter ISO 3166-1 alpha-2 code.
address__geo_codeSTRINGGeographical coordinates of the address
address__phoneSTRINGPhone number associated with the address
address__postal_codeSTRINGZip or postal code.
address__regionSTRINGState or province.
address__street1STRINGFirst line of the street address
address__street2STRINGSecond line of the street address
acquisition__acquired_atTIMESTAMPThe date and time when the account was acquired
acquisition__campaignSTRINGThe campaign associated with the acquisition
acquisition__channelSTRINGThe channel through which the account was acquired
acquisition__cost__amountFLOAT64The amount of the cost
acquisition__cost__currencySTRINGThe currency of the cost amount
acquisition__subchannelSTRINGThe subchannel associated with the acquisition
bill_toSTRINGThe billing details
billing_info__account_idSTRING
billing_info__address__citySTRING
billing_info__address__countrySTRINGCountry, 2-letter ISO 3166-1 alpha-2 code.
billing_info__address__phoneSTRING
billing_info__address__postal_codeSTRINGZip or postal code.
billing_info__address__regionSTRINGState or province.
billing_info__address__street1STRING
billing_info__address__street2STRING
billing_info__backup_payment_methodBOOLThe `backup_payment_method` field is used to indicate a billing info as a backup on the account that will be tried if the initial billing info used for an invoice is declined.
billing_info__companySTRING
billing_info__created_atTIMESTAMPWhen the billing information was created.
billing_info__first_nameSTRING
billing_info__fraud__decisionSTRING
billing_info__fraud__scoreINT64
billing_info__idSTRING
billing_info__last_nameSTRING
billing_info__objectSTRING
billing_info__payment_method__account_typeSTRINGThe bank account type. Only present for ACH payment methods.
billing_info__payment_method__billing_agreement_idSTRINGBilling Agreement identifier. Only present for Amazon or Paypal payment methods.
billing_info__payment_method__card_typeSTRINGVisa, MasterCard, American Express, Discover, JCB, etc.
billing_info__payment_method__cc_bin_countrySTRINGThe 2-letter ISO 3166-1 alpha-2 country code associated with the credit card BIN, if known by Recurly. Available on the BillingInfo object only. Available when the BIN country lookup feature is enabled.
billing_info__payment_method__exp_monthINT64Expiration month.
billing_info__payment_method__exp_yearINT64Expiration year.
billing_info__payment_method__first_sixSTRINGCredit card number's first six digits.
billing_info__payment_method__gateway_codeSTRINGAn identifier for a specific payment gateway.
billing_info__payment_method__gateway_tokenSTRINGA token used in place of a credit card in order to perform transactions.
billing_info__payment_method__last_fourSTRINGCredit card number's last four digits. Will refer to bank account if payment method is ACH.
billing_info__payment_method__last_twoSTRINGThe IBAN bank account's last two digits.
billing_info__payment_method__name_on_accountSTRINGThe name associated with the bank account.
billing_info__payment_method__objectSTRING
billing_info__payment_method__routing_numberSTRINGThe bank account's routing number. Only present for ACH payment methods.
billing_info__payment_method__routing_number_bankSTRINGThe bank name of this routing number.
billing_info__primary_payment_methodBOOLThe `primary_payment_method` field is used to indicate the primary billing info on the account. The first billing info created on an account will always become primary. This payment method will be used
billing_info__updated_atTIMESTAMPWhen the billing information was last changed.
billing_info__updated_by__countrySTRING
billing_info__updated_by__ipSTRING
billing_info__validBOOL
billing_info__vat_numberSTRINGCustomer's VAT number (to avoid having the VAT applied). This is only used for automatically collected invoices.
cc_emailsSTRINGEmail addresses for carbon copy (CC)
codeSTRINGUnique code assigned to the account
companySTRINGCompany associated with the account
created_atTIMESTAMPDate and time when the account was created
deleted_atTIMESTAMPDate and time when the account was deleted
dunning_campaign_idSTRINGCampaign ID for dunning management
emailSTRINGEmail address of the account holder
entity_use_codeSTRINGEntity use code for tax exemption
exemption_certificateSTRINGExemption certificate details
first_nameSTRINGFirst name of the account holder
has_active_subscriptionBOOLFlag indicating if the account has an active subscription
has_canceled_subscriptionBOOLFlag indicating if the account has a canceled subscription
has_future_subscriptionBOOLFlag indicating if the account has a future subscription
has_live_subscriptionBOOLFlag indicating if the account has a live subscription
has_past_due_invoiceBOOLFlag indicating if the account has a past due invoice
has_paused_subscriptionBOOLFlag indicating if the account has a paused subscription
hosted_login_tokenSTRINGToken for hosted login functionality
idSTRINGUnique identifier of the account
invoice_template_idSTRINGID of the invoice template used
last_nameSTRINGLast name of the account holder
objectSTRINGType of object
override_business_entity_idSTRINGID for overriding business entity
parent_account_idSTRINGID of the parent account
parent_account_codeSTRINGCode of the parent account
preferred_localeSTRINGPreferred language/locale of the account holder
preferred_time_zoneSTRINGPreferred time zone of the account holder
stateSTRINGState/province of the account address
tax_exemptBOOLFlag indicating if the account is tax exempt
transaction_typeSTRINGType of transaction associated with the account
updated_atTIMESTAMPDate and time when the account was last updated
usernameSTRINGUsername of the account holder
vat_numberSTRINGVAT (Value Added Tax) number of the account
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • accounts__custom_fields (3 columns)
  • accounts__external_accounts (9 columns)
  • accounts__shipping_addresses (22 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
accounting_codeSTRINGAccounting code for invoice line items for this add-on. If no value is provided, it defaults to add-on's code.
add_on_typeSTRINGWhether the add-on type is fixed, or usage-based.
avalara_service_typeSTRINGUsed by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to [the documentation](https://help.avalara.com/AvaTax_for_Communications/Tax_Calculation/AvaTax_for_Communications_Tax_Engine/Mapping_Resources/TM_00115_AFC_Modules_Corresponding_Transaction_Types) for more available t/s types.
avalara_transaction_typeSTRINGUsed by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to [the documentation](https://help.avalara.com/AvaTax_for_Communications/Tax_Calculation/AvaTax_for_Communications_Tax_Engine/Mapping_Resources/TM_00115_AFC_Modules_Corresponding_Transaction_Types) for more available t/s types.
codeSTRINGThe unique identifier for the add-on within its plan.
created_atTIMESTAMPThe date and time when the add-on was created.
default_quantityINT64Default quantity for the hosted pages.
deleted_atTIMESTAMPThe date and time when the add-on was deleted, if applicable.
display_quantityBOOLDetermines if the quantity field is displayed on the hosted pages for the add-on.
idSTRINGThe unique identifier for the add-on.
measured_unit_idSTRINGSystem-generated unique identifier for an measured unit associated with the add-on.
nameSTRINGDescribes your add-on and will appear in subscribers' invoices.
optionalBOOLWhether the add-on is optional for the customer to include in their purchase on the hosted payment page. If false, the add-on will be included when a subscription is created through the Recurly UI. However, the add-on will not be included when a subscription is created through the API.
plan_idSTRINGThe ID of the plan to which the add-on is associated.
revenue_schedule_typeSTRINGWhen this add-on is invoiced, the line item will use this revenue schedule. If `item_code`/`item_id` is part of the request then `revenue_schedule_type` must be absent in the request as the value will be set from the item.
stateSTRINGAdd-ons can be either active or inactive.
tax_codeSTRINGUsed by Avalara, Vertex, and Recurly’s EU VAT tax feature. The tax code values are specific to each tax system. If you are using Recurly’s EU VAT feature you can use `unknown`, `physical`, or `digital`.
tier_typeSTRINGThe pricing model for the add-on. For more information,[click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our[Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of howto configure quantity-based pricing models.
updated_atTIMESTAMPThe date and time when the add-on was last updated.
usage_percentageFLOAT64The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0.
usage_typeSTRINGType of usage, returns usage type if `add_on_type` is `usage`.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • add_ons__currencies (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account_idSTRING
address__citySTRING
address__countrySTRINGCountry, 2-letter ISO 3166-1 alpha-2 code.
address__phoneSTRING
address__postal_codeSTRINGZip or postal code.
address__regionSTRINGState or province.
address__street1STRING
address__street2STRING
backup_payment_methodBOOLThe `backup_payment_method` field is used to indicate a billing info as a backup on the account that will be tried if the initial billing info used for an invoice is declined.
companySTRING
created_atTIMESTAMPWhen the billing information was created.
first_nameSTRING
fraud__decisionSTRING
fraud__scoreINT64
idSTRING
last_nameSTRING
objectSTRING
payment_method__account_typeSTRINGThe bank account type. Only present for ACH payment methods.
payment_method__billing_agreement_idSTRINGBilling Agreement identifier. Only present for Amazon or Paypal payment methods.
payment_method__card_typeSTRINGVisa, MasterCard, American Express, Discover, JCB, etc.
payment_method__cc_bin_countrySTRINGThe 2-letter ISO 3166-1 alpha-2 country code associated with the credit card BIN, if known by Recurly. Available on the BillingInfo object only. Available when the BIN country lookup feature is enabled.
payment_method__exp_monthINT64Expiration month.
payment_method__exp_yearINT64Expiration year.
payment_method__first_sixSTRINGCredit card number's first six digits.
payment_method__gateway_codeSTRINGAn identifier for a specific payment gateway.
payment_method__gateway_tokenSTRINGA token used in place of a credit card in order to perform transactions.
payment_method__last_fourSTRINGCredit card number's last four digits. Will refer to bank account if payment method is ACH.
payment_method__last_twoSTRINGThe IBAN bank account's last two digits.
payment_method__name_on_accountSTRINGThe name associated with the bank account.
payment_method__objectSTRING
payment_method__routing_numberSTRINGThe bank account's routing number. Only present for ACH payment methods.
payment_method__routing_number_bankSTRINGThe bank name of this routing number.
primary_payment_methodBOOLThe `primary_payment_method` field is used to indicate the primary billing info on the account. The first billing info created on an account will always become primary. This payment method will be used
updated_atTIMESTAMPWhen the billing information was last changed.
updated_by__countrySTRING
updated_by__ipSTRING
validBOOL
vat_numberSTRINGCustomer's VAT number (to avoid having the VAT applied). This is only used for automatically collected invoices.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
applies_to_all_itemsBOOL
applies_to_all_plansBOOL
applies_to_non_plan_chargesBOOL
codeSTRING
coupon_typeSTRING
created_atTIMESTAMP
discount__typeSTRING
discount__percentINT64This is only present when `type=percent`.
discount__trial__lengthINT64Trial length measured in the units specified by the sibling `unit` property
discount__trial__unitSTRINGTemporal unit of the free trial
durationSTRING
expired_atTIMESTAMP
free_trial_amountFLOAT64
free_trial_unitSTRING
hosted_page_descriptionSTRING
idSTRING
invoice_descriptionSTRING
max_redemptionsFLOAT64
max_redemptions_per_accountFLOAT64
nameSTRING
objectSTRING
redeem_bySTRING
redemption_resourceSTRING
stateSTRING
temporal_amountFLOAT64
temporal_unitSTRING
unique_code_templateSTRING
unique_coupon_code__bulk_coupon_codeSTRINGThe Coupon code of the parent Bulk Coupon
unique_coupon_code__bulk_coupon_idSTRINGThe Coupon ID of the parent Bulk Coupon
unique_coupon_code__codeSTRINGThe code the customer enters to redeem the coupon.
unique_coupon_code__created_atTIMESTAMP
unique_coupon_code__expired_atTIMESTAMPThe date and time the coupon was expired early or reached its `max_redemptions`.
unique_coupon_code__idSTRING
unique_coupon_code__objectSTRING
unique_coupon_code__redeemed_atTIMESTAMPThe date and time the unique coupon code was redeemed.
unique_coupon_code__stateSTRINGIndicates if the unique coupon code is redeemable or why not.
unique_coupon_code__updated_atTIMESTAMP
unique_coupon_codes_countFLOAT64
updated_atTIMESTAMP
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • coupons__discount__currencies (5 columns)
  • coupons__items (4 columns)
  • coupons__plans (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account__codeSTRINGThe unique identifier of the account.
account__idSTRINGThe ID of the account associated with the credit payment.
actionSTRINGThe action for which the credit was created.
amountFLOAT64Total credit payment amount applied to the charge invoice.
applied_to_invoice__idSTRINGThe ID of the invoice to which the credit payment is applied.
applied_to_invoice__numberSTRINGThe number of the invoice to which the credit payment is applied.
created_atTIMESTAMPThe date and time when the credit payment was created.
currencySTRING3-letter ISO 4217 currency code.
idSTRINGThe unique identifier of the credit payment.
original_credit_payment_idSTRINGFor credit payments with action `refund`, this is the credit payment that was refunded.
original_invoice__idSTRINGThe ID of the original invoice for which the credit payment was made.
original_invoice__numberSTRINGThe number of the original invoice for which the credit payment was made.
refund_transaction__idSTRINGThe ID of the refund transaction associated with the credit payment.
refund_transaction__uuidSTRINGThe UUID is useful for matching data with the CSV exports and building URLs into Recurly's UI.
updated_atTIMESTAMPThe date and time when the credit payment was last updated.
uuidSTRINGThe UUID is useful for matching data with the CSV exports and building URLs into Recurly's UI.
voided_atTIMESTAMPThe date and time when the credit payment was voided.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • export_dates__dates (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRINGInvoices are either charge, credit, or legacy invoices.
account__bill_toSTRING
account__codeSTRING
account__companySTRING
account__dunning_campaign_idSTRING
account__emailSTRING
account__first_nameSTRING
account__idSTRING
account__last_nameSTRING
account__objectSTRING
account__parent_account_idSTRING
address__citySTRINGThe city in the address.
address__companySTRINGThe company name in the address.
address__countrySTRINGCountry, 2-letter ISO 3166-1 alpha-2 code.
address__first_nameSTRINGThe first name of the recipient.
address__last_nameSTRINGThe last name of the recipient.
address__name_on_accountSTRINGThe name on the account.
address__phoneSTRINGThe phone number associated with the address.
address__postal_codeSTRINGZip or postal code.
address__regionSTRINGState or province.
address__street1STRINGThe first line of the street address.
address__street2STRINGThe second line of the street address.
balanceFLOAT64The outstanding balance remaining on this invoice.
billing_info_idSTRINGThe `billing_info_id` is the value that represents a specific billing info for an end customer. When `billing_info_id` is used to assign billing info to the subscription, all future billing events for the subscription will bill to the specified billing info. `billing_info_id` can ONLY be used for sites utilizing the Wallet feature.
business_entity_idSTRINGThe business entity ID linked to the invoice.
closed_atTIMESTAMPDate invoice was marked paid or failed.
collection_methodSTRINGAn automatic invoice means a corresponding transaction is run using the account's billing information at the same time the invoice is created. Manual invoices are created without a corresponding transaction. The merchant must enter a manual payment transaction or have the customer pay the invoice with an automatic method, like credit card, PayPal, Amazon, or ACH bank payment.
created_atTIMESTAMPThe date and time when the invoice was created.
currencySTRING3-letter ISO 4217 currency code.
customer_notesSTRINGThis will default to the Customer Notes text specified on the Invoice Settings. Specify custom notes to add or override Customer Notes.
discountFLOAT64Total discounts applied to this invoice.
due_atTIMESTAMPDate invoice is due. This is the date the net terms are reached.
dunning_campaign_idSTRINGUnique ID to identify the dunning campaign used when dunning the invoice. Available when the Dunning Campaigns feature is enabled. For sites without multiple dunning campaigns enabled, this will always be the default dunning campaign.
dunning_events_sentINT64The number of dunning events sent for the invoice.
final_dunning_eventBOOLThe final dunning event related to the invoice if applicable.
has_more_line_itemsBOOLIndicates if there are more line items in the invoice.
idSTRINGThe unique ID of the invoice.
net_termsINT64Integer representing the number of days after an invoice's creation that the invoice will become past due. If an invoice's net terms are set to '0', it is due 'On Receipt' and will become past due 24 hours after it’s created. If an invoice is due net 30, it will become past due at 31 days exactly.
numberSTRINGIf VAT taxation and the Country Invoice Sequencing feature are enabled, invoices will have country-specific invoice numbers for invoices billed to EU countries (ex: FR1001). Non-EU invoices will continue to use the site-level invoice number sequence.
objectSTRINGThe type of object, in this case, an invoice.
originSTRINGThe event that created the invoice.
paidFLOAT64The total amount of successful payments transaction on this invoice.
po_numberSTRINGFor manual invoicing, this identifies the PO number associated with the subscription.
previous_invoice_idSTRINGOn refund invoices, this value will exist and show the invoice ID of the purchase invoice the refund was created from.
refundable_amountFLOAT64The refundable amount on a charge invoice. It will be null for all other invoices.
shipping_address__idSTRINGThe ID of the shipping address.
stateSTRINGThe current state of the invoice.
subtotalFLOAT64The summation of charges and credits, before discounts and taxes.
taxFLOAT64The total tax on this invoice.
tax_info__typeSTRINGProvides the tax type as "vat" for EU VAT, "usst" for U.S. Sales Tax, or the 2 letter country code for country level tax types like Canada, Australia, New Zealand, Israel, and all non-EU European countries.
tax_info__rateFLOAT64The tax rate applied to the invoice.
tax_info__regionSTRINGProvides the tax region applied on an invoice. For U.S. Sales Tax, this will be the 2 letter state code. For EU VAT this will be the 2 letter country code. For all country level tax types, this will display the regional tax, like VAT, GST, or PST.
terms_and_conditionsSTRINGThis will default to the Terms and Conditions text specified on the Invoice Settings page in your Recurly admin. Specify custom notes to add or override Terms and Conditions.
totalFLOAT64The final total on this invoice. The summation of invoice charges, discounts, credits, and tax.
updated_atTIMESTAMPThe date and time when the invoice was last updated.
used_tax_serviceBOOLIndicates if a tax service was used for the invoice.
uuidSTRINGThe universally unique identifier (UUID) of the invoice.
vat_numberSTRINGVAT registration number for the customer on this invoice. This will come from the VAT Number field in the Billing Info or the Account Info depending on your tax settings and the invoice collection method.
vat_reverse_charge_notesSTRINGVAT Reverse Charge Notes only appear if you have EU VAT enabled or are using your own Avalara AvaTax account and the customer is in the EU, has a VAT number, and is in a different country than your own. This will default to the VAT Reverse Charge Notes text specified on the Tax Settings page in your Recurly admin, unless custom notes were created with the original subscription.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • invoices__credit_payments (5 columns)
  • invoices__line_items (61 columns)
  • invoices__line_items__custom_fields (5 columns)
  • invoices__line_items__tax_info__tax_details (10 columns)
  • invoices__subscription_ids (4 columns)
  • invoices__tax_info__tax_details (7 columns)
  • invoices__transactions (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRINGCharges are positive line items that debit the account. Credits are negative line items that credit the account.
descriptionSTRINGDescription that appears on the invoice. For subscription related items this will be filled in automatically.
account__bill_toSTRING
account__codeSTRING
account__companySTRING
account__dunning_campaign_idSTRING
account__emailSTRING
account__first_nameSTRING
account__idSTRING
account__last_nameSTRING
account__objectSTRING
account__parent_account_idSTRING
accounting_codeSTRINGInternal accounting code to help you reconcile your revenue to the correct ledger. Line items created as part of a subscription invoice will use the plan or add-on's accounting code, otherwise the value will only be present if you define an accounting code when creating the line item.
add_on_codeSTRINGIf the line item is a charge or credit for an add-on, this is its code.
add_on_idSTRINGIf the line item is a charge or credit for an add-on this is its ID.
amountFLOAT64`(quantity * unit_amount) - (discount + tax)`
bill_for_account_idSTRINGThe UUID of the account responsible for originating the line item.
created_atTIMESTAMPWhen the line item was created.
credit_appliedFLOAT64The amount of credit from this line item that was applied to the invoice.
credit_reason_codeSTRINGThe reason the credit was given when line item is `type=credit`.
currencySTRING3-letter ISO 4217 currency code.
discountFLOAT64The discount applied to the line item.
end_dateTIMESTAMPIf this date is provided, it indicates the end of a time range.
external_skuSTRINGOptional Stock Keeping Unit assigned to an item. Available when the Credit Invoices and Subscription Billing Terms features are enabled.
idSTRING
invoice_idSTRINGOnce the line item has been invoiced this will be the invoice's ID.
invoice_numberSTRINGOnce the line item has been invoiced this will be the invoice's number. If VAT taxation and the Country Invoice Sequencing feature are enabled, invoices will have country-specific invoice numbers for invoices billed to EU countries (ex: FR1001). Non-EU invoices will continue to use the site-level invoice number sequence.
item_codeSTRINGUnique code to identify an item. Available when the Credit Invoices and Subscription Billing Terms features are enabled.
item_idSTRINGSystem-generated unique identifier for an item. Available when the Credit Invoices and Subscription Billing Terms features are enabled.
legacy_categorySTRINGCategory to describe the role of a line item on a legacy invoice:- "charges" refers to charges being billed for on this invoice.- "credits" refers to refund or proration credits. This portion of the invoice can be considered a credit memo.- "applied_credits" refers to previous credits applied to this invoice. See their original_line_item_id to determine where the credit first originated.- "carryforwards" can be ignored. They exist to consume any remaining credit balance. A new credit with the same amount will be created and placed back on the account.
objectSTRING
originSTRINGA credit created from an original charge will have the value of the charge's origin.
original_line_item_invoice_idSTRINGThe invoice where the credit originated. Will only have a value if the line item is a credit created from a previous credit, or if the credit was created from a charge refund.
plan_codeSTRINGIf the line item is a charge or credit for a plan or add-on, this is the plan's code.
plan_idSTRINGIf the line item is a charge or credit for a plan or add-on, this is the plan's ID.
previous_line_item_idSTRINGWill only have a value if the line item is a credit created from a previous credit, or if the credit was created from a charge refund.
product_codeSTRINGFor plan-related line items this will be the plan's code, for add-on related line items it will be the add-on's code. For item-related line items it will be the item's `external_sku`.
proration_rateFLOAT64When a line item has been prorated, this is the rate of the proration. Proration rates were made available for line items created after March 30, 2017. For line items created prior to that date, the proration rate will be `null`, even if the line item was prorated.
quantityINT64This number will be multiplied by the unit amount to compute the subtotal before any discounts or taxes.
refundBOOL
refunded_quantityINT64For refund charges, the quantity being refunded. For non-refund charges, the total quantity refunded (possibly over multiple refunds).
revenue_schedule_typeSTRING
shipping_address__idSTRING
start_dateTIMESTAMPIf an end date is present, this is value indicates the beginning of a billing time range. If no end date is present it indicates billing for a specific date.
stateSTRINGPending line items are charges or credits on an account that have not been applied to an invoice yet. Invoiced line items will always have an `invoice_id` value.
subscription_idSTRINGIf the line item is a charge or credit for a subscription, this is its ID.
subtotalFLOAT64`quantity * unit_amount`
taxFLOAT64The tax amount for the line item.
tax_codeSTRINGUsed by Avalara, Vertex, and Recurly’s EU VAT tax feature. The tax code values are specific to each tax system. If you are using Recurly’s EU VAT feature you can use `unknown`, `physical`, or `digital`.
tax_exemptBOOL`true` exempts tax on charges, `false` applies tax on charges. If not defined, then defaults to the Plan and Site settings. This attribute does not work for credits (negative line items). Credits are always applied post-tax. Pre-tax discounts should use the Coupons feature.
tax_info__typeSTRING
tax_info__rateFLOAT64
tax_info__regionSTRING
taxableBOOL`true` if the line item is taxable, `false` if it is not.
unit_amountFLOAT64Positive amount for a charge, negative amount for a credit.
unit_amount_decimalSTRINGPositive amount for a charge, negative amount for a credit.
updated_atTIMESTAMPWhen the line item was last changed.
uuidSTRINGThe UUID is useful for matching data with the CSV exports and building URLs into Recurly's UI.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • line_items__custom_fields (5 columns)
  • line_items__tax_info__tax_details (10 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
descriptionSTRINGDescription of the measured unit
created_atTIMESTAMPTimestamp indicating when the measured unit was created
deleted_atTIMESTAMPTimestamp indicating when the measured unit was deleted (if applicable)
display_nameSTRINGHuman-readable name used for display purposes
idSTRINGUnique identifier for the measured unit
nameSTRINGInternal name used to identify the measured unit
objectSTRINGType of object, in this case, 'measured_unit'
stateSTRINGCurrent state of the measured unit
updated_atTIMESTAMPTimestamp indicating when the measured unit was last updated
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
descriptionSTRINGDescription of the plan.
accounting_codeSTRINGThe accounting code associated with the plan.
allow_any_item_on_subscriptionsBOOLDetermines if any item can be added to subscriptions using this plan.
auto_renewBOOLIndicates whether the plan should automatically renew.
avalara_service_typeFLOAT64The Avalara service type used for tax calculation.
avalara_transaction_typeFLOAT64The Avalara transaction type used for tax calculation.
codeSTRINGUnique identifier code for the plan.
created_atTIMESTAMPTimestamp indicating when the plan was created.
deleted_atTIMESTAMPTimestamp indicating when the plan was deleted.
dunning_campaign_idSTRINGID of the dunning campaign associated with the plan.
hosted_pages__bypass_confirmationBOOLDetermines if confirmation is bypassed on hosted pages.
hosted_pages__cancel_urlSTRINGURL to redirect when a user cancels during hosted page process.
hosted_pages__display_quantityBOOLDetermines if quantity is displayed on hosted pages.
hosted_pages__success_urlSTRINGURL to redirect when a user successfully completes hosted page process.
idSTRINGUnique identifier of the plan.
interval_lengthFLOAT64Length of the billing interval for the plan.
interval_unitSTRINGUnit of the billing interval for the plan.
nameSTRINGName of the plan.
objectSTRINGIndicates the type of object which in this case is 'plan'.
pricing_modelSTRINGThe pricing model used for the plan.
revenue_schedule_typeSTRINGType of revenue schedule for the plan.
setup_fee_accounting_codeSTRINGThe accounting code associated with the setup fee.
setup_fee_revenue_schedule_typeSTRINGRevenue schedule type for the setup fee.
stateSTRINGThe current state of the plan.
tax_codeSTRINGTax code used for the plan.
tax_exemptBOOLDetermines if the plan is tax exempt.
total_billing_cyclesFLOAT64Total number of billing cycles the plan will run for.
trial_lengthFLOAT64Length of the trial period for the plan.
trial_requires_billing_infoBOOLDetermines if billing information is required for the trial.
trial_unitSTRINGUnit of the trial period for the plan.
updated_atTIMESTAMPTimestamp indicating when the plan was last updated.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • plans__currencies (6 columns)
  • plans__custom_fields (5 columns)
  • plans__ramp_intervals (4 columns)
  • plans__ramp_intervals__currencies (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account_idSTRING
citySTRING
companySTRING
countrySTRINGCountry, 2-letter ISO 3166-1 alpha-2 code.
created_atTIMESTAMP
emailSTRING
first_nameSTRING
geo_codeSTRING
idSTRING
last_nameSTRING
nicknameSTRING
objectSTRING
phoneSTRING
postal_codeSTRINGZip or postal code.
regionSTRINGState or province.
street1STRING
street2STRING
updated_atTIMESTAMP
vat_numberSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
accounting_codeSTRINGAccounting code for shipping method.
codeSTRINGThe internal name used identify the shipping method.
created_atTIMESTAMPTimestamp indicating when the shipping method was created
deleted_atTIMESTAMPTimestamp indicating when the shipping method was deleted
idSTRINGUnique identifier for the shipping method
nameSTRINGThe name of the shipping method displayed to customers.
tax_codeSTRINGUsed by Avalara, Vertex, and Recurly’s built-in tax feature. The taxcode values are specific to each tax system. If you are using Recurly’sbuilt-in taxes the values are:- `FR` – Common Carrier FOB Destination- `FR022000` – Common Carrier FOB Origin- `FR020400` – Non Common Carrier FOB Destination- `FR020500` – Non Common Carrier FOB Origin- `FR010100` – Delivery by Company Vehicle Before Passage of Title- `FR010200` – Delivery by Company Vehicle After Passage of Title- `NT` – Non-Taxable
updated_atTIMESTAMPTimestamp indicating when the shipping method was last updated
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
account__bill_toSTRING
account__codeSTRING
account__companySTRING
account__dunning_campaign_idSTRING
account__emailSTRING
account__first_nameSTRING
account__idSTRING
account__last_nameSTRING
account__objectSTRING
account__parent_account_idSTRING
activated_atTIMESTAMPTimestamp when the subscription was activated
active_invoice_idSTRINGID of the active invoice associated with the subscription.
add_ons_totalFLOAT64Total amount charged for the additional services or items.
auto_renewBOOLFlag indicating whether the subscription auto renews.
bank_account_authorized_atTIMESTAMPTimestamp when bank account authorization occurred
billing_info_idSTRINGID of the billing information associated with the subscription.
canceled_atTIMESTAMPTimestamp when the subscription was canceled
collection_methodSTRINGMethod used for collecting payments for the subscription.
converted_atTIMESTAMPTimestamp when the subscription was converted
coupon_redemptions__coupon__codeSTRING
coupon_redemptions__coupon__coupon_typeSTRING
coupon_redemptions__coupon__discount__typeSTRING
coupon_redemptions__coupon__discount__percentINT64
coupon_redemptions__coupon__discount__trial__lengthINT64
coupon_redemptions__coupon__discount__trial__unitSTRING
coupon_redemptions__coupon__expired_atTIMESTAMP
coupon_redemptions__coupon__idSTRING
coupon_redemptions__coupon__nameSTRING
coupon_redemptions__coupon__objectSTRING
coupon_redemptions__coupon__stateSTRING
coupon_redemptions__created_atTIMESTAMP
coupon_redemptions__discountedFLOAT64
coupon_redemptions__idSTRING
coupon_redemptions__objectSTRING
coupon_redemptions__stateSTRING
created_atTIMESTAMPTimestamp when the subscription was created
currencySTRINGCurrency used for billing the subscription.
current_period_ends_atTIMESTAMPTimestamp when the current period ends
current_period_started_atTIMESTAMPTimestamp when the current period started
current_term_ends_atTIMESTAMPTimestamp when the current term ends
current_term_started_atTIMESTAMPTimestamp when the current term started
customer_notesSTRINGAny notes or comments added by the customer.
expiration_reasonSTRINGReason for the subscription expiration.
expires_atTIMESTAMPTimestamp when the subscription expires
gateway_codeSTRINGCode associated with the payment gateway used for processing payments.
idSTRINGUnique identifier for the subscription.
net_termsFLOAT64Number of net terms for payment.
net_terms_typeSTRINGType of net terms (e.g., days).
objectSTRINGIndicates the type of object (subscription).
paused_atTIMESTAMPTimestamp when the subscription was paused
pending_change__activate_atTIMESTAMPTimestamp when the pending change will be activated
pending_change__activatedBOOLReturns `true` if the subscription change is activated.
pending_change__created_atTIMESTAMPTimestamp when the pending change was created
pending_change__deleted_atTIMESTAMPTimestamp when the pending change was deleted
pending_change__idSTRINGThe ID of the Subscription Change.
pending_change__subscription_idSTRINGThe ID of the subscription that is going to be changed.
pending_change__updated_atTIMESTAMPTimestamp when the pending change was last updated
plan__codeSTRING
plan__idSTRING
plan__nameSTRING
plan__objectSTRING
po_numberSTRINGPurchase order number associated with the subscription.
quantityFLOAT64Number of units or items included in the subscription.
remaining_billing_cyclesFLOAT64Number of billing cycles remaining before subscription ends.
remaining_pause_cyclesFLOAT64Number of pause cycles remaining for the subscription.
renewal_billing_cyclesFLOAT64Number of billing cycles in the renewal period.
revenue_schedule_typeSTRINGType of revenue schedule for the subscription.
shipping__address__account_idSTRING
shipping__address__citySTRING
shipping__address__companySTRING
shipping__address__countrySTRINGCountry, 2-letter ISO 3166-1 alpha-2 code.
shipping__address__created_atTIMESTAMP
shipping__address__emailSTRING
shipping__address__first_nameSTRING
shipping__address__geo_codeSTRING
shipping__address__idSTRING
shipping__address__last_nameSTRING
shipping__address__nicknameSTRING
shipping__address__objectSTRING
shipping__address__phoneSTRING
shipping__address__postal_codeSTRINGZip or postal code.
shipping__address__regionSTRINGState or province.
shipping__address__street1STRING
shipping__address__street2STRING
shipping__address__updated_atTIMESTAMP
shipping__address__vat_numberSTRING
shipping__amountFLOAT64
shipping__method__codeSTRING
shipping__method__idSTRING
shipping__method__nameSTRING
shipping__method__objectSTRING
shipping__objectSTRING
started_with_giftBOOLIndicates if the subscription started with a gift or promotion.
stateSTRINGCurrent state of the subscription (e.g., active, cancelled).
subtotalFLOAT64Subtotal amount before taxes and additional charges.
taxFLOAT64Total tax amount applied to the subscription.
tax_inclusiveBOOLFlag indicating if taxes are included in the total amount.
tax_info__typeSTRING
tax_info__rateFLOAT64
tax_info__regionSTRING
terms_and_conditionsSTRINGTerms and conditions agreed upon for the subscription.
totalFLOAT64Total amount including taxes and additional charges.
total_billing_cyclesFLOAT64Total number of billing cycles for the subscription.
trial_ends_atTIMESTAMPTimestamp when the trial period ends
trial_started_atTIMESTAMPTimestamp when the trial period started
unit_amountFLOAT64Amount charged per unit for the subscription.
updated_atTIMESTAMPTimestamp when the subscription was last updated
uuidSTRINGUniversally unique identifier for the subscription.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • subscriptions__add_ons (5 columns)
  • subscriptions__coupon_redemptions__coupon__discount__currencies (5 columns)
  • subscriptions__custom_fields (5 columns)
  • subscriptions__ramp_intervals (8 columns)
  • subscriptions__tax_info__tax_details (10 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRINGType of transaction
account__bill_toSTRING
account__codeSTRING
account__companySTRING
account__dunning_campaign_idSTRING
account__emailSTRING
account__first_nameSTRING
account__idSTRING
account__last_nameSTRING
account__objectSTRING
account__parent_account_idSTRING
amountFLOAT64Amount of the transaction
avs_checkSTRINGResult of the Address Verification System check
backup_payment_method_usedBOOLIndicates whether a backup payment method was used
billing_address__citySTRING
billing_address__countrySTRING
billing_address__first_nameSTRING
billing_address__geo_codeSTRING
billing_address__last_nameSTRING
billing_address__phoneSTRING
billing_address__postal_codeSTRING
billing_address__regionSTRING
billing_address__street1STRING
billing_address__street2STRING
collected_atTIMESTAMPDate and time when the transaction was collected
collection_methodSTRINGMethod used to collect the transaction
created_atTIMESTAMPDate and time when the transaction was created
currencySTRINGCurrency used for the transaction
customer_messageSTRINGMessage for the customer related to the transaction
customer_message_localeSTRINGLocale of the customer message
cvv_checkSTRINGResult of the CVV check
fraud_info__decisionSTRING
fraud_info__objectSTRING
fraud_info__referenceSTRING
fraud_info__scoreINT64
gateway_approval_codeSTRINGApproval code provided by the payment gateway
gateway_messageSTRINGMessage returned by the payment gateway
gateway_referenceSTRINGReference number provided by the payment gateway
gateway_response_codeSTRINGResponse code from the payment gateway
gateway_response_timeFLOAT64Time taken for the payment gateway to respond
idSTRINGUnique identifier for the transaction
invoice__typeSTRING
invoice__business_entity_idSTRING
invoice__idSTRING
invoice__numberSTRING
invoice__stateSTRING
ip_address_countrySTRINGCountry of the IP address used for the transaction
ip_address_v4STRINGIPv4 address of the transaction
objectSTRINGType of object (transaction)
originSTRINGSource or origin of the transaction
original_transaction_idSTRINGID of the original transaction, if applicable
payment_gateway__typeSTRING
payment_gateway__idSTRING
payment_gateway__nameSTRING
payment_gateway__objectSTRING
payment_method__account_typeSTRING
payment_method__billing_agreement_idSTRING
payment_method__card_typeSTRING
payment_method__cc_bin_countrySTRING
payment_method__exp_monthFLOAT64
payment_method__exp_yearFLOAT64
payment_method__first_sixSTRING
payment_method__gateway_codeSTRING
payment_method__gateway_tokenSTRING
payment_method__last_fourSTRING
payment_method__last_twoSTRING
payment_method__name_on_accountSTRING
payment_method__objectSTRING
payment_method__routing_numberSTRING
payment_method__routing_number_bankSTRING
payment_method__usernameSTRING
refundedBOOLIndicates whether the transaction has been refunded
statusSTRINGCurrent status of the transaction
status_codeSTRINGStatus code of the transaction
status_messageSTRINGMessage related to the status of the transaction
successBOOLIndicates the success status of the transaction
updated_atTIMESTAMPDate and time of the last update to the transaction
uuidSTRINGUniversally unique identifier for the transaction
vat_numberSTRINGVAT number associated with the transaction
voided_atTIMESTAMPDate and time when the transaction was voided
voided_by_invoice__typeSTRING
voided_by_invoice__business_entity_idSTRING
voided_by_invoice__idSTRING
voided_by_invoice__numberSTRING
voided_by_invoice__objectSTRING
voided_by_invoice__stateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • transactions__fraud_info__risk_rules_triggered (5 columns)
  • transactions__subscription_ids (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
bulk_coupon_codeSTRINGThe Coupon code of the parent Bulk Coupon
bulk_coupon_idSTRINGThe Coupon ID of the parent Bulk Coupon
codeSTRINGThe code the customer enters to redeem the coupon.
created_atTIMESTAMP
expired_atTIMESTAMPThe date and time the coupon was expired early or reached its `max_redemptions`.
idSTRING
objectSTRING
redeemed_atTIMESTAMPThe date and time the unique coupon code was redeemed.
stateSTRINGIndicates if the unique coupon code is redeemable or why not.
updated_atTIMESTAMP
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
applies_to_all_itemsBOOL
applies_to_all_plansBOOL
applies_to_non_plan_chargesBOOL
codeSTRING
coupon_typeSTRING
created_atSTRING
discount__typeSTRING
durationSTRING
hosted_page_descriptionSTRING
idSTRING
invoice_descriptionSTRING
max_redemptions_per_accountFLOAT64
nameSTRING
objectSTRING
redemption_resourceSTRING
stateSTRING
unique_code_templateSTRING
unique_coupon_codes_countFLOAT64
updated_atSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • unique_coupons_parent__discount__currencies (5 columns)

How the Recurly sync works

After the first load, Kaivo keeps your BigQuery warehouse up to date for you. Where Recurly supports it, each sync pulls only new and changed records so it stays fast; otherwise it refreshes the whole table. Every record keeps its original ID, so you won't get duplicate rows.

Frequently asked questions

How long does the initial sync take for Recurly?

It depends on how much history is in your Recurly account. Most initial syncs finish within minutes, while large accounts can take a few hours. After that, syncs only fetch new and changed records, so they're much faster.

Can I sync only some tables or columns?

Yes. You pick which tables to sync when you set up the connection and can change the selection later. Tables you don't select are never copied to your warehouse.

What happens when Recurly's schema changes?

New fields are never added automatically. You choose which fields to sync, so data you haven't selected (sensitive personal data, for example) never lands in your warehouse. When a new field appears, it becomes available for you to add. What happens to removed or renamed fields depends on a table's sync mode: full-refresh tables always match what's currently in Recurly, so dropped fields disappear, while incremental tables keep their existing columns and history, so an old field stays and newly added fields fill in over time.

How do I handle GDPR or data deletion requests?

Your data lives in your own Kaivo-managed BigQuery warehouse, so the most direct option is to delete or anonymise specific records right in BigQuery. If you delete data in Recurly instead, full-refresh tables drop it on the next sync, while incremental tables keep it, so you would remove the row in BigQuery or ask us to run a full refresh. To remove everything, delete the Recurly connector in Kaivo and all of its synced data is deleted with it.

Common use cases for Recurly data

Recurring revenue

Use subscriptions and invoices to track MRR, expansion, and churn over time.

Billing reporting

Join invoices with transactions and credit_payments to reconcile billing.

Plan analysis

Use plans and add_ons to see which plans drive revenue and upgrades.

Coupon impact

Bring coupons and account_coupon_redemptions into BigQuery to measure discount use.

Use Recurly data in your AI and BI tools

Once Recurly data lands in your Kaivo-managed BigQuery warehouse, you can explore it with AI tools or any BI tool that connects to BigQuery. Here's how the most common destinations work with Recurly data.

Claude

Use Kaivo's MCP server to give Claude secure, workspace-scoped access to your data. Setup guide →

Power BI

Microsoft's BI tool with a native BigQuery connector. Supports direct query and scheduled refresh. Setup guide →

Data Studio

Free Google BI tool with native BigQuery support. One-click connection to your Kaivo warehouse; great for SMB teams on Google Workspace. Setup guide →

Tableau

The premium analytics standard, with native BigQuery integration. Setup guide →

Google Sheets

Use Connected Sheets to query BigQuery directly from a spreadsheet, with no SQL. Setup guide →

Excel

Connect via Power Query's BigQuery connector. Setup guide →

Metabase

Open-source BI tool with strong BigQuery support. Setup guide →

See our pricing page for Recurly connector pricing and plan details.

Was this helpful?

Still need help? Share an idea