# `Onchain.Tempo.Transfer`
[🔗](https://github.com/ZenHive/onchain-stack/blob/onchain_tempo-v0.10.0/packages/onchain_tempo/lib/onchain/tempo/transfer.ex#L1)

Tempo-specific `TransferWithMemo` event log parsing.

TIP-20 extends ERC-20 with `transferWithMemo(address,uint256,bytes32)`. This
module parses the corresponding event logs. Standard `Transfer` event parsing
is handled by `Onchain.Transfer` in the core onchain package.

## Usage

    receipt = Onchain.Tempo.RPC.parse_receipt(raw_receipt)
    memo_transfers = Onchain.Tempo.Transfer.parse_transfer_with_memo_logs(receipt.logs)

# `parse_transfer_with_memo_logs`

```elixir
@spec parse_transfer_with_memo_logs([map()]) :: [map()]
```

Parse `TransferWithMemo` events from a list of atom-keyed log entries.

Returns a flat list of maps with `:token`, `:from`, `:to`, `:amount`, `:memo`
keys. Non-matching logs are silently skipped.

The output shape matches `Onchain.Transfer` structs with an additional `:memo`
field, enabling uniform matching in callers.

# `transfer_with_memo_sig`

```elixir
@spec transfer_with_memo_sig() :: String.t()
```

Returns the `TransferWithMemo` event signature string.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
