# Product

## Problem

Crypto-native communities need lightweight ways to run **fair, transparent raffles** without building custom custody, reconciliation, and payout tooling. Chat is where those communities already coordinate—especially on Telegram.

## Solution

WAFFL combines:

* **Telegram** as the primary UX: create raffles, share deposit instructions, and manage lifecycle from the group.
* A **backend** that holds canonical raffle state, watches **XRP Ledger** payments to group vault addresses, and drives completion, refunds, and messaging.
* A **public web dashboard** so anyone can discover and enter raffles with clear stats and status.
* An **internal ops** surface for health, queues, and manual interventions when needed.

## Participants

| Role                      | Experience                                                                                              |
| ------------------------- | ------------------------------------------------------------------------------------------------------- |
| **Organizers / creators** | Configure prizes, timing, and fundraising rules; receive payouts per raffle settings.                   |
| **Participants**          | Send XRP to a vault address (with destination tags where used); tickets accrue from confirmed deposits. |
| **Operators**             | Run infrastructure, monitor queues and incidents, and use guarded tools for edge cases.                 |

## Core flows (conceptual)

1. **Create** — A raffle is defined in the system (prize type, timing, minimums, vault linkage).
2. **Enter** — Users pay XRP on-chain; the backend attributes payments to the correct raffle and issues tickets idempotently.
3. **Close** — When time or conditions are met, the platform **completes** or **cancels**: winner selection, fund distribution, or refunds as applicable.
4. **Notify** — Users receive updates through Telegram (and the public site reflects status).

## Prize types (directional)

The platform supports patterns common to XRP communities—including **XRP pots**, **token/IOU** prizes, and **NFT** flows where implemented—with completion logic enforced server-side so vault behavior stays consistent.

## Design principle

**Telegram owns the conversation; the backend owns the ledger.** On-chain signing, deposit matching, and payout caps are centralized in one service layer so bots and web apps stay thin and auditable.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.waffl.fun/reference-technical/product.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
