mcpField
C
compliance-management

compliance-management

github.com/kishorkukrejaその他8471 回インストール3 週間前に更新
リポジトリ

compliance-management について

複数市場やサプライヤーに関わる規制、認証、リスクを扱うサプライチェーン向けコンプライアンス管理スキルです。貿易、製品、環境、社会、プライバシー、業界固有の要件を整理します。

主な機能

  1. 01規制分野とコンプライアンスリスクの整理
  2. 02貿易コンプライアンスとHSコード分類
  3. 03製品・業界規制の対象整理
  4. 04サプライヤー認証と監査の追跡
  5. 05コンプライアンス報告と是正計画

活用シーン

  1. 01地域をまたぐ適用規制の整理
  2. 02サプライヤー書類と監査状況の評価
  3. 03認証の期限と更新対応の追跡
  4. 04顧客向けコンプライアンス調査票や報告書の準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/kishorkukreja/awesome-supply-chain --skill compliance-management

インストール後、Claude Code で/compliance-managementを入力して読み込まれたか確認します。

詳細

コンプライアンス管理

サプライチェーンのコンプライアンスと規制管理の専門家として、複雑な規制要件への対応、基準の遵守、認証の管理、グローバルサプライチェーン全体のコンプライアンスリスクの軽減を組織に支援します。

初期評価

コンプライアンス管理を導入する前に、以下を把握します。

  1. 規制環境

    • 対象となる業界と製品は何ですか?
    • 事業を展開している地理的地域はどこですか?
    • 適用される主要な規制の枠組みは何ですか?
    • 最近のコンプライアンス上の問題や違反はありますか?
  2. コンプライアンス成熟度

    • 現在のコンプライアンスプロセスとシステムはどのようなものですか?
    • 専任のコンプライアンス担当者はいますか?
    • サプライヤーに求めるコンプライアンス要件は何ですか?
    • 監査とモニタリングの頻度はどのくらいですか?
  3. リスクエクスポージャー

    • コンプライアンス違反に対する罰則は何ですか?
    • 事業中断のリスクはありますか?
    • 評判への影響はありますか?
    • 顧客の要件や監査にはどのようなものがありますか?
  4. サプライチェーンの複雑さ

    • サプライヤーと国の数はいくつですか?
    • 製品の複雑さや部品表(BOM)の階層はどの程度ですか?
    • 製品の規制上の分類は何ですか?
    • 輸出入の取扱量はどのくらいですか?

規制コンプライアンスの枠組み

主な規制分野

1. 貿易コンプライアンス

  • 輸出入規制
  • 税関分類(HSコード)
  • 原産国の判定
  • 自由貿易協定(FTA)
  • 貿易制裁と禁輸措置
  • 輸出管理(EAR、ITAR)

2. 製品安全と規制

  • REACH(EUの化学物質規制)
  • RoHS(有害物質の使用制限)
  • プロポジション65(カリフォルニア州)
  • TSCA(米国の化学物質規制)
  • FDA(食品、医薬品、医療機器)
  • CPSC(消費者製品安全)

3. 環境コンプライアンス

  • WEEE(電気電子機器廃棄物)
  • 包装規制
  • 炭素排出量の報告要件
  • 廃棄物管理規制
  • 環境許可

4. 社会的・倫理的コンプライアンス

  • 紛争鉱物(3TG:スズ、タンタル、タングステン、金)
  • 強制労働(ウイグル強制労働防止法)
  • 児童労働の禁止
  • 現代奴隷法(英国、オーストラリア)
  • 公正労働基準
  • 人権デューデリジェンス

5. データとプライバシー

  • GDPR(EUのデータ保護)
  • CCPA(カリフォルニア州のプライバシー)
  • データローカライゼーション要件
  • 国境を越えたデータ移転

6. 業界固有

  • 医薬品(GMP、GDP)
  • 自動車(IATF 16949)
  • 航空宇宙(AS9100)
  • 食品安全(FSMA、HACCP)
  • 医療機器(ISO 13485、FDA QSR)

コンプライアンス管理システム

規制データベースと追跡
import pandas as pd
import numpy as np
from datetime import datetime, timedelta

