Anlık Havale API V2 Başlangıç

Entegrasyon başlamadan önce API isteklerini gönderecek sabit çıkış IP adreslerini ve callback adresinizi teknik ekibe iletin.

Canlı API adresi https://panel.anlik.vip/api/v2, hosted ödeme adresi https://pay.anlik.vip şeklindedir.

Her iş ortağına özel siteId, API token ve private key verilir. Her trader için tek aktif ödeme yöntemi Anlık Havale tarafından otomatik seçilir. API V2 istekleri application/x-www-form-urlencoded veya JSON gövdesiyle gönderilebilir. Private key yalnızca sunucuda tutulmalı, loglara veya istemci uygulamalarına yazılmamalıdır.

Tüm API istekleri HTTPS üzerinden gönderilir. Para alanları küsuratsız integer olarak kuruş cinsindedir: 1000,00 TL = 100000.

POSTMAN TEST PAKETİ

V2 Postman koleksiyonunu ve sandbox ortam dosyasını içe aktarın. Ortamda yalnız token, privateKey ve siteId değerlerini doldurun. Koleksiyon benzersiz işlem ID'lerini ve withdrawal HMAC değerini otomatik üretir; cevapları otomatik test eder.

Hosted ödeme bağlantısı oluşturma


# Güvenli Havale Yatırım Bağlantısı Örneği
$siteId = 1;
$userId = 'uye-1';
$transactionId = 'islem-1';
$returnUrl = 'https://siteadresi105.com/odeme-sonucu';
$expires = time() + 900;
$signature = hash_hmac(
    'sha256',
    implode('|', [$siteId, $userId, $transactionId, $expires]),
    $privateKey
);

$url = 'https://pay.anlik.vip/pay?'.http_build_query([
    'siteId' => $siteId,
    'userId' => $userId,
    'transactionId' => $transactionId,
    'fullname' => 'Mehmet Yılmaz',
    'return_url' => $returnUrl,
    'expires' => $expires,
    'signature' => $signature,
]);

Müşteri iş ortağı sitesindeki yatırım formuna girer.

Karşısına çıkan “Ödeme Ekranına Git” butonuna tıklar ve aşağıdaki örnekteki gibi bir linke yönlendirilir:

Bağlantı sunucu tarafında oluşturulmalı; private key hiçbir zaman tarayıcıya veya mobil uygulamaya gönderilmemelidir. İmza 15 dakika geçerlidir.

Yatırım yalnızca bu hosted ödeme akışıyla oluşturulur. API üzerinden doğrudan yatırım oluşturma ve yöntem listeleme uçları sunulmaz; trader'a tanımlı tek aktif yöntem otomatik seçilir.

transactionId her trader için benzersiz olmalıdır. Daha önce kullanılan bir işlem numarasıyla hosted akış tekrar başlatılamaz.

İşlemin kalan kısmı güvenli Anlık Havale ödeme ekranında tamamlanır.

Üye bizim tarafımızda işlemi tamamladıktan sonra açılan pencere return_url değeri var ise oraya geri yönlendirilir. Yok ise pencereyi kapatıp sitenize geri dönüş yapabilir.


KULLANILABİLİR GET PARAMETRELERİ

Parametre Tip Açıklama
siteId integer Sistemimizde size açılan siteye ait id, tarafımızdan iletilecektir (gerekli)
userId string Sitenizde işlem başlatan üyenin sizdeki id'si (harf,rakam, tire ve alt tire kullanılabilir) (gerekli)
transactionId string Sitenizde başlayan işlemin id'si (harf,rakam, tire ve alt tire kullanılabilir) (gerekli)
fullname string Sitenizde işlem başlatan üyenin sizdeki tam adı (ad ikinci ad soyad) (isteğe bağlı)
return_url string Geçerli bir HTTPS dönüş adresi (isteğe bağlı)
expires integer Bağlantının Unix bitiş zamanı; en fazla 15 dakika sonrası (gerekli)
signature string hash_hmac('sha256', "siteId|userId|transactionId|expires", private_key) ile üretilen hex imza (gerekli)

Çekim talebi oluşturma


# Çekim Talebi Request Örneği (1000,00 TL Çekim talebi oluşturur)
$siteId = 1;
$userId = '250a1';
$transactionId = 'withdraw-2026-0001';
$amount = 100000;
$privateKey = 'YOUR_PRIVATE_KEY';
$hash = base64_encode(hash_hmac(
    'sha256',
    implode('|', [$siteId, $userId, $privateKey, $transactionId, $amount]),
    $privateKey,
    true
));

