1. Support Centre
  2. Bookkeeping Services

Integrating feeds for Stripe, PayPal, Airwallex, Pin Payments, and Wise into Xero

Depending on your business, you may be raising invoices in Xero that are paid via Stripe, processing payments and generating invoices through your app or website, or a combination of both. We'll cover best practice in more detail.

To integrate these types of accounts it is important to create an additional bank feed in Xero. This allows you to see individual payment transactions, net payouts from the payment processor, and the fee charged by the payment processor. This helps to accurately record top-line revenue and separately record the payment processor fee.

Multi-currency situations
It is also necessary to set up separate bank feeds for different currencies, such as "Airwallex - AUD" and "Airwallex - USD", and to accurately record GST for Australian transactions. It is important to correctly set up the payment processor and ensure that the app or website is configured correctly in order to accurately track payment data.


Some companies gradually incorporate local currencies into their apps and websites as they expand into those various jurisdictions; the most popular ones are frequently AUD, CAD, EUR, GBP, HKD, NZD, SGD, and USD. If this is your situation, you'll also need the Xero multi-currency level subscription and each currency setup within Xero. 

GST
In Australia, it is standard to charge GST on Australian sales. Customers may use a single top-line price with a disclaimer stating that GST is either included or will be added. It can be challenging to determine which payments are from Australian customers when using a payment processor.

To accurately record GST for Australian transactions and include them in the Business Activity Statement, it is important to correctly set up the payment processor and ensure that the app or website is configured correctly. This can help to identify transactions that are eligible for GST. Keep in mind that GST applies regardless of currency and may need to be deducted in USD but ultimately paid in AUD to the ATO.

Invoices in Xero

We encounter a mix of accounting situations from clients including:

  • Creating invoices for customers in Xero that can be paid for with Stripe, etc.;
  • accepting payments through your app or website and immediately (within your app or website) generating and sending invoices to your customers;
  • or doing both at once (for example, a mix of retail customers using your app or website for self-service and corporate customers needing an invoice) with your payment processor handling both direct payments and payments for Xero invoices.

When a payment is made in relation to an earlier Xero invoice, it is typically quite simple to identify it in the feed using the invoice reference so that you can match it up as part of your bookkeeping.

The (many) transactions come into Xero when there are higher volumes of transactions handled directly through your app or website, usually with a payment or invoice reference issued by your app or website. Normally, these are directly credited to a Sales account without a corresponding Xero invoice. Your app or website will contain this invoice or payment reference as appropriate.

Unless you are automatically producing the matching invoices from your app or website and importing them into Xero using Xero's API, you do not necessarily need to have an invoice within Xero, and we advise against this for bigger quantities.


We have a tonne of expertise dealing with various situations.

Ideally, you can get to a workable solution by combining the many feeds and rules in Xero. Sometimes, though, what you're attempting requires something additional. Several instances of this are:

  • When your payment processor does not yet offer a direct feed
  • When you are selling a variety of goods and services, you should allocate these to several sales accounts so you may view your various revenue sources on your profit and loss; and
  • In cases when the feed doesn't give Xero enough details to determine whether GST is applicable.

In these situations, we must "get back to the source." i.e., in order to help us find the required information, we normally need to go back and login to the underlying payment processor, for instance:

  • to identify the product or service description on payment transactions so that we can apply it to a sales account, or
  • to identify the nation from which an end-credit user's card payment originated (we are unable to read other credit card information). then,
  • to assist us in determining the GST status

In other words, we can access the information for recording purposes as long as it is present anywhere in the payment record. We will typically create a spreadsheet-based "pre-processor" in these scenarios to aid both deal with the volume of transactions and for integrity reasons, whereby we would:

To manually import the finished, coded spreadsheet into Xero as a manual bank feed, download the payment records into our spreadsheet, "parse" the transaction record for the information we need, and then manually code the transactions (for example, different accounts based on product/service, or with GST for Australian transactions).


Note that any upfront pre-processor development and ongoing weekly or monthly processing to import these transactions constitute additional work beyond our usual bookkeeping service, and as a result, separate fees will be charged.