---
title: "Canada Code of Conduct - Merchant statements"
description: "Create a merchant report that shows the aggregate fees and effective merchant discount rate of each payment method."
url: "https://docs.adyen.com/reporting/merchant-statements-ccc"
source_url: "https://docs.adyen.com/reporting/merchant-statements-ccc.md"
canonical: "https://docs.adyen.com/reporting/merchant-statements-ccc"
last_modified: "2026-06-01T15:33:16+02:00"
language: "en"
---

# Canada Code of Conduct - Merchant statements

Create a merchant report that shows the aggregate fees and effective merchant discount rate of each payment method.

[View source](/reporting/merchant-statements-ccc.md)

As a registered Payment Service Provider in Canada, Adyen must comply with the requirements of the [Code of Conduct for the Payment Card Industry in Canada](https://www.canada.ca/en/financial-consumer-agency/services/industry/laws-regulations/credit-debit-code-conduct.html), referred to as the *Canada Code of Conduct*. The Canada Code of Conduct aims to improve transparency around the total fees (interchange fee, scheme fee, acquirer fees) paid per Payment Card Network Operator (PCNO).

This guide helps you assess the total cost of payment for each payment method. The instructions show how to compute your effective merchant discount rates per PCNO. The *effective merchant discount rate* is the total cost, divided by the total sales volume, for each payment method. To determine these costs, you use the Payment Accounting Report (PAR) or the Interactive Payment Accounting Report (IPAR).

## Requirements

Before you begin, take into account the following requirements, limitations, and preparations.

| Requirement                                                         | Description                                                                                                                                                                                                                                                                                |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Integration type**                                                | Any integration with Adyen.                                                                                                                                                                                                                                                                |
| **[API credential roles](/issuing/manage-access/webservice-roles)** | Make sure that you have the following webservice role:- **Report service user**                                                                                                                                                                                                            |
| **[Customer Area roles](/account/user-roles)**                      | Make sure that you have one of the following roles to configure report columns:- **Merchant admin**
- **Merchant report**
- **Merchant financial**
- **Merchant POS Report role**Make sure that you have one of the following roles to generate and download reports:- **Merchant report** |
| **[Webhooks](/development-resources/webhooks)**                     | If you want to create your report from an automatically generated Payment Accounting Report instead of the Interactive Payment Accounting Report, subscribe to the following webhook:- **Standard Webhook**                                                                                |

## How it works

To generate a Merchant Statement Report to determine the total cost of payment:

1. Configure columns for one of the following reports:

   * [Interactive Payment Account Report (IPAR)](/reporting/invoice-reconciliation/payment-accounting-report/#interactive-payment-accounting-report)
   * [Payment Accounting Report (PAR)](/reporting/invoice-reconciliation/payment-accounting-report/)

2. Generate and download an IPAR or PAR with the new column structure.

3. Create a new **Main Amount (SC)** column whose value is the gross amount of the transaction.

4. (Optional) If you transact in multiple currencies, download an **Exchange rate** report.

5. (Optional) If you transact in multiple currencies, convert all Settlement Currency ***Column Name* (SC)** and **Processing Fee (FC)** column values to new Base Currency ***Column Name* (BC)** column values.

6. Create a pivot table to aggregate all costs per payment's **PSP Reference**.

7. Run formulas to determine different aggregate transaction costs over your report's time period to determine total transaction costs by payment method.

## 1. Configure report columns

To make this report easier to work with, we suggest that you configure the columns of the Payment Accounting Report to contain only the columns needed to calculate your costs.

1. In your [Customer Area](https://ca-test.adyen.com/), select **Settings** > **Report columns**.

2. Find the Payment Accounting Report you want to use as your base for your payment cost report and select **Configure**.

   * [Payment accounting](/reporting/invoice-reconciliation/payment-accounting-report/)
   * [Interactive payment accounting](/reporting/invoice-reconciliation/payment-accounting-report/#interactive-payment-accounting-report)

3. Select the following columns for your report, and select **Save configuration**:

   | Column                  | Type                           | Description                                                                                                                                                                                                                                                  |
   | ----------------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
   | Psp Reference           | Unicode Text (16-character)    | Adyen's 16-character unique reference associated with the transaction/the request. This value is globally unique; quote it when communicating with us about this request.                                                                                    |
   | Payment Method          | Unicode Text (50-character)    | The payment method used for the transaction. For example: *visa*, *mc*, *amex*.                                                                                                                                                                              |
   | Booking Date            | Date field + Time field        | The timestamp indicating when the event was entered into Adyen's accounting system. The format is `YYYY-MM-DD HH:MM:SS`. For example: *2021-07-26 19:58:55*.                                                                                                 |
   | Record Type             | Unicode Text (50-character)    | The accounting record type. For a list of record types, see [Record types](#recordtypes).                                                                                                                                                                    |
   | Settlement Currency     | Alpha Text (3-character limit) | The three-character [ISO code](https://en.wikipedia.org/wiki/ISO_4217) for the currency that was used when settling the payment.                                                                                                                             |
   | Payable (SC)            | Fixed point number             | The amount (in Settlement Currency) debited or credited on the Payable accounting register. This will be paid out to your bank account.                                                                                                                      |
   | Commission (SC)         | Fixed point number             | The commission fee that was withheld by the acquirer (in Settlement Currency) If the acquirer provides the transaction information at the interchange level, Adyen will split the commission into the Markup, Scheme Fees and Interchange registers instead. |
   | Markup (SC)             | Fixed point number             | The fee charged by the acquiring bank (in Settlement Currency).                                                                                                                                                                                              |
   | Scheme Fees (SC)        | Fixed point number             | The fee charged by, for example, Visa or Mastercard (in Settlement Currency).                                                                                                                                                                                |
   | Interchange (SC)        | Fixed point number             | The fee charged by the issuing bank (in Settlement Currency).                                                                                                                                                                                                |
   | Processing Fee Currency | Alpha Text (3-character limit) | The three-character [ISO code](https://en.wikipedia.org/wiki/ISO_4217) for the currency in which the processing (or gateway) fee is charged.                                                                                                                 |
   | Processing Fee (FC)     | Fixed point number             | The amount (in Processing Fee Currency) charged on the Processing Fee accounting register.                                                                                                                                                                   |

## 2. Download IPAR or PAR

Now that you have a custom column configuration for the Payment Accounting Report, you can download a report for the dates you want to calculate your payment costs.

1. In your [Customer Area](https://ca-test.adyen.com/), select the **Merchant** level.
2. Select **Reports** > **Finance**.
3. Locate the report you want to generate, and select **Generate**.
4. Download the [Payment Accounting Report](/reporting/invoice-reconciliation/payment-accounting-report/) or generate an [Interactive Payment Account Report](/reporting/invoice-reconciliation/payment-accounting-report/#interactive-payment-accounting-report) for the period of time you want to create your Merchant Statement Report.

## 3. Create new Main Amount column

This new column represents the gross amount of the transaction in the settlement currency. The column is created by aggregating the net settled amount and the transaction costs.

1. Create a new column, **Main Amount (SC)**, using the following formula from existing columns:\
   **Main Amount (SC)** = **Payable (SC)** + **Commission (SC)** + **Scheme Fees (SC)** + **Interchange (SC)** + **Markup (SC)**

## 4. (Optional) Download an **Exchange rate** report

If you transact with multiple currencies, download the **Exchange rate** report for the respective days you want to calculate total fees. These dates should match the **Booking Date** entries in your IPAR or PAR report.

To generate an **Exchange rate** report:

1. In your [Customer Area](https://ca-test.adyen.com/), select **Reports** > **Finance**.
2. Locate the **Exchange rate** report, and select **Generate**.\
   You have the option to generate the **Exchange rate** report automatically (daily), or manually, by selecting a date.

## 5. (Optional) Convert Settlement Currency to Base Currency

For each **Booking Date** in the Payment Accounting Report, use the **Exchange rate** report from that same date to convert the following values for each Settlement Currency ***Column Name* (SC)** or **Processing Fee Currency (FC)** column to a new Base Currency Column Name (BC) column.

* **Commission (SC)** > **Commission (BC)**
* **Scheme Fees (SC)** > **Scheme Fees (BC)**
* **Interchange (SC)** > **Interchange (BC)**
* **Markup (SC)** > **Markup (BC)**
* **Processing Fee (FC)** > **Processing Fee (BC)**
* **Main Amount (SC)** > **Main Amount (BC)**

To do this

1. Locate the currency conversion pairs in the **Exchange rate** report that you want to use for conversion.

2. Multiply all Settlement Currency ***Column Name* (SC)** columns, and the **Processing Fee (FC)** column by the value found in the **Exchange rate** column to determine the Base Currency ***Column Name* (BC)** result.\
   Based on your integration type, use the following rate column in the **Exchange rate** report to convert the values:

   | Integration type     | Column                              |
   | -------------------- | ----------------------------------- |
   | Payments only        | Exchange Rate                       |
   | Platform/Marketplace | Exchange Rate (Platform Settlement) |

## 6. Create pivot table to aggregate costs

Create a pivot table to aggregate all costs over a single payment's **PSP Reference**.

1. Add **Psp Reference** for the row dimension.

2. Add **Payment Method** for the column dimension.

3. Add the following **Values**:

   | Single currency Use these values when transacting in a single currency. (SC) = Settlement Currency | Multiple currencies Use these values when transacting in multiple currencies. (BC) = Base Currency |
   | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
   | **Commission (SC)**                                                                                | **Commission (BC)**                                                                                |
   | **Scheme Fees (SC)**                                                                               | **Scheme Fees (BC)**                                                                               |
   | **Interchange (SC)**                                                                               | **Interchange (BC)**                                                                               |
   | **Markup (SC)**                                                                                    | **Markup (BC)**                                                                                    |
   | **Processing Fee (FC)**                                                                            | **Processing Fee (BC)**                                                                            |
   | **Main Amount (SC)**                                                                               | **Main Amount (BC)**                                                                               |

## 7. Determine aggregate transaction costs

Run the following formulas to determine different aggregate transaction cost details from the pivot for each **Payment Method**.

| Desired result                       | Single currency formula Use these formulas when transacting in a single currency. (SC) = Settlement Currency       | Multiple currency formula Use these formulas when transacting in multiple currencies. (BC) = Base Currency         |
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| **Main Amount total**                | Sum of **Main Amount (SC)**                                                                                        | Sum of **Main Amount (BC)**                                                                                        |
| **Interchange total**                | Sum of **Interchange (SC)**                                                                                        | Sum of **Interchange (BC)**                                                                                        |
| **Interchange total rate**           | Sum of **Interchange (SC)** / Sum of **Main Amount (SC)**                                                          | Sum of **Interchange (BC)** / Sum of **Main Amount (BC)**                                                          |
| **Scheme Fees total**                | Sum of **Scheme Fees (SC)**                                                                                        | Sum of **Scheme Fees (BC)**                                                                                        |
| **Scheme Fees total rate**           | Sum of **Scheme Fees (SC)** / Sum of **Main Amount (SC)**                                                          | Sum of **Scheme Fees (BC)** / Sum of **Main Amount (BC)**                                                          |
| **Markup total**                     | Sum of **Markup (SC)**                                                                                             | Sum of **Markup (BC)**                                                                                             |
| **Markup total rate**                | Sum of **Markup (SC)** / Sum of **Main Amount (SC)**                                                               | Sum of **Markup (BC)** / Sum of **Main Amount (BC)**                                                               |
| **Commission total**                 | Sum of **Commission (SC)**                                                                                         | Sum of **Commission (BC)**                                                                                         |
| **Commission total rate**            | Sum of **Commission (SC)** / Sum of **Main Amount (SC)**                                                           | Sum of **Commission (BC)** / Sum of **Main Amount (BC)**                                                           |
| **Processing Fee total**             | Sum of **Processing Fee (FC)**                                                                                     | Sum of **Processing Fee (BC)**                                                                                     |
| **Processing Fee total rate**        | Sum of **Processing Fee (FC)** / Sum of **Main Amount (SC)**                                                       | Sum of **Processing Fee (BC)** / Sum of **Main Amount (BC)**                                                       |
| **Total Cost of Payment**            | **Interchange total** + **Scheme Fees total** + **Markup total** + **Commission total** + **Processing Fee total** | **Interchange total** + **Scheme Fees total** + **Markup total** + **Commission total** + **Processing Fee total** |
| **Effective Merchant Discount Rate** | **Total Cost of Payment** / **Main Amount total**                                                                  | **Total Cost of Payment** / **Main Amount total**                                                                  |

## Example report

The following files show an example of an **Exchange rate** report for April 24, 2025 (in .csv format), and a sample **Merchant Statement Report** (in .xlsx format) file with new columns added and currency conversions applied.

* [Exchange rate report, April 24, 2025](/reporting/merchant-statements-ccc/exchange_rate_report_2025_04_24.csv)
* [Sample Merchant Statement Report](/reporting/merchant-statements-ccc/SAMPLE_Canada_Code_Of_Conduct_Merchant_Statements_Report.xlsx)
