Geliştirici Konsolu Giriş
Newmore WhatsApp API Entegrasyon Kılavuzu
WhatsApp Business API, spam’i önlemek için katı kurallara sahiptir. Sistem iki farklı modda çalışır.
| Durum | Açıklama | Gönderilebilecek Mesaj Tipi |
| 🟢 Pencere AÇIK | Müşteri size mesaj attığında başlar ve 24 saat sürer. | Serbest Metin: Özgürce yazı, resim, video gönderebilirsiniz. |
| 🔴 Pencere KAPALI | Son mesajın üzerinden 24 saat geçmiştir. | Sadece Şablon Mesaj: Sadece Meta tarafından onaylanmış şablonlar gönderilebilir. |
Önemli: Müşteri size son 24 saat içinde yazmadıysa, “Naber?” gibi serbest bir mesaj gönderemezsiniz. İletişimi başlatmak için mutlaka Şablon Mesaj kullanmalısınız.
API istekleri yapabilmek için Geliştirici Konsolu üzerinden erişim anahtarınızı almanız gerekir.
API Base URL:
https://wp.newmore.com.tr/wp-json/wpws/v1Header (Başlık):
x_wpws_verify_token
Tüm isteklerde x_wpws_verify_token başlığı ile API anahtarınızı göndermelisiniz.
Bu yöntem sadece müşteri size son 24 saat içinde mesaj attıysa (oturum açıksa) çalışır.
Başlık: Serbest Metin Mesajı (Text) Açıklama: Müşteri ile aktif bir sohbetiniz varsa (son 24 saat içinde size yazdıysa), onaylı şablona gerek kalmadan bu kodu kullanabilirsiniz.
<?php
// API BİLGİLERİ
$apiUrl = 'https://wp.newmore.com.tr/wp-json/wpws/v1/send';
$apiToken = 'SIZIN_API_ANAHTARINIZ'; // Developer panelinden alın
$phone = '905551234567'; // Başında + olmadan bitişik yazın
// GÖNDERİLECEK VERİ (TEXT)
$data = [
'x_wpws_verify_token' => $apiToken,
'phone' => $phone,
'type' => 'text',
'message' => 'Merhaba, bu bir test mesajıdır. 🚀',
];
// CURL İSTEĞİ
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'x_wpws_verify_token: ' . $apiToken
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// SONUÇ
if ($httpCode == 200) {
echo "Başarılı: " . $response;
} else {
echo "Hata ($httpCode): " . $response;
}
?>Bu yöntem 24 saat kuralına takılmaz. Müşteriye ilk mesajı atarken veya bildirim (OTP, Kargo vb.) gönderirken bunu kullanmalısınız.
Başlık: Şablon Mesajı (Template) Açıklama: Onaylanmış bir şablonu (örn: sipariş onayı, kargo takibi) göndermek için bu kodu kullanın. Şablon içindeki {{1}} gibi değişkenleri koddan dinamik olarak doldurabilirsiniz.
<?php
// API BİLGİLERİ
$apiUrl = 'https://wp.newmore.com.tr/wp-json/wpws/v1/send';
$apiToken = 'SIZIN_API_ANAHTARINIZ'; // Developer panelinden alın
$phone = '905551234567'; // Başında + olmadan bitişik yazın
// GÖNDERİLECEK VERİ (TEMPLATE)
$data = [
'x_wpws_verify_token' => $apiToken,
'phone' => $phone,
'type' => 'template',
'template_name' => 'hello_world', // Onaylı şablon isminiz
'language' => 'en_US', // Şablon dili (tr veya en_US)
// Şablonda değişken varsa ({{1}}, {{2}} vb.) burayı kullanın:
'components' => [
[
'type' => 'BODY',
'parameters' => [
// {{1}} değişkeni için örnek değer
['type' => 'text', 'text' => 'Sayın Müşteri']
]
]
]
];
// CURL İSTEĞİ
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'x_wpws_verify_token: ' . $apiToken
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// SONUÇ
if ($httpCode == 200) {
echo "Başarılı: " . $response;
} else {
echo "Hata ($httpCode): " . $response;
}
?>Şablonlarınızın onaylanması için şunlara dikkat edin:
- Tehditkar Dil Yasak: “Dava açarız”, “Borcunuzu ödeyin” gibi ifadeler kullanmayın.
- Hatalı Değişken: {{1}} işareti cümlenin en başında veya en sonunda tek başına durmamalıdır, bir bağlam içinde olmalıdır.
- İmla: Düşük cümleler ve yazım hataları reddedilebilir.
WhatsApp hattınıza gelen mesajları anlık olarak kendi sunucunuza (CRM, veritabanı vb.) aktarabilirsiniz.
Adım 1: Webhook URL’nizi Belirleyin
Kendi sunucunuzda gelen veriyi karşılayacak bir adres (endpoint) hazırlayın.
İpucu: Sunucunuz henüz hazır değilse test için
webhook.siteadresinden geçici bir URL alabilirsiniz.
Adım 2: Panele Kaydedin
NewMore Geliştirici Konsolu’na gidin.
“Sizin Webhook Adresiniz” alanına URL’nizi yapıştırın (Örn:
https://siteadiniz.com/api/whatsapp-hook).- Kaydet butonuna basın.
Adım 3: Bağlantıyı Test Edin
Müşteriden mesaj beklemeden sistemin çalışıp çalışmadığını test edebilirsiniz:
API Dokümantasyonu (Swagger) sayfasını açın.
/webhook-testbaşlığını bulun.x_wpws_verify_token alanına anahtarınızı yapıştırın ve Execute butonuna basın.
✅ Sonuç: Sunucunuz doğru yapılandırıldıysa
200 OKyanıtı alırsınız ve sisteminiz örnek bir veri alır.
