Bayi Ödeme İptali
- Endpoint:
/vpws/payment/cancel - HTTP Method:
POST - Request Content-Type:
application/json - Response Content-Type:
application/json - Yetkilendirme: Geçerli AccessToken zorunludur.
(Bkz: 2. Kimlik Doğrulama – AccessToken Alınması)
Açıklama
Bu servis, VPWS üzerinden daha önce gerçekleştirilmiş bir ödeme işleminin iptal edilmesini sağlar.
İptal işlemi
- Yalnızca başarılı (
transactionStatusId = 1) işlemler için yapılabilir. referenceCodeüzerinden gerçekleştirilir.- Banka provizyon durumuna bağlı olarak başarılı veya başarısız sonuçlanabilir.
Not: Bayi yalnızca kendi gerçekleştirdiği işlemleri iptal edebilir.
Header Bilgileri
| Header Adı | Zorunlu | Açıklama |
|---|---|---|
| Authorization | Evet | Bearer {AccessToken} |
| Content-Type | Evet | application/json |
Request Body
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| referenceCode | string | Evet | İptal edilmek istenen işlemin referans kodu |
| reason | string | Hayır | İptal gerekçesi (örn: "Kullanıcı isteği") |
- Örnek Request
- Başarılı Response
{
"referenceCode": "NTH2P00000003000",
"reason": "test cancel"
}
{
"message": "",
"statusCode": 200,
"exceptions": null,
"data": {
"lastAmount": 0.0,
"transactionStatusId": 1,
"errorCode": null,
"isSuccess": true,
"errorMessage": null
},
"oldData": null,
"errors": null
}
data Alanları
| Alan | Tip | Açıklama |
|---|---|---|
lastAmount | number | İptal sonrası kalan tutar (başarılı iptalde 0.00) |
transactionStatusId | int | Güncel işlem durumu |
errorCode | string/null | Hata kodu |
errorMessage | string/null | Hata mesajı |
isSuccess | boolean | İşlemin başarılı olup olmadığı |
Durum Senaryoları
Başarılı İptal
isSuccess = truetransactionStatusId = 5lastAmount = 0.00
Başarısız İptal
isSuccess = falseerrorCodeveerrorMessagedolu dönertransactionStatusIddeğişmeyebilir
Örnek cURL
curl --location 'https://pgw.netahsilatdemo.com/vpws/payment/cancel' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {AccessToken}' \
--data '{
"referenceCode": "NTH2P00000003000",
"reason": "test cancel"
}'
Notlar & En İyi Uygulamalar
-
İptal yalnızca başarılı işlemlerde yapılabilir.
-
Aynı
referenceCodeile tekrar iptal çağrısı yapılırsa sistem idempotent davranabilir. -
Banka provizyon süresi geçmiş işlemler için iptal mümkün olmayabilir.
-
reasonalanının doldurulması raporlama açısından önerilir. -
İptal sonrası işlem durumu 3.4 – İşlem Sorgulama servisi ile doğrulanmalıdır.
-
Bayi, başka bir bayiye ait işlemi iptal edemez (
403 – Yetki Hatası).