Picnic agents is in early access — read-only access only for now.
EN
Docs
Tools
get_transactions

get_transactions

Get paginated transaction history across the user's smart accounts. Returns a JSON object { transactions, pagination }. Returns the empty form (transactions: [], zeroed pagination) if the passkey controls no smart accounts.

Required scope: read:transactions

Parameters:

NameTypeRequiredDefaultDescription
page_numbernumberno1Page number, starting at 1.
page_sizenumberno20Results per page (max 100).

Returned fields:

FieldTypeDescription
transactions[].type"cryptoTransfer" | "cardTransaction" | "rampOrder" | "rampOrderWithSwap" | "swap" | "investment"Kind of transaction.
transactions[].status"success" | "pending" | "failed" | "partial" | "refunded" | "unknown"Settlement state.
transactions[].executedAtdateWhen the transaction executed.
transactions[].receiptsarrayOn-chain receipts. Multiple entries for cross-chain transactions (e.g. bridges).
transactions[].receipts[].chainIdnumberChain the receipt is on.
transactions[].receipts[].txHashstringTransaction hash.
transactions[].flows[]arrayMoney movement legs. A swap has two flows (outflow + inflow); a transfer has one.
transactions[].flows[].smartAccount.addressstring | nullSmart account address the flow belongs to.
transactions[].flows[].smartAccount.chainIdnumber | nullChain of that smart account.
transactions[].flows[].smartAccount.type"picnic" | "gnosisPay" | "agentWallet" | "unknown"Type of smart account.
transactions[].flows[].direction"inflow" | "outflow"Direction relative to the smart account.
transactions[].flows[].assetIdstring | nullCAIP (opens in a new tab) asset identifier (eip155:{chainId}/erc20:{address}, bep20 on chain 56, slip44:60 for natives).
transactions[].flows[].symbolstringToken symbol (e.g. USDC, EURE).
transactions[].flows[].formattedAmountstring | nullDecimal-formatted amount (e.g. "52.5"). String, like formattedAmount in get_balances.
transactions[].flows[].values.usdnumber | nullFlow value converted to USD. null if no rate.
transactions[].flows[].values.eurnumber | nullFlow value converted to EUR.
transactions[].flows[].values.brlnumber | nullFlow value converted to BRL.
pagination.pageNumbernumberCurrent page (1-indexed).
pagination.pageSizenumberPage size used.
pagination.totalCountnumberTotal transactions matching.
pagination.totalPagesnumberceil(totalCount / pageSize).

Type-specific fields:

When type === "cardTransaction", the transaction also includes a purchase object with merchant and billing details:

FieldTypeDescription
purchase.merchantstring | nullMerchant name.
purchase.merchantCitystring | nullMerchant city.
purchase.merchantCountrystring | nullMerchant country (ISO alpha-2 in most cases).
purchase.mccstring | nullMerchant Category Code (4-digit ISO 18245), when reported by the provider.
purchase.kindstring | nullProvider transaction kind — e.g. "Payment", "Refund", "Reversal".
purchase.statusstring | nullProvider status — e.g. "Approved", "Declined".
purchase.isPendingboolean | nullWhether the card transaction is still pending.
purchase.billingAmountstring | nullAmount billed (in billingCurrency major units).
purchase.billingCurrencystring | nullBilling ISO currency code.
purchase.transactionAmountstring | nullAmount at the point of sale (in transactionCurrency major units).
purchase.transactionCurrencystring | nullPoint-of-sale currency code.
purchase.cardIdstring | nullCross-references get_card's cardId.
purchase.cardNamestring | nullUser-set card label.
purchase.lastFourDigitsstring | nullMasked PAN.

When type === "rampOrder" or "rampOrderWithSwap", the transaction includes a ramp object:

FieldTypeDescription
ramp.providerstring | nullUnderlying ramp provider (e.g. "brla", "avenia", "monerium").
ramp.type"deposit" | "depositWithSubsequentSwap" | "withdrawal" | nullRamp direction.

When type === "investment", the transaction includes an investment object:

FieldTypeDescription
investment.type"deposit" | "withdrawal" | "send-native-btc" | nullInvestment direction.
investment.productstring | nullInvestment product (e.g. "EarnDollarUSDC", "DeFiBasketEasyPassiveUSD").

Example prompt:

"Show me my last 30 Picnic transactions."