# User Guide

## Mint to Earn Overview

Through the zkPass protocol, users can verify their off-chain platform data (e.g., social accounts, travel, business trips) to generate a zero-knowledge proof credential (zk-VC), which is then stored on-chain.\
This credential serves as a verifiable credit carrier, helping users build decentralized credit profiles.\
When verification is successful and meets the rules, users can earn token rewards — this is Mint to Earn.

## Verification Flow & Rules

<figure><img src="/files/yxPOIaVi1RU6VqtxCtsO" alt=""><figcaption></figcaption></figure>

#### 1. Data Verification & Credential Generation

* Users choose the data source to be verified (e.g., Twitter follow @PolyFlow).
* zkPass uses zkTLS technology to directly access HTTPS data sources and generate a zero-knowledge proof confirming data authenticity.
* The credential only includes verification results (e.g., Twitter Follower Count) rather than raw data. Raw data never leaves the user’s device, ensuring full privacy protection.

#### 2. On-Chain Storage & Reward Trigger

* Credentials are stored on-chain via smart contracts as publicly verifiable records, while rewards are distributed automatically.
* Uniqueness constraint: the same data source (e.g., Twitter Blue Badge) can only be uploaded once. Duplicate attempts are blocked.

#### 3. Validity & Renewal Mechanism

* On-chain credentials have a 2-year validity period ⏳. After expiration, re-verification is required to update credit records and maintain data accuracy.
* If verification fails or conditions are not met, users can re-submit unlimited times until successful.

## Using the zkPass Plugin

### **1. PC (Highly Recommended)**

Recommended setup:

* Browser: Latest Google Chrome or Brave

<figure><img src="/files/ECjOFa8BRXtTVIz15eCU" alt=""><figcaption></figcaption></figure>

**Instructions:**

* Option 1: Install **TransGate** from the official Google Chrome Web Store.\
  \&#xNAN;**⚠️ Important:**\
  Do not install TransGate extensions from third-party sources. Always use official links to protect your accounts.
* Grant permissions for pop-ups and cross-site cookies (disabling may block the verification process).
* Log in to the data source normally. zkPass will run in-browser; do not close the tab during verification.

**Note:**\
Ad blockers or privacy extensions may interfere with wallet communication. If issues occur, temporarily disable them.

**Important Note:** Since mobile service may be unstable, we recommend using the Google extension on PC for the best experience!

### **2. 📱 iOS (iPhone)**

* App Clip access — no installation required.\
  zkPass SDK fully supports Apple’s App Clip experience, delivering a seamless and secure verification process.

**How to use:**

* Open the zkPass-integrated dApp link in Safari or scan the QR code.
* An App Clip card will appear — tap Open to start verification.
* Complete wallet connection and data verification inside the App Clip.
* Return to the main dApp after finishing. No persistent app or background service is kept.

**Requirements:**

* iOS 14.3 or above
* Safari or Camera (for QR scanning)
* App Clips enabled in Settings → App Clips

**Note:**

* Wallet connection is handled in-session (MetaMask or WalletConnect).

All processes are sandboxed under Apple’s App Clip privacy rules.

<figure><img src="/files/FHJDe9K4qOZe2z5jmsxB" alt=""><figcaption></figcaption></figure>

### 3. 📱 Android Devices

**Requirement:** Install the official TransGate app from Google Play.

* zkPass SDK runs via the native TransGate client to ensure secure proof generation.

✅ **Recommended setup:** Chrome Browser + MetaMask Mobile App

* Open the dApp link in Chrome or other Chromium-based browsers.
* When prompted, connect your wallet with MetaMask or WalletConnect.
* Approve requests in MetaMask and return to the browser tab to complete verification.

⚠️ Note on MetaMask in-app browser (Android):

* Due to system limitations, it does not fully support dApp redirects or advanced authentication.
* For best stability, use a standalone browser.

**Compatibility:**

* TransGate Android app supports Android 12+.
* For incompatible devices, use Mise Browser + TransGate Extension:
* Download Mise browser:[ https://mise.xyz](https://mise.xyz/)
* Open Chrome Web Store → Add TransGate extension in Mise
* After installation, TransGate icon will appear in the top-right. Open any zkPass-supported page to begin.<br>

***

## Verified Platforms, Data, & Rewards

Full list of supported verifications and reward mappings:

<figure><img src="/files/Lm34OTnV3kY289nFTLJN" alt=""><figcaption></figcaption></figure>

## Mint to Earn Rewards

### **Rewards include:**

* PolyFlow Points
* Roam eSIM mobile data
* UMY discount vouchers<br>

1. **Roam — a partner providing global eSIM services:**\
   Roam eSIM redemption available directly\
   Download the Roam app and activate instantly

<figure><img src="/files/y6gS2KAKfA7ZGFoJa3zy" alt=""><figcaption></figcaption></figure>

<div data-full-width="true"><figure><img src="/files/LuzfJ3WFUI7TIYlNli80" alt="" width="315"><figcaption></figcaption></figure></div>

2. **UMY Discount Voucher Redemption**

* UMY (Umy.com) is a leading global Web3 travel & lifestyle platform for crypto holders, digital nomads, and Web3 users.
* By leveraging blockchain, UMY addresses traditional travel pain points like high costs, weak privacy, and complicated cross-border payments.
* Mint to Earn users can redeem UMY vouchers for discounts on travel and services.

**Tips:**

1. The redemption validity period for Roam eSIM data vouchers is until September 10, 2026. Availability is limited to a total of 2,000GB, offered on a first-come, first-served basis. Once all vouchers are claimed, no further eSIM rewards will be issued.
2. UMY Reward Validity: UMY code vouchers must be redeemed by November 21.


---

# 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.polyflow.tech/mint-to-earn-season/user-guide.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.
