Handling strip and starling feeds when Stripe Payment has multiple transactions with di

HI, I am new to the system and trying to set things up so that minimal manula intervention is required. Almost all of our receipts will be online payments collected via Stripe, and of course will will have many supplier payments. We use Starling bank, so first thought is to set up the bank feed and progressively tag items so that over time everything coming through the vank is automatically posted. So far so good, but Our sales are processed by Stripe and there will be a periodic payment to us by Stripe, and I understand that I can tag it and have it deposited automatically into a merchant account, and I could then manipulate this to add on thier transaction charge etc. But where I get stuck is that we are selling on a world wide basis, and as such a single Stripe payment will contain transactions from different countries with different VAT rates … so I need to record some of the transactiona at UK vat rate to report via MTD, and some as zero rate to avoid MTD (I plan to run a seperate job with the Stripe API to generate the ISS return!). So the question is how do I go about allocating different vat rates to the component transactions, and can that be done automatically vi tagging, or would it be better to create a CSV file out of stripe that has individual transactions that can be applied, and tagged individually … but if I do this how do I avoid duplicating the STRIPE payment coming through in the bank feed … do I just direct it to a merchant account then ignore it? … or will ignoring it result in odd results in my accounts?

Hello @hoodji

It would depend on where the sale originates

Stripe can handle invoice creation, but you may create the invoice prior to that (e.g. in an online sales environment like Shopify)

“Our sales are processed by Stripe”

If you are doing you own Stripe feed, I would get that to handle the income and if needed generate the invoices in QuickFile either manually or via CSV (you could even use the QuickFile API if you writing your own Stripe feed). I wouldn’t bother with the Stripe automatic feed

So just to clarify does your Stripe create all the invoices for customers (foreign and domestic including vat and rates, if so you could then enter, either manually, via CSV or even via the API the invoices into a QuickFile merchant account and then auto tag the transactions from the Starling Bank feed ,
Don’t set up stripe auto feed

Really, if your invoicing is done external to QuickFile, you could just do the final figures.


Thanks for this, I have been thinking about is as I try to get the account set up correctly.

We sell access to products on our site, no invoices are produced, (but a customer Receipt with the applicable VAT) is, and I belive Stripe holds all the individual data and I can create a csv file as and when reured with all the transaction data and the fee info.

I can write the code for both stripe and quickfile api’s … so just need to be crystal clear on what the process is … feels like:

The stripe bulk amount coming in the bank feed should be tagged and automatically posted to a merchant account.

The Stripe individual tranasactions and fees would come in via csv or api and be posted into the current account, tagged to get the vat correct as either standrard for uk ones or 0 for elsewhere

Then the bit that eludes me is how to mark down the merchant account bulk number by the amounts just looged in the current account o get it back to zero.

Phew! My cocern is that My logic above is not exactly like one of yours … so a wee bit of clarificationwould be good



Is the customer receipt a valid VAT invoice per the rules (serially numbered, shows your VAT number, your name and address, the customer’s name and address, etc.)? Or have you previously had to produce a separate invoice if a VAT-registered customer asks for one? If all your VAT invoicing happens in your website then you can probably get away with mapping these sales to QuickFile in bulk.

You say you’re happy to code to the APIs so what you are aiming for is more or less this:

  • each day, take the CSV output from your website software or Stripe that tells you the total net and VAT for that day’s sales
  • call the QuickFile Invoice_Create API to create one “invoice” in QuickFile with those net and VAT values (you can override the VAT to be less than 20% of the net if different sales are at different rates)
  • call the Payment_Create API to mark the invoice as “paid in full” into a Stripe holding bank account

(this is essentially what I used to do in my shop - I’d take the Z reading from the EPOS and create via API a single invoice for the day with the net and VAT totals, and in my case two payments for the split between cash and card sales)

When you receive payouts from Stripe into your current account those are tagged as transfers from the Stripe holding account. The transfer is slightly less than the total of payments received, because Stripe have already deducted their fees.

Once a month you will receive an invoice from Stripe for the fees they’ve charged you that month, create a “purchase” based on this invoice and mark that as paid in full from the same Stripe holding account. This should cancel out the fee amounts that have been gradually accumulating over the month as the difference between the sales total and the payout total.

This approach does not use the Stripe account feed at all - for the Stripe holding account the “money in” payments are created by the Payment_Create API calls, and the “money out” from the current account side when tagging the transfers and from paying the fee purchase at the end of the month.


Thanks, will work this when I have real life data, site has not gone live yet …


This topic was automatically closed after 7 days. New replies are no longer allowed.