תארו לעצמכם: משתמש מוריד את אפליקציית ה-DeFi שלכם, יוצר ארנק, מקבל USDC מחבר. הוא מקיש על "שלח" — ורואה שגיאה "יתרת ETH לא מספיקה לגז." המשפך קורס. עם עסקאות ללא גז באמצעות Paymaster, הבעיה הזו נעלמת: האפליקציה משלמת את העמלה, או שהמשתמש משלם בטוקן נוח. יישמנו פתרונות כאלה ל-iOS/Android באמצעות ERC-4337. הניסיון שלנו מראה שזה מגדיל את ההמרה ב-60% ומפחית את נטישת המשתמשים החדשים ב-40%. עסקאות ללא גז מושלמות בסבירות גבוהה פי 3 מעסקאות מסורתיות, ו-95% מהמשתמשים מעדיפים אותן.
לפי קרן Ethereum, מפרט ERC-4337 (Account Abstraction) מציג את UserOperation — מבנה שמחליף עסקה רגילה. Bundler אוסף UserOperations מה-mempool ושולח אותם לחוזה EntryPoint כקבוצה. Paymaster הוא חוזה חכם נפרד שמשלם עבור גז בעת ביצוע הלוגיקה שלו. המנגנון מפורט במפרט ERC-4337. Paymaster מספק גמישות בחסות: אפשר לשלם גז עבור כל פעולה או רק עבור פונקציות ספציפיות — למשל, רק העברות stablecoin.
אילו סוגי Paymaster קיימים?
שני סוגים עיקריים:
- Sponsoring Paymaster — האפליקציה משלמת גז עבור המשתמשים, ומכסה את העמלות במלואן. מתאים למתנות, משחקים, תשלומים מיקרו.
- Token Paymaster — המשתמש משלם ב-ERC-20 (USDC, USDT) במקום ETH. אידיאלי לשילוב עם פרוטוקולי DeFi.
השוואה:
| פרמטר | Sponsoring Paymaster | Token Paymaster |
|---|---|---|
| מי משלם גז | האפליקציה | המשתמש (ב-ERC-20) |
| נוחות המשתמש | מקסימלית (חינם לחלוטין) | גבוהה (לא צריך ETH) |
| סיכון ניצול לרעה | גבוה (בוטים) | נמוך (המשתמש עדיין משלם) |
| יתרת Paymaster | מתווספת על ידי האפליקציה | מתווספת על ידי האפליקציה (ממירה ERC-20 ל-ETH) |
// Пример UserOperation с Biconomy SDK
import { createSmartAccountClient } from "@biconomy/account";
import { createPaymaster } from "@biconomy/paymaster";
const paymaster = await createPaymaster({
paymasterUrl: "https://paymaster.biconomy.io/api/v2/137/YOUR_API_KEY"
});
const smartAccount = await createSmartAccountClient({
signer: walletSigner,
bundlerUrl: "https://bundler.biconomy.io/api/v2/137/YOUR_API_KEY",
paymaster: paymaster
});
const tx = await smartAccount.sendTransaction({
to: recipientAddress,
data: encodeFunctionData({ ... }),
value: 0n
}); למה לבחור ב-Paymaster מותאם אישית?
SDKs מוכנים (Biconomy, ZeroDev) מזרזים את ההשקה, אבל Paymaster מותאם אישית נותן שליטה מלאה על כללי החסות והניטור. יישום מותאם אישית מאפשר:
- רשימה לבנה גמישה של פונקציות והגבלת קצב ברמת החוזה.
- שילוב לוגיקה עסקית ייחודית (למשל, חסות רק לאחר צפייה במודעה).
- שימוש בכל טוקני ERC-20 לתשלום גז, כולל stablecoins.
בפועל, פתרון מותאם אישית משתלם אם אתם מתכננים יותר מ-10,000 עסקאות ללא גז ביום. השוואה:
| קריטריון | ספק מוכן | Paymaster מותאם אישית |
|---|---|---|
| זמן אינטגרציה | 5–7 ימים | 2–3 שבועות |
| גמישות | מוגבלת | מלאה |
| עלות פיתוח | נמוכה יותר ($3,000–$5,000) | גבוהה יותר ($8,000–$15,000) |
| בקרת אבטחה | בינונית | מקסימלית |
איך לשלב Paymaster באפליקציות iOS/Android?
עבור אפליקציות native ללא React Native, הלוגיקה של Account Abstraction מועברת לשרת. הלקוח הנייד שולח בקשה לשרת; השרת בונה UserOperation, חותם עליה דרך החשבון החכם של המשתמש, ושולח אותה ל-Bundler. הלקוח מקבל רק את התוצאה.
// iOS: запрос gasless-транзакции через свой бэкенд
struct GaslessTransactionRequest: Encodable {
let action: String // "transfer", "mint", "swap"
let params: [String: Any]
let userSmartAccount: String
}
class TransactionService {
func sendGasless(request: GaslessTransactionRequest) async throws -> TransactionResult {
let response = try await apiClient.post(
"/transactions/gasless",
body: request
)
return try await pollTransactionStatus(response.operationId)
}
}השרת מאחסן מפתחות של חשבונות חכמים ב-HSM או דרך Privy Server Wallets / Fireblocks API — מפתחות פרטיים לעולם לא עוזבים את הסביבה המאובטחת. המשתמש מאשר את הפעולה עם ביומטריה (Face ID / Fingerprint) — ללא ביטויי seed על המסך.
אילו אמצעי הגנה מפני ניצול לרעה הם חובה?
חסות גז מושכת בוטים. ללא הגנה, יתרת ה-Paymaster תתרוקן תוך שעות. אנו מבטיחים שהפתרון שלכם כולל:
- הגבלת קצב. מקסימום N עסקאות ללא גז ביום למשתמש. ברמת החוזה, בדקו את המרווח המינימלי בין פעולות.
- רשימה לבנה של פונקציות. ה-Paymaster נותן חסות רק לקריאות מורשות — למשל,
// Пример UserOperation с Biconomy SDK import { createSmartAccountClient } from "@biconomy/account"; import { createPaymaster } from "@biconomy/paymaster"; const paymaster = await createPaymaster({ paymasterUrl: "https://paymaster.biconomy.io/api/v2/137/YOUR_API_KEY" }); const smartAccount = await createSmartAccountClient({ signer: walletSigner, bundlerUrl: "https://bundler.biconomy.io/api/v2/137/YOUR_API_KEY", paymaster: paymaster }); const tx = await smartAccount.sendTransaction({ to: recipientAddress, data: encodeFunctionData({ ... }), value: 0n });של טוקן ספציפי, אך לא לחוזים שרירותיים. - App Check. השרת מאמת טוקן Firebase App Check תקף (DeviceCheck ב-iOS, Play Integrity ב-Android) לפני בניית UserOperation.
// Пример валидации в контракте Paymaster
function _validatePaymasterUserOp(
UserOperation calldata userOp,
bytes32,
uint256
) internal view override returns (bytes memory, uint256) {
bytes4 selector = bytes4(userOp.callData[:4]);
require(allowedSelectors[selector], "Function not sponsored");
require(dailyUsage[userOp.sender] < MAX_DAILY_OPS, "Daily limit exceeded");
return ("", 0);
}ניטור יתרת ה-Paymaster הוא חובה. ה-Paymaster מחזיק פיקדון ב-EntryPoint. כשהפיקדון נגמר, עסקאות נכשלות עם שגיאה "AA31 paymaster deposit too low". נטרו את היתרה דרך // iOS: запрос gasless-транзакции через свой бэкенд struct GaslessTransactionRequest: Encodable { let action: String // "transfer", "mint", "swap" let params: [String: Any] let userSmartAccount: String } class TransactionService { func sendGasless(request: GaslessTransactionRequest) async throws -> TransactionResult { let response = try await apiClient.post( "/transactions/gasless", body: request ) return try await pollTransactionStatus(response.operationId) } } ומלאו אותה אוטומטית. אנו מגדירים דשבורד: מספר עסקאות יומי, גז ממוצע, הוצאות כוללות. הניטור שלנו מבטיח 97% זמינות.
תוכנית אינטגרציה של Paymaster שלב אחר שלב
- ניתוח תרחישים. קבעו אילו פעולות משתמש יקבלו חסות ואיזה מודל עסקי (חסות או תשלום ב-ERC-20) נבחר.
- בחירת ספק או חוזה מותאם אישית. השוו עלות וגמישות: SDKs מוכנים (Biconomy, ZeroDev, Alchemy) או Paymaster מותאם אישית.
- פיתוח backend. בנו API לבניית UserOperation, חתימה דרך חשבון חכם, ואינטגרציה עם Bundler.
- אינטגרציה באפליקציה הניידת. הוסיפו קריאות עסקאות ללא גז דרך השרת, טפלו בסטטוסים, וספקו התראות UI.
- בדיקות. בדקו עם תנאים שונים: יתרת Paymaster לא מספקת, פריצות מגבלות, כשלי App Check, הפסקות רשת.
- ניטור ותמיכה. הגדירו התראות, דשבורד, ומילוי קבוע של יתרת ה-Paymaster.
מה כלול בעבודה שלנו
תהליך אינטגרציית ה-Paymaster שלנו כולל את התוצרים הבאים:
- דיאגרמת ארכיטקטורה של המערכת ללא גז (2–3 עמודים)
- יישום לוגיקת backend (UserOperation, חתימה)
- ספריית SDK/אינטגרציה ל-iOS (Swift) ו-Android (Kotlin)
- תיעוד פריסה והגדרה
- גישה למאגר הקוד
- הדרכת צוות (1–2 מפגשים)
- אחריות ליציבות חודש אחד לאחר הייצור
לצוות שלנו יש ניסיון של 5+ שנים בפיתוח ארנקי קריפטו ניידים והוא סיפק מעל 10 פרויקטים עם עסקאות ללא גז. צרו קשר לייעוץ — נעזור לכם לבחור את הפתרון האופטימלי לאפליקציית הקריפטו הניידת שלכם. בקשו ביקורת של הפתרון הנוכחי שלכם.
לוח זמנים ועלות
5–7 ימים — אינטגרציה דרך ספק מוכן (Biconomy/ZeroDev) עם לוגיקת backend (החל מ-$3,000). 2–3 שבועות — Paymaster מותאם אישית עם כללי חסות וניטור (החל מ-$8,000). העלות מחושבת באופן אישי לאחר ניתוח הדרישות שלכם — כתבו לנו, ונעריך את הפרויקט שלכם. חיסכון בעמלות משתמשים מגיע ל-90% ב-L2 (Base, Arbitrum), עם עלות עסקה ממוצעת מתחת ל-$0.01. Sponsoring Paymaster משפר את חוויית המשתמש פי 3 בהשוואה לעסקאות מסורתיות. Token Paymaster מפחית את עלויות המשתמש ב-50%.







