Import guide

Import Stripe payments into monday.com on a schedule

Finance and customer-success boards usually want the same three things from Stripe: who is paying, how much, and whether the subscription is still live. Copying that by hand goes wrong at the first refund.

Boardfeed reads Stripe objects on a schedule and writes them into a board, keyed on the Stripe id, so a plan change updates the row instead of adding another one.

Doing it by hand, every time

  1. Export a report from the Stripe dashboard, or page through the API by hand.
  2. Convert amounts from cents so the numbers column is not off by a factor of 100.
  3. Work out which subscription changed since the last import.
  4. Repeat after every billing cycle.

The scheduled route

  1. Connect Stripe with a restricted API key. Read access to customers, subscriptions and payments is enough; Boardfeed never needs write access.
  2. Choose the object to import and map its fields to board columns.
  3. Key the upsert on the Stripe id (or the customer id for customer-level rows).
  4. Schedule the run — daily is typical, because invoices and dunning states change overnight.

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 a run is scheduled.

  • Amounts: Stripe returns the smallest currency unit as an integer (1000 = $10.00). Divide by 100 in the mapping and map to a numbers column, or keep the raw value and the currency in separate columns.
  • Timestamps: created and period fields are Unix seconds. They convert to a date column directly.
  • Status: subscription and payment statuses map to a status column. Stripe adds statuses over time, so unknown values should be allowed to create their own label rather than failing the row.
  • Nested objects: a payment’s customer is an expanded object or an id depending on how the API is called — request the expansion explicitly so the board gets the customer name, not a string like cus_123.
  • Pagination: Stripe pages with has_more and starting_after. Boardfeed follows the cursor until the last page.

Stripe import questions

Does Boardfeed need write access to my Stripe account?
No. A restricted key with read access to the objects you import is enough, and it is the recommended way to connect.
Will a refund update the original row?
If the row is keyed on the payment or invoice id, yes — the status and amount are re-imported and the item updates in place.
How much history is imported on the first run?
The first run imports what you point it at, which for payments is bounded by the date range you set. Later runs only change the rows that actually changed.

Other sources