אינטגרציה עם NFTfi
אתה בונה פלטפורמת נחיתה או שוק NFT, ומשתמשים מבקשים אפשרות לקחת הלוואה כנגד NFT עם תקופה קבועה וריבית קבועה. ללא אורקלים של פירוק או AMM — רק peer-to-peer. NFTfi הוא אחד הפרוטוקולים הוותיקים ביותר, עם ביקורת ומסמכים מקיפים. עם זאת, אינטגרציה דורשת טיפול נכון בהצעות EIP-712, ניטור מצב ותנאי מרוץ. אנו מיישמים אינטגרציה מלאה: מחתימת הצעה ועד ניטור הלוואות דרך subgraph.
ליבת הפרוטוקול מורכבת משני חוזים מרכזיים: NftfiHub (רישום ונתב) ו-DirectLoanFixedOffer (הלוואות בריבית קבועה). מאז v2.1, נוסף DirectLoanFixedOfferRedeploy עם תמיכה ב-ERC-1155. הזרימה האופיינית: הלווה נועל NFT, מקבל ETH או USDC, ואם לא מחזיר, ה-NFT עובר למלווה. אין אורקלים של פירוק — רק הלוואה לתקופה קבועה נקייה.
| חוזה | גרסה | מטרה |
|---|---|---|
| NftfiHub | v2.0+ | רישום ונתב לכל סוגי ההלוואות |
| DirectLoanFixedOffer | v2.0 | הלוואות בריבית קבועה עם ERC-721 |
| DirectLoanFixedOfferRedeploy | v2.1 | תמיכה ב-ERC-1155 ולוגיקה מעודכנת |
איך פרוטוקול NFTfi עובד
- הלווה קורא ל-approve עבור ה-NFT לכתובת NFTfi, ואז מקבל הצעה דרך acceptOffer.
- המלווה יוצר הצעה חתומה מחוץ לשרשרת (EIP-712) המאוחסנת במסד הנתונים של NFTfi או בשרת האחורי שלך.
- בעת acceptOffer, החוזה מעביר את ה-NFT לעצמו, שולח טוקנים ללווה, ומטביע NFT של שטר חוב (ERC-721) למלווה.
- בתום התקופה: payBackLoan מהלווה או liquidateOverdueLoan מהמלווה.
מהי מבנה ההצעה (EIP-712)?
אינטגרציה דרך חתימת הצעות היא המקום שבו מתרחשות רוב השגיאות. ההצעה מכילה:
struct Offer {
uint256 loanPrincipalAmount;
uint256 maximumRepaymentAmount;
uint256 nftCollateralId;
address nftCollateralContract;
uint32 loanDuration; // в секундах
uint16 loanAdminFeeInBasisPoints;
address loanERC20Denomination;
address referrer;
}החתימה נוצרת דרך signTypedData ב-ethers.js או viem, תוך שימוש במפריד הדומיין של חוזה NFTfi. מפריד הדומיין כולל את chainId — הצעה לרשת הראשית של Ethereum אינה תקפה ב-Goerli, גם אם כתובת החוזה תואמת. ראה EIP-712 לפרטים.
טעות נפוצה: טיפול לא נכון במצבי ביניים של הלוואה
הלוואה יכולה להיות במצבים: פעילה, מוחזרת, מחוסלת, או במקרה קצה — כאשר הבלוק עם payBackLoan נכרה לאחר שתום loanDuration אך לפני קריאה ל-liquidateOverdueLoan. החוזה מקבל את שתי הקריאות בחלון זמן קצר (בדרך כלל 2–5 בלוקים, 30–60 שניות ב-Ethereum, 4–10 שניות ב-Polygon). אם החזית לא מעדכנת את הסטטוס בצורה אטומית, משתמש עלול לראות הלוואה פעילה שכבר חוסלה.
גישה מומלצת: האזן לאירועים LoanStarted, LoanRepaid, LoanLiquidated דרך ethers.js provider.on או subgraph של The Graph. ה-subgraph עדיף לממשק משתמש — הוא מאפשר שאילתות מורכבות (כל ההלוואות הפעילות לאוסף, היסטוריית הלוואות לכתובת). אירועים בשרשרת נותנים זמן השהיה כמעט אפסי אך דורשים סינון ידני. ה-subgraph מתעכב עד 30 שניות אך השאילתות פשוטות פי 10 לניתוחים.
| שיטת ניטור | זמן השהיה | מורכבות שאילתה | אמינות |
|---|---|---|---|
| אירועים בשרשרת (ethers) | זמן אמת | נמוכה — נדרש סינון ידני | גבוהה (ללא תלות בתשתית) |
| Subgraph של The Graph | ~30 שניות | גבוהה — GraphQL עם צבירות | בינונית (תלוי בצומת) |
למה לבחור ב-NFTfi להלוואות P2P?
NFTfi הוא אחד הפרוטוקולים הוותיקים ביותר בנישה זו עם חוזים חכמים מבוקרים ומסמכים מקיפים. הצעות מחוץ לשרשרת מפחיתות עלויות גז למלווה (אין צורך בעסקה ליצירה). המטבעות הנתמכים כוללים ETH, USDC, DAI, וטוקני ERC-20 מאושרים אחרים. שימוש ב-SDK של @nftfi/js מאיץ פיתוח — ה-SDK מהיר פי 2 ליישום מאשר אינטגרציית ABI גולמית. עסקת acceptOffer ממוצעת ב-Ethereum עולה כ-$50 בגז; ב-Polygon, פחות מ-$1. חבילות האינטגרציה שלנו מתחילות ב-$3,000. אנו מבטיחים אינטגרציה איכותית עם חוזים מבוקרים וניסיון רב. הצוות שלנו השלים למעלה מ-15 פרויקטים עם NFTfi. הזמינו אינטגרציית NFTfi לפרויקט שלכם — קבלו ייעוץ מותאם למקרה שלכם.
מה כלול באינטגרציה
- SDK/ספרייה: @nftfi/js הרשמי לאינטגרציה מהירה או עבודה ישירה עם ABI לשליטה מלאה בהערכת גז.
- שאילתות Subgraph: GraphQL להצעות פעילות, היסטוריית הלוואות, נתוני אוספים. משולב דרך @apollo/client או urql.
- מטבעות הלוואה: ETH, USDC, DAI, וטוקני ERC-20 מאושרים אחרים. דורש לוגיקת approve לכל מטבע מהמלווה לפני יצירת הצעה.
- מערכת הפניות: תמיכה בכתובת מפנה בהצעות — דרך למונטיזציה של האינטגרציה.
אינטגרציית NFTfi שלנו כוללת הלוואות peer-to-peer עם תקופה קבועה, תוך שימוש בהצעות EIP-712 וחוזים חכמים.
רשימת בדיקה של שגיאות אינטגרציה נפוצות
- chainId שגוי במפריד הדומיין — הצעה לא תקפה ברשת אחרת.
- חוסר approve ל-NFT לפני acceptOffer — העסקה נכשלת.
- התעלמות מאירוע LoanLiquidated לאחר payBackLoan — חוסר סנכרון מצב.
- פירוש שגוי של loanDuration בשניות — בלבול עם דקות.
- חוסר בדיקת deadline — הצעות מיושנות יכולות להתקבל.
תוצרים
- מסמכים מלאים של האינטגרציה (API, אירועים, שאילתות subgraph).
- גישה לנקודות קצה של subgraph וללוח מחוונים.
- הדרכה לצוות שלך על חתימת הצעות וניטור.
- חודש של תמיכה לאחר השקה ותיקוני באגים.
תהליך
- לימוד ABI ובדיקות ברשת בדיקה (יום אחד). פריסת NFT לבדיקה, יצירת הלוואה ידנית דרך החוזה, אימות כל האירועים.
- אינטגרציית שרת אחורי (1–2 ימים). אחסון והעברת הצעות, webhooks לאירועי הלוואה.
- רכיבי חזית (1–2 ימים). טופס יצירת הצעה, תצוגת הלוואות פעילות, זרימת החזר.
הערכות זמן
אינטגרציה בסיסית — יצירה וקבלת הצעות, ניטור הלוואות — 3–5 ימים. ממשק הלוואות מלא עם ניתוח אוספים ויצירת הצעות אוטומטית — 1–1.5 שבועות. צור קשר לדיון בפרטים — נתאים תוכנית אופטימלית.







