Skip to main content
Connectors

Invoice Ninja connector

Set up the Invoice Ninja connector in Kaivo: authentication, configuration, the 14 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 Invoice Ninja 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 Invoice Ninja connector

Sync your Invoice Ninja data into BigQuery with Kaivo to analyse invoices, payments, and project billing in one place.

CategoryFinance & Payments
AuthenticationAPI key
SetupSelf-service

Getting started with the Invoice Ninja connector

  1. Sign up for Kaivo and create a workspace.
  2. Connect your Invoice Ninja 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 Invoice Ninja

Authenticate with your API Key.

FieldDescription
API Key

Tables and columns synced from Invoice Ninja

Kaivo syncs 14 tables from Invoice Ninja 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.
descriptionSTRING
account_typeSTRING
amountFLOAT64
archived_atFLOAT64
bank_account_idFLOAT64
bank_integration_idSTRING
bank_transaction_rule_idSTRING
base_typeSTRING
category_idFLOAT64
category_typeSTRING
created_atFLOAT64
currency_idSTRING
dateSTRING
expense_idSTRING
idSTRING
invoice_idsSTRING
is_deletedBOOL
ninja_category_idSTRING
nordigen_transaction_idSTRING
participantSTRING
participant_nameSTRING
payment_idSTRING
status_idSTRING
transaction_idFLOAT64
updated_atFLOAT64
user_idSTRING
vendor_idSTRING
_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.
address1STRING
address2STRING
archived_atFLOAT64
assigned_user_idSTRING
balanceFLOAT64
citySTRING
classificationSTRING
client_hashSTRING
country_idSTRING
created_atFLOAT64
credit_balanceFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
display_nameSTRING
group_settings_idSTRING
has_valid_vat_numberBOOL
idSTRING
id_numberSTRING
industry_idSTRING
is_deletedBOOL
is_tax_exemptBOOL
last_loginFLOAT64
nameSTRING
numberSTRING
paid_to_dateFLOAT64
payment_balanceFLOAT64
phoneSTRING
postal_codeSTRING
private_notesSTRING
public_notesSTRING
routing_idSTRING
settings__currency_idSTRING
settings__default_task_rateFLOAT64
settings__entitySTRING
settings__industry_idSTRING
settings__language_idSTRING
settings__payment_termsSTRING
settings__send_remindersBOOL
settings__size_idSTRING
settings__valid_untilSTRING
shipping_address1STRING
shipping_address2STRING
shipping_citySTRING
shipping_country_idSTRING
shipping_postal_codeSTRING
shipping_stateSTRING
size_idSTRING
stateSTRING
updated_atFLOAT64
user_idSTRING
vat_numberSTRING
websiteSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: clients__contacts

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
contact_keySTRING
created_atFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
emailSTRING
first_nameSTRING
idSTRING
is_lockedBOOL
is_primaryBOOL
last_loginFLOAT64
last_nameSTRING
linkSTRING
passwordSTRING
phoneSTRING
send_emailBOOL
updated_atFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: clients__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: clients__gateway_tokens

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
balanceFLOAT64
client_idSTRING
created_atFLOAT64
custom_surcharge1FLOAT64
custom_surcharge2FLOAT64
custom_surcharge3FLOAT64
custom_surcharge4FLOAT64
custom_surcharge_tax1BOOL
custom_surcharge_tax2BOOL
custom_surcharge_tax3BOOL
custom_surcharge_tax4BOOL
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
design_idSTRING
discountFLOAT64
due_dateSTRING
entity_typeSTRING
exchange_rateFLOAT64
footerSTRING
has_expensesBOOL
has_tasksBOOL
idSTRING
invoice_idSTRING
is_amount_discountBOOL
is_deletedBOOL
last_sent_dateSTRING
next_send_dateSTRING
numberSTRING
paid_to_dateFLOAT64
partialFLOAT64
partial_due_dateSTRING
po_numberSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
reminder1_sentSTRING
reminder2_sentSTRING
reminder3_sentSTRING
reminder_last_sentSTRING
status_idSTRING
subscription_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
termsSTRING
total_taxesFLOAT64
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: credits__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: credits__invitations

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
client_contact_idSTRING
created_atFLOAT64
email_errorSTRING
email_statusSTRING
idSTRING
keySTRING
linkSTRING
message_idSTRING
opened_dateSTRING
sent_dateSTRING
updated_atFLOAT64
viewed_dateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: credits__line_items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
bank_idSTRING
calculate_tax_by_amountBOOL
category_idSTRING
client_idSTRING
created_atFLOAT64
currency_idSTRING
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
entity_typeSTRING
exchange_rateFLOAT64
expense_currency_idSTRING
foreign_amountFLOAT64
idSTRING
invoice_currency_idSTRING
invoice_documentsBOOL
invoice_idSTRING
is_deletedBOOL
numberSTRING
payment_dateSTRING
payment_type_idSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
recurring_expense_idSTRING
should_be_invoicedBOOL
tax_amount1FLOAT64
tax_amount2FLOAT64
tax_amount3FLOAT64
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
transaction_idSTRING
transaction_referenceSTRING
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: expenses__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
auto_bill_enabledBOOL
balanceFLOAT64
client_idSTRING
created_atFLOAT64
custom_surcharge1FLOAT64
custom_surcharge2FLOAT64
custom_surcharge3FLOAT64
custom_surcharge4FLOAT64
custom_surcharge_tax1BOOL
custom_surcharge_tax2BOOL
custom_surcharge_tax3BOOL
custom_surcharge_tax4BOOL
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
design_idSTRING
discountFLOAT64
due_dateSTRING
entity_typeSTRING
exchange_rateFLOAT64
footerSTRING
has_expensesBOOL
has_tasksBOOL
idSTRING
is_amount_discountBOOL
is_deletedBOOL
last_sent_dateSTRING
next_send_dateSTRING
numberSTRING
paid_to_dateFLOAT64
partialFLOAT64
partial_due_dateSTRING
po_numberSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
recurring_idSTRING
reminder1_sentSTRING
reminder2_sentSTRING
reminder3_sentSTRING
reminder_last_sentSTRING
status_idSTRING
subscription_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
termsSTRING
total_taxesFLOAT64
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: invoices__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: invoices__invitations

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
client_contact_idSTRING
created_atFLOAT64
email_errorSTRING
email_statusSTRING
idSTRING
keySTRING
linkSTRING
message_idSTRING
opened_dateSTRING
sent_dateSTRING
updated_atFLOAT64
viewed_dateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: invoices__line_items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
_idSTRING
costFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
discountFLOAT64
expense_idSTRING
gross_line_totalFLOAT64
is_amount_discountBOOL
line_totalFLOAT64
notesSTRING
product_costFLOAT64
product_keySTRING
quantityFLOAT64
sort_idSTRING
task_idSTRING
tax_amountFLOAT64
tax_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
type_idSTRING
unit_codeSTRING
_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.
amountFLOAT64
appliedFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
client_contact_idSTRING
client_idSTRING
company_gateway_idSTRING
created_atFLOAT64
currency_idSTRING
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
exchange_currency_idSTRING
exchange_rateFLOAT64
gateway_type_idSTRING
idSTRING
invitation_idSTRING
is_deletedBOOL
is_manualBOOL
numberSTRING
private_notesSTRING
project_idSTRING
refundedFLOAT64
status_idSTRING
transaction_idSTRING
transaction_referenceSTRING
type_idSTRING
updated_atFLOAT64
user_idSTRING
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: payments__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: payments__paymentables

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
archived_atFLOAT64
assigned_user_idSTRING
costFLOAT64
created_atFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
idSTRING
in_stock_quantityFLOAT64
is_deletedBOOL
max_quantityFLOAT64
notesSTRING
priceFLOAT64
product_imageSTRING
product_keySTRING
quantityFLOAT64
stock_notificationBOOL
stock_notification_thresholdFLOAT64
tax_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
updated_atFLOAT64
user_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: products__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
archived_atFLOAT64
assigned_user_idSTRING
budgeted_hoursFLOAT64
client_idSTRING
colorSTRING
created_atFLOAT64
current_hoursFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
due_dateSTRING
idSTRING
is_deletedBOOL
nameSTRING
numberSTRING
private_notesSTRING
public_notesSTRING
task_rateFLOAT64
updated_atFLOAT64
user_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: projects__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
balanceFLOAT64
client_idSTRING
created_atFLOAT64
currency_idSTRING
custom_surcharge1FLOAT64
custom_surcharge2FLOAT64
custom_surcharge3FLOAT64
custom_surcharge4FLOAT64
custom_surcharge_tax1BOOL
custom_surcharge_tax2BOOL
custom_surcharge_tax3BOOL
custom_surcharge_tax4BOOL
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
design_idSTRING
discountFLOAT64
due_dateSTRING
entity_typeSTRING
exchange_rateFLOAT64
expense_idSTRING
footerSTRING
has_expensesBOOL
has_tasksBOOL
idSTRING
is_amount_discountBOOL
is_deletedBOOL
last_sent_dateSTRING
next_send_dateSTRING
numberSTRING
paid_to_dateFLOAT64
partialFLOAT64
partial_due_dateSTRING
po_numberSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
reminder1_sentSTRING
reminder2_sentSTRING
reminder3_sentSTRING
reminder_last_sentSTRING
status_idSTRING
subscription_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
termsSTRING
total_taxesFLOAT64
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: purchase_orders__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: purchase_orders__invitations

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
created_atFLOAT64
email_errorSTRING
email_statusSTRING
idSTRING
keySTRING
linkSTRING
message_idSTRING
opened_dateSTRING
sent_dateSTRING
updated_atFLOAT64
vendor_contact_idSTRING
viewed_dateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: purchase_orders__line_items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
balanceFLOAT64
client_idSTRING
created_atFLOAT64
custom_surcharge1FLOAT64
custom_surcharge2FLOAT64
custom_surcharge3FLOAT64
custom_surcharge4FLOAT64
custom_surcharge_tax1BOOL
custom_surcharge_tax2BOOL
custom_surcharge_tax3BOOL
custom_surcharge_tax4BOOL
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
design_idSTRING
discountFLOAT64
due_dateSTRING
entity_typeSTRING
exchange_rateFLOAT64
footerSTRING
has_expensesBOOL
has_tasksBOOL
idSTRING
invoice_idSTRING
is_amount_discountBOOL
is_deletedBOOL
last_sent_dateSTRING
next_send_dateSTRING
numberSTRING
paid_to_dateFLOAT64
partialFLOAT64
partial_due_dateSTRING
po_numberSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
reminder1_sentSTRING
reminder2_sentSTRING
reminder3_sentSTRING
reminder_last_sentSTRING
status_idSTRING
subscription_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
termsSTRING
total_taxesFLOAT64
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: quotes__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: quotes__invitations

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
client_contact_idSTRING
created_atFLOAT64
email_errorSTRING
email_statusSTRING
idSTRING
keySTRING
linkSTRING
message_idSTRING
opened_dateSTRING
sent_dateSTRING
updated_atFLOAT64
viewed_dateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: quotes__line_items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
bank_idSTRING
calculate_tax_by_amountBOOL
category_idSTRING
client_idSTRING
created_atFLOAT64
currency_idSTRING
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
entity_typeSTRING
exchange_rateFLOAT64
foreign_amountFLOAT64
frequency_idSTRING
idSTRING
invoice_currency_idSTRING
invoice_documentsBOOL
invoice_idSTRING
is_deletedBOOL
last_sent_dateSTRING
next_send_dateSTRING
numberSTRING
payment_dateSTRING
payment_type_idSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
recurring_expense_currency_idSTRING
remaining_cyclesFLOAT64
should_be_invoicedBOOL
status_idSTRING
tax_amount1FLOAT64
tax_amount2FLOAT64
tax_amount3FLOAT64
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
transaction_idSTRING
transaction_referenceSTRING
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: recurring expenses__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: recurring expenses__recurring_dates

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
amountFLOAT64
archived_atFLOAT64
assigned_user_idSTRING
auto_billSTRING
auto_bill_enabledBOOL
balanceFLOAT64
client_idSTRING
created_atFLOAT64
custom_surcharge1FLOAT64
custom_surcharge2FLOAT64
custom_surcharge3FLOAT64
custom_surcharge4FLOAT64
custom_surcharge_tax1BOOL
custom_surcharge_tax2BOOL
custom_surcharge_tax3BOOL
custom_surcharge_tax4BOOL
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
design_idSTRING
discountFLOAT64
due_dateSTRING
due_date_daysSTRING
entity_typeSTRING
exchange_rateFLOAT64
footerSTRING
frequency_idSTRING
has_expensesBOOL
has_tasksBOOL
idSTRING
is_amount_discountBOOL
is_deletedBOOL
last_sent_dateSTRING
next_send_dateSTRING
next_send_datetimeSTRING
numberSTRING
paid_to_dateFLOAT64
partialFLOAT64
partial_due_dateSTRING
po_numberSTRING
private_notesSTRING
project_idSTRING
public_notesSTRING
remaining_cyclesFLOAT64
status_idSTRING
subscription_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
termsSTRING
total_taxesFLOAT64
updated_atFLOAT64
user_idSTRING
uses_inclusive_taxesBOOL
vendor_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: recurring invoices__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: recurring invoices__invitations

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
client_contact_idSTRING
created_atFLOAT64
email_errorSTRING
email_statusSTRING
idSTRING
keySTRING
linkSTRING
message_idSTRING
opened_dateSTRING
sent_dateSTRING
updated_atFLOAT64
viewed_dateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: recurring invoices__line_items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
_idSTRING
costFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
discountFLOAT64
expense_idSTRING
gross_line_totalFLOAT64
is_amount_discountBOOL
line_totalFLOAT64
notesSTRING
product_costFLOAT64
product_keySTRING
quantityFLOAT64
sort_idSTRING
task_idSTRING
tax_amountFLOAT64
tax_idSTRING
tax_name1STRING
tax_name2STRING
tax_name3STRING
tax_rate1FLOAT64
tax_rate2FLOAT64
tax_rate3FLOAT64
type_idSTRING
unit_codeSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: recurring invoices__recurring_dates

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
descriptionSTRING
archived_atFLOAT64
assigned_user_idSTRING
client_idSTRING
created_atFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
dateSTRING
durationFLOAT64
idSTRING
invoice_idSTRING
is_date_basedBOOL
is_deletedBOOL
is_runningBOOL
numberSTRING
project__archived_atFLOAT64
project__assigned_user_idSTRING
project__budgeted_hoursFLOAT64
project__client_idSTRING
project__colorSTRING
project__created_atFLOAT64
project__current_hoursFLOAT64
project__custom_value1STRING
project__custom_value2STRING
project__custom_value3STRING
project__custom_value4STRING
project__due_dateSTRING
project__idSTRING
project__is_deletedBOOL
project__nameSTRING
project__numberSTRING
project__private_notesSTRING
project__public_notesSTRING
project__task_rateFLOAT64
project__updated_atFLOAT64
project__user_idSTRING
project_idSTRING
rateFLOAT64
status_idSTRING
status_sort_orderFLOAT64
time_logSTRING
updated_atFLOAT64
user_idSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: tasks__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: tasks__project__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
address1STRING
address2STRING
archived_atFLOAT64
assigned_user_idSTRING
citySTRING
classificationSTRING
country_idSTRING
created_atFLOAT64
currency_idSTRING
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
display_nameSTRING
idSTRING
id_numberSTRING
is_deletedBOOL
is_tax_exemptBOOL
language_idSTRING
last_loginFLOAT64
nameSTRING
numberSTRING
phoneSTRING
postal_codeSTRING
private_notesSTRING
public_notesSTRING
routing_idSTRING
stateSTRING
updated_atFLOAT64
user_idSTRING
vat_numberSTRING
websiteSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: vendors__contacts

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
archived_atFLOAT64
created_atFLOAT64
custom_value1STRING
custom_value2STRING
custom_value3STRING
custom_value4STRING
emailSTRING
first_nameSTRING
idSTRING
is_primaryBOOL
last_loginFLOAT64
last_nameSTRING
linkSTRING
passwordSTRING
phoneSTRING
send_emailBOOL
updated_atFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: vendors__documents

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

How the Invoice Ninja sync works

After the first load, Kaivo keeps your BigQuery warehouse up to date for you. Where Invoice Ninja 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 Invoice Ninja?

It depends on how much history is in your Invoice Ninja 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 Invoice Ninja'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 Invoice Ninja, 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 Invoice Ninja 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 Invoice Ninja connector in Kaivo and all of its synced data is deleted with it.

Common use cases for Invoice Ninja data

Revenue reporting

Use invoices and payments to track billed and collected revenue over time.

Recurring billing

Use recurring invoices to monitor subscription revenue.

Project billing

Join projects and tasks with invoices to compare billed time against work.

Use Invoice Ninja data in your AI and BI tools

Once Invoice Ninja 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 Invoice Ninja 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 Invoice Ninja connector pricing and plan details.

Was this helpful?

Still need help? Share an idea