Adyen-for-platform icon

Reports component

Let your users download their balance account reports using Platform Experience components.

You can use the Reports Overview component to let your users access reports generated by Adyen for their balance accounts. The reports show the movement of funds within their balance accounts, such as payouts. This information can help your users with their bookkeeping and reconciliation processes.

The component automatically generates report data every day, so users do not have to ask for reports from you and always have access to the most current data.

This page provides information on:

  • The features of the Reports Overview component.
  • The steps needed to integrate the Reports Overview component into your platform's user interface (UI).

Reports Overview component

The Reports Overview component shows a list of downloadable reports for a specific balance account within a specified time period.

Currently, the component only supports the Payout report. We will add more report types in the future.

The component enables users to:

  • Download a generated report in CSV format. The downloaded file name will be similar to this: balanceaccount_payout_report_YYYY_MM_DD.csv.
  • Filter the generated reports by time period and balance account (if applicable). See the available filters for more details.

Supported report types

Report type
Description
Payout report This report shows a list of automatic payouts completed for a specific balance account within a specified time period, including details of the transactions (both debits and credits) which are part of these payouts.

Available filters

The following sections shows the available filters and their values for the Reports Overview component.

Users with multiple balance accounts can switch between them using the Balance Account filter.

The Time period filter specifies the date range for showing available reports. Report data is automatically generated every day at midnight based on the UTC+0 time zone.

Filter value
Description
Last 7 days Includes reports from the previous six days and today.
This week Includes reports for the current week, starting from Monday midnight until today.
Last week Includes reports from Monday midnight to Sunday midnight of the previous week.
Last 30 days The default setting. Includes reports from the previous 29 days and today.
This month Includes reports for the current month, starting from the first day of the month until today's date.
Last month Includes reports from the previous month, starting from the first day of the month until the end of the month.
Year to date Includes reports from the first day of the current year up until today's date.
Custom Allows setting a custom time period.

Requirements

Before integrating the component, make sure that you:

  • Followed the Get started guide to create your test account.
  • Created API credentials for the Configuration API or the Transfers API.
  • Asked your Adyen contact to assign the Reports Overview Component: View role to your API credential.
  • Verified that the component is available in the languages and browser versions that apply to your situation.

How it works

Follow these steps to integrate the reports component:

  1. Create an authentication session from your server
  2. Install the component library on your front end
  3. Initialize the component
  4. Customize the component

Step 1: Create an authentication session from your server

To ensure secure communication between components and Adyen server, you must configure your server for authentication and create a session token. To create the token:

  1. From your server, make a POST /sessions request specifying the following parameters:

    To make this API request, your API key must have the Reports Overview Component: View role in your Customer Area. Read more in Requirements.

    Parameter Required Description
    allowOrigin -white_check_mark- The URL where the component will appear.
    Must follow the format of https://www.yourcompany.com or https://*.yourcompany.com, where yourcompany.com is the actual web address of your platform.
    On live, only the HTTPS protocol is supported.
    An asterisk (*) cannot be used as a literal value for the parameter.
    product -white_check_mark- The component type. Set this to platform.
    policy -white_check_mark- An object that contains:
    • resources: An object that contains:
      • accountHolderId: The unique identifier of the account holder that is linked to the balance account shown in the component.
      • type: The type of resource. Set this to accountHolder.
    • roles: The role required to use the component. Set this to Reports Overview Component: View.
    _

    Here is an example request for creating a session token.

  2. Note the API response. Later, when initializing the component, you need to create and call a function that passes the entire session object from the response to your front end.

Step 2: Install the component library on your front end

Use the Adyen Platform Experience library in your front-end application as follows:

  1. Install the node package.

    npm install @adyen/adyen-platform-experience-web
  2. Import the node package, the component, and the style sheet.

    import { AdyenPlatformExperience, ReportsOverview } from '@adyen/adyen-platform-experience-web';
    import "@adyen/adyen-platform-experience-web/adyen-platform-experience-web.css";

Step 3: Initialize the component

To initialize the component:

  1. Gather the following information to be passed when initializing the library and component.

    1. Gather these parameters to initialize the library.

      Parameter Required
      Description
      onSessionCreate -white_check_mark- The function callback that retrieves an authentication session token and refreshes/extends the current session.
      locale The language of the component. See the list of the supported languages.
      For example, use en-US for English.
      environment The environment for the component integration.
      The default value is test. Set the parameter to live when you are ready to go live.
    2. Gather these parameters to initialize the component.

      Parameter Required
      Description
      core -white_check_mark- The instance of the library.
      preferredLimit The number of report records shown per page.
      Default value: 10.
      allowLimitSelection Determines whether the user can change the number of report records shown per page.
      Default value: true.
      balanceAccountId Set this parameter to a specific balance account ID to show reports for the given account only.
      If specified, the Balance Account filter will be hidden.
      hideTitle Determines whether to show the component title Reports.
      Default value: false. Set this to true to hide the component title.
      onFiltersChanged The callback function triggered when the user changes the filter selection.

      The function receives the current filter selection as an argument, including the balance account ID and time period.
      onContactSupport The callback function triggered when an error occurs on the reports table.

      If the function is defined, the component will show the default error screen, which includes the error code ID and a contact support button.
      You can provide the URL to which you want to redirect the user when they click the button. For example, onContactSupport: () => {window.open('https://your-platform-domain/support');}
      onError The callback function triggered when an error occurs on the reports table.

      You can define the function based on how you want to handle the errors.
      For example, you can log the errors on the console using onError: (error) => {console.log(error)}.
  2. Create a DOM element on your UI page where you want the component to be rendered and assign it a unique and descriptive ID. This unique ID is important to avoid any misconfigurations when integrating multiple components into your UI.

    If you are using JavaScript frameworks such as Vue or React, make sure that you use references instead of selectors and that you do not re-render the DOM element.

  3. Add a function that calls your API to generate a new authentication session token.

  4. Initialize the component and mount it to the container you created. At this step, you can localize the component by setting a preferred language.

Step 4: (Optional) Customize the component

The reports component has a default appearance with pre-defined styles, such as colors, fonts, and borders. You can customize the appearance of your components by overriding the default values of CSS variables and the class styles:

  1. Inspect the components using your browser's developer tools.
  2. Modify the styles in your style sheet file.

The following tabs show examples of how to style the component. The first example shows how to override predefined CSS variables to use different colors and values. The second example demonstrates how to update the CSS class setting to change the layout of the modal window from a pop-up window to a side panel view.

See also