BizPOS: Food Aggregator Integration
Connect BizPOS with Zomato, Swiggy, and ONDC to manage restaurant orders from a unified dashboard with real-time synchronization.
Supported Platforms
Zomato • Swiggy • ONDC • Uber Eats • Dunzo
Code Examples - Zomato Integration
const axios = require('axios');
const connectZomato = async () => {
try {
const response = await axios.post('https://api.bizmini.in/v2/integrations/pos/zomato', {
restaurant_id: '12345678',
api_key: 'zomato_live_key',
webhook_url: 'https://api.bizmini.in/v2/webhooks/zomato',
menu_sync: true,
auto_accept_orders: true
}, {
headers: {
'Authorization': 'Bearer ' + process.env.BIZMINI_API_KEY,
'Content-Type': 'application/json'
}
});
console.log('✓ Connected:', response.data);
} catch (error) {
console.error('✗ Error:', error.response?.data || error.message);
}
};
connectZomato();
<?php
$apiKey = getenv('BIZMINI_API_KEY');
$baseUrl = 'https://api.bizmini.in/v2';
$data = [
'restaurant_id' => '12345678',
'api_key' => 'zomato_live_key',
'webhook_url' => $baseUrl . '/webhooks/zomato',
'menu_sync' => true,
'auto_accept_orders' => true
];
$ch = curl_init($baseUrl . '/integrations/pos/zomato');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json'
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
echo '✓ Connected: ' . $response;
} else {
echo '✗ Error: ' . $response;
}
?>
import os
import requests
def connect_zomato():
api_key = os.environ.get('BIZMINI_API_KEY')
base_url = 'https://api.bizmini.in/v2'
data = {
'restaurant_id': '12345678',
'api_key': 'zomato_live_key',
'webhook_url': f'{base_url}/webhooks/zomato',
'menu_sync': True,
'auto_accept_orders': True
}
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
try:
response = requests.post(
f'{base_url}/integrations/pos/zomato',
json=data,
headers=headers
)
response.raise_for_status()
print('✓ Connected:', response.json())
except requests.exceptions.RequestException as e:
print('✗ Error:', str(e))
connect_zomato()
import java.net.http.*;
import java.net.URI;
import org.json.JSONObject;
public class ZomatoIntegration {
public static void main(String[] args) throws Exception {
String apiKey = System.getenv("BIZMINI_API_KEY");
String baseUrl = "https://api.bizmini.in/v2";
JSONObject data = new JSONObject();
data.put("restaurant_id", "12345678");
data.put("api_key", "zomato_live_key");
data.put("webhook_url", baseUrl + "/webhooks/zomato");
data.put("menu_sync", true);
data.put("auto_accept_orders", true);
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(baseUrl + "/integrations/pos/zomato"))
.header("Authorization", "Bearer " + apiKey)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(data.toString()))
.build();
HttpResponse response = client.send(request,
HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
System.out.println("✓ Connected: " + response.body());
} else {
System.err.println("✗ Error: " + response.body());
}
}
}
BizERP: Video Conferencing Integration
Integrate BizERP with Zoom, Google Meet, and Microsoft Teams for seamless meeting scheduling and team collaboration.
Supported Platforms
Zoom • Google Meet • Microsoft Teams • Google Workspace
Code Examples - Zoom Integration
const axios = require('axios');
const createZoomMeeting = async () => {
try {
const response = await axios.post('https://api.bizmini.in/v2/integrations/erp/zoom/meeting', {
topic: 'Team Weekly Standup',
start_time: '2025-10-05T10:00:00Z',
duration: 60,
timezone: 'Asia/Kolkata',
agenda: 'Discuss project milestones',
project_id: 'PRJ-2025-001'
}, {
headers: {
'Authorization': 'Bearer ' + process.env.BIZMINI_API_KEY,
'Content-Type': 'application/json'
}
});
console.log('✓ Meeting created:', response.data.join_url);
} catch (error) {
console.error('✗ Error:', error.response?.data || error.message);
}
};
createZoomMeeting();
<?php
$apiKey = getenv('BIZMINI_API_KEY');
$baseUrl = 'https://api.bizmini.in/v2';
$data = [
'topic' => 'Team Weekly Standup',
'start_time' => '2025-10-05T10:00:00Z',
'duration' => 60,
'timezone' => 'Asia/Kolkata',
'agenda' => 'Discuss project milestones',
'project_id' => 'PRJ-2025-001'
];
$ch = curl_init($baseUrl . '/integrations/erp/zoom/meeting');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json'
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
$result = json_decode($response);
echo '✓ Meeting created: ' . $result->join_url;
} else {
echo '✗ Error: ' . $response;
}
?>
import os
import requests
from datetime import datetime, timedelta
def create_zoom_meeting():
api_key = os.environ.get('BIZMINI_API_KEY')
base_url = 'https://api.bizmini.in/v2'
data = {
'topic': 'Team Weekly Standup',
'start_time': '2025-10-05T10:00:00Z',
'duration': 60,
'timezone': 'Asia/Kolkata',
'agenda': 'Discuss project milestones',
'project_id': 'PRJ-2025-001'
}
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
try:
response = requests.post(
f'{base_url}/integrations/erp/zoom/meeting',
json=data,
headers=headers
)
response.raise_for_status()
result = response.json()
print(f'✓ Meeting created: {result["join_url"]}')
except requests.exceptions.RequestException as e:
print('✗ Error:', str(e))
create_zoom_meeting()
import java.net.http.*;
import java.net.URI;
import org.json.JSONObject;
public class ZoomMeetingIntegration {
public static void main(String[] args) throws Exception {
String apiKey = System.getenv("BIZMINI_API_KEY");
String baseUrl = "https://api.bizmini.in/v2";
JSONObject data = new JSONObject();
data.put("topic", "Team Weekly Standup");
data.put("start_time", "2025-10-05T10:00:00Z");
data.put("duration", 60);
data.put("timezone", "Asia/Kolkata");
data.put("agenda", "Discuss project milestones");
data.put("project_id", "PRJ-2025-001");
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(baseUrl + "/integrations/erp/zoom/meeting"))
.header("Authorization", "Bearer " + apiKey)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(data.toString()))
.build();
HttpResponse response = client.send(request,
HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
JSONObject result = new JSONObject(response.body());
System.out.println("✓ Meeting created: " + result.getString("join_url"));
} else {
System.err.println("✗ Error: " + response.body());
}
}
}
BizCRM: Messaging Platform Integration
Connect BizCRM with WhatsApp Business API, Gmail, and Outlook for omnichannel customer communication.
Supported Platforms
WhatsApp Business • Meta Business Suite • Gmail • Outlook
Code Examples - WhatsApp Integration
const axios = require('axios');
const sendWhatsAppMessage = async () => {
try {
const response = await axios.post('https://api.bizmini.in/v2/integrations/crm/whatsapp/message', {
to: '+919876543210',
template_name: 'order_confirmation',
language: 'en',
parameters: [
{ type: 'text', text: 'John Doe' },
{ type: 'text', text: 'ORD-2025-001' },
{ type: 'text', text: '₹1,250' }
],
customer_id: 'CUST-12345'
}, {
headers: {
'Authorization': 'Bearer ' + process.env.BIZMINI_API_KEY,
'Content-Type': 'application/json'
}
});
console.log('✓ Message sent:', response.data.message_id);
} catch (error) {
console.error('✗ Error:', error.response?.data || error.message);
}
};
sendWhatsAppMessage();
<?php
$apiKey = getenv('BIZMINI_API_KEY');
$baseUrl = 'https://api.bizmini.in/v2';
$data = [
'to' => '+919876543210',
'template_name' => 'order_confirmation',
'language' => 'en',
'parameters' => [
['type' => 'text', 'text' => 'John Doe'],
['type' => 'text', 'text' => 'ORD-2025-001'],
['type' => 'text', 'text' => '₹1,250']
],
'customer_id' => 'CUST-12345'
];
$ch = curl_init($baseUrl . '/integrations/crm/whatsapp/message');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json'
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
$result = json_decode($response);
echo '✓ Message sent: ' . $result->message_id;
} else {
echo '✗ Error: ' . $response;
}
?>
import os
import requests
def send_whatsapp_message():
api_key = os.environ.get('BIZMINI_API_KEY')
base_url = 'https://api.bizmini.in/v2'
data = {
'to': '+919876543210',
'template_name': 'order_confirmation',
'language': 'en',
'parameters': [
{'type': 'text', 'text': 'John Doe'},
{'type': 'text', 'text': 'ORD-2025-001'},
{'type': 'text', 'text': '₹1,250'}
],
'customer_id': 'CUST-12345'
}
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
try:
response = requests.post(
f'{base_url}/integrations/crm/whatsapp/message',
json=data,
headers=headers
)
response.raise_for_status()
result = response.json()
print(f'✓ Message sent: {result["message_id"]}')
except requests.exceptions.RequestException as e:
print('✗ Error:', str(e))
send_whatsapp_message()
import java.net.http.*;
import java.net.URI;
import org.json.*;
public class WhatsAppIntegration {
public static void main(String[] args) throws Exception {
String apiKey = System.getenv("BIZMINI_API_KEY");
String baseUrl = "https://api.bizmini.in/v2";
JSONObject data = new JSONObject();
data.put("to", "+919876543210");
data.put("template_name", "order_confirmation");
data.put("language", "en");
JSONArray parameters = new JSONArray();
parameters.put(new JSONObject().put("type", "text").put("text", "John Doe"));
parameters.put(new JSONObject().put("type", "text").put("text", "ORD-2025-001"));
parameters.put(new JSONObject().put("type", "text").put("text", "₹1,250"));
data.put("parameters", parameters);
data.put("customer_id", "CUST-12345");
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(baseUrl + "/integrations/crm/whatsapp/message"))
.header("Authorization", "Bearer " + apiKey)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(data.toString()))
.build();
HttpResponse response = client.send(request,
HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
JSONObject result = new JSONObject(response.body());
System.out.println("✓ Message sent: " + result.getString("message_id"));
} else {
System.err.println("✗ Error: " + response.body());
}
}
}
BizHRMS: Statutory Compliance Integration
Integrate BizHRMS with ESI, TDS, PF/EPFO portals to automate statutory compliance reporting and filing.
Security Notice
All statutory portal credentials are encrypted with AES-256 encryption and stored in secure vaults with restricted access.
Code Examples - ESI Report Generation
const axios = require('axios');
const generateESIReport = async () => {
try {
const response = await axios.post('https://api.bizmini.in/v2/integrations/hrms/esi/report', {
month: '09',
year: '2025',
report_type: 'monthly_contribution',
include_details: true,
auto_submit: false
}, {
headers: {
'Authorization': 'Bearer ' + process.env.BIZMINI_API_KEY,
'Content-Type': 'application/json'
}
});
console.log('✓ Report generated:', response.data.report_id);
console.log('Download URL:', response.data.download_url);
} catch (error) {
console.error('✗ Error:', error.response?.data || error.message);
}
};
generateESIReport();
<?php
$apiKey = getenv('BIZMINI_API_KEY');
$baseUrl = 'https://api.bizmini.in/v2';
$data = [
'month' => '09',
'year' => '2025',
'report_type' => 'monthly_contribution',
'include_details' => true,
'auto_submit' => false
];
$ch = curl_init($baseUrl . '/integrations/hrms/esi/report');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json'
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
$result = json_decode($response);
echo '✓ Report generated: ' . $result->report_id . PHP_EOL;
echo 'Download URL: ' . $result->download_url;
} else {
echo '✗ Error: ' . $response;
}
?>
import os
import requests
def generate_esi_report():
api_key = os.environ.get('BIZMINI_API_KEY')
base_url = 'https://api.bizmini.in/v2'
data = {
'month': '09',
'year': '2025',
'report_type': 'monthly_contribution',
'include_details': True,
'auto_submit': False
}
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
try:
response = requests.post(
f'{base_url}/integrations/hrms/esi/report',
json=data,
headers=headers
)
response.raise_for_status()
result = response.json()
print(f'✓ Report generated: {result["report_id"]}')
print(f'Download URL: {result["download_url"]}')
except requests.exceptions.RequestException as e:
print('✗ Error:', str(e))
generate_esi_report()
import java.net.http.*;
import java.net.URI;
import org.json.JSONObject;
public class ESIReportIntegration {
public static void main(String[] args) throws Exception {
String apiKey = System.getenv("BIZMINI_API_KEY");
String baseUrl = "https://api.bizmini.in/v2";
JSONObject data = new JSONObject();
data.put("month", "09");
data.put("year", "2025");
data.put("report_type", "monthly_contribution");
data.put("include_details", true);
data.put("auto_submit", false);
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(baseUrl + "/integrations/hrms/esi/report"))
.header("Authorization", "Bearer " + apiKey)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(data.toString()))
.build();
HttpResponse response = client.send(request,
HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
JSONObject result = new JSONObject(response.body());
System.out.println("✓ Report generated: " + result.getString("report_id"));
System.out.println("Download URL: " + result.getString("download_url"));
} else {
System.err.println("✗ Error: " + response.body());
}
}
}
Getting Started with BizMini API
Enterprise-grade RESTful API for seamless integration of ERP, CRM, HRMS, and POS functionalities.
Base URL - Production
https://api.bizmini.in/v2
All API requests must be made over HTTPS.
SDK Installation
npm install @bizmini/api-client --save
composer require bizmini/php-sdk
pip install bizmini-sdk
<dependency>
<groupId>in.bizmini</groupId>
<artifactId>java-sdk</artifactId>
<version>2.0.3</version>
</dependency>
Authentication
BizMini API uses API Key authentication with Bearer token scheme.
Security Best Practices
- Never expose API keys in client-side code
- Rotate API keys every 90 days
- Use environment variables for credentials
API Reference
Comprehensive reference for all BizMini API endpoints with request/response formats.
Customers API
/customers
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| pageOptional | integer | Page number (default: 1) |
| limitOptional | integer | Records per page (max: 100) |
Need Help?
Our support team is available to assist with integration setup and troubleshooting.