Connectors

/

Stripe

/

Backfill Stripe invoices into Rillet
Write
Cross-Connector

Get missing Stripe invoices into Rillet without recording one twice

For finance teams who want invoices raised in Stripe recreated in Rillet with the right customer and products, by asking their AI assistant.

Try PopdockAI free
Get a live demo
Backfill Stripe invoices into Rillet
Which Stripe invoices from September are missing in Rillet? Backfill them as receivables.
9 Stripe invoices from September are not in Rillet, and 7 are ready to record. - Ready: 7 invoices for Contoso, Fabrikam and 3 other customers - Needs customer: INV-1042, no Rillet customer matches the email or name - Needs product: INV-1049, the line Premium support has no exact product match Shall I record the 7 invoices as receivables, or a subset?
Stripe
Sample figures. Your results come from your own account.
stripe-get-invoice
rillet-get-invoices
rillet-get-customer-emails
rillet-get-customers
stripe-get-invoice-item
stripe-get-product
rillet-get-products
rillet-add-invoice-ar-only
rillet-add-invoice-revenue-only

On this page

The problem

The problem

The prompt

Who it's for

How it works

Tools used

Connector

Stripe

Stripe
Run it on your own Stripe data.

Connect Stripe, pick your AI tool and paste the prompt.

Try PopdockAI free

The problem

Stripe invoices that never reached Rillet

Invoices raised in Stripe do not always reach Rillet, and recreating them by hand means matching the customer, mapping every line to a product and carrying service periods across. One loose match and you record an invoice twice or against the wrong customer.

Without PopdockAI

  • Compare Stripe and Rillet invoice lists
  • Match each customer by email or name
  • Map every line to a Rillet product
  • Retype service periods and risk duplicates

With PopdockAI

  • Stripe invoices already in Rillet are dropped by exact number
  • Customers and products are matched exactly, or listed as needing one
  • You preview each invoice with lines and service periods
  • You pick which to record, and each is read back

The prompt

Use this prompt

Copy it into any AI tool connected to PopdockAI. Swap the values in braces for your own.

Prompt
**Objective:** Find the Stripe invoices created from {from-date} to {to-date} (default today) that do not exist in Rillet, and after the user confirms, record each one in Rillet as an external invoice recorded as {record-as}.

{record-as} must be ar-only (Rillet tracks the receivable and revenue is recognised elsewhere) or revenue-only (Rillet recognises the revenue and the receivable stays in Stripe). If it is anything else, explain the two options and stop.

**Step 1: Find the gap**

Call `stripe-get-invoice` with `created-date.from` = {from-date} and, if given, `created-date.to` = {to-date}. Keep only invoices with status open or paid. Call `rillet-get-invoices` (it takes no filters) and drop every Stripe invoice whose number already equals a Rillet invoice-number. Only exact number matches count; never skip or create an invoice on a fuzzy match.

**Step 2: Resolve the Rillet customer**

Call `rillet-get-customer-emails` and match the Stripe customer-email to email, ignoring case. If there is no email match, call `rillet-get-customers` and match the Stripe customer-name to name exactly, ignoring case. If there is no match or more than one, do not record the invoice: list it under Needs a customer in Rillet. Do not create customers.

**Step 3: Build the lines**

Call `stripe-get-invoice-item` with `invoice-id` = the Stripe invoice-id. For each line, call `stripe-get-product` with its `product-id` to get the product name, then find the Rillet product with exactly that name in `rillet-get-products` (no filters). If any line has no Rillet product, list the invoice under Needs a product in Rillet and skip it. Rillet takes at most three lines: when there are more, combine lines that share a Rillet product by summing their amounts and quantities; if there are still more than three, skip the invoice and say why.

**Step 4: Preview and confirm**

Show one table row per invoice to be recorded: Stripe number, Rillet customer, invoice date, due date, and each line's Rillet product, quantity, total, currency and service period. Ask the user to confirm. Write nothing until they say yes; they may confirm a subset.

**Step 5: Record**

For each confirmed invoice, one call at a time, call `rillet-add-invoice-ar-only` when {record-as} is ar-only, or `rillet-add-invoice-revenue-only` when it is revenue-only, with:

