Skip to content

Get payout status

Fetch the latest status of a previously created payout.

Requires Authorization: Bearer <Agent JWT>.

bash
curl https://walletapi.fluxapay.xyz/api/payouts/po_abc123 \
  -H "Authorization: Bearer $AGENT_JWT"

200 OK:

json
{
  "payout": {
    "payoutId": "po_abc123",
    "status": "confirmed",
    "txHash": "0xabc...def",
    "approvalUrl": null,
    "expiresAt": 1713340800,
    "toAddress": "0x1234...5678",
    "amount": "1000000",
    "currency": "USDC",
    "network": "base",
    "assetAddress": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "agentId": "agent_001",
    "agentName": "My Agent",
    "failureReason": null,
    "createdAt": 1713254400,
    "executedAt": 1713254460
  }
}

Response fields

FieldDescription
payoutIdPayout ID
statusCurrent status (see Payouts for the full state machine)
txHashOn-chain tx hash (available after broadcast)
approvalUrlUser approval URL (only present in pending_authorization)
expiresAtExpiry (Unix timestamp)
toAddressDestination EVM address
amountAmount in atomic units
currencyCurrency symbol
networkBlockchain network
assetAddressToken contract address
agentIdOriginating agent ID
agentNameOriginating agent name
failureReasonFailure reason string (present when status = failed)
createdAtCreation timestamp (Unix)
executedAtBroadcast timestamp (Unix); null until broadcast

Status transitions

pending_authorization → authorized → signing → signed → broadcasting → succeeded → confirmed

Any state can transition to failed. See the full state machine for details, including the tx_confirmation_timeout non-terminal case.

Poll until a terminal state (confirmed, failed with a deterministic failureReason, or user_denied), or call on demand for history / reconciliation.

Released under the MIT License.