---
updatedAt: 2026-04-21T08:32:53.000Z
agentTools:
  projectIndex: https://docs.mollie.com/llms.txt
---

# List transactions

> 🔒 Restricted access
>
> This API is currently only available to Mollie's authorized partners via OAuth. Direct access for individual businesses isn't available yet, but it's on our roadmap — check back here for updates.

Retrieve all transactions for a specific business account.

The results are paginated.

> 🔑 Access with
>
> [OAuth access with **business-accounts.read**](/reference/authentication)

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Business Accounts",
    "version": "1.0.0",
    "license": {
      "name": "Attribution-NonCommercial-ShareAlike 4.0 International",
      "identifier": "CC-BY-NC-SA-4.0"
    }
  },
  "servers": [
    {
      "url": "https://api.mollie.com/v2"
    }
  ],
  "security": [
    {
      "apiKey": []
    },
    {
      "advancedAccessToken": []
    },
    {
      "oAuth": []
    }
  ],
  "paths": {
    "/business-accounts/accounts/{businessAccountId}/transactions": {
      "parameters": [
        {
          "name": "businessAccountId",
          "description": "Provide the ID of the related business account.",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string",
            "pattern": "^ba_.+$",
            "example": "ba_nopqrstuvwxyz23456789A"
          }
        }
      ],
      "get": {
        "summary": "List transactions",
        "x-speakeasy-name-override": "list",
        "tags": [
          "Accounts API"
        ],
        "operationId": "list-business-account-transactions",
        "security": [
          {
            "oAuth": [
              "business-accounts.read"
            ]
          }
        ],
        "description": "> 🔒 Restricted access\n>\n> This API is currently only available to Mollie's authorized partners via OAuth. Direct access for individual businesses isn't available yet, but it's on our roadmap — check back here for updates.\n\nRetrieve all transactions for a specific business account.\n\nThe results are paginated.\n\n> 🔑 Access with\n>\n> [OAuth access with **business-accounts.read**](/reference/authentication)",
        "parameters": [
          {
            "name": "creditDebitIndicator",
            "in": "query",
            "description": "Filter the transactions by whether they credited or debited the account balance.\n\nPossible values: `credit` `debit`",
            "schema": {
              "type": "string",
              "description": "Indicates whether the entry is a credit or debit from the perspective of the account holder.\n\nPossible values: `credit` `debit`",
              "x-enumDescriptions": {
                "credit": "Funds are received into the account.",
                "debit": "Funds are sent from the account."
              },
              "readOnly": true,
              "example": "debit"
            }
          },
          {
            "name": "processedAfter",
            "in": "query",
            "description": "Filter the transactions to only include those processed on or after this date and time. Filters on the `processedAt` property.\n\nCannot be combined with `from`.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "example": "2025-02-01T00:00:00+00:00"
            }
          },
          {
            "name": "processedBefore",
            "in": "query",
            "description": "Filter the transactions to only include those processed on or before this date and time. Filters on the `processedAt` property.\n\nCannot be combined with `from`.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "example": "2025-02-26T23:59:59+00:00"
            }
          },
          {
            "name": "from",
            "in": "query",
            "description": "Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the result set.\n\nCannot be combined with `processedAfter` or `processedBefore`.",
            "schema": {
              "type": "string",
              "pattern": "^batr_.+$",
              "example": "batr_87GByBuj4UCcUTEbs6aGJ"
            }
          },
          {
            "name": "limit",
            "description": "The maximum number of items to return. Defaults to 50 items.",
            "in": "query",
            "schema": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 1,
              "maximum": 250,
              "default": 50,
              "example": 50
            }
          },
          {
            "name": "sort",
            "description": "Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from newest to oldest.\n\nPossible values: `asc` `desc`",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "desc"
            }
          },
          {
            "name": "testmode",
            "description": "Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting the `testmode` query parameter to `true`.\n\nTest entities cannot be retrieved when the endpoint is set to live mode, and vice versa.",
            "in": "query",
            "schema": {
              "type": "boolean",
              "example": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A list of transaction objects.",
            "content": {
              "application/hal+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "count",
                    "_embedded"
                  ],
                  "properties": {
                    "count": {
                      "type": "integer",
                      "description": "The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result as well.\n\nThe maximum number of items per result set is controlled by the `limit` property provided in the request. The default limit is 50 items.",
                      "minimum": 0,
                      "maximum": 250,
                      "example": 5
                    },
                    "_embedded": {
                      "type": "object",
                      "properties": {
                        "transactions": {
                          "description": "An array of transaction objects.",
                          "type": "array",
                          "items": {
                            "allOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "resource": {
                                    "type": "string",
                                    "description": "Indicates the response contains a business account transaction object. Will always contain the string `business-account-transaction` for this endpoint.",
                                    "readOnly": true,
                                    "example": "business-account-transaction"
                                  },
                                  "id": {
                                    "allOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^batr_.+$",
                                        "example": "batr_87GByBuj4UCcUTEbs6aGJ"
                                      }
                                    ],
                                    "description": "The identifier uniquely referring to this transaction. Mollie assigns this identifier at transaction creation time.",
                                    "readOnly": true
                                  },
                                  "businessAccountId": {
                                    "allOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^ba_.+$",
                                        "example": "ba_nopqrstuvwxyz23456789A"
                                      }
                                    ],
                                    "description": "The identifier of the business account this transaction belongs to.",
                                    "readOnly": true
                                  },
                                  "creditDebitIndicator": {
                                    "type": "string",
                                    "description": "Indicates whether the entry is a credit or debit from the perspective of the account holder.\n\nPossible values: `credit` `debit`",
                                    "x-enumDescriptions": {
                                      "credit": "Funds are received into the account.",
                                      "debit": "Funds are sent from the account."
                                    },
                                    "readOnly": true,
                                    "example": "debit"
                                  },
                                  "type": {
                                    "type": "string",
                                    "description": "Indicates what kind of transaction this is.\n\nWe may introduce new transaction types as we expand the product. We recommend building your integration to handle unexpected values gracefully, so nothing breaks when that happens. \n\nPossible values: `card-payment` `bank-transfer` `psp-transfer` `internal-transfer` `ideal-payment` `fee` `correction` `direct-debit` `direct-debit-refund` `rewards-payout`",
                                    "x-enumDescriptions": {
                                      "card-payment": "A card payment transaction.",
                                      "bank-transfer": "A bank transfer transaction.",
                                      "psp-transfer": "A payment service provider transfer.",
                                      "internal-transfer": "An internal transfer between Mollie accounts.",
                                      "ideal-payment": "An iDEAL payment transaction.",
                                      "fee": "A fee charged by Mollie.",
                                      "correction": "A correction transaction.",
                                      "direct-debit": "A direct debit transaction.",
                                      "direct-debit-refund": "A refund of a direct debit transaction.",
                                      "rewards-payout": "A payout of rewards earned on the account."
                                    },
                                    "readOnly": true,
                                    "example": "bank-transfer"
                                  },
                                  "amount": {
                                    "description": "The amount of the transaction, e.g. `{\"currency\":\"EUR\", \"value\":\"100.00\"}`.",
                                    "type": "object",
                                    "required": [
                                      "currency",
                                      "value"
                                    ],
                                    "properties": {
                                      "currency": {
                                        "type": "string",
                                        "description": "A three-character ISO 4217 currency code.",
                                        "example": "EUR"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "A string containing an exact monetary amount in the given currency.",
                                        "example": "10.00"
                                      }
                                    }
                                  },
                                  "description": {
                                    "type": [
                                      "string",
                                      "null"
                                    ],
                                    "description": "A short description of the transaction.",
                                    "example": "Payment for services"
                                  },
                                  "counterparty": {
                                    "description": "The counterparty involved in this transaction.",
                                    "type": "object",
                                    "properties": {
                                      "identifier": {
                                        "type": "string",
                                        "description": "The account identifier (e.g. IBAN) of the counterparty.",
                                        "example": "NL02ABNA0123456789"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The name of the counterparty.",
                                        "example": "Beneficiary Name"
                                      }
                                    }
                                  },
                                  "afterBalance": {
                                    "description": "The balance of the business account after this transaction was processed.",
                                    "type": "object",
                                    "required": [
                                      "total"
                                    ],
                                    "properties": {
                                      "total": {
                                        "description": "The total balance of the business account after this transaction.",
                                        "type": "object",
                                        "required": [
                                          "currency",
                                          "value"
                                        ],
                                        "properties": {
                                          "currency": {
                                            "type": "string",
                                            "description": "A three-character ISO 4217 currency code.",
                                            "example": "EUR"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "A string containing an exact monetary amount in the given currency.",
                                            "example": "10.00"
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "processedAt": {
                                    "type": [
                                      "string",
                                      "null"
                                    ],
                                    "description": "The date and time when the transaction was processed, in ISO 8601 format.",
                                    "readOnly": true,
                                    "example": "2025-02-26T08:00:00+00:00"
                                  },
                                  "mode": {
                                    "type": "string",
                                    "description": "Whether this entity was created in live mode or in test mode.\n\nPossible values: `live` `test`",
                                    "readOnly": true,
                                    "example": "live"
                                  },
                                  "createdAt": {
                                    "type": "string",
                                    "description": "The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.",
                                    "readOnly": true,
                                    "example": "2024-03-20T09:13:37+00:00"
                                  }
                                }
                              },
                              {
                                "type": "object",
                                "required": [
                                  "resource",
                                  "id",
                                  "businessAccountId",
                                  "mode",
                                  "creditDebitIndicator",
                                  "type",
                                  "amount",
                                  "createdAt"
                                ]
                              }
                            ]
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "list-transactions-200": {
                    "summary": "A list of transactions",
                    "value": {
                      "count": 2,
                      "_embedded": {
                        "transactions": [
                          {
                            "resource": "business-account-transaction",
                            "id": "batr_jzQPWFaiDhzpkBcAeKEZH",
                            "businessAccountId": "ba_nopqrstuvwxyz23456789A",
                            "mode": "live",
                            "creditDebitIndicator": "debit",
                            "type": "bank-transfer",
                            "amount": {
                              "currency": "EUR",
                              "value": "100.00"
                            },
                            "description": "Payment for services",
                            "counterparty": {
                              "identifier": "NL02ABNA0123456789",
                              "name": "Beneficiary Name"
                            },
                            "afterBalance": {
                              "total": {
                                "currency": "EUR",
                                "value": "4900.00"
                              }
                            },
                            "processedAt": "2025-02-26T08:00:00+00:00",
                            "createdAt": "2025-02-26T08:15:00+00:00"
                          },
                          {
                            "resource": "business-account-transaction",
                            "id": "batr_87GByBuj4UCcUTEbs6aGJ",
                            "businessAccountId": "ba_nopqrstuvwxyz23456789A",
                            "mode": "live",
                            "creditDebitIndicator": "credit",
                            "type": "bank-transfer",
                            "amount": {
                              "currency": "EUR",
                              "value": "250.00"
                            },
                            "description": "Bank transfer received",
                            "counterparty": {
                              "identifier": "NL91ABNA0417164300",
                              "name": "Jan Jansen"
                            },
                            "afterBalance": {
                              "total": {
                                "currency": "EUR",
                                "value": "5250.00"
                              }
                            },
                            "processedAt": "2025-02-26T10:30:00+00:00",
                            "createdAt": "2025-02-26T10:30:00+00:00"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request contains issues. For example, if the specified `from` value is not a valid ID.",
            "content": {
              "application/hal+json": {
                "schema": {
                  "type": "object",
                  "description": "An error response object.",
                  "required": [
                    "status",
                    "title",
                    "detail",
                    "_links"
                  ],
                  "properties": {
                    "status": {
                      "type": "integer",
                      "description": "The status code of the error message. This is always the same code as the status code of the HTTP message itself.",
                      "minimum": 400,
                      "maximum": 599,
                      "example": 404
                    },
                    "title": {
                      "type": "string",
                      "description": "The HTTP reason phrase of the error. For example, for a `404` error, the `title` will be `Not Found`.",
                      "example": "Not Found"
                    },
                    "detail": {
                      "type": "string",
                      "description": "A detailed human-readable description of the error that occurred.",
                      "example": "The resource does not exist"
                    },
                    "field": {
                      "type": "string",
                      "description": "If the error was caused by a value provided by you in a specific field, the `field` property will contain the name of the field that caused the issue.",
                      "example": "description"
                    },
                    "_links": {
                      "type": "object",
                      "required": [
                        "documentation"
                      ],
                      "properties": {
                        "documentation": {
                          "type": "object",
                          "description": "The URL to the generic Mollie API error handling guide.",
                          "required": [
                            "href",
                            "type"
                          ],
                          "properties": {
                            "href": {
                              "type": "string",
                              "example": "https://docs.mollie.com/errors"
                            },
                            "type": {
                              "type": "string",
                              "example": "text/html"
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "status": 400,
                  "title": "Bad Request",
                  "detail": "Invalid cursor value",
                  "field": "from",
                  "_links": {
                    "documentation": {
                      "href": "...",
                      "type": "text/html"
                    }
                  }
                }
              }
            }
          },
          "429": {
            "$ref": "#/components/responses/429-rate-limit"
          }
        },
        "x-speakeasy-pagination": {
          "type": "url",
          "outputs": {
            "nextUrl": "$._links.next.href"
          }
        },
        "x-readme": {
          "code-samples": [
            {
              "language": "shell",
              "code": "curl -X GET https://api.mollie.com/v2/business-accounts/accounts/ba_nopqrstuvwxyz23456789A/transactions?limit=5 \\\n    -H \"Authorization: Bearer access_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM\""
            },
            {
              "language": "php",
              "code": "<?php\n$mollie = new \\Mollie\\Api\\MollieApiClient();\n$mollie->setAccessToken(\"access_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM\");\n\n$transactions = $mollie->businessAccountTransactions->pageFor(\n    $mollie->businessAccounts->get(\"ba_nopqrstuvwxyz23456789A\")\n);",
              "install": "composer require mollie/mollie-api-php"
            },
            {
              "language": "node",
              "code": "const { createMollieClient } = require('mollie-api-typescript');\nconst mollieClient = createMollieClient({ apiKey: 'access_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM' });\n\nconst transactions = await mollieClient.businessAccountTransactions.list({\n  businessAccountId: 'ba_nopqrstuvwxyz23456789A'\n});",
              "install": "npm install mollie-api-typescript"
            },
            {
              "language": "python",
              "code": "from mollie.api.client import Client\n\nmollie_client = Client()\nmollie_client.set_access_token(\"access_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM\")\n\ntransactions = mollie_client.business_account_transactions.list(\n    \"ba_nopqrstuvwxyz23456789A\"\n)",
              "install": "pip install mollie-api-py"
            },
            {
              "language": "ruby",
              "code": "require 'mollie-api-ruby'\n\nMollie::Client.configure do |config|\n  config.api_key = 'access_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM'\nend\n\ntransactions = Mollie::BusinessAccount::Transaction.all(\n  business_account_id: 'ba_nopqrstuvwxyz23456789A'\n)",
              "install": "gem install mollie-api-ruby"
            }
          ]
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "apiKey": {
        "type": "http",
        "scheme": "bearer",
        "description": "Authenticates API requests for a single website profile. Each key targets\neither live mode (`live_...`) or test mode (`test_...`).\n\nKeys are shown only once, at creation. Store the key securely — it cannot\nbe retrieved afterwards. If lost, create a new key under Developers → API\naccess tokens in the Dashboard and revoke the old one.",
        "x-default": "live_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM"
      },
      "advancedAccessToken": {
        "type": "http",
        "scheme": "bearer",
        "description": "Authenticates API requests with configurable permissions. Can access\norganization-level resources and optionally scope to a specific payment\nprofile (`access_...`). Use for advanced integrations — such as bookkeeping\nor reporting tools — that need fine-grained control over API access.\n\nTokens are shown only once, at creation. Store it securely — it cannot be\nretrieved afterwards. If lost, create a new token under Developers → API\naccess tokens in the Dashboard and revoke the old one.",
        "x-default": "access_dHar4XY7LxsDOtmnkVtjNVWXLSlXsM"
      },
      "oAuth": {
        "type": "oauth2",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://my.mollie.com/oauth2/authorize",
            "tokenUrl": "https://api.mollie.com/oauth2/tokens",
            "scopes": {}
          }
        }
      }
    },
    "responses": {
      "429-rate-limit": {
        "description": "Rate Limit has been reached.",
        "content": {
          "application/hal+json": {
            "schema": {
              "type": "object",
              "description": "An error response object.",
              "required": [
                "status",
                "title",
                "detail",
                "_links"
              ],
              "properties": {
                "status": {
                  "type": "integer",
                  "description": "The status code of the error message. This is always the same code as the status code of the HTTP message itself.",
                  "minimum": 400,
                  "maximum": 599,
                  "example": 404
                },
                "title": {
                  "type": "string",
                  "description": "The HTTP reason phrase of the error. For example, for a `404` error, the `title` will be `Not Found`.",
                  "example": "Not Found"
                },
                "detail": {
                  "type": "string",
                  "description": "A detailed human-readable description of the error that occurred.",
                  "example": "The resource does not exist"
                },
                "field": {
                  "type": "string",
                  "description": "If the error was caused by a value provided by you in a specific field, the `field` property will contain the name of the field that caused the issue.",
                  "example": "description"
                },
                "_links": {
                  "type": "object",
                  "required": [
                    "documentation"
                  ],
                  "properties": {
                    "documentation": {
                      "type": "object",
                      "description": "The URL to the generic Mollie API error handling guide.",
                      "required": [
                        "href",
                        "type"
                      ],
                      "properties": {
                        "href": {
                          "type": "string",
                          "example": "https://docs.mollie.com/errors"
                        },
                        "type": {
                          "type": "string",
                          "example": "text/html"
                        }
                      }
                    }
                  }
                }
              }
            },
            "example": {
              "status": 429,
              "title": "Too Many Requests",
              "detail": "You have exceeded the rate limit. Please slow down your requests.",
              "_links": {
                "documentation": {
                  "href": "https://docs.mollie.com/overview/handling-errors",
                  "type": "text/html"
                }
              }
            }
          }
        }
      }
    }
  },
  "x-readme": {
    "explorer-enabled": false,
    "samples-languages": [
      "shell",
      "php",
      "node",
      "python",
      "ruby"
    ]
  }
}
```