class ComplianceManager:
    """Comprehensive compliance management system"""

    def __init__(self):
        self.regulations = {}
        self.products = {}
        self.suppliers = {}
        self.certifications = []
        self.compliance_violations = []

    def add_regulation(self, reg_id, regulation_name, region, category,
                      effective_date, review_frequency_days=365):
        """
        Add regulation to track

        category: 'trade', 'product_safety', 'environmental', 'social', 'data'
        """

        self.regulations[reg_id] = {
            'regulation_name': regulation_name,
            'region': region,
            'category': category,
            'effective_date': effective_date,
            'review_frequency_days': review_frequency_days,
            'last_review_date': None,
            'next_review_date': None,
            'compliance_status': 'Pending Review'
        }

    def add_product(self, product_id, product_name, hs_code, materials,
                   target_markets, applicable_regulations):
        """
        Add product and its compliance requirements

        materials: list of material components
        applicable_regulations: list of regulation IDs that apply
        """

        self.products[product_id] = {
            'product_name': product_name,
            'hs_code': hs_code,
            'materials': materials,
            'target_markets': target_markets,
            'applicable_regulations': applicable_regulations,
            'compliance_status': {},
            'certifications_required': [],
            'certifications_obtained': []
        }

        # Initialize compliance status for each regulation
        for reg_id in applicable_regulations:
            self.products[product_id]['compliance_status'][reg_id] = 'Not Assessed'

    def assess_product_compliance(self, product_id):
        """
        Assess product compliance against applicable regulations

        Returns compliance gaps and required actions
        """

        if product_id not in self.products:
            return None

        product = self.products[product_id]
        compliance_assessment = {
            'product_id': product_id,
            'product_name': product['product_name'],
            'overall_status': 'Compliant',
            'regulations_assessed': [],
            'compliance_gaps': [],
            'actions_required': []
        }

        for reg_id in product['applicable_regulations']:
            if reg_id not in self.regulations:
                continue

            regulation = self.regulations[reg_id]

            # Check specific compliance based on regulation type
            gap_found = False

            if regulation['category'] == 'product_safety':
                # Example: Check for restricted substances
                if self._check_restricted_substances(product):
                    gap_found = True
                    compliance_assessment['compliance_gaps'].append({
                        'regulation': regulation['regulation_name'],
                        'issue': 'Product contains restricted substances',
                        'severity': 'Critical'
                    })
                    compliance_assessment['actions_required'].append({
                        'action': 'Reformulate product or obtain exemption',
                        'owner': 'Product Development',
                        'timeline': '90 days'
                    })

            elif regulation['category'] == 'trade':
                # Example: Check for proper classification
                if not product['hs_code']:
                    gap_found = True
                    compliance_assessment['compliance_gaps'].append({
                        'regulation': regulation['regulation_name'],
                        'issue': 'Missing HS code classification',
                        'severity': 'High'
                    })
                    compliance_assessment['actions_required'].append({
                        'action': 'Complete customs classification',
                        'owner': 'Trade Compliance',
                        'timeline': '30 days'
                    })

            # Update status
            status = 'Non-Compliant' if gap_found else 'Compliant'
            product['compliance_status'][reg_id] = status

            compliance_assessment['regulations_assessed'].append({
                'regulation_id': reg_id,
                'regulation_name': regulation['regulation_name'],
                'status': status
            })

            if gap_found:
                compliance_assessment['overall_status'] = 'Non-Compliant'

        return compliance_assessment

    def _check_restricted_substances(self, product):
        """Check if product contains restricted substances"""

        # Simplified check - in reality would check against substance database
        restricted_materials = ['lead', 'cadmium', 'mercury', 'hexavalent_chromium']

        for material in product['materials']:
            if material.lower() in restricted_materials:
                return True

        return False

    def add_supplier(self, supplier_id, supplier_name, country,
                    certifications, audit_date=None):
        """Add supplier and track compliance"""

        self.suppliers[supplier_id] = {
            'supplier_name': supplier_name,
            'country': country,
            'certifications': certifications,
            'last_audit_date': audit_date,
            'next_audit_date': self._calculate_next_audit(audit_date),
            'audit_frequency_days': 365,
            'compliance_score': None,
            'violations': []
        }

    def _calculate_next_audit(self, last_audit_date, frequency_days=365):
        """Calculate next audit date"""
        if last_audit_date:
            if isinstance(last_audit_date, str):
                last_audit_date = datetime.strptime(last_audit_date, '%Y-%m-%d')
            return last_audit_date + timedelta(days=frequency_days)
        return None

    def track_certification(self, entity_id, entity_type, cert_name,
                          cert_number, issue_date, expiry_date, status='Active'):
        """
        Track certifications for products, suppliers, or facilities

        entity_type: 'product', 'supplier', 'facility'
        """

        self.certifications.append({
            'entity_id': entity_id,
            'entity_type': entity_type,
            'certification_name': cert_name,
            'certification_number': cert_number,
            'issue_date': issue_date,
            'expiry_date': expiry_date,
            'status': status,
            'days_to_expiry': self._calculate_days_to_expiry(expiry_date)
        })

    def _calculate_days_to_expiry(self, expiry_date):
        """Calculate days until certification expires"""
        if isinstance(expiry_date, str):
            expiry_date = datetime.strptime(expiry_date, '%Y-%m-%d')

        today = datetime.now()
        days = (expiry_date - today).days

        return days

    def get_expiring_certifications(self, days_threshold=90):
        """Get certifications expiring within threshold"""

        expiring = []

        for cert in self.certifications:
            if cert['days_to_expiry'] <= days_threshold and cert['days_to_expiry'] >= 0:
                urgency = 'Critical' if cert['days_to_expiry'] <= 30 else 'High' if cert['days_to_expiry'] <= 60 else 'Medium'

                expiring.append({
                    'entity_id': cert['entity_id'],
                    'entity_type': cert['entity_type'],
                    'certification': cert['certification_name'],
                    'expiry_date': cert['expiry_date'],
                    'days_remaining': cert['days_to_expiry'],
                    'urgency': urgency
                })

        # Sort by days remaining
        expiring.sort(key=lambda x: x['days_remaining'])

        return pd.DataFrame(expiring) if expiring else pd.DataFrame()

    def generate_compliance_dashboard(self):
        """Generate compliance dashboard metrics"""

        # Product compliance
        total_products = len(self.products)
        compliant_products = sum(
            1 for p in self.products.values()
            if all(status == 'Compliant' for status in p['compliance_status'].values())
        )

        # Supplier compliance
        total_suppliers = len(self.suppliers)

        # Certifications
        total_certs = len(self.certifications)
        active_certs = sum(1 for c in self.certifications if c['status'] == 'Active')
        expiring_soon = sum(1 for c in self.certifications if 0 <= c['days_to_expiry'] <= 90)
        expired = sum(1 for c in self.certifications if c['days_to_expiry'] < 0)

        return {
            'products': {
                'total': total_products,
                'compliant': compliant_products,
                'compliance_rate': round(compliant_products / total_products * 100, 1) if total_products > 0 else 0
            },
            'suppliers': {
                'total': total_suppliers
            },
            'certifications': {
                'total': total_certs,
                'active': active_certs,
                'expiring_soon_90_days': expiring_soon,
                'expired': expired
            },
            'violations': {
                'total': len(self.compliance_violations)
            }
        }


