This object represents the result of matching a Load Adjustment with its original purchase.
When a Load Adjustment credits a card, for example a merchant refund, UnDosTres looks for the original purchase it most likely belongs to and sends the result in this notification. One notification is sent per Load Adjustment, whether or not a match was found.
This notification is not sent in real time. Matching runs in a background process every few minutes, so expect it a few minutes after the Load Adjustment was applied. It is only sent to ecommerces subscribed to id_type 18; ask your UnDosTres contact to enable it. Respond with an HTTP 2xx status to acknowledge it.
| Field | Type | Description |
|---|---|---|
| id_type | Number | ID representing a notification type from a predefined catalog. |
| notification | Object | Dynamic object containing data specific to the given id_type. |
Example when id_type = 18 and a match was found
{
"id_type": 18,
"notification": {
"loadAdjustmentExternalTransactionId": "20260915T10:22:31_123456",
"amount": 250.00,
"matched": true,
"totalCandidatesEvaluated": 37,
"processedAt": "2026-09-15T10:24:05.123456",
"deductExternalTransactionId": "20260912T18:03:10_987654",
"deductAmount": 250.00,
"score": 9.4,
"scoreBreakdown": {
"amount_exact": 4.5,
"narrative_ecommerce_description_match": 1.8,
"reference_match": 1.5,
"terminal_id_match": 1.0,
"time_proximity": 0.6
}
}
}Example when id_type = 18 and no match was found
{
"id_type": 18,
"notification": {
"loadAdjustmentExternalTransactionId": "20260915T10:22:31_123456",
"amount": 250.00,
"matched": false,
"totalCandidatesEvaluated": 12,
"processedAt": "2026-09-15T10:24:05.123456",
"score": 0.0
}
}| Field | Type | Description |
|---|---|---|
| notification.loadAdjustmentExternalTransactionId | String | ID of the Load Adjustment: the transaction date sent by Paymentology in yyyyMMdd'T'HH:mm:ss format, an underscore, and the Paymentology transaction ID. |
| notification.amount | Number | Amount of the Load Adjustment in Mexican pesos, not cents. |
| notification.matched | Boolean | true if an original purchase was identified. |
| notification.totalCandidatesEvaluated | Number | Number of purchases and cash withdrawals compared against the Load Adjustment. |
| notification.processedAt | String | Date and time the Load Adjustment was evaluated, in ISO-8601 format without UTC offset. |
| notification.deductExternalTransactionId | String | ID of the matched purchase, in the same format as loadAdjustmentExternalTransactionId. Only present when matched is true. |
| notification.deductAmount | Number | Amount of the matched purchase in Mexican pesos. Only present when matched is true. |
| notification.score | Number | Total score of the matched purchase, rounded to one decimal. 0.0 when matched is false. |
| notification.scoreBreakdown | Object | Points contributed by each signal. Only present when matched is true, and it only includes the signals that scored. |
How the match is decided
The candidates are the successful purchases and cash withdrawals made by the same customer in the 3 months before the Load Adjustment. Each candidate earns points for the signals below. The candidate with the highest score is the match if it scores at least 4.5 and its amount matches exactly or approximately. Otherwise, matched is false.
| scoreBreakdown field | Points | When it applies |
|---|---|---|
| amount_exact | 4.5 | The purchase amount equals the Load Adjustment amount. |
| amount_epsilon | 1.0 | The purchase amount is within 5% of the Load Adjustment amount. Never present together with amount_exact. |
| narrative_ecommerce_description_match | Up to 2.0 | The merchant descriptions are at least 30% similar. Points grow with the similarity. |
| reference_match | 1.5 | The purchase was made with the same card. |
| terminal_id_match | 1.0 | The purchase has the same terminal ID in the Paymentology message. |
| time_proximity | 1.0, 0.6 or 0.3 | The purchase was made less than 3, 7 or 30 days before the Load Adjustment. |
This notification is informational only. It does not change any balance or transaction.

