Learn how you could use Raffl in your product or protocol.
We will be releasing a better guide on the technicals to integrate Raffl.
Raffles and lotteries are a creative way to engage your community, incentivize actions, and distribute tokens or unique NFTs. By integrating Raffl into your product or protocol, you can incorporate these exciting elements and further deepen your community’s involvement and loyalty.The Raffl smart contracts, including the RaffleFactory and Chainlink VRF contracts, can be easily integrated into your product or protocol. This allows you to create apps that can generate new raffle contracts, recognize existing ones, or simply utilize the Raffl system within your app.Raffl smart contracts are completely permissionless, and their source code is publicly available. The Raffl team does not have ownership or control over the smart contract instances and cannot take them down, censor them, or access the prizes or entry tokens. This means you can build your product or protocol with confidence, knowing that your users will have complete control over their raffles.To integrate Raffl into your product or protocol, you can directly interact with the RaffleFactory and Chainlink VRF smart contracts. This will enable your application to handle ERC-20 and ERC-721 tokens for raffles just as it would with regular token transfers. This seamless integration ensures that the core functionality of your application is enhanced, not disrupted, by the addition of raffle capabilities.Remember that integrating raffles into your ecosystem can not only increase engagement and excitement in your community, but also opens up possibilities for unique incentive structures and reward distributions. Raffl makes this easy and secure.
{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"Raffl Docs","colors":{"primary":"#6d28d9","light":"#ae7aff","dark":"#6d28d9"},"favicon":"/favicon.svg","logo":{"light":"https://mintcdn.com/raffl/HE1veC8Qm6-Igieo/logo/logo.svg?fit=max\u0026auto=format\u0026n=HE1veC8Qm6-Igieo\u0026q=85\u0026s=44829af98cc8032a552aeaf82ce7f774","dark":"https://mintcdn.com/raffl/HE1veC8Qm6-Igieo/logo/logo.svg?fit=max\u0026auto=format\u0026n=HE1veC8Qm6-Igieo\u0026q=85\u0026s=44829af98cc8032a552aeaf82ce7f774"},"appearance":{"default":"dark","strict":null},"navbar":{"links":[{"label":"Contact Us","href":"mailto:ja@raffl.xyz"}],"primary":{"type":"button","label":"Dashboard","href":"https://raffl.xyz"}},"footer":{"socials":{"x":"https://x.com/rafflxyz","github":"https://github.com/raffleth"}},"navigation":{"global":{"anchors":[{"anchor":"Dashboard","href":"https://raffl.xyz","icon":"gauge"},{"anchor":"Github","href":"https://github.com/raffleth","icon":"github"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"raffl","hasAudioNarration":false,"actualSubdomain":"raffl","customDomains":["docs.raffl.xyz"],"gitSource":{"type":"github","owner":"raffleth","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21e63303d4026a3ef76817","collectionId":"6992ce2d-1a0b-4447-9212-6b0beb77246f","schemaVersion":"v2"},"entitlements":{},"buildId":"6a21e63303d4026a3ef76817:success","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"Documentation","count":16},{"language":"default","tag":"Protocol","count":15},{"language":"default","tag":"Technical","count":11},{"language":"default","tag":"FAQs","count":8},{"language":"default","tag":"Smart Contracts","count":4},{"language":"default","tag":"Interfaces","count":4},{"language":"default","tag":"Libraries","count":3},{"language":"default","tag":"Tutorials","count":3},{"language":"default","tag":"Contact Us","count":2},{"language":"default","tag":"Abstracts","count":2}]},"assistantConfig":{},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"protocol/integrate-raffl-into-your-protocol","slug":"/protocol/integrate-raffl-into-your-protocol","pageMetadata":{"title":"Integrating Raffl into Your Protocol","description":"Learn how you could use Raffl in your product or protocol.","href":"/protocol/integrate-raffl-into-your-protocol"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Learn how you could use Raffl in your product or protocol.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={p:`p`,..._provideComponents(),...props.components},{Info}=_components;if(!Info)_missingMdxReference(`Info`,true);return _jsxs(_Fragment,{children:[_jsx(Info,{children:_jsx(_components.p,{children:`We will be releasing a better guide on the technicals to integrate Raffl.`})}),`\n`,_jsx(_components.p,{children:`Raffles and lotteries are a creative way to engage your community, incentivize actions, and distribute tokens or unique NFTs. By integrating Raffl into your product or protocol, you can incorporate these exciting elements and further deepen your community’s involvement and loyalty.`}),`\n`,_jsx(_components.p,{children:`The Raffl smart contracts, including the RaffleFactory and Chainlink VRF contracts, can be easily integrated into your product or protocol. This allows you to create apps that can generate new raffle contracts, recognize existing ones, or simply utilize the Raffl system within your app.`}),`\n`,_jsx(_components.p,{children:`Raffl smart contracts are completely permissionless, and their source code is publicly available. The Raffl team does not have ownership or control over the smart contract instances and cannot take them down, censor them, or access the prizes or entry tokens. This means you can build your product or protocol with confidence, knowing that your users will have complete control over their raffles.`}),`\n`,_jsx(_components.p,{children:`To integrate Raffl into your product or protocol, you can directly interact with the RaffleFactory and Chainlink VRF smart contracts. This will enable your application to handle ERC-20 and ERC-721 tokens for raffles just as it would with regular token transfers. This seamless integration ensures that the core functionality of your application is enhanced, not disrupted, by the addition of raffle capabilities.`}),`\n`,_jsx(_components.p,{children:`Remember that integrating raffles into your ecosystem can not only increase engagement and excitement in your community, but also opens up possibilities for unique incentive structures and reward distributions. Raffl makes this easy and secure.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Integrating Raffl into Your Protocol","description":"Learn how you could use Raffl in your product or protocol.","href":"/protocol/integrate-raffl-into-your-protocol"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"subdomain":"raffl","siteName":"Raffl Docs","title":"Integrating Raffl into Your Protocol - Raffl Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-07T02:41:21.549Z","originalFileLocation":"protocol/integrate-raffl-into-your-protocol.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Learn how you could use Raffl in your product or protocol.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Raffl Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Integrating Raffl into Your Protocol - Raffl Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn how you could use Raffl in your product or protocol.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Raffl Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://raffl.mintlify.app/_mintlify/api/og/v2?division=Smart+Contracts\u0026amp;title=Integrating+Raffl+into+Your+Protocol\u0026amp;description=Learn+how+you+could+use+Raffl+in+your+product+or+protocol.\u0026amp;theme=8d863d7b91cd17ca4be00e0b\u0026amp;signature=f40d22e20a43c2d3521ba787248320d86ba120cf093727cd61d691e7d7ba2dee\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Integrating Raffl into Your Protocol - Raffl Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn how you could use Raffl in your product or protocol.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://raffl.mintlify.app/_mintlify/api/og/v2?division=Smart+Contracts\u0026amp;title=Integrating+Raffl+into+Your+Protocol\u0026amp;description=Learn+how+you+could+use+Raffl+in+your+product+or+protocol.\u0026amp;theme=8d863d7b91cd17ca4be00e0b\u0026amp;signature=f40d22e20a43c2d3521ba787248320d86ba120cf093727cd61d691e7d7ba2dee\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/raffl/VN0oObxT4FDvIpJi/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Raffl Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6d28d9\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/protocol/integrate-raffl-into-your-protocol.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.raffl.xyz/#organization\",\"name\":\"Raffl Docs\",\"url\":\"https://docs.raffl.xyz\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/raffl/HE1veC8Qm6-Igieo/logo/logo.svg?fit=max\u0026auto=format\u0026n=HE1veC8Qm6-Igieo\u0026q=85\u0026s=44829af98cc8032a552aeaf82ce7f774\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.raffl.xyz#website\",\"name\":\"Raffl Docs\",\"url\":\"https://docs.raffl.xyz\",\"publisher\":{\"@id\":\"https://docs.raffl.xyz/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol#webpage\",\"url\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol\",\"name\":\"Integrating Raffl into Your Protocol\",\"description\":\"Learn how you could use Raffl in your product or protocol.\",\"dateModified\":\"2026-01-07T02:41:21.549Z\",\"isPartOf\":{\"@id\":\"https://docs.raffl.xyz#website\"},\"breadcrumb\":{\"@id\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Smart Contracts\",\"item\":\"https://docs.raffl.xyz/protocol/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integrating Raffl into Your Protocol\",\"item\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol#article\",\"headline\":\"Integrating Raffl into Your Protocol\",\"name\":\"Integrating Raffl into Your Protocol\",\"description\":\"Learn how you could use Raffl in your product or protocol.\",\"url\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol\",\"mainEntityOfPage\":{\"@id\":\"https://docs.raffl.xyz/protocol/integrate-raffl-into-your-protocol#webpage\"},\"dateModified\":\"2026-01-07T02:41:21.549Z\",\"publisher\":{\"@id\":\"https://docs.raffl.xyz/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.raffl.xyz#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Raffl Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Raffl Docs","nav":{"global":{"anchors":[{"anchor":"Dashboard","href":"https://raffl.xyz","icon":"gauge"},{"anchor":"Github","href":"https://github.com/raffleth","icon":"github"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"Protocol","groups":[{"group":"Smart Contracts","pages":[{"title":null,"href":"/protocol/introduction"},{"title":"Contract Addresses","href":"/protocol/contract-addresses"},{"title":"Subgraph","description":null,"href":"/protocol/subgraph"},{"title":"Integrating Raffl into Your Protocol","href":"/protocol/integrate-raffl-into-your-protocol"}]},{"group":"Technical","pages":[{"title":null,"description":null,"href":"/protocol/contracts/RafflFactory"},{"title":null,"href":"/protocol/contracts/Raffl"},{"group":"Abstracts","pages":[{"title":null,"href":"/protocol/contracts/abstracts/EntriesManager"},{"title":null,"href":"/protocol/contracts/abstracts/FactoryFeeManager"}]},{"group":"Interfaces","pages":[{"title":null,"href":"/protocol/contracts/interfaces/IFactoryFeeManager"},{"title":null,"href":"/protocol/contracts/interfaces/IFeeManager"},{"title":null,"href":"/protocol/contracts/interfaces/IRaffl"},{"title":null,"href":"/protocol/contracts/interfaces/IERC20Minimal"}]},{"group":"Libraries","pages":[{"title":null,"href":"/protocol/contracts/libraries/RafflErrors"},{"title":null,"href":"/protocol/contracts/libraries/RafflFactoryErrors"},{"title":null,"href":"/protocol/contracts/libraries/TokenLib"}]}]}]}]},"title":"Integrating Raffl into Your Protocol - Raffl Docs","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":[],"chunks":[]}