• Модуль интеграций
  • Сообщество
  • Блог
Документация
Плагины и интеграцииВсе расширения для Medusa от сообществаСтартерыЗапускайте проекты быстрее с готовыми решениями
ЭкспертыПодберите специалиста для разработки и развития вашего проекта на MedusaКейсыПосмотрите примеры Medusa в продакшене и успешные внедрения
Представляем готовый к продакшену Medusa DTC Starter от Gorgo

26 августа 2026 г. · Продукт

Gorgo снижает затраты на адаптацию Medusa к локальным рынкам.

Мы разрабатываем плагины интеграции, осуществляем поддержку и развиваем сообщество разработчиков на Medusa в Telegram.

  • Ресурсы Medusa
  • Плагины и интеграции
  • Модуль интеграций
  • Стартеры
  • Эксперты
  • Кейсы
  • Medusa Чат в Telegram
  • Medusa Новости в Telegram
  • Документация Gorgo
  • Связаться с нами
  • TelegramGitHub
Плагины
L

Legal pages

Compliance and legal pages management (AGB, Terms & Conditions, Privacy Policy, Impressum) for Medusa v2 with an interactive Admin Dashboard UI, public Store APIs, and multilingual support.

npm install medusa-plugin-legal-pages
Категория
Другое
Создано
Abdullah_omar
Версия
2.0.0
Последнее обновление
2 дня назад
Ежемесячные загрузки
Загрузка данных
Звезды на Github
1
npmNPMGitHubGithub

Medusa v2 Legal Pages & Compliance Plugin

A lightweight, production-ready Medusa v2 plugin for managing compliance and legal disclosure pages (AGB / Terms & Conditions, Datenschutzerklärung / Privacy Policy, and Impressum / Legal Notice) directly inside the Medusa Admin panel.


✨ Features

  • 🏛️ Dedicated Medusa Admin UI: Adds a clean "Legal Pages" route to the Medusa Admin navigation bar.
  • 📝 Live Markdown Workspace: Split-screen editor with real-time customer-facing preview, formatting toolbar, and keyboard shortcuts ( / ).
  • 📝 Multi-Document Management: Create and manage customized compliance documents (Terms & Conditions, Privacy Policy, Imprint, Revocation) with custom versioning and draft/published statuses.
  • 🚀 Dynamic App & Storefront Delivery: Public Store APIs (, ) allowing React Native mobile apps and Next.js storefronts to fetch compliance texts live without waiting for App Store or Google Play reviews.
  • 🌐 Localization & Fallbacks: Built-in locale support (, , ) with automatic fallbacks to ensure legal screens are never blank.

📦 Installation

In your Medusa v2 backend project root:

Or with yarn / pnpm:


⚙️ Configuration

Simply register the plugin in your :

That's it! In Medusa v2, registering the plugin automatically:

  • 🧭 Injects the Legal Pages item into your Medusa Admin sidebar navigation.
  • 📡 Exposes all Storefront & Admin REST API routes (, ).
  • 🗄️ Registers the Legal Module and database schema.

🗄️ Database Migrations

Run the database migration to create the table and indexes:

npx medusa db:migrate

📡 Store API Reference

The plugin provides public endpoints for web storefronts and mobile apps:

1. List All Published Legal Pages

GET /store/legal-pages?locale=en

Response (200 OK):

2. Retrieve Specific Legal Document (with Markdown Content)

GET /store/legal-pages/:slug?locale=de

Example:

Response (200 OK):


📱 Mobile App (React Native / Expo) Usage Example


🛠️ Contributing

Contributions and feedback are always welcome! Feel free to open an issue or submit a pull request.

📄 License

Distributed under the MIT License. See LICENSE for more information.

Еще в этой категории

Посмотреть все
Другое
Gati logo

Gati

От Devx Commerce

Синхронизируйте Medusa с Gati ERP

Загрузка данных
npm
Другое
Product Reviews logo

Product Reviews

От Lambda Curry

Добавляйте рейтинги, отзывы и модерацию товаров

Загрузка данных
GitHubnpm
Другое
Variant Images logo

Variant Images

От Betanoir

Организуйте и загружайте варианты изображений в Medusa

Загрузка данных
GitHubnpm
npm install medusa-plugin-legal-pages
1yarn add medusa-plugin-legal-pages
2# or
3pnpm add medusa-plugin-legal-pages
1import { defineConfig } from "@medusajs/framework/utils"
2
3module.exports = defineConfig({
4 projectConfig: {
5 // ... your project config
6 },
7 plugins: [
8 {
9 resolve: "medusa-plugin-legal-pages",
10 options: {},
11 },
12 ],
13})
1{
2 "legal_pages": [
3 {
4 "id": "leg_01J8ABC...",
5 "slug": "terms",
6 "title": "Terms and Conditions (GTC)",
7 "locale": "en",
8 "version": "1.0",
9 "updated_at": "2026-09-26T20:00:00.000Z"
10 },
11 {
12 "id": "leg_01J8DEF...",
13 "slug": "privacy-policy",
14 "title": "Privacy Policy (GDPR)",
15 "locale": "en",
16 "version": "1.0",
17 "updated_at": "2026-09-26T20:00:00.000Z"
18 }
19 ]
20}
1{
2 "legal_page": {
3 "id": "leg_01J8ABC...",
4 "slug": "agb",
5 "title": "Allgemeine Geschäftsbedingungen",
6 "content": "# Allgemeine Geschäftsbedingungen\n\n### § 1 Geltungsbereich...",
7 "locale": "de",
8 "is_published": true,
9 "version": "1.0",
10 "updated_at": "2026-09-26T20:00:00.000Z"
11 }
12}
1// services/legal.ts
2const MEDUSA_BACKEND_URL = "https://api.yourstore.com"
3
4export const fetchLegalPage = async (slug: string, locale: string = "de") => {
5 const res = await fetch(`${MEDUSA_BACKEND_URL}/store/legal-pages/${slug}?locale=${locale}`, {
6 headers: {
7 "x-publishable-api-key": process.env.EXPO_PUBLIC_MEDUSA_PUBLISHABLE_KEY!,
8 "Accept": "application/json",
9 },
10 })
11 if (!res.ok) return null
12 const data = await res.json()
13 return data.legal_page
14}