pub struct OnchainSignedPayload {
pub payload_id: Option<String>,
pub signature: Option<String>,
}Expand description
A processed onchain payload containing the payload ID and the payer’s signature or transaction hash. The signature value depends on the original payload type:
- eip3009 / permit2 / spend_permission — a hex-encoded signature from eth_signTypedData_v4.
- erc20_approval — a hex-encoded transaction hash from eth_sendTransaction.
- solana_subscription — the 64-byte ed25519 signature for the payer that
signed, extracted from the signed Solana transaction and base58-encoded.
Not the signed transaction bytes, and not 0x-prefixed hex.
JSON schema
{
"description": "A processed onchain payload containing the payload ID and the payer's signature or transaction hash. The `signature` value depends on the original payload `type`:\n- `eip3009` / `permit2` / `spend_permission` — a hex-encoded signature from `eth_signTypedData_v4`.\n- `erc20_approval` — a hex-encoded transaction hash from `eth_sendTransaction`.\n- `solana_subscription` — the 64-byte ed25519 signature for the payer that\n signed, extracted from the signed Solana transaction and base58-encoded.\n Not the signed transaction bytes, and not `0x`-prefixed hex.",
"examples": [
{
"payloadId": "payload_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"signature": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab"
}
],
"type": "object",
"properties": {
"payloadId": {
"description": "The unique identifier of the signed payload.",
"examples": [
"payload_af2937b0-9846-4fe7-bfe9-ccc22d935114"
],
"type": "string"
},
"signature": {
"description": "The output from processing the payload. For `eip3009`, `permit2`, and `spend_permission` types, this is the cryptographic signature returned by `eth_signTypedData_v4`. For `erc20_approval` types, this is the transaction hash returned by `eth_sendTransaction`. For `solana_subscription`, this is the payer's 64-byte ed25519 signature extracted from the signed Solana transaction and base58-encoded, not the signed transaction bytes or `0x`-prefixed hex.",
"examples": [
"0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab"
],
"type": "string"
}
}
}Fields§
§payload_id: Option<String>The unique identifier of the signed payload.
signature: Option<String>The output from processing the payload. For eip3009, permit2, and spend_permission types, this is the cryptographic signature returned by eth_signTypedData_v4. For erc20_approval types, this is the transaction hash returned by eth_sendTransaction. For solana_subscription, this is the payer’s 64-byte ed25519 signature extracted from the signed Solana transaction and base58-encoded, not the signed transaction bytes or 0x-prefixed hex.