In this guide, you'll learn to import Stripe invoices to Airtable with no-code. We'll use the Data Fetcher Airtable extension to import the id, amount due, customer email & due date for each invoice in our Stripe account. We'll also import the actual invoice PDF as an Airtable attachment. Finally, we'll set this to run automatically on a schedule.
Install Data Fetcher from the Airtable marketplace. After the extension launches, sign up for a free Data Fetcher account by entering a password and clicking 'Sign up for free'.
On the home screen of the Data Fetcher extension, click 'Create your first request'. Requests in Data Fetcher are how you import data to or send data from your Airtable base.
On the create request screen in Data Fetcher, for Application, select 'Stripe'.
Click 'New Stripe connection'. You will be taken to a new tab/window where you need to authorize Data Fetcher to read from your Stripe account. Select the Stripe account you want to import Stripe data from.
For Endpoint, select 'List all invoices'.
Enter a Name for your request, e.g. 'Import Stripe Invoices'. Then click 'Save & Continue'.
If you want to limit the invoices that are imported to Airtable to only those with a particular collection method, set Collection method to either 'Charge automatically' or 'Send invoice'.
If you want to limit the invoices imported to only those created within a certain time period, you can set the Created option.
Click 'Run'.
The request will run and the Response field mapping modal will open. This is where you set how the fields from Stripe should map to fields in the output table. For each Stripe invoice field, you can either import or filter it. For an imported field, you can set whether to map them to an existing field or create a new field.
Make sure you import the 'Id' field, as we will use this to ensure the invoice records we have in Airtable are kept in sync with any changes in Stripe. Also import 'Amount due', 'Customer email' & 'Due date'.
Search for the 'Invoice pdf' field and change its type to 'Attachment'. This means Data Fetcher will import the actual file as an attachment from the Stripe URL. Import any other field you want and click 'Save & Run'.
Data Fetcher will create any fields that need to be created in the output table, then run the request and import the invoices from Stripe to Airtable. Stripe has a limit of 100 invoices per run, so Data Fetcher may need multiple runs in order to import all your invoices.
Finally, we want to ensure Data Fetcher can match up invoices in Stripe with records in Airtable, even if we move those records around. To do this, click 'Advanced settings' to open the advanced output settings. Then for Update Based on Field, select 'Id'. Then click 'Save'
Note: Stripe uses Unix timestamp fields for date fields (e.g. 'Due date') that have numeric values. You can convert them to date format by adding another field with type 'Formula' and this formula:
DATEADD('1/1/1970',{Due date},'seconds')
At the moment, we have to manually run the request to import the Stripe invoices. We can use Data Fetcher's scheduled requests feature to automatically import them every 15 minutes/ hour/ day etc.
In Data Fetcher, scroll to Schedule and click 'Upgrade'.
A new tab will open where you can select a plan and enter your payment details to upgrade.
Return to the Data Fetcher extension and click 'I've done this'.
Under Schedule click '+ Authorize'.
On the next window, you can authorize which Airtable bases you want Data Fetcher to be able to access.
It's recommended that you select 'All current and future bases in all current and future workspaces'. By doing this, you should avoid any issues with unauthorized bases in the future.
Click 'Grant access'.
Back in Data Fetcher, Schedule this request will now be toggled on.
Select how often you want the request to run, e.g. 'Every 15 mins'. Click 'Save' The request will now run on the schedule and import the Stripe invoices automatically.
Feb 24, 2022
•Andy Cloke
•StripeFeb 15, 2021
•Andy Cloke
•StripeFinance