What It Does
The intake function:- Receives a dispute case from a ticketing event, custom webhook, or payment processor event
- Creates or finds the internal case record
- Extracts required fields such as processor case ID, amount, currency, deadline, transaction ID, account ID, and reason text
- Validates that required fields are present
- Routes incomplete cases to an enrichment or escalation path
- Starts the main dispute handling workflow
Recommended Components
| Need | Duckie component |
|---|---|
| Receive ticket or webhook events | Deployment |
| Normalize case data | Case validation workflow |
| Fetch missing processor details | App tool, custom tool, or MCP tool |
| Classify ambiguous reason text | Reason classification agent |
| Track analytics | Categories and attributes |
Flow
Deployment Steps
Choose the trigger
Use a ticketing deployment when cases originate in a support system. Use a custom webhook when the payment processor or internal system should start the run directly.
Start in Testing mode
Create the deployment in Testing mode so you can review the extracted case record before live automation.
Call the validation workflow
Route the deployment to a workflow that checks required fields, normalizes names, and records missing data.
Add enrichment tools
Enable tools that can fetch transaction, account, processor, ticket, and CRM details.
Fields to Normalize
| Field | Purpose |
|---|---|
case_id | Stable Duckie-side identifier for the dispute case. |
processor_case_id | External processor identifier used for lookup and submission. |
transaction_id | Payment or order reference used to gather evidence. |
account_id | Account, merchant, or customer record connected to the case. |
reason_code | Processor reason code, when available. |
reason_summary | Human-readable reason text for routing and review. |
response_deadline | Latest safe date to act on the case. |
case_value | Amount at risk for prioritization. |
current_status | Intake, waiting for account, approval needed, submitted, won, lost, accepted, or closed. |
The exact field names can match your internal data model. The important part is that the workflow produces a stable, structured case object before agents begin judgment-heavy work.
What to Track
Use categories and attributes from the first deployment:- Reason category
- Case value band
- Deadline risk
- Intake source
- Missing data type
- Automation path
- Final outcome
Related Docs
Creating Deployments
Create the entry-point deployment.
Custom Webhooks
Receive processor or internal events.
Categories
Track dispute reason categories.
Attributes
Track deadline, value, and source attributes.