CINXE.COM
Welcome to Fulfil Documentation | Fulfil.IO - Cloud ERP for eCommerce
<!DOCTYPE html> <html lang="en" class="h-full"> <head> <script async src="https://www.googletagmanager.com/gtag/js?id=G-6GKD87E2LK"></script> <script>window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());gtag('config', 'G-6GKD87E2LK');</script> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="turbo-cache-control" content="no-cache" data-turbo-track="reload" data-track-token="2.4.0.797641349680"> <!-- See retype.com --> <meta name="generator" content="Retype 2.4.0"> <!-- Primary Meta Tags --> <title>Welcome to Fulfil Documentation | Fulfil.IO - Cloud ERP for eCommerce</title> <meta name="title" content="Welcome to Fulfil Documentation | Fulfil.IO - Cloud ERP for eCommerce"> <meta name="description" content="Fulfil is the only ERP designed for eCommerce & wholesale merchants. We鈥檙e on a mission to empower merchants to scale for growth through" /> <!-- Canonical --> <link rel="canonical" href="https://docs.fulfil.io/" /> <!-- Open Graph / Facebook --> <meta property="og:type" content="website"> <meta property="og:url" content="https://docs.fulfil.io/"> <meta property="og:title" content="Welcome to Fulfil Documentation | Fulfil.IO - Cloud ERP for eCommerce"> <meta property="og:description" content="Fulfil is the only ERP designed for eCommerce & wholesale merchants. We鈥檙e on a mission to empower merchants to scale for growth through"> <!-- Twitter --> <meta property="twitter:card" content="summary_large_image"> <meta property="twitter:url" content="https://docs.fulfil.io/"> <meta property="twitter:title" content="Welcome to Fulfil Documentation | Fulfil.IO - Cloud ERP for eCommerce"> <meta property="twitter:description" content="Fulfil is the only ERP designed for eCommerce & wholesale merchants. We鈥檙e on a mission to empower merchants to scale for growth through"> <script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script> <link href="images/favicon.ico" rel="icon" /> <link href="resources/css/retype.css?v=2.4.0.797641349680" rel="stylesheet" /> <script type="text/javascript" src="resources/js/config.js?v=2.4.0.797641349680" data-turbo-eval="false" defer></script> <script type="text/javascript" src="resources/js/retype.js?v=2.4.0" data-turbo-eval="false" defer></script> <script id="lunr-js" type="text/javascript" src="resources/js/lunr.js?v=2.4.0.797641349680" data-turbo-eval="false" defer></script> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap" rel="stylesheet"> <link href="/static/custom.css" rel="stylesheet" /> </head> <body> <div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300"> <div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div> <header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650"> <div class="container relative flex items-center justify-between grow pr-6 md:justify-start"> <!-- Mobile menu button skeleton --> <button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button> <div v-cloak id="docs-sidebar-toggle"></div> <!-- Logo --> <div class="flex items-center justify-between h-full py-2 md:w-75"> <div class="flex items-center px-2 md:px-6"> <a id="docs-site-logo" href="" class="flex items-center leading-snug text-2xl"> <span class="w-10 mr-2 grow-0 shrink-0 overflow-hidden"> <img class="max-h-10 dark:hidden md:inline-block" src="images/logo-transparent.png"> <img class="max-h-10 hidden dark:inline-block" src="images/logo-dark.png"> </span> <span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Fulfil</span> </a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Docs</span> </div> <span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span> </div> <div class="flex justify-between md:grow"> <!-- Top Nav --> <nav class="hidden md:flex"> <ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center"> <li class="mr-6"> <a class="py-2 md:mb-0 inline-flex items-center text-sm whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-200" href="https://www.fulfil.io">Home</a> </li> <li class="mr-6"> <a class="py-2 md:mb-0 inline-flex items-center text-sm whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-200" href="">Docs</a> </li> <li class="mr-6"> <a class="py-2 md:mb-0 inline-flex items-center text-sm whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-200" href="https://auth.fulfil.io">Login</a> </li> </ul> </nav> <!-- Header Right Skeleton --> <div v-cloak class="flex justify-end grow skeleton"> <!-- Search input mock --> <div class="relative hidden w-40 lg:block lg:max-w-sm lg:ml-auto"> <div class="absolute flex items-center justify-center h-full pl-3 dark:text-dark-300"> <svg xmlns="http://www.w3.org/2000/svg" class="icon-base" width="16" height="16" viewBox="0 0 24 24" aria-labelledby="icon" role="presentation" style="margin-bottom: 1px;"><g fill="currentColor" ><path d="M21.71 20.29l-3.68-3.68A8.963 8.963 0 0020 11c0-4.96-4.04-9-9-9s-9 4.04-9 9 4.04 9 9 9c2.12 0 4.07-.74 5.61-1.97l3.68 3.68c.2.19.45.29.71.29s.51-.1.71-.29c.39-.39.39-1.03 0-1.42zM4 11c0-3.86 3.14-7 7-7s7 3.14 7 7c0 1.92-.78 3.66-2.04 4.93-.01.01-.02.01-.02.01-.01.01-.01.01-.01.02A6.98 6.98 0 0111 18c-3.86 0-7-3.14-7-7z" ></path></g></svg> </div> <input class="w-full h-10 transition-colors duration-200 ease-in bg-gray-200 border border-transparent rounded md:text-sm hover:bg-white hover:border-gray-300 focus:outline-none focus:bg-white focus:border-gray-500 dark:bg-dark-600 dark:border-dark-600 placeholder-gray-400 dark:placeholder-dark-400" style="padding: 0.625rem 0.75rem 0.625rem 2rem" type="text" placeholder="Search" /> </div> <!-- Mobile search button mock --> <div class="flex items-center justify-center w-10 h-10 lg:hidden"> <svg xmlns="http://www.w3.org/2000/svg" class="shrink-0 icon-base" width="20" height="20" viewBox="0 0 24 24" aria-labelledby="icon" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor" ><path d="M21.71 20.29l-3.68-3.68A8.963 8.963 0 0020 11c0-4.96-4.04-9-9-9s-9 4.04-9 9 4.04 9 9 9c2.12 0 4.07-.74 5.61-1.97l3.68 3.68c.2.19.45.29.71.29s.51-.1.71-.29c.39-.39.39-1.03 0-1.42zM4 11c0-3.86 3.14-7 7-7s7 3.14 7 7c0 1.92-.78 3.66-2.04 4.93-.01.01-.02.01-.02.01-.01.01-.01.01-.01.02A6.98 6.98 0 0111 18c-3.86 0-7-3.14-7-7z" ></path></g></svg> </div> <!-- Dark mode switch placehokder --> <div class="w-10 h-10 lg:ml-2"></div> <!-- History button mock --> <div class="flex items-center justify-center w-10 h-10" style="margin-right: -0.625rem;"> <svg xmlns="http://www.w3.org/2000/svg" class="shrink-0 icon-base" width="22" height="22" viewBox="0 0 24 24" aria-labelledby="icon" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor" ><g ><path d="M12.01 6.01c-.55 0-1 .45-1 1V12a1 1 0 00.4.8l3 2.22a.985.985 0 001.39-.2.996.996 0 00-.21-1.4l-2.6-1.92V7.01c.02-.55-.43-1-.98-1z"></path><path d="M12.01 1.91c-5.33 0-9.69 4.16-10.05 9.4l-.29-.26a.997.997 0 10-1.34 1.48l1.97 1.79c.19.17.43.26.67.26s.48-.09.67-.26l1.97-1.79a.997.997 0 10-1.34-1.48l-.31.28c.34-4.14 3.82-7.41 8.05-7.41 4.46 0 8.08 3.63 8.08 8.09s-3.63 8.08-8.08 8.08c-2.18 0-4.22-.85-5.75-2.4a.996.996 0 10-1.42 1.4 10.02 10.02 0 007.17 2.99c5.56 0 10.08-4.52 10.08-10.08.01-5.56-4.52-10.09-10.08-10.09z"></path></g></g></svg> </div> </div> <div v-cloak class="flex justify-end grow"> <div id="docs-mobile-search-button"></div> <doc-search-desktop></doc-search-desktop> <doc-theme-switch class="lg:ml-2"></doc-theme-switch> <doc-history></doc-history> </div> </div> </div> </header> <div class="container relative flex bg-white"> <!-- Sidebar Skeleton --> <div v-cloak class="fixed flex flex-col shrink-0 duration-300 ease-in-out bg-gray-100 border-gray-200 sidebar top-20 w-75 border-r h-screen md:sticky transition-transform skeleton dark:bg-dark-800 dark:border-dark-650"> <!-- Render this div, if config.showSidebarFilter is `true` --> <div class="flex items-center h-16 px-6"> <input class="w-full h-8 px-3 py-2 transition-colors duration-200 ease-linear bg-white border border-gray-200 rounded shadow-none text-sm focus:outline-none focus:border-gray-600 dark:bg-dark-600 dark:border-dark-600" type="text" placeholder="Filter" /> </div> <div class="pl-6 mb-4 mt-1"> <div class="w-32 h-3 mb-4 bg-gray-200 rounded-full loading dark:bg-dark-600"></div> <div class="w-48 h-3 mb-4 bg-gray-200 rounded-full loading dark:bg-dark-600"></div> <div class="w-40 h-3 mb-4 bg-gray-200 rounded-full loading dark:bg-dark-600"></div> <div class="w-32 h-3 mb-4 bg-gray-200 rounded-full loading dark:bg-dark-600"></div> <div class="w-48 h-3 mb-4 bg-gray-200 rounded-full loading dark:bg-dark-600"></div> <div class="w-40 h-3 mb-4 bg-gray-200 rounded-full loading dark:bg-dark-600"></div> </div> </div> <!-- Sidebar component --> <doc-sidebar v-cloak> <template #sidebar-footer> <div class="shrink-0 mt-auto border-t md:bg-transparent md:border-none dark:border-dark-650"> <div class="py-3 px-6 md:hidden border-b dark:border-dark-650"> <nav> <ul class="flex flex-wrap justify-center items-center"> <li class="mr-6"> <a class="block py-1 inline-flex items-center text-sm whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-200" href="https://www.fulfil.io">Home</a> </li> <li class="mr-6"> <a class="block py-1 inline-flex items-center text-sm whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-200" href="">Docs</a> </li> <li class="mr-6"> <a class="block py-1 inline-flex items-center text-sm whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-200" href="https://auth.fulfil.io">Login</a> </li> </ul> </nav> </div> </div> </template> </doc-sidebar> <div class="grow min-w-0 dark:bg-dark-850"> <!-- Render "toolbar" template here on api pages --><!-- Render page content --> <div class="flex"> <div class="grow min-w-0 px-6 md:px-16"> <main class="relative pt-6 pb-16"> <div class="docs-markdown" id="docs-content"> <!-- Rendered if sidebar right is enabled --> <div id="docs-sidebar-right-toggle"></div> <!-- Page content --> <doc-anchor-target id="welcome-to-fulfil-documentation" class="break-words"> <h1> <doc-anchor-trigger class="header-anchor-trigger" to="#welcome-to-fulfil-documentation">#</doc-anchor-trigger> <span>Welcome to Fulfil Documentation</span> </h1> </doc-anchor-target> <p>Fulfil is the only ERP designed for eCommerce & wholesale merchants. We鈥檙e on a mission to empower merchants to scale for growth through innovation, operational efficiency, and customer delight. We believe merchants should love their operations platform, and we work hard to make that happen every single day.</p> <doc-anchor-target id="business-processes"> <h2> <doc-anchor-trigger class="header-anchor-trigger" to="#business-processes">#</doc-anchor-trigger> <span>Business Processes</span> </h2> </doc-anchor-target> <ul> <li><a href="erp/contacts/overview/">ERP</a></li> <li><a href="wms/overview/recommended-hardware/">WMS</a></li> <li><a href="./production/index.md">Production</a></li> <li><a href="integrations/">Integrations</a></li> <li><a href="./developers/getting-started/overview.md">Developers</a></li> <li><a href="release-notes/2025/318/">Release Notes</a></li> </ul> <doc-anchor-target id="user-onboarding"> <h2> <doc-anchor-trigger class="header-anchor-trigger" to="#user-onboarding">#</doc-anchor-trigger> <span>User Onboarding</span> </h2> </doc-anchor-target> <p>Our <a href="https://fulfil.thinkific.com/collections/courses">Fulfil Academy</a> helps new users become familiar with the user interface (UI). The Academy's courses introduce different features of Fulfil, covering topics such as order management, warehousing and accounting, and much more!</p> <!-- Required only on API pages --> <doc-toolbar-member-filter-no-results /> </div> <footer class="clear-both"> <div class="flex flex-wrap items-center justify-between mt-14"> <a class="my-2.5 inline-flex items-center text-sm whitespace-nowrap text-blue-500 dark:text-blue-400 hover:text-blue-700 hover:underline" href="https://github.com/fulfilio/fulfil-helpdesk/blob/master/docs/index.md" target="_blank" rel="noopener"> <svg class="mr-1.5" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="currentColor" overflow="visible"><path d="M20 12c-.55 0-1 .45-1 1v7c0 .55-.45 1-1 1H4c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h7c.55 0 1-.45 1-1s-.45-1-1-1H4C2.35 3 1 4.35 1 6v14c0 1.65 1.35 3 3 3h14c1.65 0 3-1.35 3-3v-7c0-.55-.45-1-1-1z" /><path d="M22.21 1.79c-1.18-1.18-3.24-1.18-4.41 0l-9.5 9.5c-.13.13-.22.29-.26.46l-1 4c-.08.34.01.7.26.95.18.2.44.3.7.3.08 0 .16-.01.24-.03l4-1c.18-.04.34-.13.46-.26l9.5-9.5c1.22-1.22 1.22-3.2.01-4.42zm-1.42 3l-9.3 9.3-2.11.53.53-2.11 9.3-9.3c.42-.42 1.16-.42 1.59 0 .43.43.43 1.15-.01 1.58z" /><path fill="none" d="M0 0h24v24H0z" /></svg> <span>Edit this page</span> </a> </div> <nav class="flex mt-14"> <div class="w-1/2"> </div> <div class="w-1/2"> <a class="px-5 py-4 -mx-px h-full flex items-center justify-end break-normal font-medium text-blue-500 dark:text-blue-400 border border-gray-300 hover:border-gray-400 dark:border-dark-650 dark:hover:border-dark-450 rounded-l rounded-r-lg transition-colors duration-150 relative hover:z-5" href="erp/"> <span> <span class="block text-xs font-normal text-right text-gray-400 dark:text-dark-400">Next</span> <span class="block mt-1">ERP</span> </span> <svg xmlns="http://www.w3.org/2000/svg" class="ml-3" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" overflow="visible"><path d="M19.92 12.38a1 1 0 00-.22-1.09l-7-7a.996.996 0 10-1.41 1.41l5.3 5.3H5c-.55 0-1 .45-1 1s.45 1 1 1h11.59l-5.29 5.29a.996.996 0 000 1.41c.19.2.44.3.7.3s.51-.1.71-.29l7-7c.09-.09.16-.21.21-.33z" /><path fill="none" d="M0 0h24v24H0z" /></svg> </a> </div> </nav> </footer> </main> <div class="border-t dark:border-dark-650 pt-6 mb-8"> <footer class="flex flex-wrap items-center justify-between"> <div> <ul class="flex flex-wrap items-center text-sm"> </ul> </div> <div class="docs-copyright py-2 text-gray-500 dark:text-dark-350 text-sm leading-relaxed"><p>漏 Copyright 2025. All rights reserved.</p></div> </footer> </div> </div> <!-- Rendered if sidebar right is enabled --> <!-- Sidebar right skeleton--> <div v-cloak class="fixed top-0 bottom-0 right-0 translate-x-full bg-white border-gray-200 lg:sticky lg:border-l lg:shrink-0 lg:pt-6 lg:transform-none sm:w-1/2 lg:w-64 lg:z-0 md:w-104 sidebar-right skeleton dark:bg-dark-850 dark:border-dark-650"> <div class="pl-5"> <div class="w-32 h-3 mb-4 bg-gray-200 dark:bg-dark-600 rounded-full loading"></div> <div class="w-48 h-3 mb-4 bg-gray-200 dark:bg-dark-600 rounded-full loading"></div> <div class="w-40 h-3 mb-4 bg-gray-200 dark:bg-dark-600 rounded-full loading"></div> </div> </div> <!-- User should be able to hide sidebar right --> <doc-sidebar-right v-cloak></doc-sidebar-right> </div> </div> </div> <doc-search-mobile></doc-search-mobile> <doc-back-to-top></doc-back-to-top> </div> <div id="docs-overlay-target"></div> <script>window.__DOCS__ = { "title": "Home", isRoot: true, level: 0, icon: "file", hasPrism: false, hasMermaid: false, hasMath: false }</script> </body> </html>