# Dispute field feeds

Push dispute packets, sealed records and completed reversals to your own systems as they happen, in Enruta’s format or shaped for Chargeflow, Justt or Visa CE3.0.

Status: Live · Updated: 2026-09-14
For: platform
Source: https://enruta.ai/docs/dispute-field-feeds

A dispute service or a PSP needs the agent’s evidence when a dispute starts, not when someone remembers to paste it. A feed subscribes a URL to one kind of event across your connected accounts and delivers each event signed, in the format your system already reads.

## Kinds

| `kind` | Delivered when |
|---|---|
| `dispute_fields` | A dispute packet is generated (`dispute_packet.generated`) or an outcome is recorded (`dispute.outcome_recorded`) |
| `records` | A record is sealed (`record.sealed`) |
| `reversals` | A reversal completes (`reversal.completed`) |

## Formats

| `format` | Shape |
|---|---|
| `enruta` | The native Enruta event |
| `chargeflow` | An order object with `additional_notes` and a `policies[]` entry of `policy_type: "agent_mandate"` |
| `justt` | The fields of Justt’s upsert-transaction call |
| `verifi_ce30` | The Visa Compelling Evidence 3.0 elements the record carries: login id, device id, IP address, shipping address, prior transaction ids |

## Subscribe

```http
POST /v0/platform/feeds          Authorization: Bearer enruta_plt_…
{ "kind": "dispute_fields", "format": "chargeflow", "target_url": "https://hooks.northwindpay.example/enruta" }

GET    /v0/platform/feeds
DELETE /v0/platform/feeds/{id}
```

A subscription can be narrowed to some of your accounts with `account_filter`.

## Delivery

- Every delivery is signed like a webhook: `Enruta-Signature: t=<unix>,v1=<HMAC-SHA256>` over the timestamp and the body, with the subscription’s secret.
- A failed delivery is retried with backoff. Each event keeps its attempts, the last error and when it was delivered.
- Pull instead of push, or catch up after an outage: `GET /v0/platform/feeds/{id}/events?after=&limit=`.
- Send everything again from a point in time: `POST /v0/platform/feeds/{id}/replay` with `{ "from": "2026-09-01T00:00:00Z" }`.

## Price

The field feed is free. Dispute services that buy records pay 10 to 20 % of their success fee or $5 to $15 a record, and PSPs pay by records in volume ([Pricing](https://enruta.ai/pricing)).
