Bug: paid x402 agent task remains stuck in accepted; refund/deliver paths blocked
Summary
A paid x402 OKX AI agent task remains stuck in accepted status after successful on-chain USDT payment.
The normal provider/buyer resolution paths appear unavailable for paymentMode = 3 x402 tasks.
This blocks truthful reconciliation between buyer and provider because:
- provider
agree-refund requires the task to be REJECTED, but current status is accepted;
- provider
deliver/submit is rejected because x402 tasks skip escrow submit;
- buyer-side reject/close/auto-refund was also reported blocked while the task remains
accepted.
Environment
Affected task
jobId: 0xc5750af84051681b1bf39ca2d900bfaf9c0296861f8ab504e5f5dda4905e11e5
taskId: 404613
buyerAgentId: 4844
providerAgentId: 3746
chainId: 196
paymentMode: 3
status: 1
token: USDT 0x779ded0c9e1022225f8e0630b35a9b54be713736
amount: 0.4 USDT
buyerAgentAddress: 0xf4c9fa07f3bb852547fdc4df7c1d9fd9991cfa51
providerAgentAddress: 0xfc9b58e81bce27c2f46558d501228d935f93e802
createTime: null
updateTime: null
Current status output
Task status: accepted
jobId: 0xc5750af84051681b1bf39ca2d900bfaf9c0296861f8ab504e5f5dda4905e11e5
title: AgentForge Business Builder fo
budget: 0.4 USDT
user: 4844
asp: 3746
On-chain payment evidence
Payment appears to have settled successfully on X Layer.
tx: 0x4805532d210623a31328a4c731aeaa4bf47ee666fad8547df3b20f01da75d778
block: 65284873
receipt status: 0x1
USDT Transfer:
from: 0xf4c9fa07f3bb852547fdc4df7c1d9fd9991cfa51
to: 0xfc9b58e81bce27c2f46558d501228d935f93e802
amountAtomic: 400000
amount: 0.4 USDT
Failed resolution paths
Provider-side refund agreement:
{"ok":false,"error":"Wallet API error (code=1001): task status must be REJECTED, current: 1"}
Provider-side deliver/submit:
{"ok":false,"error":"Deliver rejected: paymentMode = 3 (x402) — deliver/submit is only supported for escrow (1).
x402 tasks skip the submit step; the User Agent obtains the deliverable by replaying the ASP's endpoint and calls /direct/complete."}
Buyer-side reject/close/auto-refund was reported blocked while the task remains accepted.
Related task with same stuck status
jobId: 0xaee8aa201d0b862b8017237868c87f697cebb653d14ad28972998c7438a944d7
taskId: 405546
paymentMode: 3
status: 1
amount: 0.4 USDT
tx: 0x5c66e41734f503b6108ad948ec1798ad1ace9f91ebb79cd12f77f9cfa9232b59
That related tx also contains a successful 0.4 USDT transfer from the buyer address to the provider
address.
Requested guidance / fix
Please clarify the intended terminal path for a paid x402 task stuck at accepted:
- Is there a supported buyer-side or provider-side command to move a paid x402 task out of
accepted?
- Should
agree-refund support paymentMode = 3 tasks directly after payment settlement?
- Should there be an admin/platform refund/close path for this state?
- Why can a paid x402 task remain
accepted with createTime/updateTime = null after successful USDT
transfer?
Expected outcome: buyer/provider should have a supported way to either complete, reject/refund, or close a
paid x402 task without relying on escrow-only submit/reject actions.
Bug: paid x402 agent task remains stuck in accepted; refund/deliver paths blocked
Summary
A paid x402 OKX AI agent task remains stuck in
acceptedstatus after successful on-chain USDT payment.The normal provider/buyer resolution paths appear unavailable for
paymentMode = 3x402 tasks.This blocks truthful reconciliation between buyer and provider because:
agree-refundrequires the task to beREJECTED, but current status isaccepted;deliver/submitis rejected because x402 tasks skip escrow submit;accepted.Environment
Affected task
Current status output
On-chain payment evidence
Payment appears to have settled successfully on X Layer.
Failed resolution paths
Provider-side refund agreement:
Provider-side deliver/submit:
Buyer-side reject/close/auto-refund was reported blocked while the task remains
accepted.Related task with same stuck status
That related tx also contains a successful
0.4 USDTtransfer from the buyer address to the provideraddress.
Requested guidance / fix
Please clarify the intended terminal path for a paid x402 task stuck at
accepted:accepted?agree-refundsupportpaymentMode = 3tasks directly after payment settlement?acceptedwithcreateTime/updateTime = nullafter successful USDTtransfer?
Expected outcome: buyer/provider should have a supported way to either complete, reject/refund, or close a
paid x402 task without relying on escrow-only submit/reject actions.