* external-system = Stripe, external-id = the Stripe invoice-id, external-url = the Stripe hosted-invoice-url
* invoice-number = the Stripe number, invoice-date = the Stripe created-date, due-date = the Stripe due-date
* customer-id = the Rillet customer-id from Step 2
* for each line: product-id (Rillet), quantity, total, currency in upper case, description, and revenue-start / revenue-end from the Stripe period-start / period-end

If a call fails, stop, report the error and list what was and was not recorded.

**Step 6: Confirm**

Call `rillet-get-invoices` again and check each recorded invoice-number is now present. Report recorded, skipped (with the reason) and failed.

**Rules & Guidelines:**

* `stripe-get-invoice`, `stripe-get-invoice-item` and `stripe-get-product` are on the stripe server and are read-only. Every other tool named here is on the rillet server.
* The only tools that may write are `rillet-add-invoice-ar-only` or `rillet-add-invoice-revenue-only`, whichever {record-as} names, and only after the Step 4 confirmation.
* Do not call `rillet-add-invoice`, `rillet-update-invoice`, `rillet-add-customer`, `rillet-add-product` or `rillet-add-invoice-payment`. Payments are recorded by the apply-stripe-payments prompt.

**Validation:**

* If every Stripe invoice already exists in Rillet, say so and stop.
* Stripe may return amounts in the smallest currency unit. If an invoice's line amounts do not add up to its total but do when divided by 100, divide by 100, and say so in the preview.
* If a tool cannot be found, name the server it belongs to (rillet or stripe) and stop.

Who it's for

One answer, three teams that use it

Accounts receivable

Catch up on missing invoices

Find and record the Stripe invoices Rillet never received, with lines and periods intact.

Which Stripe invoices from October are missing in Rillet? Backfill them as receivables.

Revenue accountants

Keep service periods right

Service periods carry across, so revenue lands in the right months.

Backfill Stripe invoices from Q3 into Rillet as revenue, keeping the service periods.

Controllers

Record nothing twice

Exact matching only, and invoices without a clear customer or product are held back.

Show me the Stripe invoices from last month that would be backfilled to Rillet and any that need a customer or product.

How it works

What PopdockAI does when you ask

You give a date range and whether Rillet tracks the receivable or the revenue, and your AI assistant finds the missing Stripe invoices. Only the invoices you confirm are recorded.

01

Ask

You give a date range and whether Rillet tracks the receivable or the revenue.

Your AI tool

02

Compare

It drops Stripe invoices whose number already exists in Rillet.

stripe-get-invoice
rillet-get-invoices

03

Confirm

You preview each invoice with its lines and service periods and pick which to record.

No items found.

04

Record

It records each one as an external invoice and reads it back.

Your AI tool

What PopdockAI provides

The tools behind the answer

Ready made tools for Stripe and one secure connection to your AI tool. No code, no exports.

get-data

stripe-get-invoice

Returns invoices (number, customer, status, dates, totals, amount remaining) from Stripe.
get-data

rillet-get-invoices

Returns customer invoices (number, customer, dates, status, totals, amount due) from Rillet.
get-data

rillet-get-customer-emails

Returns customer email addresses with their type and the customer's location from Rillet.
get-data

rillet-get-customers

Returns customers (name, address, payment terms, invoicing settings) from Rillet.
get-data

stripe-get-invoice-item

Returns invoice line items (description, amount, quantity, product, service period) from Stripe.
get-data

stripe-get-product

Returns products (name, description, active status) from Stripe.
get-data

rillet-get-products

Returns products (name, status, pricing, revenue account) from Rillet.
run-action

rillet-add-invoice-ar-only

Records an invoice raised in another system for the receivable only, leaving revenue recognition to that system. Up to three lines, each with its own total.
run-action

rillet-add-invoice-revenue-only

Records an invoice raised in another system for revenue recognition only, leaving the receivable to that system. Up to three lines, each with its own total.
Read only.Nothing in Stripe Changes

This report is built from Get data tools only. PopdockAI applies the row, field and parameter rules your admin sets, and every query is written to the audit trail.

How Popdock AI secures your data

The outcome

Missing invoices in Rillet, none recorded twice

Try PopdockAI free
Get a live demo

Related use cases

More ways to put this data to work

All Ramp use cases

One prompt template with infinite possibilities.

‍

Your AI assistant adapts its approach, tone, and capabilities to match each unique context while you maintain a single, manageable workflow.

Join forward-thinking companies that are transforming their operations with intelligent, secure AI automation.

Try PopdockAI Free
See Documentation