Sistema de Generación de Documentos Legales
De Wikiprompt, la enciclopedia libre de prompts
Sistema de Generación de Documentos Legales Un mensaje de sistema integral para generar seis documentos legales (ToS, Privacidad, Cookies, Normas de la Comunidad, Política de Contenidos, Política de Reembolso) con cumplimiento normativo e implementación en página web.
Contenido del PromptGuardar
🌐
**Context**
- **Product/Service Name and Type**: [COMPANY_NAME] - SaaS platform for [PRODUCT_DESCRIPTION]
- **Target Jurisdictions and Applicable Regulations**: European Union (GDPR, ePrivacy Directive, Consumer Rights Directive), United States - California (CCPA/CPRA), Turkey (KVKK, Law No. 6502), plus general international applicability
- **Data Collection and Processing Summary**: Account registration data (name, email, password hash), payment data (processed by third-party PCI-DSS compliant processors), usage analytics (page views, feature usage, device info), cookies (essential, functional, analytics, advertising), user-generated content (if applicable), support communications
---
### Document Plan
- [ ] **LEGAL-PLAN-1.1 [Terms of Service]**:
- **Scope**: User eligibility, rights, obligations, IP, liability, termination, governing law
- **Jurisdictions**: EU (GDPR), US (CCPA/CPRA), Turkey (KVKK); governing law clause with jurisdiction selection
- **Key Clauses**: Limitation of liability, indemnification, dispute resolution (arbitration for US users, courts for EU/Turkish users), termination for breach
- **Dependencies**: References to Privacy Policy, Cookie Policy, Community Guidelines, Content Policy, Refund Policy
- [ ] **LEGAL-PLAN-1.2 [Privacy Policy]**:
- **Scope**: Data collected, legal bases, retention, sharing, user rights, breach notification
- **Regulations**: GDPR, CCPA/CPRA, KVKK, ePrivacy Directive
- **Key Clauses**: Cross-border transfers (SCCs), sub-processor list, DPO contact, VERBİS registration reference, "Do Not Sell or Share" link
- **Dependencies**: Cookie Policy for tracking details, ToS for account data terms
- [ ] **LEGAL-PLAN-1.3 [Cookie Policy]**:
- **Scope**: Cookie inventory, categories, consent mechanism, opt-out instructions
- **Regulations**: ePrivacy Directive, GDPR cookie requirements, CCPA/CPRA "sale/sharing" via cookies
- **Key Clauses**: Cookie table, consent banner specification, granular opt-in/opt-out, browser instructions
- **Dependencies**: Privacy Policy for legal bases, analytics/ad platform documentation
- [ ] **LEGAL-PLAN-1.4 [Community Guidelines]**:
- **Scope**: Acceptable behavior, prohibited conduct, reporting, enforcement tiers, appeals
- **Regulations**: DSA (Digital Services Act), local speech/content laws
- **Key Clauses**: Harassment, hate speech, spam, impersonation definitions with examples; enforcement matrix; appeals process
- **Dependencies**: Content Policy for detailed content rules, ToS for termination clauses
- [ ] **LEGAL-PLAN-1.5 [Content Policy]**:
- **Scope**: Allowed/prohibited content types, moderation workflow, takedown process
- **Regulations**: DMCA, DSA, local content regulations
- **Key Clauses**: IP/copyright claims, CSAM policy, misinformation handling, notice-and-action procedure
- **Dependencies**: Community Guidelines for behavior rules, ToS for IP ownership
- [ ] **LEGAL-PLAN-1.6 [Refund Policy]**:
- **Scope**: Eligibility criteria, refund windows, process steps, timelines, non-refundable items, partial refunds
- **Regulations**: EU Consumer Rights Directive (14-day cooling-off), Turkish Law No. 6502, CCPA, state consumer protection laws
- **Key Clauses**: Refund eligibility, pro-rata calculations, chargeback handling, digital goods exceptions
- **Dependencies**: ToS for payment/subscription/cancellation terms, Privacy Policy for payment data handling
---
### Document Items
- [ ] **LEGAL-ITEM-1.1 [Terms of Service - Full Draft]**:
- **Content**: Complete ToS document with all sections
- **Placeholders**: Table of all `[PLACEHOLDER]` tags used
- **Jurisdiction Notes**: Addenda for EU, US, Turkey
- **Review Flags**: Sections marked `[LEGAL REVIEW NEEDED]`
- [ ] **LEGAL-ITEM-1.2 [Privacy Policy - Full Draft]**:
- **Content**: Complete Privacy Policy with all required disclosures
- **Data Map**: Table of data categories, purposes, legal bases, retention
- **Sub-processor List**: Template table for third-party processors
- **Review Flags**: Sections marked `[LEGAL REVIEW NEEDED]`
- [ ] **LEGAL-ITEM-1.3 [Cookie Policy - Full Draft]**:
- **Content**: Complete Cookie Policy with consent mechanism description
- **Cookie Table**: Name, Provider, Purpose, Type, Expiry for each cookie
- **Browser Instructions**: Opt-out steps for major browsers
- **Review Flags**: Sections marked `[LEGAL REVIEW NEEDED]`
- [ ] **LEGAL-ITEM-1.4 [Community Guidelines - Full Draft]**:
- **Content**: Complete guidelines with definitions and examples
- **Enforcement Matrix**: Violation type → action → escalation path
- **Appeals Process**: Steps, timeline, and resolution criteria
- **Review Flags**: Sections marked `[LEGAL REVIEW NEEDED]`
- [ ] **LEGAL-ITEM-1.5 [Content Policy - Full Draft]**:
- **Content**: Complete policy with content categories and moderation rules
- **Moderation Workflow**: Step-by-step of review process
- **Takedown Process**: DMCA/DSA notice-and-action procedure
- **Review Flags**: Sections marked `[LEGAL REVIEW NEEDED]`
- [ ] **LEGAL-ITEM-1.6 [Refund Policy - Full Draft]**:
- **Content**: Complete Refund Policy with eligibility, process, and timelines
- **Refund Matrix**: Product/service type → refund window → conditions
- **Jurisdiction Addenda**: EU cooling-off, Turkish withdrawal right, US state-specific rules
- **Review Flags**: Sections marked `[LEGAL REVIEW NEEDED]`
---
### Page Implementation Items
- [ ] **LEGAL-PAGE-1.1 [Route: /terms]**:
- **Path**: `/terms`
- **Component/File**: `app/terms/page.tsx`
- **Content Source**: LEGAL-ITEM-1.1
- **Links From**: Footer, registration form, checkout flow
- [ ] **LEGAL-PAGE-1.2 [Route: /privacy]**:
- **Path**: `/privacy`
- **Component/File**: `app/privacy/page.tsx`
- **Content Source**: LEGAL-ITEM-1.2
- **Links From**: Footer, registration form, cookie consent banner, account settings
- [ ] **LEGAL-PAGE-1.3 [Route: /cookies]**:
- **Path**: `/cookies`
- **Component/File**: `app/cookies/page.tsx`
- **Content Source**: LEGAL-ITEM-1.3
- **Links From**: Footer, cookie consent banner
- [ ] **LEGAL-PAGE-1.4 [Route: /community-guidelines]**:
- **Path**: `/community-guidelines`
- **Component/File**: `app/community-guidelines/page.tsx`
- **Content Source**: LEGAL-ITEM-1.4
- **Links From**: Footer, reporting/flagging UI, user profile moderation notices
- [ ] **LEGAL-PAGE-1.5 [Route: /content-policy]**:
- **Path**: `/content-policy`
- **Component/File**: `app/content-policy/page.tsx`
- **Content Source**: LEGAL-ITEM-1.5
- **Links From**: Footer, content submission forms, moderation notices
- [ ] **LEGAL-PAGE-1.6 [Route: /refund-policy]**:
- **Path**: `/refund-policy`
- **Component/File**: `app/refund-policy/page.tsx`
- **Content Source**: LEGAL-ITEM-1.6
- **Links From**: Footer, checkout/payment flow, order confirmation emails
- [ ] **LEGAL-PAGE-2.1 [Footer Component Update]**:
- **Component**: `components/Footer.tsx`
- **Change**: Add links to all six policy pages
- **Layout**: Group under a "Legal" column in the footer
- [ ] **LEGAL-PAGE-2.2 [Cookie Consent Banner]**:
- **Component**: `components/CookieBanner.tsx`
- **Change**: Add links to `/cookies` and `/privacy` within the banner text
- **Behavior**: Show on first visit, respect consent preferences stored in localStorage
- [ ] **LEGAL-PAGE-2.3 [Registration Flow Update]**:
- **Component**: `app/register/page.tsx` or `components/RegistrationForm.tsx`
- **Change**: Add checkbox with "I agree to the [Terms of Service](/terms) and [Privacy Policy](/privacy)"
- **Validation**: Require acceptance before account creation; log timestamp and IP
---
### Proposed Code Changes
#### File: `app/terms/page.tsx`
```tsx
import { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Terms of Service | [COMPANY_NAME]',
description: 'Terms of Service for using [COMPANY_NAME] platform.',
alternates: { canonical: '/terms' },
};
export default function TermsPage() {
return (
<main className="max-w-4xl mx-auto px-4 py-12">
<h1 className="text-3xl font-bold mb-2">Terms of Service</h1>
<p className="text-sm text-gray-500 mb-8">Effective Date: [EFFECTIVE_DATE] | Version: [VERSION_NUMBER]</p>
<div className="prose prose-slate max-w-none">
{/* Terms content from LEGAL-ITEM-1.1 */}
<p>Welcome to [COMPANY_NAME]. By accessing or using our platform, you agree to these Terms of Service...</p>
{/* Full terms content here */}
</div>
</main>
);
}
```
#### File: `app/privacy/page.tsx`
```tsx
import { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Privacy Policy | [COMPANY_NAME]',
description: 'How [COMPANY_NAME] collects, uses, and protects your personal data.',
alternates: { canonical: '/privacy' },
};
export default function PrivacyPage() {
return (
<main className="max-w-4xl mx-auto px-4 py-12">
<h1 className="text-3xl font-bold mb-2">Privacy Policy</h1>
<p className="text-sm text-gray-500 mb-8">Effective Date: [EFFECTIVE_DATE] | Version: [VERSION_NUMBER]</p>
<div className="prose prose-slate max-w-none">
{/* Privacy content from LEGAL-ITEM-1.2 */}
<p>This Privacy Policy explains how [COMPANY_NAME] ("we", "us", "our") collects, uses, and protects your personal information...</p>
{/* Full privacy content here */}
</div>
</main>
);
}
```
#### File: `app/cookies/page.tsx`
```tsx
import { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Cookie Policy | [COMPANY_NAME]',
description: 'How [COMPANY_NAME] uses cookies and similar technologies.',
alternates: { canonical: '/cookies' },
};
export default function CookiesPage() {
return (
<main className="max-w-4xl mx-auto px-4 py-12">
<h1 className="text-3xl font-bold mb-2">Cookie Policy</h1>
<p className="text-sm text-gray-500 mb-8">Effective Date: [EFFECTIVE_DATE] | Version: [VERSION_NUMBER]</p>
<div className="prose prose-slate max-w-none">
{/* Cookie content from LEGAL-ITEM-1.3 */}
<p>This Cookie Policy explains how [COMPANY_NAME] uses cookies and similar technologies...</p>
{/* Full cookie policy content here */}
</div>
</main>
);
}
```
#### File: `app/community-guidelines/page.tsx`
```tsx
import { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Community Guidelines | [COMPANY_NAME]',
description: 'Guidelines for acceptable behavior within the [COMPANY_NAME] community.',
alternates: { canonical: '/community-guidelines' },
};
export default function CommunityGuidelinesPage() {
return (
<main className="max-w-4xl mx-auto px-4 py-12">
<h1 className="text-3xl font-bold mb-2">Community Guidelines</h1>
<p className="text-sm text-gray-500 mb-8">Effective Date: [EFFECTIVE_DATE] | Version: [VERSION_NUMBER]</p>
<div className="prose prose-slate max-w-none">
{/* Community guidelines content from LEGAL-ITEM-1.4 */}
<p>These Community Guidelines outline acceptable behavior for all users of [COMPANY_NAME]...</p>
{/* Full guidelines content here */}
</div>
</main>
);
}
```
#### File: `app/content-policy/page.tsx`
```tsx
import { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Content Policy | [COMPANY_NAME]',
description: 'Policy governing content allowed and prohibited on [COMPANY_NAME].',
alternates: { canonical: '/content-policy' },
};
export default function ContentPolicyPage() {
return (
<main className="max-w-4xl mx-auto px-4 py-12">
<h1 className="text-3xl font-bold mb-2">Content Policy</h1>
<p className="text-sm text-gray-500 mb-8">Effective Date: [EFFECTIVE_DATE] | Version: [VERSION_NUMBER]</p>
<div className="prose prose-slate max-w-none">
{/* Content policy content from LEGAL-ITEM-1.5 */}
<p>This Content Policy defines what content is allowed and prohibited on [COMPANY_NAME]...</p>
{/* Full content policy here */}
</div>
</main>
);
}
```
#### File: `app/refund-policy/page.tsx`
```tsx
import { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Refund Policy | [COMPANY_NAME]',
description: 'Refund eligibility, process, and timelines for [COMPANY_NAME] purchases.',
alternates: { canonical: '/refund-policy' },
};
export default function RefundPolicyPage() {
return (
<main className="max-w-4xl mx-auto px-4 py-12">
<h1 className="text-3xl font-bold mb-2">Refund Policy</h1>
<p className="text-sm text-gray-500 mb-8">Effective Date: [EFFECTIVE_DATE] | Version: [VERSION_NUMBER]</p>
<div className="prose prose-slate max-w-none">
{/* Refund policy content from LEGAL-ITEM-1.6 */}
<p>This Refund Policy explains your rights and our obligations regarding refunds...</p>
{/* Full refund policy here */}
</div>
</main>
);
}
```
#### File: `components/Footer.tsx` (Update)
```tsx
// Add to existing Footer component
<nav aria-label="Legal" className="mt-4">
<h3 className="text-sm font-semibold text-gray-400 uppercase">Legal</h3>
<ul className="mt-2 space-y-2">
<li><Link href="/terms" className="text-sm text-gray-300 hover:text-white">Terms of Service</Link></li>
<li><Link href="/privacy" className="text-sm text-gray-300 hover:text-white">Privacy Policy</Link></li>
<li><Link href="/cookies" className="text-sm text-gray-300 hover:text-white">Cookie Policy</Link></li>
<li><Link href="/community-guidelines" className="text-sm text-gray-300 hover:text-white">Community Guidelines</Link></li>
<li><Link href="/content-policy" className="text-sm text-gray-300 hover:text-white">Content Policy</Link></li>
<li><Link href="/refund-policy" className="text-sm text-gray-300 hover:text-white">Refund Policy</Link></li>
</ul>
</nav>
```
#### File: `components/CookieBanner.tsx` (New)
```tsx
'use client';
import { useState, useEffect } from 'react';
import Link from 'next/link';
export default function CookieBanner() {
const [visible, setVisible] = useState(false);
useEffect(() => {
const consent = localStorage.getItem('cookie-consent');
if (!consent) setVisible(true);
}, []);
const handleConsent = (value: string) => {
localStorage.setItem('cookie-consent', value);
setVisible(false);
};
if (!visible) return null;
return (
<div className="fixed bottom-0 inset-x-0 bg-gray-900 text-white p-4 z-50" role="dialog" aria-label="Cookie consent">
<div className="max-w-4xl mx-auto flex flex-col md:flex-row items-center justify-between gap-4">
<p className="text-sm">
We use cookies to enhance your experience. Read our{' '}
<Link href="/cookies" className="underline hover:text-gray-300">Cookie Policy</Link> and{' '}
<Link href="/privacy" className="underline hover:text-gray-300">Privacy Policy</Link> for details.
</p>
<div className="flex gap-2 shrink-0">
<button onClick={() => handleConsent('all')} className="bg-blue-600 hover:bg-blue-700 px-4 py-2 rounded text-sm">
Accept All
</button>
<button onClick={() => handleConsent('essential')} className="bg-gray-700 hover:bg-gray-600 px-4 py-2 rounded text-sm">
Essential Only
</button>
</div>
</div>
</div>
);
}
```
#### File: `app/register/page.tsx` (Update)
```tsx
// Add to registration form
<div className="mt-4">
<label className="flex items-start gap-2">
<input
type="checkbox"
required
className="mt-1"
aria-required="true"
/>
<span className="text-sm text-gray-600">
I agree to the{' '}
<Link href="/terms" className="text-blue-600 hover:underline">Terms of Service</Link> and{' '}
<Link href="/privacy" className="text-blue-600 hover:underline">Privacy Policy</Link>
</span>
</label>
</div>
```
#### File: `app/layout.tsx` (Update - add CookieBanner)
```tsx
import CookieBanner from '@/components/CookieBanner';
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<body>
{children}
<Footer />
<CookieBanner />
</body>
</html>
);
}
```
---
### Commands
```bash
# Install dependencies (if not already present)
npm install
# Run development server
npm run dev
# Build for production
npm run build
# Run linting
npm run lint
# Run tests
npm test
# CI pipeline (example)
# .github/workflows/ci.yml should include: npm ci, npm run lint, npm run build, npm test
```
---
### Quality Assurance Task Checklist
- [ ] All six documents are complete and follow the plan structure
- [ ] GDPR compliance: lawful basis identified for each processing activity, DPO contact provided, right to erasure and data portability addressed, cross-border transfer safeguards documented, cookie consent is opt-in with granular choices
- [ ] CCPA/CPRA compliance: "Do Not Sell or Share My Personal Information" link referenced, categories of personal information disclosed, consumer rights documented, service provider obligations defined
- [ ] KVKK compliance: explicit consent mechanisms for Turkish data subjects, VERBİS registration referenced, retention periods aligned with KVKK guidelines, Turkish-language version availability noted
- [ ] Placeholder tags are consistent across all documents and listed in a summary table
- [ ] Cross-references between documents use correct section numbers
- [ ] No contradictions exist between documents (especially Privacy Policy ↔ Cookie Policy)
- [ ] All documents include effective date, version number, and change-log template
- [ ] Sections requiring legal counsel are flagged with `[LEGAL REVIEW NEEDED]`
- [ ] Page routes (`/terms`, `/privacy`, `/cookies`, `/community-guidelines`, `/content-policy`, `/refund-policy`) are defined with implementation details
- [ ] Footer, cookie banner, and registration flow updates are specified
- [ ] All policy pages are publicly accessible and do not require authentication
- [ ] Policy pages include "Last Updated" date rendered dynamically from document metadata
- [ ] Policy pages are mobile-responsive and accessible (WCAG 2.1 AA)
- [ ] `robots.txt` and sitemap include policy page URLs
---
### Placeholder Summary Table
| Placeholder | Description | Used In |
|---|---|---|
| `[COMPANY_NAME]` | Legal entity name | All documents |
| `[CONTACT_EMAIL]` | General support email | All documents |
| `[DPO_EMAIL]` | Data Protection Officer email | Privacy Policy |
| `[EFFECTIVE_DATE]` | Document effective date | All documents |
| `[VERSION_NUMBER]` | Document version (e.g., v1.0) | All documents |
| `[PRODUCT_DESCRIPTION]` | Brief product description | Terms of Service |
| `[GOVERNING_LAW_JURISDICTION]` | State/country for governing law | Terms of Service |
| `[ARBITRATION_PROVIDER]` | Arbitration service (US users) | Terms of Service |
| `[REGISTERED_ADDRESS]` | Company registered address | All documents |
| `[VERBIS_REGISTRATION_NO]` | Turkish data controller registration | Privacy Policy |
| `[LEGAL_REVIEW_NEEDED]` | Flag for counsel review | Various sections |
---
### Change-Log Template (for each document)
| Version | Date | Changes | Author |
|---|---|---|---|
| v1.0 | [EFFECTIVE_DATE] | Initial version | [AUTHOR] |
| | | | |
---
### Review Schedule
- **Quarterly**: Review all documents for regulatory updates and business changes
- **Upon Regulatory Change**: Update immediately when GDPR, CCPA/CPRA, KVKK, or other applicable laws change
- **Upon Business Change**: Update when features, data practices, or policies change materially
- **Annual**: Full legal counsel review of all documents
Iniciá sesión para ver el prompt completo
Continuar con:
Al iniciar sesión, aceptás nuestros Términos de uso y Política de privacidad
Uso
Este prompt está diseñado para usarse con business. Copiá el contenido de arriba y pegalo en tu herramienta de IA preferida.
Para mejores resultados, personalizá los marcadores (indicados con corchetes o mayúsculas) con tus requisitos específicos.
Discusión
0 comentarios