> ## Documentation Index
> Fetch the complete documentation index at: https://docs.digitalreceiptprotocol.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Sequence Diagram

> The full flow of DRP, from payment intent, to viewing the receipt in your card issuer app.

## Flow Diagram

```mermaid theme={null}
sequenceDiagram
    participant User as User
    participant Issuer as Card Issuer App
    participant DRP as DRP API
    participant POS as Merchant POS
    participant Gateway as Payment Gateway

    Note over User,Gateway: Onboarding (One-time)
    User->>Issuer: Enable DRP
    Issuer->>DRP: POST /onboarding/generate-keys
    DRP-->>Issuer: keyId, publicKey, privateKey
    Issuer->>Issuer: Store privateKey securely
    Issuer->>DRP: POST /onboarding/register
    DRP-->>Issuer: userId

    Note over User,Gateway: Purchase
    User->>POS: Tap card
    POS->>DRP: POST /payments/{gateway}/create
    DRP->>DRP: Encrypt receipt
    DRP->>Gateway: Create payment
    Gateway-->>DRP: paymentId
    DRP-->>POS: paymentId

    Note over User,Gateway: View Receipt
    User->>Issuer: Tap "View Receipt"
    Issuer->>User: Biometric/PIN
    User->>Issuer: Consent
    Issuer->>DRP: POST /keys/grant-access
    DRP-->>Issuer: accessToken
    Issuer->>DRP: POST /payments/decrypt
    DRP-->>Issuer: Decrypted receipt
    Issuer-->>User: Display receipt
```