# Example usage
compliance_mgr = ComplianceManager()

# Add regulations
compliance_mgr.add_regulation(
    'REG001',
    'RoHS Directive (EU)',
    region='European Union',
    category='product_safety',
    effective_date='2006-07-01'
)

compliance_mgr.add_regulation(
    'REG002',
    'REACH Regulation',
    region='European Union',
    category='product_safety',
    effective_date='2007-06-01'
)

compliance_mgr.add_regulation(
    'REG003',
    'Export Administration Regulations',
    region='United States',
    category='trade',
    effective_date='1979-03-30'
)

# Add products
compliance_mgr.add_product(
    'PROD001',
    'Electronic Widget',
    hs_code='8543.70.9900',
    materials=['plastic', 'copper', 'silicon'],
    target_markets=['EU', 'US', 'CN'],
    applicable_regulations=['REG001', 'REG002']
)

compliance_mgr.add_product(
    'PROD002',
    'Industrial Controller',
    hs_code='8537.10.9000',
    materials=['aluminum', 'steel', 'lead'],  # Contains restricted substance
    target_markets=['EU'],
    applicable_regulations=['REG001']
)

# Assess product compliance
assessment1 = compliance_mgr.assess_product_compliance('PROD001')
print(f"Product: {assessment1['product_name']}")
print(f"Overall Status: {assessment1['overall_status']}")
print(f"Compliance Gaps: {len(assessment1['compliance_gaps'])}")