$parameters = [
    'token' => 'YOUR_PUBLIC_API_TOKEN',
    'hash' => $hash,
    'siteId' => $siteId,
    'userId' => $userId,
    'transactionId' => $transactionId,
    'fullname' => 'Mehmet Yılmaz',
    'IDNumber' => 123456789,
    'accountNumber' => '3243554868',
    'amount' => $amount
];

$url = 'https://panel.anlik.vip/api/v2/withdrawal';
$fields_string = http_build_query($parameters);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);
$response = curl_exec($ch);
curl_close($ch);

$json = json_decode($response);

if ($json->code == 200) {
    echo 'Withdrawal request was received.';
    print_r($json);
} else {
    echo 'Withdrawal request was rejected.';
}
 
# Response - Hatalı İşlem İçin
{
    "status": 0,
    "code": 1082,
    "title": "API credentials hatalıdır!",
    "message": "API credentials hatalıdır!",
    "type": "error"
}
 
# Response - Başarılı İşlem İçin
{
    "status": 1,
    "code": 200,
    "title": "Çekim talebi oluşturuldu",
    "message": "Çekim talebi oluşturuldu",
    "type": "success"
}
 

Çekim talebi aşağıdaki adrese POST methodu ile request atılarak işleme alınır.

POST https://panel.anlik.vip/api/v2/withdrawal

methodId gönderilmez. Trader'a tanımlı tek aktif ödeme yöntemi Anlık Havale tarafından otomatik seçilir.

ÇEKİM TALEBİ OLUŞTURMA POST PARAMETRELERİ

Parametre Tip Açıklama
token string Tarafınıza ileteceğimiz 32 karakterli public key (gerekli)
hash string Bize iletilen verilerin güvenilirliği için, hashlenmiş veriler. Bu verilerin şifreleme yöntemi şöyledir: base64_encode(hash_hmac('sha256', "siteId|userId|private_key|transactionId|amount", private_key, true)); (gerekli)
siteId integer Sistemimizde size açılan siteye ait id, tarafımızdan iletilecektir (gerekli)
userId string Sitenizden çekim yapacak üyenin sizdeki id'si (harf,rakam, tire ve alt tire kullanılabilir) (gerekli)
transactionId string Sitenizde başlayan çekim işleminin id'si (harf,rakam, tire ve alt tire kullanılabilir) (gerekli)
fullname string Sitenizden çekim yapacak üyenin sizdeki tam adı (ad ikinci ad soyad) (gerekli)
IDNumber integer Sitenizden çekim yapacak üyenin kimlik numarası
accountNumber string Sitenizden çekim yapacak üyenin ödeme yöntemindeki hesap numarası (gerekli)
amount integer Sitenizden çekim yapacak üyenin yapacağı çekim tutarının 100 ile çarpılmış hali. Örneğin 1000 TL çekim için 100000 gönderilmesi, 800,25 TL çekim için 80025 gönderilmesi gerekmektedir. (gerekli)

Request atıldıktan sonra bizden bir response alacaksınız. Biz yalnızca "code": 200 durumunda işleme devam ederiz. "code": 200 dışındaki her yanıtta işlem bizim tarafımızda iptal edilmiş demektir. Bu durumda çekim işlemini göndermiş olduğumuz açıklama metniyle redleyebilir veya yeni statüsünde bırakabilirsiniz. "code": 200 durumunda ise işleme alınmış olarak işaretlemeniz, talebin üye tarafından iptal edilmemesini sağlamanız gerekmektedir.

Ardışık aynı istek 1086 döndürür. İlk istek hâlâ işlenirken gelen eşzamanlı tekrar HTTP 409 ve API 4091 döndürebilir.

ÇEKİM TALEBİ RESPONSE KODLARI

code açıklama
200 Çekim talebi oluşturuldu.
1081 Tüm alanların doldurulması zorunludur!
1082 API credentials hatalıdır!
1091 Hash hatalıdır!
1092 Trader için tam olarak bir aktif ödeme yöntemi tanımlanmamıştır.
1083 Bu site işleme kapatılmıştır!
1084 Bu sitenin seçili yöntemi kullanma izni yoktur!
1085 Bu müşterinin işlem yapması engellenmiştir!
1086 Bu işlem daha önce gönderilmiş!
1087 Çekim tutarı site için izin verilen çekim alt limitinden düşüktür!
1088 Çekim tutarı site için izin verilen çekim üst limitinden yüksektir!
1089 Ödeme yöntemi geçici olarak kapalıdır!
1090 Sistem çalışması sebebiyle servisimiz deaktif durumdadır!

