Import guide
Import Stripe customers, charges and invoices into monday.com
Finance and customer-success boards want the same things out of Stripe: who is paying, how much, and what is outstanding. Copying that by hand goes wrong at the first refund.
Boardfeed reads one Stripe object on a schedule and writes it into a board, keyed on the Stripe id, so a change updates the row instead of adding another. Three objects are available: customers, charges and invoices.
Last checked : the three objects the connector reads, the 100-object page and the 5,000-page stop, how amounts and timestamps arrive, and the flattening rule, read off the connector
Doing it by hand, every time
- Export a report from the Stripe dashboard, or page through the API by hand.
- Work out which records changed since the last export.
- Paste them in, and reconcile the ones that were already there.
- Repeat after every billing cycle.
The scheduled route
- Connect Stripe with a restricted key. Read permission on the objects you import is all it needs — Boardfeed never writes to Stripe — and a restricted key is what Stripe itself recommends for anything live (docs.stripe.com/keys, read 2026-09-11).
- Choose the object: customers, charges or invoices. One import reads one of them; a board that wants two is two imports.
- Map the fields to board columns and key the upsert on the Stripe id.
- Pick the schedule. Daily is the usual choice, because invoices and dunning states change overnight.
- Every run walks the whole list, 100 objects at a time, following Stripe’s cursor until it reports no more.
Field mapping notes for Stripe
This is the part that decides whether an import works on the first try. Everything below is handled in the mapping step, before the first run.
- Amounts arrive in the smallest currency unit, exactly as Stripe sends them: 1000 is £10.00 and imports as 1000. The mapping has no divide-by-100, so either keep the column in minor units and say so in its title, or convert it on the board.
- Timestamps are converted for you. Stripe’s Unix seconds — created, the period fields, due dates — arrive as ISO-8601 strings and map straight to a date column.
- Nested objects are flattened one level, so address.city and invoice_settings.default_payment_method become their own fields. Anything deeper, and every array, arrives as a JSON string: map those to long text, or not at all.
- Related records arrive as ids, not names — a charge carries a customer id. The connector requests no expansions, so import customers as their own board or accept the id in a text column.
- Status maps to a status column. Stripe adds statuses over time, so let the mapping create labels it has not seen rather than failing a row on the first new one.
Stripe import questions
Which Stripe objects can Boardfeed import?
Customers, charges and invoices. Stripe has no endpoint that lists what a key may read, so these three are fixed rather than discovered. Subscriptions are not among them today — for those, point the REST API source at the subscriptions endpoint with the same key and follow the REST API guide for the cursor settings.
Does Boardfeed need write access to my Stripe account?
No. A restricted key with read access to the object you are importing is enough, and it is the recommended way to connect. The connector issues GETs and nothing else.
How much history is imported on the first run?
As much as one run reads. The connector has no date-range setting, so it walks the whole list for the object you chose, 100 objects a page — and it stops at 5,000 pages rather than importing part of a longer list. An account holding more than 500,000 of one object therefore needs the REST API source with a date filter of its own. The first run against a long-lived account can be large: check the row count against your monthly allowance before you schedule it, and start on a test-mode key if you want to see the shape first.