Back to Medusa

{metadata.title}

www/apps/resources/app/integrations/page.mdx

2.14.27.4 KB
Original Source

import { CardList } from "docs-ui"

export const metadata = { title: Integrations, }

{metadata.title}

You can integrate any third-party service to Medusa, including storage services, notification systems, Content-Management Systems (CMS), etc… By integrating third-party services, you build flows and synchronize data around these integrations, making Medusa not only your commerce application, but a middleware layer between your data sources and operations.

Medusa provides integrations out-of-the-box that are listed here, but you can also create your own integrations, such as integrating ERP systems, as explained in this guide.

<Note>

This section holds guides to help technical teams add integrations to a Medusa application. If you're not a technical user, refer your technical team to this documentation instead.

</Note>

Analytics

An Analytics Module Provider tracks events and user behavior in your Medusa application using a third-party service.

<CardList items={[ { href: "/infrastructure-modules/analytics/posthog", title: "PostHog" }, { href: "/integrations/guides/segment", title: "Segment", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />

Learn how to integrate a custom third-party analytics provider in the Create Analytics Module Provider documentation.


Auth

An Auth Module Provider authenticates users with their account on a third-party service.

<CardList items={[ { href: "/commerce-modules/auth/auth-providers/google", title: "Google", }, { href: "/commerce-modules/auth/auth-providers/github", title: "GitHub", }, { href: "/integrations/guides/okta", title: "Okta", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />

Learn how to integrate a custom third-party authentication provider in the Create Auth Module Provider documentation.


CMS

Integrate a third-party Content-Management System (CMS) to utilize rich content-related features.

<CardList items={[ { href: "/integrations/guides/contentful", title: "Contentful (Localization)", badge: { variant: "blue", children: "Tutorial" } }, { href: "/integrations/guides/payload", title: "Payload CMS", badge: { variant: "blue", children: "Tutorial" } }, { href: "/integrations/guides/sanity", title: "Sanity", badge: { variant: "blue", children: "Tutorial" } }, { href: "/integrations/guides/strapi", title: "Strapi", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" itemsPerRow={2} />


ERP

Integrate your business's Enterprise Resource Planning (ERP) system with Medusa to sync products and orders, restrict purchase with custom rules, and more.

<Note>

To learn about the general approach of integrating an ERP with Medusa and the different use cases you can implement, refer to the ERP Recipe.

</Note>

<CardList items={[ { href: "/recipes/erp/odoo", title: "Odoo", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />


File

A File Module Provider uploads and manages assets, such as product images, on a third-party service.

<CardList items={[ { href: "/infrastructure-modules/file/s3", title: "AWS S3 (and Compatible APIs)" } ]} className="mb-1" />

Learn how to integrate a custom third-party file or storage provider in the Create File Module Provider documentation.


Fulfillment

A Fulfillment Module Provider provides fulfillment options during checkout, calculates shipping rates, and processes an order's fulfillments.

<CardList items={[ { href: "/integrations/guides/shipstation", title: "ShipStation", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />

Learn how to integrate a third-party fulfillment provider in the Create Fulfillment Module Provider documentation.


Instrumentation

Integrate a third-party service to monitor performance, errors, and other metrics in your Medusa application.

<CardList items={[ { href: "/integrations/guides/sentry", title: "Sentry", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />


Migration

Migrate data from another ecommerce platform to Medusa.

<CardList items={[ { href: "/integrations/guides/magento", title: "Magento", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />


Notification

A Notification Module Provider sends messages to users and customers in your Medusa application using a third-party service.

<CardList items={[ { href: "/infrastructure-modules/notification/sendgrid", title: "SendGrid" }, { href: "/integrations/guides/mailchimp", title: "Mailchimp", badge: { variant: "blue", children: "Tutorial" } }, { href: "/integrations/guides/resend", title: "Resend", badge: { variant: "blue", children: "Tutorial" } }, { href: "/integrations/guides/slack", title: "Slack", badge: { variant: "blue", children: "Tutorial" } }, { href: "/how-to-tutorials/tutorials/phone-auth#step-3-integrate-twilio-sms", title: "Twilio SMS", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" itemsPerRow={2} />

Learn how to integrate a third-party notification provider in the Create Notification Module Provider documentation.


Payment

A Payment Module Provider processes payments made in your Medusa store using a third-party service.

<CardList items={[ { href: "/commerce-modules/payment/payment-provider/stripe", title: "Stripe" }, { href: "/integrations/guides/paypal", title: "PayPal", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />

Learn how to integrate a third-party payment provider in the Create Payment Module Provider documentation.


Integrate a search engine to index and search products or other types of data in your Medusa application.

<CardList items={[ { href: "/integrations/guides/algolia", title: "Algolia", badge: { variant: "blue", children: "Tutorial" } }, { href: "/integrations/guides/meilisearch", title: "Meilisearch", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />


Tax

Integrate a third-party tax calculation service to handle tax rates and rules in your Medusa application.

<CardList items={[ { href: "/integrations/guides/avalara", title: "Avalara", badge: { variant: "blue", children: "Tutorial" } } ]} className="mb-1" />