Disputes

Buyers or sellers can open disputes on active or awaiting_confirmation escrows. Disputes lock the escrow until resolved and include a message thread for communication between parties. Merchants or admins can resolve disputes.

Dispute reasons

ReasonDescription
item_not_receivedBuyer did not receive the item
item_not_as_describedItem received but does not match description
service_not_deliveredService was not performed
otherOther reason (requires description)

Resolution options

ResolutionEffect
release_to_sellerFunds released to seller, escrow completed
refund_buyerFull refund to buyer, escrow refunded
partial_refundPartial amount refunded to buyer, remainder to seller

Endpoints

POST/api/v1/escrows/:id/disputes

Open a dispute. Buyer or seller.

Request example

bash
{
  "reason": "item_not_received",
  "description": "I paid 3 days ago but have not received any shipping notification."
}
GET/api/v1/disputes/:id

Get dispute details including message thread.

GET/api/v1/merchant/disputes

List disputes for the authenticated merchant.

POST/api/v1/disputes/:id/messages

Add a message to the dispute thread.

Request example

bash
{
  "message": "Here is the tracking number: NG12345678"
}
POST/api/v1/disputes/:id/resolve

Resolve a dispute. Merchant or admin.

Request example

bash
{
  "resolution": "release_to_seller",
  "resolution_note": "Seller provided valid proof of delivery."
}
POST/api/v1/disputes/:id/escalate

Escalate dispute to Kashia admin. Buyer or seller.