SMS API ile Yazılımınıza SMS Entegrasyonu
E-ticaret sitenizden özel yazılımınıza, mobil uygulamanızdan CRM sisteminize — birkaç satır kodla SMS gönderimini sisteminize entegre edin. API erişimi tüm paketlerde ücretsizdir.
VatanSMS SMS API; XML POST, Web Service (SOAP) ve GET & PUSH yöntemleriyle çalışır, HTTP isteği yapabilen her dille uyumludur. PHP, C#, Python, ASP.NET, Java, Delphi ve Visual Basic için hazır kod örnekleri sunulur. Gönderim, ileri tarihli planlama, rapor ve bakiye sorgulama API üzerinden yapılır; erişim tüm SMS paketlerinde ücretsizdir.
<kulad>KULLANICI_ADI</kulad><sifre>SIFRE</sifre>
<gonderen>FIRMAADI</gonderen>
<mesaj>Kampanyamiz basladi!</mesaj>
<numaralar>5XXXXXXXXX</numaralar>
<tur>Turkce</tur></sms>';
$ch = curl_init('https://panel.vatansms.com/panel/smsgonder1Npost.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
// yanıt: SMS ID — teslim raporu bu ID ile sorgulanır
Tercih Ettiğiniz Dilde SMS Gönderin
HTTP isteği yapabilen her dil VatanSMS API ile çalışır. Aşağıdaki örnekleri kopyalayın; müşteri numaranızı (kno), kullanıcı adınızı ve şifrenizi kendi bilgilerinizle değiştirmeniz yeterlidir.
$postUrl = 'https://panel.vatansms.com/panel/smsgonder1Npost.php';
$xml = 'data=<sms>
<kno>12345</kno>
<kulad>KULLANICI_ADI</kulad>
<sifre>SIFRE</sifre>
<gonderen>FIRMAADI</gonderen>
<mesaj>Merhaba! Kampanyamiz basladi.</mesaj>
<numaralar>5XXXXXXXXX,5YYYYYYYYY</numaralar>
<tur>Turkce</tur>
</sms>';
// isteğe bağlı: <zaman>2026-08-01 10:00:00</zaman> ile ileri tarihli gönderim
$ch = curl_init($postUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$smsId = curl_exec($ch); // dönen SMS ID ile rapor sorgulanır
import requests
xml = """<sms><kno>12345</kno><kulad>KULLANICI_ADI</kulad>
<sifre>SIFRE</sifre><gonderen>FIRMAADI</gonderen>
<mesaj>Merhaba! Kampanyamiz basladi.</mesaj>
<numaralar>5XXXXXXXXX,5YYYYYYYYY</numaralar>
<tur>Turkce</tur></sms>"""
r = requests.post(
"https://panel.vatansms.com/panel/smsgonder1Npost.php",
data={"data": xml},
)
print(r.text) # dönen SMS ID
import java.net.http.*;
import java.net.URI;
var body = "data=<sms><kno>12345</kno><kulad>KULLANICI_ADI</kulad><sifre>SIFRE</sifre><gonderen>FIRMAADI</gonderen><mesaj>Merhaba! Kampanyamiz basladi.</mesaj><numaralar>5XXXXXXXXX,5YYYYYYYYY</numaralar><tur>Turkce</tur></sms>";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://panel.vatansms.com/panel/smsgonder1Npost.php"))
.header("Content-Type", "application/x-www-form-urlencoded")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
// response.body() → SMS ID
// WSDL: https://panel.vatansms.com/webservis/service.php?wsdl
// Servis referansı ekledikten sonra:
var sonuc = servis.TekSmsiBirdenCokNumarayaGonder(
"12345", // müşteri no
"KULLANICI_ADI", "SIFRE",
"FIRMAADI", // gönderici başlığı
"5XXXXXXXXX,5YYYYYYYYY",
"Merhaba! Kampanyamiz basladi.",
"", // zaman: ileri tarihli gönderim için
"", // zamanasimi: SMS ömrü
"Turkce");
// sonuc → SMS ID
$postUrl = 'https://panel.vatansms.com/panel/smstakippost.php';
$xml = 'data=<smsrapor>
<kulad>KULLANICI_ADI</kulad>
<sifre>SIFRE</sifre>
<ozelkod>SMS_ID</ozelkod>
</smsrapor>';
$ch = curl_init($postUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$rapor = curl_exec($ch); // numara bazında teslim durumu
// Web serviste ayrıca: RaporSorgula, GunlukRaporSorgula,
// UyeBilgisiSorgula (bakiye), OrjinatorSorgula (başlıklar)
curl -X POST https://panel.vatansms.com/panel/smsgonder1Npost.php \
--data 'data=<sms><kno>12345</kno><kulad>KULLANICI_ADI</kulad><sifre>SIFRE</sifre><gonderen>FIRMAADI</gonderen><mesaj>Merhaba! Kampanyamiz basladi.</mesaj><numaralar>5XXXXXXXXX,5YYYYYYYYY</numaralar><tur>Turkce</tur></sms>'
API Referansı
Base URL: https://panel.vatansms.com — XML POST istekleri data=<sms>…</sms> gövdesiyle, Web Service (SOAP) istekleri WSDL üzerinden yapılır. Kimlik doğrulama her istekte müşteri numarası, kullanıcı adı ve şifre ile sağlanır.
Endpoint'ler
Genel Parametreler
Yanıt Formatı ve Hata Kodları
Sunucu yanıtı iki nokta üst üste (:) ile ayrılmış tek satırdır. 1 ile başlayan yanıt başarı, 2 ile başlayan yanıt hatadır:
│ │ │ │ │
durum · özel kod (SMS ID) · açıklama · kişi sayısı · düşen tutar (TL)
Durum sorgulamada (smstakippost.php) her satır numara + durum imleci döner:
Push Rapor: Teslim Sonucu Sisteminize Gelsin
Sürekli rapor sorgulamak yerine, panelde Kullanıcı Bilgileri → Rapor URL alanına kendi adresinizi tanımlarsınız; her mesaj iletildiğinde ya da iptal olduğunda sonuç yaklaşık 1 saniye içinde adresinize POST edilir. Veriyi işledikten sonra OK yanıtı dönmeniz gerekir; aksi halde sistem iletimin ulaşmadığını varsayıp bir süre sonra tekrar dener.
<sistemid>125546</sistemid> // gönderimde dönen özel kod
<sonuc>1</sonuc> // 1: iletildi · 2: iptal edildi
<sonucaciklama>iletildi</sonucaciklama>
<sonuctarih>2026-04-22 12:17:35</sonuctarih>
<ekbilgi>905050001234</ekbilgi> // telefon numarası
</rapor>
Web Servis (SOAP) Metotları
WSDL: https://panel.vatansms.com/webservis/service.php?wsdl — POST/GET'te olmayan işlemler de web serviste yapılır. Tüm metotlar string döner.
Postman ile Hızlı Test
Kod yazmadan denemek için Postman yeterli: yeni bir POST isteği oluşturun, URL alanına https://panel.vatansms.com/panel/smsgonder1Npost.php yazın; Body → x-www-form-urlencoded bölümünde data anahtarına XML yapısını değer olarak yapıştırın ve Send deyin. Dönen yanıt yukarıdaki yanıt formatıyla aynıdır.
Kullanım Kuralları ve Limitler
- API kullanımı için hesabınızda en az bir onaylı gönderici adı (başlık) bulunmalıdır; istekte birebir aynı yazılmalıdır.
- Raporları sorgulayabilmek için panelde Kullanıcı İşlemleri → Kullanıcı Bilgileri bölümünden "API Raporları AÇIK" seçeneği aktif edilmelidir.
- Tek istekte numara sayısı sınırı yoktur; sağlıklı gönderim için istek başına en fazla 100.000 numara önerilir.
- Güvenlik: 24 saat içinde 10 kez hatalı sorgu yapan IP 24 saat, 1 saniyede 20+ bağlantı açan IP 1 saat engellenir.
- GET yöntemi 1.500 karakteri aşan isteklere uygun değildir; mesajda & karakteri kullanılamaz. Mümkünse POST tercih edin.
- Charset uyuşmazlığında özel karakterler için dokümandaki kod tablosu kullanılır (örn. % → |30|, satır sonu → |61|).
Tam API dokümanı, örnek kod paketleri ve hata kodları için ücretsiz hesap açın; müşteri temsilciniz entegrasyon dokümanlarını sizinle paylaşır. Ayrıntılı parametre listesi ve hata kodları için API Entegrasyon Dokümanını (PDF) indirin.
VatanSMS API'sinin Öne Çıkan Özellikleri
Basit bir SMS göndericisinden öte — 1:N ve kişiye özel N:N gönderim, ileri tarihli planlama, rapor ve bakiye sorgulama ile tam özellikli bir mesajlaşma altyapısı. Üyelik sonrası hediye test kredinizle canlıya geçmeden deneyebilirsiniz.
XML POST & Web Service
HTTP POST ile XML gövde ya da SOAP web servis — her platformdan erişim. GET & PUSH yöntemleri de desteklenir.
Basit Kimlik Doğrulama
Müşteri numarası + kullanıcı adı + şifre — ayrı anahtar yönetimi yok, üyelikle birlikte hazır.
Rapor & Bakiye Sorgulama
SMS ID veya tarihe göre teslim raporu, üye ve kredi bakiyesi sorgulama — hepsi API üzerinden.
1:N ve N:N Gönderim
Tek istekle binlerce numaraya aynı mesaj ya da her numaraya farklı (kişiselleştirilmiş) mesaj.
Gönderimden Rapora: API ile Yönetebilecekleriniz
SMS gönderimi işin sadece başlangıcı — planlama, raporlama, bakiye ve başlık yönetimi de API üzerinden yapılır. Sık kullanılan e-ticaret ve web platformları için hazır modüller de mevcuttur; kullandığınız platformu müşteri temsilcinize sorabilirsiniz.
Toplu Gönderim
Bir mesajı tek istekle binlerce numaraya gönderin. Numaralar virgülle ayrılır, başlığınızla iletilir.
smsgonder1NpostKişiye Özel Mesaj
Her numaraya farklı mesaj: isim, tutar veya sipariş bilgisiyle kişiselleştirilmiş gönderim.
smsgonderNNpostİleri Tarihli Gönderim
İstekteki zaman alanıyla gönderimi planlayın; zamanasimi ile mesajın geçerlilik ömrünü belirleyin.
zaman / zamanasimiTeslim Raporu
Dönen SMS ID ile numara bazında teslim durumu; tarihe göre günlük rapor da alınabilir.
RaporSorgulaBakiye Sorgulama
Üyelik ve kredi bakiyenizi API üzerinden sorgulayın; düşük bakiyede kendi uyarınızı kurun.
UyeBilgisiSorgulaBaşlık Yönetimi
Yeni gönderici başlığı başvurusu yapın, mevcut başlıklarınızın onay durumunu sorgulayın.
OrjinatorSorgulaAPI ile Neler Yapabilirsiniz?
SMS API, tek seferlik gönderimden tamamen otomatize edilmiş SMS akışlarına kadar geniş bir yelpazeyi destekler. E-ticaret, SaaS, sağlık ve fintech sektörlerindeki en yaygın kullanım senaryolarını aşağıda bulabilirsiniz.
- ✓Yeni sipariş ve kargo takip bildirimi
- ✓Ödeme hatırlatması ve fatura bildirimi
- ✓Randevu hatırlatması ve onay kodu
- ✓Domain yenileme ve hesap uyarıları
- ✓Stok geri döndü bildirimi
- ✓Müşteri yorumu ve geri bildirim talebi
- ✓OTP / iki faktörlü kimlik doğrulama (2FA)
- ✓Telefon numarası doğrulama
- ✓Şüpheli giriş uyarısı
- ✓İşlem onay kodu (ödeme, transfer)
- ✓Parola sıfırlama kodu
- ✓Yeni cihaz doğrulama bildirimi
VatanSMS Paneli mi, SMS API mi?
İkisi birlikte de kullanılabilir — otomatik mesajlar API üzerinden, kampanya ve duyurular panel üzerinden yönetilebilir.
Başlamadan Önce Cevaplamanız Gereken Sorular
Bu soruları önceden yanıtlamak entegrasyon sürecini hızlandırır ve doğru yapıyı kurmanızı sağlar.
API ile Gönderilen Gerçek Mesaj Senaryoları
Her senaryo için sistem tarafından otomatik oluşturulan örnek SMS metinleri:
Entegrasyon Protokolleri & Diller
XML POST, Web Service (SOAP), HTTP GET ve Push raporlama desteklenir. Mevcut altyapınıza göre en uygun yöntemi seçebilirsiniz.
Dil desteği: PHP · C# · Python · ASP.NET · Java · Delphi · Visual Basic
İYS, KVKK ve Mesaj Türü Ayrımı
Kampanya, indirim ve tanıtım içerikli SMS'lerde İYS izni zorunludur. Ret listesindeki alıcılara gönderim yapılmamalıdır.
Sipariş durumu, ödeme sonucu, randevu ve kullanıcının başlattığı işlem bildirimleri ticari ileti sayılmaz; İYS izni gerektirmez.
Yalnızca doğrulama amaçlı kullanılmalıdır. Aynı OTP mesajıyla ticari ileti izni veya KVKK açık rızası alınmamalıdır.
İlgili Sayfalar
OTP kanalı üyeliğinize tanımlanır; doğrulama kodları öncelikli kanaldan ≤1 sn'de iletilir.
API isteğinde gonderen alanıyla onaylı başlığınızı kullanın; başvuru da API'den yapılabilir.
API ile gönderilen SMS'ler standart paket fiyatlarından düşer; ekstra API ücreti yok.
SMS API Entegrasyonu Hakkında Sık Sorulan Sorular
VatanSMS API'sine nasıl erişebilirim? ▼
Ücretsiz üyelik sonrası API bilgilerinizi panelde Hesap → Hesap Ayarları → API Bilgilerimi Görüntüle bölümünden alırsınız; istekler müşteri numarası, kullanıcı adı ve şifreyle doğrulanır. Erişim tüm SMS paketlerinde ücretsizdir, hediye test kredinizle hemen deneyebilirsiniz.
SMS API hangi programlama dillerini destekliyor? ▼
HTTP isteği yapabilen her dil ile çalışır. PHP, C#, Python, ASP.NET, Java, Delphi ve Visual Basic için hazır kod örnekleri sunulmaktadır; XML POST ve Web Service (SOAP) yöntemlerinden size uygun olanı seçersiniz.
E-ticaret sitem için hazır modül veya eklenti var mı? ▼
Evet. WooCommerce ve WordPress için hazır SMS eklentilerimiz mevcuttur; sipariş ve üyelik bildirimlerini panelinizdeki API bilgileriyle bağlarsınız. Diğer platformlar için müşteri temsilcinize danışın; uygun modülü ve kurulum dokümanını paylaşalım.
API entegrasyonu için teknik bilgi gerekiyor mu? ▼
Hazır modül kullanıyorsanız teknik bilgiye gerek yoktur. Özel entegrasyonda tek bir HTTP POST isteği yeterlidir; PHP örneğini kopyalayıp kendi bilgilerinizi girerek dakikalar içinde çalıştırabilirsiniz. Entegrasyon boyunca teknik ekibimiz ücretsiz destek verir.
API ile OTP SMS gönderebilir miyim? ▼
Evet. Üyeliğinize OTP kanalı tanımlandıktan sonra doğrulama kodlarınızı aynı API üzerinden gönderirsiniz; OTP mesajları özel ve öncelikli kanaldan iletilir. OTP SMS detayları →
İleri tarihli veya kişiye özel gönderim yapabilir miyim? ▼
Evet. İstekteki zaman alanıyla gönderimi ileri bir tarihe planlayabilir, zamanasimi alanıyla mesajın geçerlilik ömrünü belirleyebilirsiniz. N:N yöntemiyle tek istekte her numaraya farklı mesaj gönderilir.
Gönderim durumunu API üzerinden sorgulayabilir miyim? ▼
Evet, iki yolla: gönderimde dönen özel kod (SMS ID) ile numara bazında sorgulayabilir ya da Push rapor tanımlayarak teslim sonuçlarının belirlediğiniz URL'ye otomatik gönderilmesini sağlarsınız. Tarihe göre günlük rapor ve bakiye sorgulama da API üzerinden yapılır.
API'nin istek limiti var mı? ▼
Tek istekte numara sayısı sınırı yoktur; sağlıklı gönderim için istek başına en fazla 100.000 numara önerilir. Güvenlik amacıyla saniyede 20 ve üzeri bağlantı açan IP 1 saat, 24 saatte 10 kez hatalı sorgu yapan IP 24 saat engellenir.
API entegrasyonu ücretsiz mi? ▼
API erişimi tüm SMS paketlerinde ücretsiz olarak sunulmaktadır. Gönderilen SMS'ler için yalnızca standart paket fiyatları uygulanır; ekstra API ücreti alınmaz. Paket fiyatları →
Ücretsiz Hesap Açın, Entegrasyona Başlayın
Hesap açın, kod örneğini kopyalayıp kendi bilgilerinizi girin, hediye test kredinizle deneyin. Entegrasyon boyunca teknik ekibimiz ücretsiz destek verir.