Skip to main content

Prerequisites

Before you begin, make sure you have:
App Secret Key - Provided by Dükkango
Restaurant Secret Key - Unique per vendor/branch
HTTPS-enabled environment - All API calls require SSL
Don’t have your API credentials yet? Contact us at support@dkkango.com

Integration Workflow

1

Obtain API Credentials

Get your app_secret_key and rest_secret_key from the Dükkango team.
2

Authenticate

Call /auth/login to get your access token.
curl -X POST https://www.xn--dkkango-n2a.com/api/integrations/auth/login \
  -H 'Content-Type: application/json' \
  -d '{
    "app_secret_key": "your-app-secret-key",
    "rest_secret_key": "your-restaurant-secret-key"
  }'
Response:
{
  "status": true,
  "data": {
    "access_token": "bcfb7a8a...",
    "expiration_date": "2026-01-15 23:59:59"
  }
}
3

Store Your Access Token

Save the access_token securely. It’s valid for 24 hours.
4

Make Your First API Call

Get your restaurant list using the access token:
curl -X GET https://www.xn--dkkango-n2a.com/api/integrations/restaurants/get \
  -H 'Access-Token: your-access-token'
Response:
{
  "status": true,
  "data": [
    {
      "id": "8f2b9ce2-04de-4712-842d-a39f64596fdf",
      "name": "Akat Şube"
    }
  ]
}
5

Poll for Orders

Start polling for active orders every 30+ seconds:
curl -X GET https://www.xn--dkkango-n2a.com/api/integrations/orders/get-current \
  -H 'Access-Token: your-access-token'

What’s Next?

Common Integration Pattern

Here’s a typical integration workflow:
// 1. Authenticate
const { access_token } = await login(app_secret, rest_secret);

// 2. Start polling for orders
setInterval(async () => {
  const orders = await getOrders(access_token);
  
  for (const order of orders) {
    // 3. Acknowledge order
    await markOrderSuccess(order.payment_key, access_token);
    
    // 4. Process in your POS
    await processOrder(order);
    
    // 5. Update order status
    if (shouldAccept) {
      await acceptOrder(order.payment_key, 30, access_token);
    }
  }
}, 30000); // Every 30 seconds
Remember to respect rate limits! The /orders/get-current endpoint has a 30-second cooldown.