assessment2 = compliance_mgr.assess_product_compliance('PROD002')
print(f"\nProduct: {assessment2['product_name']}")
print(f"Overall Status: {assessment2['overall_status']}")
if assessment2['compliance_gaps']:
    print("Gaps found:")
    for gap in assessment2['compliance_gaps']:
        print(f"  - {gap['issue']} (Severity: {gap['severity']})")

# Add suppliers
compliance_mgr.add_supplier(
    'SUP001',
    'Acme Manufacturing',
    country='China',
    certifications=['ISO9001', 'ISO14001'],
    audit_date='2025-06-15'
)

# Track certifications
compliance_mgr.track_certification(
    'SUP001',
    'supplier',
    'ISO 9001:2015',
    'ISO-9001-12345',
    issue_date='2022-06-15',
    expiry_date='2025-06-15',
    status='Active'
)

compliance_mgr.track_certification(
    'PROD001',
    'product',
    'CE Mark',
    'CE-2024-0001',
    issue_date='2024-01-10',
    expiry_date='2026-03-15',
    status='Active'
)

compliance_mgr.track_certification(
    'PROD001',
    'product',
    'FCC Certification',
    'FCC-ID-XYZ123',
    issue_date='2024-02-01',
    expiry_date='2026-02-20',
    status='Active'
)

# Get expiring certifications
expiring = compliance_mgr.get_expiring_certifications(days_threshold=180)
print("\n\nExpiring Certifications (next 180 days):")
if not expiring.empty:
    print(expiring[['certification', 'entity_id', 'days_remaining', 'urgency']])
else:
    print("None")

# Dashboard
dashboard = compliance_mgr.generate_compliance_dashboard()
print("\n\nCompliance Dashboard:")
print(f"Products: {dashboard['products']['compliant']}/{dashboard['products']['total']} compliant ({dashboard['products']['compliance_rate']}%)")
print(f"Certifications: {dashboard['certifications']['active']} active, {dashboard['certifications']['expiring_soon_90_days']} expiring soon")

貿易コンプライアンス

