Automating your reconciliation process allows your team to focus on managing exceptions rather than manually matching transactions. A key step is separating sales and bank reconciliation (see Payout and charges). This means separating your processes into:
- Checking consistency between your sales report and the payment requests received by Adyen.
- Validating and booking funds received on your bank account and reported costs.
Successful implementations within ERP systems (e.g. SAP, MS Dynamics AX, etc.) use the following approach:
Step 1: Create a debit position in a GL clearing account
For each sale or payment:
Create a receivable position in a clearing account in your ERP or accounting system. Implement this based on the existing sales reports from your ecommerce or point-of-sale platform. Ensure you use a unique order reference to enable automated matching later.
You may have to perform one-to-many bookings, for example multiple partial captures.
- Import Adyen's daily Received Payments Report to validate the total takings for a given period, investigate any discrepancies with your sales report and import metadata on the payment interaction. This validation is recommended for standalone / non-integrated POS terminal operations to identify discrepancies as soon as possible.
Step 2: Clear the receivable positions on receipt of funds
Adyen provides a settlement detail report for each payout. The payout refers to payments from multiple sales days. We recommend you download these reports automatically and process them line-by-line as follows:
- Validate the Net Debit (NC) of the MerchantPayout line against your imported bank statement, using the unique TX…XT reference as a link:
- For each Settled and Refunded booking line (payment), credit against the open gross (sales) amount in your pending account and the Net Credit amount into a bank account using the unique order reference submitted for each payment.
- Book withheld costs (ie. Adyen commission, markup, interchange and scheme fees) into a separate cost ledger(s).
- Perform a foreign exchange (FX) re-valuation, if applicable.
Book any balance-level mutations (Fee, DepositCorrection, etc.) as well as additional payment-level booking types such as Chargebacks, PaidOut and PaymentCost items.
Add an explicit process to deal with unexpected journal types / booking lines.
Step 3: Manage Balance sheet, Profit and Loss and exceptions
- Use a transaction-level accounting approach so that all pending amounts can be recognized on your balance sheet and audited to the order level.
The approach outlined previously would produce the following bookings (for a single payment) and end balance
- Monitor your overall receivables/pending balance,
- Implement a report that allows retrieving open positions booked into the clearing account more than X days ago, and/or from a particular date. This allows you to monitor exceptions and identify any problems (e.g. all visa payments older than 10 days not yet cleared).
Match settlements to transactions
Depending on your implementation, you can store one or more keys per transaction.
For example, you can configure your implementation to store the merchant transaction identifier generated by your system, and then passed on to Adyen via the
reference or the
merchantReference fields. Alternatively, you can store the Adyen-generated
Adyen reports include both references, so you can easily tie the report line items back to the individual transactions in your system.
We recommend automating the matching process. The following basic guidelines can get you jump-started.
- Check your bank statements against the settlement records:
- Using the settlement detail report line items, update each transaction in your system with the appropriate status, as indicated in the report. For example: settled, refunded or chargeback.
- You can add a batch number field to your transaction table to look up which batch the transaction was paid out.
- You can store the settled amount, so you can keep track of the costs per transaction.
A fully automated system leaves no room for errors, and it contributes to making your bookkeeping system correct, as far as Adyen transactions are concerned.