Overview
Sovran provides detailed transaction timelines that show the progress of each payment through its lifecycle. The timeline displays state transitions, timestamps, and helpful context about each step.Transaction Types
Each transaction type has its own timeline progression:Mint Transactions (Receiving Lightning)
components/blocks/Transaction/HistoryEntryTimeline.tsx
- Waiting for payment: Invoice created, awaiting payment
- Payment received: Lightning payment confirmed
- Complete: Ecash issued and added to wallet
Melt Transactions (Sending Lightning)
components/blocks/Transaction/HistoryEntryTimeline.tsx
- Ready to send: Quote created, ready to execute
- Sending: Payment in progress
- Sent: Lightning payment completed
Send Transactions (Ecash)
components/blocks/Transaction/HistoryEntryTimeline.tsx
- Created: Token prepared and ready to share
- Pending: Waiting for recipient to claim
- Claimed: Recipient has redeemed the token
components/blocks/Transaction/HistoryEntryTimeline.tsx
- Created: Token created for payment request
- Delivered: Sent via Nostr DM
- Pending: Waiting for recipient
- Claimed: Recipient has redeemed
Receive Transactions (Ecash)
components/blocks/Transaction/HistoryEntryTimeline.tsx
- Pending: Token received, not yet redeemed
- Added to wallet: Token successfully claimed
Timeline Components
Step Types
Each timeline step has a visual type:components/blocks/Transaction/HistoryEntryTimeline.tsx
Visual Indicators
Timeline Dots:components/blocks/Transaction/HistoryEntryTimeline.tsx
components/blocks/Transaction/HistoryEntryTimeline.tsx
Real-time Updates
Timelines update in real-time for pending transactions:components/blocks/Transaction/HistoryEntryTimeline.tsx
Expiry Tracking
For transactions that can expire, the timeline shows time remaining:components/blocks/Transaction/HistoryEntryTimeline.tsx
Transaction Header
Each timeline includes a header showing the amount and icon:components/blocks/Transaction/HistoryEntryHeader.tsx
Mint Information
Timelines can display the mint being used:components/blocks/Transaction/HistoryEntryRefresh.tsx
Status Labels
The timeline generates contextual status labels:components/blocks/Transaction/HistoryEntryTimeline.tsx