HSコードの分類
class TradeComplianceManager:
    """Manage trade compliance including HS codes, duties, and regulations"""

    def __init__(self):
        self.hs_code_database = self._load_hs_codes()
        self.duty_rates = {}
        self.fta_eligibility = {}

    def _load_hs_codes(self):
        """Load HS code database (simplified)"""
        return {
            '8543.70': {'description': 'Other electrical machines with individual functions',
                       'typical_duty_us': 0.028},
            '8537.10': {'description': 'Control panels with voltage ≤1000V',
                       'typical_duty_us': 0.026},
            '8471.30': {'description': 'Portable computers',
                       'typical_duty_us': 0.000},  # Duty-free under ITA
        }

    def classify_product(self, product_description, material_composition,
                        intended_use, suggested_hs_code=None):
        """
        Assist with HS code classification

        Returns classification with confidence level
        """

        # In reality, this would use ML/NLP and extensive HS code database
        # Simplified example

        classification = {
            'product_description': product_description,
            'suggested_hs_code': suggested_hs_code,
            'confidence': 'Medium',
            'classification_rationale': [],
            'requires_expert_review': False
        }

        # Check if suggested code is valid
        if suggested_hs_code:
            if suggested_hs_code[:7] in self.hs_code_database:
                classification['confidence'] = 'High'
                classification['classification_rationale'].append(
                    f"HS code {suggested_hs_code} is valid and matches product type"
                )
            else:
                classification['confidence'] = 'Low'
                classification['requires_expert_review'] = True
                classification['classification_rationale'].append(
                    "Suggested HS code not found in database - expert review needed"
                )

        # Check for complex products
        if len(material_composition) > 5:
            classification['requires_expert_review'] = True
            classification['classification_rationale'].append(
                "Complex multi-material product - binding ruling recommended"
            )

        return classification

    def calculate_landed_cost(self, product_cost, hs_code, origin_country,
                            dest_country, shipping_cost, insurance_cost=None):
        """
        Calculate total landed cost including duties and fees

        Simplified calculation
        """

        # Insurance (if not provided, estimate as 1% of product cost)
        if insurance_cost is None:
            insurance_cost = product_cost * 0.01

        # Customs value (FOB + freight + insurance)
        customs_value = product_cost + shipping_cost + insurance_cost

        # Get duty rate
        hs_prefix = hs_code[:7]
        duty_rate = self.hs_code_database.get(hs_prefix, {}).get('typical_duty_us', 0.05)

        # Calculate duty
        duty_amount = customs_value * duty_rate

        # MPF (Merchandise Processing Fee) - US specific
        mpf = customs_value * 0.003464
        mpf = max(27.75, min(mpf, 538.40))  # MPF has min and max

        # Harbor Maintenance Fee (if applicable) - 0.125% of cargo value
        hmf = customs_value * 0.00125 if dest_country == 'US' else 0

        # Total landed cost
        total_landed_cost = customs_value + duty_amount + mpf + hmf

        return {
            'product_cost': round(product_cost, 2),
            'shipping_cost': round(shipping_cost, 2),
            'insurance_cost': round(insurance_cost, 2),
            'customs_value': round(customs_value, 2),
            'duty_rate': round(duty_rate * 100, 2),
            'duty_amount': round(duty_amount, 2),
            'mpf': round(mpf, 2),
            'hmf': round(hmf, 2),
            'total_landed_cost': round(total_landed_cost, 2),
            'landed_cost_percentage': round(total_landed_cost / product_cost * 100, 1)
        }

    def check_fta_eligibility(self, hs_code, origin_country, dest_country):
        """
        Check Free Trade Agreement eligibility

        Simplified - in reality would check specific rules of origin
        """

        # Example FTA relationships
        fta_agreements = {
            ('US', 'MX'): 'USMCA',
            ('MX', 'US'): 'USMCA',
            ('US', 'CA'): 'USMCA',
            ('CA', 'US'): 'USMCA',
            ('US', 'SG'): 'US-Singapore FTA',
            ('SG', 'US'): 'US-Singapore FTA',
        }

        agreement = fta_agreements.get((origin_country, dest_country))

        if agreement:
            # Check rules of origin (simplified)
            eligible = True  # In reality, would check specific product rules

            return {
                'fta_eligible': eligible,
                'agreement': agreement,
                'duty_savings': 'Potentially duty-free' if eligible else 'N/A',
                'documentation_required': ['Certificate of Origin', 'Importer Declaration'],
                'origin_criteria': 'Must meet regional value content or tariff shift rules'
            }
        else:
            return {
                'fta_eligible': False,
                'agreement': None,
                'note': f'No FTA between {origin_country} and {dest_country}'
            }

    def screen_denied_parties(self, party_name, country):
        """
        Screen against denied parties lists

        In reality, would check against:
        - OFAC SDN List
        - BIS Denied Persons List
        - EU Sanctions List
        - UN Sanctions List
        """

        # Simplified screening
        # In production, integrate with compliance screening API

        denied_parties_sample = ['ABC Corp', 'XYZ Ltd', 'Bad Actor Inc']

        is_denied = party_name in denied_parties_sample

        screening_result = {
            'party_name': party_name,
            'country': country,
            'screening_status': 'DENIED' if is_denied else 'CLEAR',
            'lists_checked': ['OFAC SDN', 'BIS Denied Persons', 'EU Sanctions'],
            'screening_date': datetime.now().strftime('%Y-%m-%d'),
            'matches_found': 1 if is_denied else 0
        }

        if is_denied:
            screening_result['action_required'] = 'DO NOT TRANSACT - Escalate to Compliance Officer'
            screening_result['severity'] = 'Critical'

        return screening_result


# Example usage
trade_mgr = TradeComplianceManager()

# Classify product
classification = trade_mgr.classify_product(
    product_description='Handheld electronic device for industrial control',
    material_composition=['plastic', 'aluminum', 'circuit_board'],
    intended_use='Industrial process control',
    suggested_hs_code='8537.10.9000'
)

print("HS Code Classification:")
print(f"  Suggested Code: {classification['suggested_hs_code']}")
print(f"  Confidence: {classification['confidence']}")
print(f"  Requires Expert Review: {classification['requires_expert_review']}")

# Calculate landed cost
landed_cost = trade_mgr.calculate_landed_cost(
    product_cost=1000,
    hs_code='8537.10.9000',
    origin_country='CN',
    dest_country='US',
    shipping_cost=150,
    insurance_cost=15
)

print(f"\n\nLanded Cost Calculation:")
print(f"  Product Cost: ${landed_cost['product_cost']}")
print(f"  Customs Value: ${landed_cost['customs_value']}")
print(f"  Duty ({landed_cost['duty_rate']}%): ${landed_cost['duty_amount']}")
print(f"  Total Landed Cost: ${landed_cost['total_landed_cost']}")
print(f"  Total % of Product Cost: {landed_cost['landed_cost_percentage']}%")

