Ana içeriğe geç

Ödeme İptali

  • Endpoint: /pws/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, Netahsilat portalı üzerinde daha önce yapılmış bir ödemenin iptal edilmesini sağlar.

İptal işlemi yalnızca tamamlanmış işlemler için yapılabilir.

İptal talebi, referenceCode alanı üzerinden yapılır.

Bankadan gelen provizyon yanıtına göre iptal işlemi başarılı veya başarısız sonuç döner.

Header Bilgileri

Header AdıZorunluAçıklama
AuthorizationEvetBearer {AccessToken} formatında geçerli token.
Content-TypeHayırapplication/json

Request Body

Alan AdıTipZorunluAçıklama
referenceCodestringEvetİptali istenen işlemin referans kodu (ör.: NTH2P00000002250)
reasonstringHayırİptal gerekçesi (ör. “Kullanıcı isteği”, “Tekrarlı işlem”)
{  
"referenceCode": "NTH2P00000002250",
"reason": "test cancel"
}

Alanlar (data)

  • lastAmount : İptal sonrası tutar (başarılı iptalde genelde 0.0).

  • transactionStatusId : İşlem durum kodu (ör. 1 = Başarılı/Onaylı şeklinde sistem genel durum setiyle uyumlu).

  • isSuccess : İptal işlemi sonucu (true/false).

  • errorCode / errorMessage : Hata oluşursa detay.

Örnek cURL

curl --location 'https://pgw.netahsilatdemo.com/pws/payment/cancel' \  
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzY29wZSI6WyJwd3N2MS5hcGkiLCJlcnB2MS5hcGkiLCJjYXR2MS5hcGkiLCJ2ZW5kb3J2MS5hcGkiXSwiYWN0b3J0Ijoic2VydmljZSIsInJvbGUiOiJzZXJ2aWNlIiwiVW5pcXVlIjoiOGE2NjQxZGYtMGU4Ny00OWVkLWEyOTgtNjNjN2M3Y2JjNTk1IiwiVGVuYW50SWQiOiI2NzA2ODNjMS0yZmUwLTQ4NDYtODdiMi02Y2JhOWI3OTNhYjIiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL2V4cGlyYXRpb24iOiI2Mzg5NzA3MjQxNDMzMzI2OTUiLCJuYmYiOjE3NjEzMDI4MTQsImV4cCI6MTc2MTQ3NTYxNCwiaWF0IjoxNzYxMzAyODE0LCJpc3MiOiJzc28uYXBpIiwiYXVkIjoiZWNvenVtLnNzbyJ9.IbmVm9oVxUvDXhzYnCncNMYPBFqqJTXFQLkFYfhSbUA' \
--data '{
"referenceCode": "NTH2P00000002250",
"reason": "test cancel"
}'

### Notlar & En İyi Uygulamalar {#notes-and-best-practices}

  • İptal işlemi yalnızca referenceCode üzerinden yapılabilir.

  • İşlem, sadece tamamlanmış ödemelerde uygulanabilir.

  • Banka provizyon kurallarına bağlı olarak, bazı işlemler için iptal mümkün olmayabilir.

  • Aynı referenceCode değeriyle tekrar iptal çağrısı yapılırsa sistem idempotent çalışabilir; ikinci çağrı “zaten iptal edildi” yanıtı verebilir.

  • reason alanının gönderilmesi, işlem kayıtlarında raporlama kolaylığı sağlar.

  • Başarılı iptal sonrasında ilgili işlem tutarı sistemde 0.00 olarak güncellenir.

  • AccessToken, işlemi yapan kullanıcıya veya yetkili bayiye ait olmalıdır.