M Make

How to integrate Airtable and Stripe on Make

intermediate 8 min read Updated 2026-03-13
Quick Answer

Create a Make scenario with Stripe Watch Events trigger to capture charges or invoices, then map data to Airtable Create Record action. Use filters and routers for deduplication and data formatting. Test thoroughly with Stripe test mode before going live.

Prerequisites

  • Active Make.com account (free tier for testing)
  • Stripe account with API keys and test product
  • Airtable base with table matching Stripe fields (e.g. Customer ID, Amount, Date)
  • Stripe webhook endpoint from Make scenario
  • Basic understanding of webhooks and data mapping

Step-by-Step Instructions

1

Create New Scenario

Log into your Make.com dashboard and navigate to the Scenarios tab. Click Create a new scenario to start building your Airtable-Stripe integration workflow[3][6].
2

Add Stripe Trigger Module

Search for and add the Stripe app module. Select Watch Events or Watch Charges as the trigger. Connect your Stripe account using API key from Stripe dashboard (Account > API keys > Create restricted key with read scopes for charges)[3][6].
Use test mode API keys initially to avoid live charges
3

Configure Webhook

Make will generate a webhook URL. Copy this URL and add it as an endpoint in your Stripe dashboard under Developers > Webhooks > Add endpoint. Select events like charge.succeeded, invoice.paid, or payment_intent.succeeded[3][5].
Test webhook delivery in Stripe dashboard to confirm events reach Make
4

Add Airtable Action Module

Add the Airtable app module after the trigger. Choose Create a Record or Update a Record. Connect via Airtable Personal Access Token from airtable.com/account. Select your Base ID and Table[5][6].
5

Map Stripe Data to Airtable Fields

Map key Stripe fields to Airtable columns: amount (divide by 100 for currency), customer ID, created (Unix timestamp to Airtable Date/Number), description, status. Use Make functions like {{amount/100}} for formatting[3][4].
Create lookup fields in Airtable for customer/product matching
6

Add Router and Filter for Logic

Insert a Router module to handle multiple paths. Add Filter conditions like status = paid to process only successful payments and prevent duplicates. Use Tools > Set Variable for data transformation[3].
Filter by <code>charge.succeeded</code> event type to avoid test data
7

Handle Deduplication

Before creating records, add an Airtable > Search Records module to check if customer ID exists. Use a filter or router to update existing record if found, or create new if not[3].
Store Stripe <code>charge_id</code> in Airtable to prevent duplicates
8

Test the Scenario

Click Run once in Make. Trigger a test payment in Stripe dashboard (Payments > Create payment). Verify data appears correctly in Airtable table. Check execution logs for errors[3][6].
Use Stripe CLI for local webhook testing during development
9

Activate and Monitor

Once tested, toggle the scenario to ON. Monitor the History tab for executions. Set up error notifications via Make's email module if needed[6].
Start with low-volume testing before full production use
10

Advanced: Add Error Handling

Add an Iterator or Error Handler route for failed webhooks. Log errors to a separate Airtable table with {{error.message}} for debugging[3].

Common Issues & Troubleshooting

Webhook not triggering ('No webhook received' error)

Verify webhook URL is correctly added in Stripe dashboard with proper event selection (e.g. charge.succeeded). Test endpoint delivery in Stripe and check Make connection permissions[3][6].

Data type mismatches (e.g. Unix timestamps not formatting)

Use Make functions like <code>formatDate(created; "YYYY-MM-DD")</code> or map to Airtable Number field then convert with formula. Ensure amount/100 for cents to dollars[3].

Duplicate records created

Implement Search Records before Create, filter by unique Stripe IDs (customer_id, charge_id). Use routers with conditions for update vs create paths[3].

Connection authentication fails

Regenerate Stripe restricted API key with correct scopes (read charges/events). For Airtable, verify Personal Access Token has base read/write access[6].

Scenario runs but no Airtable records appear

Check filter conditions and field mappings in execution history. Ensure Base ID and Table name match exactly (case-sensitive). Test without filters first[5].

Special Offer

Affiliate link. We may earn a commission at no extra cost to you.