Yatırım Talebi İşlem Sonucu Callback


 # Yatırım Sonucu Callback - Onay Callback Örneği (Tutar: 500 TL)
 {
    "token": null,
    "hash": "GENERATED_HMAC_BASE64",
    "type": "d",
    "siteId": 1,
    "userId": "1",
    "transactionId": "1",
    "fullname": "Mehmet Yılmaz",
    "megapayId": 14,
    "methodName": "Papara",
    "methodId": 2,
    "status": 1,
    "amount": 50000
}
 
 # Yatırım Sonucu Callback - Farklı Tutarla Onay Callback Örneği (Tutar: 300 TL)
 
  {
    "token": null,
    "hash": "GENERATED_HMAC_BASE64",
    "type": "d",
    "siteId": 1,
    "userId": "1",
    "transactionId": "1",
    "fullname": "Mehmet Yılmaz",
    "megapayId": 15,
    "methodName": "Papara",
    "methodId": 2,
    "status": 2,
    "amount": 30000
  }
 
 # Yatırım Sonucu Callback - İptal Callback Örneği (Tutar: 127,50 TL)
  {
    "token": null,
    "hash": "GENERATED_HMAC_BASE64",
    "type": "d",
    "siteId": 1,
    "userId": "1",
    "transactionId": "1",
    "fullname": "Mehmet Yılmaz",
    "megapayId": 16,
    "methodName": "Papara",
    "methodId": 2,
    "status": 0,
    "amount": 12750
  }
 

Yatırım işlemi tarafımızdan kontrol edildikten sonra sonuçlandırılacak ve tarafınıza POST methodu ile callback iletilecektir.

GÖNDERİLECEK CALLBACK PARAMETRELERİ (method: Post)

Parametre Tip Açıklama
api credentials Kurulum sırasında belirlenen callback token değeri gönderilir; tanımlanmamışsa boş olabilir.
hash string Tarafınıza iletilen verilerin güvenilirliği için, hashlenmiş veriler. Bu verilerin şifreleme yöntemi şöyledir: base64_encode(hash_hmac('sha256', "siteId|userId|private_key|transactionId|megapayId|amount", private_key, true));
type string yatırım callback için 'd', çekim callback için 'w'
siteId integer Sistemimizde size açılan siteye ait id, tarafımızdan iletilecektir
userId string Sitenizde işlem başlatan üyenin sizdeki id'si
transactionId string Sitenizde başlayan işlemin id'si
fullname string Sitenizde işlem başlatan üyenin sizdeki tam adı (ad ikinci ad soyad) (tarafınızdan gönderilmemişse boş dönecektir)
megapayId integer İşlemin bizdeki id'si
methodName string Ödeme yöntemi ismi (Ör: Papara)
methodId integer Ödeme yöntemine ait id, önceki aşamalarda belirtilmiştir
status integer İşlem sonucu (1=onay, 2=farkli tutarla onay, 0=iptal)
amount integer İşlem sonucunda onaylanan tutar. Bu tutar, hesaplarımıza gelen tutarın 100 ile çarpılmış halidir. Farklı tutarla onay statusunde gönderilen callbacklerde işlemin bizden onay aldığı tutar tarafınıza iletilir.

ÖNEMLİ:
İşlem bizden ilk seferde iptal alırsa ve sonradan onay olduğu anlaşılırsa ikinci bir callback gönderilebilir. Bu ikinci callback onay veya farklı tutarla onay içerir. Ayrıca iletişim kopukluğu olması durumunda (callback response alamadığında) aynı içerikli callback tekrar gönderilebilir, sonuçlandırılmış işleme farklı callback gönderilmez.

Callback alıcısı işlemi idempotent işlemeli ve başarılı kabul için HTTP 200 döndürmelidir. Ağ veya sunucu hatalarında aynı callback tekrar gelebilir.

Sandbox sırasında geçici bir webhook görüntüleyici kullanılabilir; yalnız sahte isim, hesap ve işlem verileri gönderin. Gönderilen callback gövdesi, hedef URL ve alınan HTTP cevabı ayrıca panelde ilgili işlemin detayındaki callback loglarında görülebilir.

