Adyen-for-platform icon

Payout components

Let your users track their payouts using Platform Experience components.

To help your users reconcile their payouts, you can integrate payout components into your platform's user interface (UI). These components offer a dashboard view of completed payouts for each user's balance account. Your users can use this information to match the payouts they receive in their bank account with the batches of payments and other related transactions.

The payout components are designed for users who receive automatic payouts. Unlike on-demand payouts, automatic payouts are initiated by Adyen based on your configured rules. This enables the payout components to show all relevant debit and credit transactions for the balance account.

This page provides information on:

  • The available payout components, which include the Payouts Overview component and the Payout Details component.
  • The steps needed to integrate these components into your platform.

Payouts Overview component

The Payouts Overview component shows a list of automatic payouts completed for a specific balance account within a specified time period. Each payout record includes details such as the date and time, funds captured, total adjustments, and net payout.

The funds captured represent the initial amount in the balance account on the day when a payout is initiated. This amount may be adjusted due to factors like fees, commissions, refunds, business financing, or internal funds transfers. The component presents these adjustments in an aggregated view. If you need to provide your users with a detailed breakdown of the payout adjustments, refer to the Payout Details component.

After being adjusted, the funds captured amount results in the net payout amount, which is the final amount credited to the user's bank account.

All amounts are shown in the currency of the chosen balance account.

The Payouts Overview component enables users to:

  • View a list of automatic payouts completed for a balance account, including funds captured, adjustments, and net payout amounts per payout.
  • Filter payouts by time period and balance account (if applicable). See the available filters for more details.

To provide users with more information about a specific payout, you can integrate the Payout Details component.

Available filters

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

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

The Time period filter specifies the date and time range for showing payout records. The specified time is based on the UTC+0 time zone.

Filter value
Description
Last 7 days Includes payouts from the previous six days and from today until the current time. For example, if today is a Tuesday and the time is 8:00 PM, payouts from the previous Wednesday midnight until this Tuesday 8:00 PM are included.
This week Includes payouts for the current week, starting from Monday midnight until the present moment.
Last week Includes payouts from Monday midnight to Sunday 11:59:59 PM of the previous week.
Last 30 days The default setting. Includes payouts from the previous 29 days and from today until the current time.
This month Includes payouts for the current month, starting from the first day of the month until today's date.
Last month Includes payouts from the previous month, starting from the first day of the month until the end of the month at 11:59:59 PM.
Year to date Includes payouts from the first day of the current year up until today's date.
Custom Allows setting a custom time period.

Payout Details component

The Payout Details component shows specific information about a payout, including the date and time, breakdown of captured funds and adjustments, and the net payout amount. If there are any remaining funds in the balance account after the payout is completed, they will also be shown in the component.

Requirements

Before integrating the components, 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 Payouts Overview Component: View role to your API credential.
  • Verified that the components are available in the languages and browser versions that apply to your situation.

How it works

Follow these steps to integrate the payout components:

  1. Create an authentication session token
  2. Install and import the component library
  3. Initialize the components
  4. Customize the components

Step 1: Create an authentication session token

To ensure secure communication between your server and front end, an authentication session token is required. To create the token:

  1. From your server, make a POST request to the /sessions endpoint of the Session authentication API using the API key that you set up for the Configuration API or Transfers API.

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

    1. Use the following URLs for this API:

      Environment API URL
      test https://test.adyen.com/authe/api/v1/sessions
      live https://authe-live.adyen.com/authe/api/v1/sessions
    2. In the request body, specify these parameters:

      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 Payouts Overview Component: View.

    Here is an example request for creating a session token.

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

Step 2: Install and import the component library

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 components, and the style sheet. To customize the component styling, see Step 4.

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

Step 3: Initialize the components

To initialize the components:

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

    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 each component.

      Select the tab for the component you want to use:

  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.

    By default, the Payout Details component is shown as a modal window within the Payouts Overview component. In this scenario, you only need to create a DOM element for the Payouts Overview component. If you want to use the Payout Details component on its own, you need to create a separate DOM element for it.

    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.

    Select the tab for the component you want to use:

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

    The following code, including the role, is the same for both payout components.

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

    To implement the Payout Details component as a modal window within the Payouts Overview component, use the following code examples. In this implementation, when the user selects a specific payout from the overview page, the payout date and the corresponding balance account ID are automatically passed to the Payout Details component, and the modal window opens.

    Select the tab for the component you want to use:

    To use the Payout Details component outside of the Payouts Overview component, define the onRecordSelection event as shown below.

Step 4: (Optional) Customize the components

You can customize the appearance of components by overriding the default style to change colors, fonts, borders, and more. To see which classes and properties are available, inspect the components using your browser's developer tools. Then, define the desired styles in your style sheet file.

Below are some examples of how to style components. The first example shows how to override predefined CSS properties 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.

Use the tabs below to switch between the examples.

See also