# Check FTA eligibility
fta = trade_mgr.check_fta_eligibility(
    hs_code='8537.10.9000',
    origin_country='MX',
    dest_country='US'
)

print(f"\n\nFTA Eligibility:")
print(f"  Agreement: {fta.get('agreement', 'None')}")
print(f"  Eligible: {fta['fta_eligible']}")

# Screen denied party
screening = trade_mgr.screen_denied_parties('ABC Corp', 'IR')

print(f"\n\nDenied Party Screening:")
print(f"  Party: {screening['party_name']}")
print(f"  Status: {screening['screening_status']}")

ツールとライブラリ

Pythonライブラリ

コンプライアンス管理:

  • pandas:データ管理
  • numpy:数値計算
  • sqlalchemy:データベース接続

文書管理:

  • PyPDF2:PDF処理
  • python-docx:Word文書の処理
  • openpyxl:Excelファイルの処理

データ検証:

  • cerberus:スキーマ検証
  • pydantic:データ検証
  • jsonschema:JSON検証

自動化:

  • schedule:スケジュール設定タスク
  • APScheduler:高度なスケジュール設定
  • celery:分散タスクキュー
商用ソフトウェア

コンプライアンス管理:

  • SAP GTS (Global Trade Services):貿易コンプライアンス
  • Amber Road (E2open):グローバル貿易管理
  • Descartes:税関とコンプライアンス
  • BluJay Solutions:貿易コンプライアンス
  • Integration Point:貿易コンプライアンスの自動化

製品コンプライアンス:

  • Assent Compliance:サプライチェーンのコンプライアンス
  • Coupa Supplier Compliance:サプライヤー管理
  • EcoVadis:サステナビリティ評価
  • Sphera:製品スチュワードシップ

規制インテリジェンス:

  • UL Compliance:規制データベース
  • Enhesa:グローバルな規制インテリジェンス
  • Intertek Inlight:コンプライアンスインテリジェンス
  • Verisk 3E:環境コンプライアンス

文書管理:

  • Ivalua:サプライヤーコンプライアンス文書
  • TraceLink:シリアル化とコンプライアンス
  • MasterControl:文書管理システム

よくある課題と解決策

課題:規制変更への対応

問題:

  • 規制は絶えず変化します
  • 複数の法域への対応が必要です
  • リソースに制約があります

解決策:

  • 規制情報サービスを購読します
  • 規制変更の自動アラートを設定します
  • 業界団体や作業部会に参加します
  • 専任のコンプライアンスチームまたは専門家を配置します
  • 年間コンプライアンスカレンダーを作成します
  • 規制変更による影響を評価します
課題:サプライヤーのコンプライアンス検証

問題:

  • サプライヤーにコンプライアンスの知識が不足しています
  • 書類の形式が統一されていません
  • 主張の検証が困難です

解決策:

  • サプライヤー向けコンプライアンス研修プログラムを実施します
  • 標準化されたコンプライアンス質問票を使用します
  • 第三者監査と認証を利用します
  • サプライチェーンのトレーサビリティにブロックチェーンを活用します
  • 契約でコンプライアンス要件を定めます
  • リスクに基づいてサプライヤーを分類します
課題:複雑な製品コンプライアンス

問題:

  • 製品には数百もの部品が含まれています
  • 多層サプライチェーンの可視性が限られています
  • 市場ごとに要件が異なり、相反することがあります

解決策:

  • 部品表(BOM)管理システムを導入します
  • 材料申告データベース(IMDS、BOMcheck)を利用します
  • 製品ライフサイクル管理(PLM)と連携します
  • 初期段階からコンプライアンスを考慮して設計します
  • 規制対象物質リスト(RSL)を活用します
  • 市場ごとに製品のバリエーションを用意します
課題:文書管理

問題:

  • コンプライアンス関連文書の量が多くなります
  • 認証の有効期限が切れます
  • 監査証跡の要件があります

解決策:

  • 文書管理システム(DMS)を導入します
  • 有効期限の自動アラートを設定します
  • デジタル文書ワークフローを活用します
  • バージョン管理と監査ログを利用します
  • コンプライアンス関連文書を一元管理します
  • 更新時期が近づいた際の自動リマインダーを設定します
課題:複雑な貿易コンプライアンス

問題:

  • 関税分類をめぐる紛争があります
  • 原産地規則の判定が必要です
  • 取引禁止対象者のスクリーニングが必要です
  • 輸出管理要件への対応が必要です

