




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.
Data synchronization frequency is configurable based on your requirements. For real-time needs, Makini supports webhook-based synchronization where changes trigger immediate updates. For scheduled syncing, common intervals range from every 15 minutes to daily, depending on data volume and business requirements. The initial sync after connecting a system retrieves historical data based on your configuration—typically 30-90 days of historical records. Subsequent syncs are incremental, retrieving only records created or modified since the last sync. Sync frequency doesn't affect pricing. You can also trigger manual syncs on-demand via API when needed for specific workflows.
Webhooks allow Makini to notify your application of events in real-time. To set up webhooks, configure a webhook URL in your connection settings or during the initial connection flow. Your webhook endpoint must accept POST requests, respond within 10 seconds with a 200 status code, and use HTTPS with a valid SSL certificate. Makini will send webhook payloads to your endpoint when configured events occur, such as sync completion, connection status changes, or errors requiring attention. We recommend keeping your webhook receiver lightweight—ideally just writing the payload to a queue for asynchronous processing—to avoid timeouts and ensure reliable delivery.
Makini implements automatic retry logic for failed webhook deliveries. If your endpoint is unavailable or returns an error status code, we retry delivery with exponentially increasing intervals starting at 30 seconds. Retries continue for up to 24 hours. If delivery ultimately fails, the webhook is logged but not delivered. You can view failed webhooks in the Makini dashboard and manually retry them. To prevent webhook loss during extended downtime, implement a polling backup strategy—periodically check the sync status and query for recent changes if no webhooks have been received within the expected time window. Design your webhook receiver to be idempotent, as retry logic may result in duplicate deliveries.
