get_transactions
Obtém o histórico de transações paginado, em todas as smart accounts do utilizador. Devolve um objeto JSON { transactions, pagination }. Devolve o resultado vazio (transactions: [], paginação a zeros) se a passkey não controla nenhuma smart account.
Âmbito necessário: read:transactions
Parâmetros:
| Nome | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
page_number | number | não | 1 | Número da página, começa em 1. |
page_size | number | não | 20 | Resultados por página (máx. 100). |
chain_id | number | não | — | Filtra por chain ID (ex. 1 Ethereum, 8453 Base, 100 Gnosis). |
account_type | "picnic" | "gnosisPay" | não | — | Filtra pelo tipo de smart account — picnic (conta principal) ou gnosisPay (conta do cartão). |
smart_account_address | string | não | — | Filtra para um único endereço de smart account (case-insensitive). Descubra endereços via get_smart_accounts. |
Campos devolvidos:
| Campo | Tipo | Descrição |
|---|---|---|
transactions[].type | "cryptoTransfer" | "cardTransaction" | "rampOrder" | "rampOrderWithSwap" | "swap" | "investment" | Tipo de transação. |
transactions[].status | "success" | "pending" | "failed" | "partial" | "refunded" | "unknown" | Estado da liquidação. |
transactions[].executedAt | date | Quando a transação executou. |
transactions[].receipts | array | Recibos on-chain. Múltiplas entradas para transações cross-chain (ex.: bridges). |
transactions[].receipts[].chainId | number | Cadeia do recibo. |
transactions[].receipts[].txHash | string | Hash da transação. |
transactions[].flows[] | array | Pernas da movimentação. Um swap tem 2 flows (outflow + inflow); uma transferência tem 1. |
transactions[].flows[].smartAccount.address | string | null | Endereço da smart account a que a flow pertence. |
transactions[].flows[].smartAccount.chainId | number | null | Cadeia dessa smart account. |
transactions[].flows[].smartAccount.type | "picnic" | "gnosisPay" | "agentWallet" | "unknown" | Tipo de smart account. |
transactions[].flows[].direction | "inflow" | "outflow" | Direção relativa à smart account. |
transactions[].flows[].assetId | string | null | Identificador CAIP (opens in a new tab) (eip155:{chainId}/erc20:{address}, bep20 na chain 56, slip44:60 para nativos). |
transactions[].flows[].symbol | string | Símbolo do token (ex.: USDC, EURE). |
transactions[].flows[].formattedAmount | string | null | Quantidade em formato decimal (ex.: "52.5"). String, tal como formattedAmount em get_balances. |
transactions[].flows[].values.usd | number | null | Valor da flow convertido para USD. null se não houver taxa. |
transactions[].flows[].values.eur | number | null | Valor convertido para EUR. |
transactions[].flows[].values.brl | number | null | Valor convertido para BRL. |
pagination.pageNumber | number | Página atual (1-indexada). |
pagination.pageSize | number | Tamanho de página usado. |
pagination.totalCount | number | Total de transações correspondentes. |
pagination.totalPages | number | ceil(totalCount / pageSize). |
Campos por tipo:
Quando type === "cardTransaction", a transação tem também purchase com dados do estabelecimento e da cobrança:
| Campo | Tipo | Descrição |
|---|---|---|
purchase.merchant | string | null | Nome do estabelecimento. |
purchase.merchantCity | string | null | Cidade do estabelecimento. |
purchase.merchantCountry | string | null | País do estabelecimento (normalmente ISO alpha-2). |
purchase.mcc | string | null | Merchant Category Code (4 dígitos ISO 18245), quando o provider reporta. |
purchase.kind | string | null | Tipo da transação no provider — ex.: "Payment", "Refund", "Reversal". |
purchase.status | string | null | Estado no provider — ex.: "Approved", "Declined". |
purchase.isPending | boolean | null | Se a transação ainda está pendente. |
purchase.billingAmount | string | null | Valor cobrado (em unidades maiores de billingCurrency). |
purchase.billingCurrency | string | null | Código ISO da moeda de cobrança. |
purchase.transactionAmount | string | null | Valor no ponto de venda (em unidades maiores de transactionCurrency). |
purchase.transactionCurrency | string | null | Código da moeda no ponto de venda. |
purchase.cardId | string | null | Faz cross-reference com o cardId em get_card. |
purchase.cardName | string | null | Etiqueta do cartão. |
purchase.lastFourDigits | string | null | PAN mascarado. |
Quando type === "rampOrder" ou "rampOrderWithSwap", a transação tem ramp:
| Campo | Tipo | Descrição |
|---|---|---|
ramp.provider | string | null | Provider de ramp (ex.: "brla", "avenia", "monerium"). |
ramp.type | "deposit" | "depositWithSubsequentSwap" | "withdrawal" | null | Direção do ramp. |
Quando type === "investment", a transação tem investment:
| Campo | Tipo | Descrição |
|---|---|---|
investment.type | "deposit" | "withdrawal" | "send-native-btc" | null | Direção do investimento. |
investment.product | string | null | Produto de investimento (ex.: "EarnDollarUSDC", "DeFiBasketEasyPassiveUSD"). |
Exemplo de pergunta:
"Mostra-me as minhas últimas 30 transações na Picnic."