kvitta
Business Central guide

Give every payment provider its own bank account in Business Central.

Most online shops on Business Central post payouts straight to the bank, park provider money on a G/L account, or keep it on a customer. Each loses something: the fees, the currency, or the trail. This is the setup Wakakuu runs six payment sources on, and why it holds up.

The question the ledger has to answer

At any moment: how much does each payment provider owe us, in its own currency? Adyen, Klarna, Avarda and the rest hold your money for days between the sale and the payout. If that balance is not a thing in the ledger, nobody can say whether a payout is missing, short, or simply not due yet.

Three common setups

Where the usual setups break

The payout straight to the bank

The payout is booked as one receipt. Fees and refunds disappear into the net amount, invoices are closed in bulk or not at all, and what the provider still holds is invisible.

No answer to what is owed, and no trail from payout to order.

A G/L clearing account

Works while everything is in one currency. A G/L account keeps its balance in your local currency only, so euros at Adyen become kronor at whatever rate each line was posted at.

Exchange differences and a missing payout look the same. The balance drifts and nobody can say why.

The provider as a customer

Money held by the provider sits among your customer receivables. Payouts and fee lines fill the customer ledger, and applying the right entry gets harder every month.

Aged receivables mix shoppers with payment providers, and both get harder to read.
The setup

One bank account per provider and currency

Business Central already has the right object for money someone else holds for you: a bank account. Treat each provider as one.

  1. 1

    Create a bank account for each provider and currency

    ADYEN_EUR, ADYEN_SEK, AVARDA_SEK, VIPPS_NOK. Set the currency code on every account that is not in your local currency, and give them a posting group that points to one G/L account for money held by payment providers.

  2. 2

    Keep each order open on the customer

    The order is an invoice, the return a credit memo. Both stay open until the provider's settlement says they are paid.

  3. 3

    Post the settlement against the provider's bank account

    Payments are applied to their invoices, refunds to their credit memos, and fees go to your fee account. Every line balances against the provider's bank account, which now shows exactly what the provider owes you.

  4. 4

    Post the payout as a transfer

    When the money lands, it moves from the provider's bank account to your company bank account. Anything the provider keeps back, a reserve or a negative balance, simply stays on the provider's bank account.

  5. 5

    Reconcile it like any bank account

    The provider's bank account should agree with what the provider says it holds. Business Central's bank reconciliation works on it the same way it works on your real bank.

Worked example

One Adyen day, in euros

The same payout as on our home page: 412 payments, 9 refunds and the day's fees, paid out as one sum.

LineDebitCreditEUROn ADYEN_EUR
412 payments, applied to their invoicesADYEN_EURCustomers191 256,40191 256,40
9 refunds, applied to their credit memosCustomersADYEN_EUR1 027,40190 229,00
The day's feesPayment feesADYEN_EUR6 024,00184 205,00
The payout landsBank EURADYEN_EUR184 205,000,00

Before the payout, 184 205,00 sits on ADYEN_EUR: what Adyen owes you, in euros, with every order behind it closed. After it, the bank account is back to zero. If it is not, something is missing, and you can see exactly how much.

Currency

Where this pays off: the exchange rate

A bank account with a currency code keeps its balance in that currency. 184 205,00 euros stays 184 205,00 euros, whatever the rate does in between.

  • Business Central revalues the bank account at period end with its exchange rate adjustment, so the balance sheet shows it at today's rate.
  • When the money moves to a bank account in another currency, the realised difference is posted as exchange, apart from everything else.
  • So an exchange difference and a missing payout never hide behind each other, which is exactly what happens on a G/L clearing account.
  • Each provider appears on the balance sheet line by line, in its own currency.
In Kvitta

Kvitta writes this journal for you

Payment lines applied to invoices, refunds to credit memos, fees on their own lines, the day balanced against the provider's bank account in its currency, and the payout as its own pair to your bank.

Payout account and held-back accountSet per provider, as a bank account or a G/L account, with a different account per currency where you need one.
Standard Business CentralBank accounts and posting groups are standard setup. Nothing custom holds the structure together.
Already in daily useWakakuu runs Adyen, Avarda, Vipps, Amex and Swish this way, in two currencies. Read their story.

Questions

Do we need one bank account per currency?

Yes, one for each currency a provider settles in. A provider that pays out in euros and kronor gets two bank accounts in Business Central, each with its own currency code.

What about marketplaces?

The same. A marketplace that collects from shoppers and pays you later is a payment provider for this purpose, so it gets its own bank account per currency.

Does it need a partner or an extension?

No. Creating bank accounts and a posting group is standard setup a finance user can do.

We use a clearing G/L account today. Can we switch?

Yes. At the start of a period, move what is left on the clearing G/L account to the new provider bank accounts with one journal, then post new settlements against them.