Transaction Enrichment

If you need to enhance your own data, we offer different solutions engine as an API for you to use.

The Enrichment API is a separate service that, using the same authentication as main Pluggy services, enables customers that have already collected Open Finance data or have existing data from their customer base to enrich the transactional data by providing categorization and merchant information.

Premium feature

To enable enrichment api, you must request this to the sales team to enable it for your team.

How to use#

  1. Obtain an API key from our Auth endpoint.
  2. Use the categorization flow described in Transaction Categorization with the obtained API key, and send the transactions to categorize:

Checking account example:

{
  "transactions": [
    {
      "id": "76a87d4d-89f2-4544-a431-b5d8a45146c7",
      "amount": -100,
      "date": "2024-09-06T00:00:00-03:00",
      "description": "MC DONALDS"
    }
  ],
  "clientUserId": "06199323-763c-4b15-9f65-3871d8b4d430",
  "accountType": "CHECKING",
  "isBusiness": false
}

Checking account with payment data:

{
  "transactions": [
    {
      "id": "76a87d4d-89f2-4544-a431-b5d8a45146c7",
      "amount": -100,
      "date": "2024-09-06T00:00:00-03:00",
      "description": "MC DONALDS",
      "paymentData": {
        "payer": {
          "name": "John Doe",
          "documentNumber": { "value": "123.456.789-00", "type": "CPF" }
        },
        "receiver": {
          "name": "MC DONALDS",
          "documentNumber": { "value": "42.591.651/0001-43", "type": "CNPJ" }
        }
      }
    }
  ],
  "clientUserId": "06199323-763c-4b15-9f65-3871d8b4d430",
  "accountType": "CHECKING",
  "isBusiness": false
}

Credit card example:

{
  "transactions": [
    {
      "id": "76a87d4d-89f2-4544-a431-b5d8a45146c7",
      "amount": -100,
      "date": "2024-09-06T00:00:00-03:00",
      "description": "MC DONALDS",
      "creditCardMetadata": {
        "payeeMCC": 1234
      }
    }
  ],
  "clientUserId": "06199323-763c-4b15-9f65-3871d8b4d430",
  "accountType": "CREDIT_CARD",
  "isBusiness": false
}

The creditCardMetadata field is optional and greatly improves categorization accuracy.

You can send up to 5000 transactions per request.

The accountType field is optional and accepts CHECKING or CREDIT_CARD. The isBusiness field is also optional and indicates whether this is a PJ or PF account.

  1. The response will look something like this:
{
  "results": [
    {
      "id": "76a87d4d-89f2-4544-a431-b5d8a45146c7",
      "amount": -100,
      "date": "2024-09-06T00:00:00-03:00",
      "description": "MC DONALDS",
      "type": "DEBIT",
      "merchant": {
        "name": "mc donalds",
        "businessName": "ARCOS DOURADOS COMERCIO DE ALIMENTOS LTDA",
        "cnpj": "42.591.651/0001-43"
      },
      "category": "Eating out"
    }
  ]
}

The merchant field can be null if the merchant is unknown. See possible category values on our Transaction Categorization page.