




Have any questions? We’re here to help You
Makini maintains a comprehensive data model built from analyzing thousands of industrial systems. When data flows through Makini, we automatically transform it from the source system's format into our standardized structure. For example, purchase orders from SAP, NetSuite, and Dynamics all return with consistent field names, data types, and structures. This normalization happens in real-time as data passes through the API. You also have access to raw data if needed for specific use cases. The unified model covers common entities like purchase orders, work orders, inventory items, vendors, and assets, with extensive field coverage across systems.
Makini's purchase order data model includes comprehensive field coverage across all major ERP systems. Standard fields include order number, line items, vendor information, quantities, unit prices, dates (order date, required date, delivery date), status, currency, ship-to and bill-to addresses, payment terms, and custom fields. Each line item includes product/material codes, descriptions, quantities, unit of measure, pricing, and delivery information. The specific fields available depend on the source system's capabilities. You can view the complete field mapping for any connected system in the Makini dashboard, and custom fields can be added as needed for your specific requirements.
Makini provides a `/sync-status` API endpoint that returns the current synchronization state for a connection. The response includes the last successful sync timestamp, sync status (in progress, completed, failed), any error messages, and the next scheduled sync time. You can query this endpoint to monitor sync health and detect issues. For workflow-based syncs using Makini Flows, each workflow execution is logged with detailed status information including start time, completion time, success/failure status, and any errors encountered. The Makini dashboard also provides visual sync status monitoring across all connections.
All Makini webhooks include a signature header for verification. The signature is an HMAC hash of the webhook payload using your webhook secret as the key. To verify a webhook, compute the HMAC using your secret and compare it to the signature header using constant-time comparison to avoid timing attacks. Never process webhook data without verification, as this could expose your system to forged requests. Your webhook secret is provided when you configure webhooks and should be stored securely. Webhook verification ensures that only legitimate requests from Makini are processed by your application.
