from django.db import models from .base import MarketplaceIntegration from ...fields import EncryptedCharField class RecommerceIntegration(MarketplaceIntegration): """ Интеграция с Recommerce. Recommerce - платформа для управления интернет-магазином. API документация: запросы отправляются на домен магазина с заголовком x-auth-token. Обязательные настройки: - store_url: URL магазина (домен для API запросов) - api_token: токен авторизации (передаётся в заголовке x-auth-token) """ # API токен (x-auth-token) - ЗАШИФРОВАН api_token = EncryptedCharField( max_length=500, blank=True, verbose_name="API Токен (x-auth-token)", help_text="Токен авторизации из панели управления Recommerce" ) class Meta: verbose_name = "Recommerce" verbose_name_plural = "Recommerce" def __str__(self): return f"Recommerce: {self.name or self.store_url or 'не настроен'}" @property def is_configured(self) -> bool: """Recommerce требует store_url и api_token""" return bool(self.store_url and self.api_token)