解決策:

  • 自動分類ツールを利用します
  • 重要な製品について拘束力のある裁定を申請します
  • 取引禁止対象者をリアルタイムでスクリーニングします
  • 輸出許可管理システムを導入します
  • FTAの適用資格を分析します
  • 貿易コンプライアンス監査を実施します
課題:顧客へのコンプライアンスの証明

問題:

  • 顧客による監査や質問票への対応が必要です
  • 顧客ごとに要件が異なります
  • デューデリジェンスの実施を証明する必要があります

解決策:

  • 顧客向けのコンプライアンスポータルを一元化します
  • 標準的なコンプライアンス証明書を用意します
  • 第三者認証と監査を利用します
  • 透明性を確保し、文書を整備します
  • リアルタイムデータを表示するコンプライアンスダッシュボードを用意します
  • コンプライアンス状況を積極的に報告します

出力形式

コンプライアンスレポート

エグゼクティブサマリー:

  • 全体的なコンプライアンス状況
  • 重大な不足事項および違反
  • ビジネスに影響する規制の変更
  • 必要な対応とスケジュール

規制コンプライアンス状況:

規制地域カテゴリ状況最終レビュー次回レビュー不足事項
RoHSEU製品安全準拠2025-11-152026-11-15なし
REACHEU化学物質一部準拠2025-10-012026-04-01SVHC 2物質
ITARUS輸出管理準拠2025-09-202026-09-20なし
紛争鉱物グローバル社会進行中2025-12-012026-12-01サプライヤーの申告待ち

製品コンプライアンス:

製品市場規制状況認証不足事項
Widget AEU, USRoHS, FCC準拠CE, FCCなし
Widget BEURoHS, REACH非準拠CE(期限切れ)鉛含有、認証期限切れ
Controller XUS, CNFCC, CCC一部準拠FCCCCC の取得待ち

サプライヤーコンプライアンス:

サプライヤー国認証最終監査次回監査スコア状況
Supplier AChinaISO9001, ISO140012025-06-152026-06-1585/100✓ 準拠
Supplier BVietnamISO90012024-08-202025-08-2072/100⚠ 監査時期が近づいています
Supplier CMexicoなし未実施未定該当なし✗ 監査が必要

認証トラッカー:

対象認証番号発行日有効期限期限までの日数必要な対応
Product ACE マークCE-2024-0012024-01-102026-03-15445なし
Supplier XISO 9001ISO-123452022-06-152025-06-15142更新手続き中
Facility 1EPA 許可EPA-XYZ-0012023-01-012026-01-01342なし

対応項目:

優先度対応担当期限状況
重大Supplier X の ISO 9001 を更新する調達2025-05-01進行中
高紛争鉱物に関する調査を完了するサプライチェーン2026-01-31未着手
高鉛を除去するため Product B の配合を変更する研究開発2026-03-31計画中
中Supplier C の監査を実施する品質2026-02-28予定済み

質問事項

さらに詳しい情報が必要な場合:

  1. 対象となる製品やサービスは何ですか?
  2. どの市場/地域で事業を展開していますか?
  3. 業界に適用される規制の枠組みは何ですか?
  4. 最近、コンプライアンス上の問題や違反はありましたか?
  5. 製品/サプライヤーに必要な認証は何ですか?
  6. サプライチェーンには、サプライヤーと国がそれぞれいくつありますか?
  7. 輸出入の量と対象国はどのくらいですか?
  8. 顧客固有のコンプライアンス要件はありますか?
  9. どのようなコンプライアンス管理システムが導入されていますか?
  10. コンプライアンスチームの構成とリソースはどのようになっていますか?

関連スキル

  • supplier-risk-management:サプライヤーのコンプライアンスリスクの評価に使用します
  • quality-management:品質基準と認証に関するスキルです
  • sustainable-sourcing:環境および社会面のコンプライアンスに関するスキルです
  • carbon-footprint-tracking:炭素排出量報告のコンプライアンスに関するスキルです
  • contract-management:契約におけるコンプライアンス条項に関するスキルです
  • procurement-optimization:調達にコンプライアンスを組み込むためのスキルです
  • supplier-selection:サプライヤー評価におけるコンプライアンス基準に関するスキルです
  • track-and-trace:サプライチェーンの透明性とトレーサビリティに関するスキルです

コメント