




Brightpearl is a retail-operating system built for multichannel brands and wholesalers, combining inventory, order, warehouse, accounting and CRM in one unified platform.
Have any questions? We’re here to help You
Makini is SOC 2 Type 2 compliant and undergoes penetration testing twice annually. We use industry-standard encryption protocols including TLS 1.2+ for data in transit and AES-256 for data at rest. Customer credentials are encrypted using secure key management practices. Our infrastructure follows security best practices including network segmentation, access controls, and regular security audits. For highly regulated industries or customers with strict compliance requirements, we offer self-hosted deployment options that keep all data within your infrastructure. We've successfully met security requirements for enterprises including financial institutions and government contractors.
Design your webhook receiver to handle duplicates and out-of-order webhooks, as network issues or retries can cause both scenarios. Keep the receiver lightweight—ideally writing incoming webhooks to a queue or reliable storage—then process them asynchronously. This prevents timeouts and allows your system to handle high-volume webhook spikes. Respond with a 200 status code immediately after receiving the webhook, before processing begins. Implement idempotency by tracking processed webhook IDs and skipping duplicates. Use constant-time comparison for signature verification to prevent timing attacks. If webhook processing fails, log the error but still return 200 to prevent unnecessary retries. Set up monitoring and alerts for webhook failures so you can investigate issues promptly. For critical workflows, combine webhooks with periodic polling as a fallback mechanism.
Connection-specific errors often relate to system configuration, permissions, or connectivity issues. Common scenarios include: the system is offline or unreachable, credentials have expired, API rate limits on the source system, or permission changes in the source system. Use the connection status endpoint to check connection health before making API calls. Implement circuit breaker patterns—if a connection repeatedly fails, temporarily stop making requests to avoid cascading failures. Log connection-specific errors separately to identify problematic connections. When errors occur, check if the issue affects all operations or specific entity types, which helps narrow down permission or configuration issues. For on-premises systems, verify network connectivity and firewall rules. Contact support if connection errors persist, providing the connection ID and affected operations.
Yes, Makini supports multi-region deployments for customers requiring data residency in specific regions or needing high availability across geographies. Each region runs an independent instance of Makini with its own infrastructure, ensuring data remains within the specified region. Multi-region deployments are most common for self-hosted installations where customers want instances in multiple AWS regions or data centers. For cloud deployments, we can discuss region-specific hosting based on your requirements. Multi-region support ensures compliance with data localization regulations and provides geographic redundancy for mission-critical integrations.