Çekim Talebi İşlem Sonucu Callback


 # Çekim Sonucu Callback - Onay Callback Örneği (Tutar: 800 TL)
 {
    "token": null,
    "hash": "GENERATED_HMAC_BASE64",
    "type": "w",
    "siteId": 1,
    "userId": "32432dsrtw32",
    "transactionId": "32as234dsf3c",
    "fullname": "Mehmet Yılmaz",
    "megapayId": 16,
    "methodName": "Papara",
    "methodId": 2,
    "status": 1,
    "amount": 80000,
    "note": ""
}
 
 # Çekim Sonucu Callback - İptal Callback Örneği (Tutar: 800,70 TL)
 {
    "token": null,
    "hash": "GENERATED_HMAC_BASE64",
    "type": "w",
    "siteId": 1,
    "userId": "32432dsrtw32",
    "transactionId": "32as234dsf3a",
    "fullname": "Mehmet Yılmaz",
    "megapayId": 14,
    "methodName": "Papara",
    "methodId": 2,
    "status": 0,
    "amount": 80070,
    "note": "Hesap Numarası Hatalıdır"
  }

 

Çekim işlemi tarafımızdan kontrol edildikten sonra sonuçlandırılacak ve tarafınıza POST methodu ile callback iletilecektir.

GÖNDERİLECEK CALLBACK PARAMETRELERİ (method: Post)

Parametre Tip Açıklama
api credentials Kurulum sırasında belirlenen callback token değeri gönderilir; tanımlanmamışsa boş olabilir.
hash string Tarafınıza iletilen verilerin güvenilirliği için HMAC. Üretim biçimi: base64_encode(hash_hmac('sha256', "siteId|userId|private_key|transactionId|megapayId|amount", private_key, true));
type string yatırım callback için 'd', çekim callback için 'w'
siteId integer Sistemimizde size açılan siteye ait id, tarafımızdan iletilecektir
userId string Sitenizde işlem başlatan üyenin sizdeki id'si
transactionId string Sitenizde başlayan işlemin id'si
fullname string Sitenizde işlem başlatan üyenin sizdeki tam adı (ad ikinci ad soyad)
megapayId integer İşlemin bizdeki id'si
methodName string Ödeme yöntemi ismi (Ör: Papara)
methodId integer Ödeme yöntemine ait id, önceki aşamalarda belirtilmiştir
status integer İşlem sonucu (1=onay,0=iptal)
amount integer İşlem sonucunda onaylanan çekim tutarının 100 ile çarpılmış hali.
note string İptal edilen işlemler için iptal sebebi. Onay durumunda boş gönderilecektir.

ÖNEMLİ:
Çekim talebi callbacklerinde, yalnızca iletişim kopukluğu olması durumunda (callback response alamadığında) aynı içerikli callback tekrar gönderilebilir, sonuçlandırılmış işleme farklı callback gönderilmez.

Callback alıcısı işlemi idempotent işlemeli ve başarılı kabul için HTTP 200 döndürmelidir.

İşlem durumu sorgulama


POST https://panel.anlik.vip/api/v2/transaction/status

{
    "token": "YOUR_PUBLIC_API_TOKEN",
    "siteId": 1,
    "type": "deposit",
    "transactionId": "deposit-2026-0001",
    "userId": "2501"
}

# Başarılı response özeti
{
    "status": 1,
    "code": 200,
    "type": "success",
    "data": {
        "kind": "deposit",
        "transactionId": "deposit-2026-0001",
        "userId": "2501",
        "status": 8,
        "statusLabel": "yeni",
        "amount": 100000,
        "methodId": 1
    }
}

type alanı deposit veya withdrawal olmalıdır. userId isteğe bağlıdır ancak aynı transaction kimliğinin yanlış kullanıcıyla eşleşmesini önlemek için gönderilmesi önerilir.

Bulunamayan işlem code: 4040, hatalı token code: 1082, whitelist dışı IP ise code: 1083 döndürür.

İŞLEM DURUMLARI

statusstatusLabelAçıklama
0iptalİşlem reddedildi veya iptal edildi.
1onayİşlem onaylandı.
5isleme_alindiİşlem müşteri tarafından ilerletildi.
7beklemedeOperasyon sonucu bekleniyor.
8yeniYeni işlem.
10eslesme_bekliyorÖdeme eşleşmesi bekleniyor.

Logo & Görsel

Güncel Anlık Havale logo dosyalarını aşağıdan indirebilirsiniz. Harici bir alan adına bağlı eski logo URL'lerini uygulamanıza sabitlemeyin.

Açık zemin logosu (SVG) · Koyu zemin logosu (SVG) · İkon (SVG)