> This is Payabli documentation. For a complete page index, fetch https://docs.payabli.com/llms.txt — append .md to any page URL for lightweight markdown. For section-level indexes, query parameters, and other AI-optimized access methods, see https://docs.payabli.com/ai-agents.md

## Filter transactions by card type

We've added a `binCardType` filter to the transactions query endpoints. Use it to narrow card transactions by card type, accepting `CREDIT`, `DEBIT`, or `PREPAID` (case-insensitive). The filter supports the `eq`, `ne`, `in`, and `nin` operators.

This applies to [List transactions for a paypoint](/developers/api-reference/query/get-list-of-transactions-for-an-entrypoint) and [List transactions for an organization](/developers/api-reference/query/get-list-of-transactions-for-an-organization).

## New `payout_transaction_duplicated` webhook event

We've added a new Pay Out webhook event, `payout_transaction_duplicated`, triggered when Payabli's duplicate detection flags a payout transaction as a potential duplicate. The payload identifies the affected transactions (`affectedIds`, `duplicateCount`) along with the anomaly details (`anomalyType`, `anomalyStatus`, `gateway`, `createdAt`) and the paypoint and vendor.

See [Pay Out Transaction Duplicated](/developers/webhooks/payout-transaction-duplicated) in the webhooks reference.

## Payout capture-failure webhooks now carry a reason

When you use `autoCapture`, Payabli now emits a notification for every capture outcome, including internal validation failures that went unreported before. The capture-failure webhook events now include a `Reason` field describing why the capture didn't succeed, alongside `FundingSource` and `PaymentStatus`.

### Affected events

* [Pay Out Transaction Declined](/developers/webhooks/payout-transaction-declined)
* [Pay Out Transaction Technical Decline](/developers/webhooks/payout-transaction-technical-decline)
* [Pay Out Transaction Error](/developers/webhooks/payout-transaction-error)
* [Pay Out Transaction Rejected](/developers/webhooks/payout-transaction-rejected)

## Check payouts validate the remit address at authorization

For check payouts, Payabli now validates the vendor's remit (mailing) address at authorization, before the payout is charged. If the address fails validation, [Authorize a payout](/developers/api-reference/moneyout/authorize-a-transaction-for-payout) returns a `422` response and doesn't charge the paypoint. Correct the address and re-authorize. Other payout methods (ACH, RTP, virtual card, wire, and managed payables) aren't affected.

## Query payouts response reference now matches the API

We've aligned the response reference and examples for the payout query endpoints with what the API returns. The reference now documents fields that were previously missing, corrects the Summary `pageidentifier` field name, and the examples reflect a real response.

### Affected endpoints

* [Get list of money out transactions for paypoint](/developers/api-reference/query/get-list-of-payouts-for-entrypoint)
* [Get list of money out transactions for organization](/developers/api-reference/query/get-list-of-payouts-for-organization)

### Newly documented response fields

| Object             | Fields                                                                                                                                                                        |
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Transaction record | `EntityId`, `PaypointId`, `SettlementStatusName`, `SettlementDate`, `AchTraceNumber`, `TransId`, `TransStatus`, `TransStatusName`, `TransStatusCategory`, `TransStatusDetail` |
| `Bills`            | `identifier`, `LotNumber`, `totalAmount`                                                                                                                                      |
| `Vendor`           | `PaypointId`, `CheckAccepted`                                                                                                                                                 |

### Corrections

* The Summary `pageidentifier` field is now documented with its correct all-lowercase name.