Skip to main content
POST
/
api
/
payouts
/
transfer
/
v2
/
confirm-transfer
Confirm a v2 transfer
curl --request POST \
  --url https://business.madhousewallet.com/api/payouts/transfer/v2/confirm-transfer \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "transfer_id": "507f1f77bcf86cd799439011",
  "tx_hash": "0xabc123def456abc123def456abc123def456abc123def456abc123def456abc1"
}
'
{
  "transfer_id": "507f1f77bcf86cd799439011",
  "status": "pending_match",
  "message": "tx_hash recorded — the system will match your deposit and initiate the payout automatically"
}

Authorizations

Authorization
string
header
required

Pass your API key as a Bearer token: Authorization: Bearer mw_live_<keyId>_<secret>

Body

application/json
transfer_id
string
required

The transfer_id returned by POST /api/payouts/transfer/v2.

Example:

"507f1f77bcf86cd799439011"

tx_hash
string
required

On-chain transaction hash of your USDC send. EVM format: 0x followed by 64 hex chars (32 bytes). Solana format: base58 signature (85–88 chars).

Example:

"0xabc123def456abc123def456abc123def456abc123def456abc123def456abc1"

Response

tx_hash recorded or already processing

transfer_id
string
required

The transfer ID.

Example:

"507f1f77bcf86cd799439011"

status
enum<string>
required

Current transfer status after recording the hash.

Available options:
awaiting_deposit,
pending_match,
processing,
deposit_sent,
transfer_created,
completed,
failed,
refunded
Example:

"pending_match"

message
string
required

Human-readable summary of the action taken.

Example:

"tx_hash recorded — the system will match your deposit and initiate the payout automatically"