shopinext Developers
Giriş yap Hesap oluştur
Shopinext Payments API · v0

Ödeme altyapımızı kendi sisteminize bağlayın

Shopinext API ile tüm iletişim JSON formatında gerçekleştirilir. Tarafınıza iletilen İstemci Kimliği (Client ID) ve İstemci Gizli Anahtarı (Client Secret) bilgileri, API isteklerinde kullanılacak Erişim Tokeni (Access Token) oluşturmak için kullanılır.

Erişim Tokeni 1 saat süreyle geçerlidir. Geçerlilik süresi sona erdiğinde, 24 saat geçerli olan Yenileme Tokeni (Refresh Token) kullanılarak yeni bir Erişim Tokeni oluşturulmalıdır.

Shopinext API üzerinden ödeme talepleri oluşturabilir ve mevcut ödemelerinizin durumunu sorgulayabilirsiniz. Ödeme oluşturma sırasında bir Geri Arama URL'si (Callback URL) tanımlayarak ödeme durumundaki güncellemeleri gerçek zamanlı olarak alabilirsiniz. Ayrıca taksit ve komisyon bilgilerine API üzerinden erişebilirsiniz.

Shopinext API hizmetlerinden yararlanabilmek için hesabınızın Shopinext tarafından API kullanımı için yetkilendirilmiş olması gerekmektedir.

1 · API ANAHTARLARINIZI OLUŞTURUN

Panelinizdeki API sayfasından client_id ve client_secret bilgilerinizi oluşturun; API erişimine izin verilecek IP adresi ve alan adını tanımlayın.

2 · ERİŞİM TOKENİ ALIN

/authenticate üzerinden erişim tokeninizi oluşturun ve API isteklerinizde Authorization başlığı ile gönderin.

3 · ÖDEME OLUŞTURUN

/createPayment ile ödeme talebinizi oluşturun ve müşterinizi yanıtta dönen ödeme adresine yönlendirin.

  1. Hesap Güvenliği ve Yetkisiz Kullanım
    Shopinext hesabınız ve API erişim anahtarlarınız yalnızca kayıtlı işletmenizin kullanımına özeldir. Hesap bilgilerinin, API anahtarlarının veya erişim yetkilerinin üçüncü şahıslarla paylaşılması, hesabın başka gerçek veya tüzel kişiler adına kullandırılması yasaktır. Hesabınız üzerinden gerçekleşen tüm işlemlerden doğrudan tarafınız sorumludur.
  2. Hizmet Niteliği ve Orkestrasyon Rolü
    Shopinext, ödeme süreçlerini birden fazla ödeme kuruluşu üzerinden yönetmenizi sağlayan bir e-ticaret orkestrasyonu ve teknoloji platformudur. Shopinext kendisi bir ödeme hizmeti sağlayıcısı veya lisanslı ödeme kuruluşu değildir. Ödeme ve finansal transfer hizmetleri, platforma entegre edilmiş yetkili ve lisanslı ödeme hizmeti sağlayıcıları tarafından sunulur.
  3. İzin Verilen Kullanım ve Yaptırımlar
    Platform yalnızca Shopinext tarafından onaylanmış faaliyet alanları ve iş modelleri kapsamında kullanılabilir. Hesabın yetkisiz kişilere kullandırılması, mevzuata veya platform politikalarına aykırı, izin verilmeyen ürün veya hizmetlerin satışı amacıyla kullanılması halinde Shopinext, hesabınızı askıya alma, kısıtlama veya hizmet sözleşmesini tek taraflı sonlandırma hakkını saklı tutar.
  4. Şüpheli İşlem ve Bildirim Yükümlülüğü
    Hesabınızda veya finansal hareketlerinizde bilginiz dışında gerçekleşen, olağan dışı veya şüpheli bir durum tespit etmeniz halinde, durumu derhal ve gecikmeksizin Shopinext destek kanallarına bildirmekle yükümlüsünüz.
Temel Bilgiler
API Canlı Ortamı
https://api.shopinext.com
API Test Ortamı
https://api.dev.shopinext.com
Format
application/json
Yetkilendirme
Authorization: Bearer
Zorunlu başlık
Domain: alanadiniz.com
Erişim tokeni
1 saat geçerli
Yenileme tokeni
24 saat geçerli
IP kısıtı
Yalnızca tanımlı IP adresleri
Para birimleri
TRY · USD · EUR · GBP
Başlangıç
Başlangıç ve Kimlik Doğrulama

Shopinext API platformunda Access Token oluşturmak için, tarafınıza verilen Client ID ve Client Secret bilgileriyle belirtilen uç noktaya istek atmanız gerekmektedir.

Üretilen Access Token 1 saat süreyle geçerlidir. Süre dolduğunda, 24 saat geçerliliğe sahip Refresh Token kullanılarak yeni bir Access Token alınmalıdır.

Güvenlik Kuralları: API anahtarlarınız oluşturulurken tanımlanan alan adı bilgisi, tüm isteklerin başlığında (Header) iletilmelidir (Örn: Domain: shopinext.com). Ayrıca sisteme gönderilen tüm API istekleri, yalnızca hesabınızda tanımlanmış olan IP adresi üzerinden gerçekleştirilmelidir.

POST /authenticate
İSTEK PARAMETRELERİ - POST

Parametre Tür Açıklama Gerekli
client_id String İstemci Kimliği Evet
client_secret String İstemci Gizli Anahtarı Evet

POST /refreshToken
İSTEK PARAMETRELERİ - POST

Parametre Tür Açıklama Gerekli
refresh_token String Yenileme Tokeni Evet

POST/authenticate
{
    "client_id": "SNT98s721xsaS96S",
    "client_secret": "SNC71219sz77As"
}
{
    "status": 1,
    "access_token": "SNT98s721xsaS96S",
    "refresh_token": "SNC71219sz77As",
    "access_token_validity": "2025-04-17 00:00:00",
    "refresh_token_validity": "2025-04-18 00:00:00"
}
POST/refreshToken
Talep
{
    "refresh_token": "SNR123s2998asdXZSA"
}
Cevap
{
    "status": 1,
    "access_token": "SNT98s721xsaS96S",
    "refresh_token": "SNC71219sz77As",
    "access_token_validity": "2025-04-17 00:00:00",
    "refresh_token_validity": "2025-04-18 00:00:00"
}
API Uç Noktaları
Ödeme Oluşturma (POST)

Yeni bir ödeme işlemi başlatmak için aşağıdaki parametrelerle bir istek (request) göndermeniz gerekmektedir. İşlemin nihai durumu (başarılı/başarısız), Callback URL parametresinde belirttiğiniz adrese bildirim (notification/webhook) olarak iletilecektir.

POST /createPayment
İSTEK PARAMETRELERİ - POST
Parametre Tür Açıklama Zorunluluk
Kimlik Doğrulama
access_token String /authenticate endpoint'i üzerinden alınan erişim anahtarıdır. İstek gövdesinde gönderilmemeli, Authorization: Bearer başlığı üzerinden iletilmelidir. Zorunlu
Sipariş
merchant_order_id String Satıcının kendi sisteminde ilgili sipariş için oluşturduğu sipariş numarasıdır. Zorunlu
amount Decimal Siparişin toplam tutarıdır. Hesap için tanımlanan alt ve üst işlem limitleri uygulanır.
Koşul: order_products kalemlerinin toplamına eşit olmalıdır
Koşullu
currency Enum İşlemin gerçekleştirileceği para birimidir.
Değerler: TRY, USD, EUR, GBP
Zorunlu
is_digital Integer Siparişin dijital ürün içerip içermediğini belirtir. 1 gönderildiğinde teslimat bilgisi istenmez.
Değerler: 0, 1
Zorunlu
max_installment Integer Ödeme sayfasında sunulacak maksimum taksit sayısını belirtir. Tek çekim için 1 gönderilir; hesaba tanımlı taksit iznini aşan değerler izin sınırına indirilir.
Varsayılan: 1
Opsiyonel
language Enum Ödeme sayfasının görüntüleneceği dili belirtir.
Değerler: TR, EN, DE · Varsayılan: TR
Opsiyonel
Müşteri
firstname String Müşterinin adıdır. Zorunlu
surname String Müşterinin soyadıdır. Zorunlu
email Email ≤ 64 Müşterinin e-posta adresidir. Zorunlu
country_code String Müşterinin telefon numarasına ait uluslararası ülke kodudur. Zorunlu
phone Phone Müşterinin cep telefonu numarasıdır. Zorunlu
identity_number String ≤ 11 Müşteriye ait kimlik numarasıdır. Gerçek müşteri bilgisi gönderilmelidir; sabit, temsili veya örnek değer kullanılmamalıdır.
company String Kurumsal faturalandırma işlemlerinde kullanılacak şirket unvanıdır. Opsiyonel
tax_office String Kurumsal faturalandırma işlemlerinde kullanılacak vergi dairesidir.
tax_number String Kurumsal faturalandırma işlemlerinde kullanılacak vergi numarasıdır.
Sepet (order_products)
order_products Array Siparişte yer alan ürün kalemlerinin listesidir.
Koşul: Kalemlerin total toplamı amount değerine eşit olmalıdır
Koşullu
productCode String ≤ 100 Satıcının kendi sisteminde ürüne tanımladığı ürün kodudur. Gönderilmemesi durumunda sistem tarafından bir kod oluşturulur. Opsiyonel
name String ≤ 500 Sipariş kaleminde yer alan ürünün adıdır. Zorunlu
quantity Integer Sipariş kalemindeki ürün adedidir. Zorunlu
price Decimal Sipariş kalemindeki ürünün birim fiyatıdır. Zorunlu
total Decimal Sipariş kaleminin toplam tutarıdır.
Koşul: quantity × price sonucuna eşit olmalıdır
Koşullu
Fatura (billing_info)
billing_info Object Müşterinin fatura adresi bilgilerini içeren nesnedir.
billing_firstname String Fatura adresinde kullanılacak addır.
billing_surname String Fatura adresinde kullanılacak soyaddır.
billing_address String Müşterinin fatura adresidir.
billing_city String ≤ 32 Fatura adresine ait ilçe veya şehir bilgisidir.
billing_state String ≤ 32 Fatura adresine ait il veya eyalet bilgisidir.
billing_postal_code String ≤ 15 Fatura adresine ait posta kodudur.
billing_country String ≤ 32 Fatura adresine ait ülke bilgisidir. ISO 3166-1 alpha-2 ülke kodu gönderilmelidir (örn. TR).
billing_country_code String Fatura bilgilerinde kullanılan telefon numarasına ait ülke kodudur.
billing_phone Phone Fatura bilgilerinde kullanılacak telefon numarasıdır.
Teslimat (shipping_info)
shipping_info Object Fiziksel ürün siparişlerinde kullanılacak teslimat bilgilerini içeren nesnedir.
Koşul: Yalnızca is_digital=0 olduğunda istenir
shipping_firstname String Teslimat adresinde kullanılacak addır.
shipping_surname String Teslimat adresinde kullanılacak soyaddır.
shipping_address String Siparişin teslim edileceği adrestir.
shipping_city String ≤ 32 Teslimat adresine ait ilçe veya şehir bilgisidir.
shipping_state String ≤ 32 Teslimat adresine ait il veya eyalet bilgisidir.
shipping_postal_code String ≤ 15 Teslimat adresine ait posta kodudur.
shipping_country String ≤ 32 Teslimat adresine ait ülke bilgisidir. ISO 3166-1 alpha-2 ülke kodu gönderilmelidir (örn. TR).
shipping_country_code String Teslimat bilgilerinde kullanılan telefon numarasına ait ülke kodudur.
shipping_phone Phone Teslimat için kullanılacak telefon numarasıdır.
Dönüş Adresleri
success_url Url Ödeme başarıyla tamamlandığında müşterinin yönlendirileceği URL'dir. http, localhost ve özel ağ adresleri kabul edilmez. Zorunlu
fail_url Url Ödeme başarısız olduğunda müşterinin yönlendirileceği URL'dir. http, localhost ve özel ağ adresleri kabul edilmez. Zorunlu
callback_url Url Ödeme sonucunun sunucudan sunucuya bildirileceği URL'dir. http, localhost ve özel ağ adresleri kabul edilmez. Zorunlu

"Hesabınıza göre değişir" işaretli alanların sizin hesabınız için zorunlu olup olmadığını panelinizdeki API Düzenle sayfasında görebilirsiniz.

POST/createPayment
Authorization: Bearer SNT98s721xsaS96S
Domain: alanadiniz.com

{
    "merchant_order_id": "ORD-2026-000123",
    "amount": 200.00,
    "currency": "TRY",
    "is_digital": 0,
    "max_installment": 1,
    "language": "TR",
    "firstname": "Hasan",
    "surname": "Öncel",
    "email": "[email protected]",
    "country_code": "+90",
    "phone": "5445553366",
    "identity_number": "12345678901",
    "company": "Örnek Ticaret A.Ş.",
    "tax_office": "Beşiktaş VD",
    "tax_number": "1234567890",
    "order_products": [{
        "productCode": "SKU-PRM-01",
        "name": "Premium Paket",
        "quantity": 2,
        "price": 100.00,
        "total": 200.00
    }],
    "billing_info": {
        "billing_firstname": "Hasan",
        "billing_surname": "Öncel",
        "billing_address": "Örnek Mah. Örnek Sok. No: 3/4",
        "billing_city": "Beşiktaş",
        "billing_state": "İstanbul",
        "billing_postal_code": "34330",
        "billing_country": "TR",
        "billing_country_code": "+90",
        "billing_phone": "5445553366"
    },
    "shipping_info": {
        "shipping_firstname": "Hasan",
        "shipping_surname": "Öncel",
        "shipping_address": "Örnek Mah. Örnek Sok. No: 3/4",
        "shipping_city": "Beşiktaş",
        "shipping_state": "İstanbul",
        "shipping_postal_code": "34330",
        "shipping_country": "TR",
        "shipping_country_code": "+90",
        "shipping_phone": "5445553366"
    },
    "success_url": "https://magaza.ornek.com/odeme/basarili",
    "fail_url": "https://magaza.ornek.com/odeme/basarisiz",
    "callback_url": "https://magaza.ornek.com/webhook/shopinext"
}
{
    "status": 1,
    "payment_id": "S1234567890",
    "redirect_url": "https://checkout.shopinext.com/tr/S1234567890"
}
# Canlı
curl -X POST https://api.shopinext.com/createPayment \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer SNT98s721xsaS96S" \
  -H "Domain: alanadiniz.com" \
  -d '{"merchant_order_id":"ORD-2026-000123","amount":200.00,"currency":"TRY","is_digital":0,"max_installment":1,"language":"TR","firstname":"Hasan","surname":"Öncel","email":"[email protected]","country_code":"+90","phone":"5445553366","identity_number":"12345678901","company":"Örnek Ticaret A.Ş.","tax_office":"Beşiktaş VD","tax_number":"1234567890","order_products":[{"productCode":"SKU-PRM-01","name":"Premium Paket","quantity":2,"price":100.00,"total":200.00}],"billing_info":{"billing_firstname":"Hasan","billing_surname":"Öncel","billing_address":"Örnek Mah. Örnek Sok. No: 3/4","billing_city":"Beşiktaş","billing_state":"İstanbul","billing_postal_code":"34330","billing_country":"TR","billing_country_code":"+90","billing_phone":"5445553366"},"shipping_info":{"shipping_firstname":"Hasan","shipping_surname":"Öncel","shipping_address":"Örnek Mah. Örnek Sok. No: 3/4","shipping_city":"Beşiktaş","shipping_state":"İstanbul","shipping_postal_code":"34330","shipping_country":"TR","shipping_country_code":"+90","shipping_phone":"5445553366"},"success_url":"https://magaza.ornek.com/odeme/basarili","fail_url":"https://magaza.ornek.com/odeme/basarisiz","callback_url":"https://magaza.ornek.com/webhook/shopinext"}'
API Uç Noktaları
Ödeme Yöntemleri

Shopinext, iş modelinize ve güvenlik ihtiyaçlarınıza uygun 3 farklı ödeme entegrasyon yöntemi sunar:

  • Hosted Payment Page (HPP): Kullanıcı, ödeme işlemini Shopinext tarafından barındırılan güvenli ödeme sayfasına yönlendirilerek tamamlar. (PCI-DSS yükünü en aza indirir.)
  • Embedded Checkout (Iframe): Ödeme formu, kendi web siteniz veya uygulamanız içerisine gömülü bir iframe olarak yüklenir.
  • Direct API (Native Checkout): Ödeme formu ve kart bilgileri tamamen kendi arayüzünüzde toplanır; veriler API aracılığıyla doğrudan Shopinext'e iletilir. (Kullanıcı deneyimi üzerinde tam kontrol sağlar.)

Ödeme talebi (create payment) oluştururken kullanmak istediğiniz yöntemi ilgili parametre ile belirtebilirsiniz:

  • Varsayılan Entegrasyon (HPP)
    Tüm Shopinext hesapları için varsayılan ve aktif olan tek yöntem Hosted Payment Page (HPP) modelidir. İlk entegrasyonunuzu mutlaka HPP yöntemine göre tamamlamanız gerekmektedir.
  • Özel Yetkilendirme (Iframe / Direct API)
    Embedded Checkout ve Direct API yöntemleri ek güvenlik (PCI-DSS) ve risk değerlendirmelerine tabidir. Bu yöntemler yalnızca hesabı özel olarak yetkilendirilmiş üye işyerleri tarafından kullanılabilir.
  • Çalışma Şartı
    HPP entegrasyonu tamamlanmadan ve hesabınıza özel yetki tanımlanmadan Iframe veya Direct API üzerinden gönderilen ödeme istekleri sistem tarafından reddedilecek ve ödeme işlemi başarısız olacaktır.
Entegrasyon Yöntemleri ve Kullanım Şekilleri
1. Hosted Payment Page (HPP)

Kullanıcı, ödeme işlemini tamamlamak üzere Shopinext tarafından barındırılan güvenli ödeme sayfasına yönlendirilir.

Yönlendirme Bağlantısı:

https://checkout.shopinext.com/{language}/{payment_id} 2. Embedded Checkout (Iframe)

Ödeme formu, web siteniz veya uygulamanız içerisine bir iframe ögesi olarak gömülür.

Iframe Kodu:

<iframe src="https://checkout.shopinext.com/{language}/{payment_id}?iframe=1" width="100%" height="600" frameborder="0"></iframe>

Not: Ödeme formunun iframe içerisinde sorunsuz ve uyumlu çalışabilmesi için URL sonuna zorunlu olarak ?iframe=1 parametresi eklenmelidir.

3. Direct API (Native Checkout)

Kart bilgileri doğrudan API üzerinden iletilerek ödeme tamamlanır. Kullanıcı başka bir sayfaya yönlendirilmeden (native) ödeme alınmasını sağlar.

Akış ve OTP (Tek Kullanımlık Şifre) Süreci:

  • Ödeme Başlatma
    Önce /createPayment uç noktasına istek atılarak bir payment_id elde edilmelidir.
  • Ödeme Tamamlama
    Alınan payment_id ve kart bilgileri ile /directPayment uç noktası çağrılır.
  • Doğrulama (OTP) Adımı
    Üye işyeri hesabınızda SMS veya E-posta doğrulaması aktif ise, işlem durumuna göre API yanıtı döner:
    • status = 3 — E-posta OTP Doğrulaması Gerekli
    • status = 4 — SMS OTP Doğrulaması Gerekli
  • İşlem Onayı
    Müşteriden alınan doğrulama kodu, otp_code parametresi ile sisteme iletilerek ödeme işlemi nihai olarak tamamlanır.

Parametre Tür Açıklama Gerekli
payment_id String Shopinext Ödeme ID Evet
cc_owner String Kart Sahibi Evet
cc_number String Kart Numarası Evet
cc_month String Ay (MM) Evet
cc_year String Yıl (YYYY) Evet
cc_cvv String CVV Evet
installment Integer Taksit Sayısı Hayır
otp_code String SMS veya E-posta yoluyla gönderilen tek kullanımlık doğrulama kodu (Gerektiğinde gönderilir) Hayır

POSTdirectPayment
{
    "payment_id": "S1234567890",
    "cc_owner": "HASAN ONCEL",
    "cc_number": "4111111111111111",
    "cc_month": "12",
    "cc_year": "2026",
    "cc_cvv": "123",
    "installment": 1
}
{     "status": 4,     "payment_id": "S1234567890",     "message": "SMS doğrulama kodu gönderildi." }
{     "payment_id": "S1234567890",
    "cc_owner": "HASAN ONCEL",
    "cc_number": "4111111111111111",
    "cc_month": "12",
    "cc_year": "2026",
    "cc_cvv": "123",
    "installment": 1,
    "otp_code": "123456"
}
{
    "status": 1,
    "data": {
        "redirect_url": "https://3d.secure.url"
    }
}
API Uç Noktaları
Webhook

Bir ödeme talebi oluşturduktan sonra işlemin nihai durumu netleşene kadar, istek sırasında belirttiğiniz Callback URL adresine anlık güncellemeler iletilir. Tarafınıza ulaşan her bildirimin başarılı bir şekilde alındığını onaylamak adına sisteminizin OK yanıtı vermesi gerekmektedir. Aksi takdirde, sistem ödeme durum güncellemelerini 48 saat boyunca tarafınıza tekrar iletmeye devam edecektir.

Gelen bildirimin gerçekten Shopinext sunucularından iletildiğini teyit edebilmeniz için istek gövdesinde bir hash bilgisi yer alır. Bu değer, size tanımlanan Client ID ve Client Secret bilgilerinin herhangi bir ayraç veya boşluk kullanılmadan birleştirilmesi ve SHA-256 algoritması ile şifrelenmesi sonucu üretilir. Güvenlik amacıyla, gelen istekteki hash değeri ile kendi sunucunuzda ürettiğiniz hash değerini karşılaştırarak doğrulama yapmanız önerilir.

# Durum Durum Kodu
1 İşleniyor processing
2 Başarılı successful
3 Başarısız unsuccessful
4 İptal Edildi cancelled
5 İade Edildi refunded
6 Kısmi İade partially_refunded

POSTWebhook - CALLBACK_URL
{
    "payment_id": "S1234567890",
    "status": "processing",
    "hash": "5e4ff8ebb5fe84d8c7968ce..."
}
OK
// PHP
$expected = hash('sha256', $clientId . $clientSecret);
if (hash_equals($expected, $payload['hash'])) {
    // istek Shopinext'ten geldi
}
API Uç Noktaları
Ödeme Listesi Sorgulama

Belirli bir tarih aralığındaki ödeme kayıtlarını sorgulamak için, kimlik doğrulama adımında aldığınız Access Token bilginizi istek başlığında (Header) iletmeniz ve istek gövdesinde startdate ile enddate parametrelerini belirtmeniz gerekmektedir. Tek bir sorguda en fazla 45 günlük bir tarih aralığı filtreleyebilirsiniz.

Yanıt içerisindeki amount ve currency alanları ödeme oluşturulurken iletilen orijinal tutar ve para birimini; charged_amount ve charged_currency alanları ise karttan fiilen tahsil edilen nihai tutar ve para birimini gösterir. Kur çevrimi yapılan veya farklı para biriminde tahsil edilen işlemlerde bu değerler birbirinden farklılık gösterebilir.

GET /getPayments
İSTEK PARAMETRELERİ - GET

Parametre Tür Açıklama Gerekli
startdate String Başlangıç Tarihi (YYYY-MM-DD HH:mm:ss) Evet
enddate String Bitiş Tarihi (YYYY-MM-DD HH:mm:ss) Evet

# Durum Durum Kodu
1 İşleniyor processing
2 Başarılı successful
3 İptal Edildi cancelled
4 İade Edildi refunded
5 Kısmi İade partially_refunded

GET/getPayments
{
    "startdate": "2024-06-19 00:00:00"
    "enddate": "2024-06-19 23:59:59"
}
{
    "status": 1,
    "payments": [{
        "payment_id": "S1234567890",
        "merchant_order_id": "X12T55A",
        "firstname": "Hasan",
        "surname": "Öncel",
        "email": "[email protected]",
        "channel": "API",
        "domain": "www.shopinext.com",
        "status_type": "Sales",
        "status": "Successful",
        "amount": 200.00,
        "currency": "TRY",
        "charged_amount": 200.00,
        "charged_currency": "TRY",
        "installment": 1,
        "currency_rates": "{\"USD\":\"36.4792\",\"EUR\":\"38.0094\",\"GBP\":\"46.006\"}",         "commission": 5.9,
        "transaction_fee": 0.5,
        "vat": 1.28,
        "is_digital": 0,
        "identity_number": "11111111111",
        "company": "",
        "tax_office": "",
        "tax_number": "",
        "payment_date": "2024-06-19 15:00:00",
        "payment_note": "",
        "order_products": [{
            "name": "Deneme",
            "quantity": 2,
            "price": 100,
            "total": 200
        }],
        "billing_info": {
            "billing_firstname": "Hasan",
            "billing_surname": "Öncel",
            "billing_address": "Örnek Mah. Örnek Sok. No: 3/4",
            "billing_city": "Beşiktaş",
            "billing_state": "İstanbul",
            "billing_postal_code": "34330",
            "billing_country": "TR",
            "billing_country_code": "+90",
            "billing_phone": "5445553366"
        },
        "shipping_info": {
            "shipping_firstname": "Hasan",
            "shipping_surname": "Öncel",
            "shipping_address": "Örnek Mah. Örnek Sok. No: 3/4",
            "shipping_city": "Beşiktaş",
            "shipping_state": "İstanbul",
            "shipping_postal_code": "34330",
            "shipping_country": "TR",
            "shipping_country_code": "+90",
            "shipping_phone": "5445553366"
        },
        "created_at": "2024-06-19 01:03:00"
    }]
}
API Uç Noktaları
Tek Ödeme Sorgulama

Tek bir ödeme işlemine ait detayları sorgulamak için, kimlik doğrulama adımında aldığınız Access Token bilginiz ile birlikte ilgili Shopinext Ödeme Kimliği (payment_id) parametresini iletmeniz gerekmektedir.

Yanıt içerisindeki amount ve currency alanları ödeme oluşturulurken iletilen orijinal tutar ve para birimini; charged_amount ve charged_currency alanları ise karttan fiilen tahsil edilen nihai tutar ve para birimini gösterir. Kur çevrimi yapılan veya farklı para biriminde tahsil edilen işlemlerde bu değerler birbirinden farklılık gösterebilir.

GET /getPayment
İSTEK PARAMETRELERİ - GET

Parametre Tür Açıklama Gerekli
payment_id String Shopinext Ödeme ID Evet

# Durum Durum Kodu
1 İşleniyor processing
2 Başarılı successful
3 İptal Edildi cancelled
4 İade Edildi refunded
5 Kısmi İade partially_refunded

GET/getPayment
{
    "payment_id": "S1234567890"
}
{
    "status": 1,
    "payment": {
        "payment_id": "S1234567890",
        "merchant_order_id": "X12T55A",
        "firstname": "Hasan",
        "surname": "Öncel",
        "email": "[email protected]",
        "channel": "API",
        "domain": "www.shopinext.com",
        "status_type": "Sales",
        "status": "Successful",
        "amount": 200.00,
        "currency": "TRY",
        "charged_amount": 200.00,
        "charged_currency": "TRY",
        "installment": 1,
        "currency_rates": "{\"USD\":\"36.4792\",\"EUR\":\"38.0094\",\"GBP\":\"46.006\"}",         "commission": 5.9,
        "transaction_fee": 0.5,
        "vat": 1.28,
        "is_digital": 0,
        "identity_number": "11111111111",
        "company": "",
        "tax_office": "",
        "tax_number": "",
        "payment_date": "2024-06-19 15:00:00",
        "payment_note": "",
        "order_products": [{
            "name": "Deneme",
            "quantity": 2,
            "price": 100,
            "total": 200
        }],
        "billing_info": {
            "billing_firstname": "Hasan",
            "billing_surname": "Öncel",
            "billing_address": "Örnek Mah. Örnek Sok. No: 3/4",
            "billing_city": "Beşiktaş",
            "billing_state": "İstanbul",
            "billing_postal_code": "34330",
            "billing_country": "TR",
            "billing_country_code": "+90",
            "billing_phone": "5445553366"
        },
        "shipping_info": {
            "shipping_firstname": "Hasan",
            "shipping_surname": "Öncel",
            "shipping_address": "Örnek Mah. Örnek Sok. No: 3/4",
            "shipping_city": "Beşiktaş",
            "shipping_state": "İstanbul",
            "shipping_postal_code": "34330",
            "shipping_country": "TR",
            "shipping_country_code": "+90",
            "shipping_phone": "5445553366"
        },
        "created_at": "2024-06-19 01:03:00"
    }
}
API Uç Noktaları
Taksit Bilgileri (GET /getInstallments)

Shopinext hesabınıza tanımlanmış aktif taksit seçeneklerini ve taksit sayısı bazlı oranları dinamik olarak sorgulamak için kullanılır. Herhangi bir istek gövdesi (body) göndermeden, yalnızca geçerli Access Token bilginiz ile istek atmanız yeterlidir.

GET /getInstallments
GET/getInstallments
Boş
{
    "status": 1,
    "installments": [{
        "installmentCount": 2,
        "installmentRate": 5.99
    }, {
        "installmentCount": 3,
        "installmentRate": 6.99
    }, {
        "installmentCount": 4,
        "installmentRate": 7.99
    }]
}
API Uç Noktaları
Komisyon Bilgileri (GET /getCommissions)

Hesabınıza tanımlı olan komisyon oranları ve para birimi bazlı işlem ücretleri hakkında güncel bilgi almak için kullanılır. İstek başlığında Access Token iletilmelidir.

GET /getCommissions
GET/getCommissions
Boş
{
    "status": 1,
    "commissions": {
        "try_commission": 5.99,
        "try_transaction_fee": 0.25,
        "try_commission_int": 5.99,
        "try_transaction_fee_int": 0.25,
        "usd_commission": 5.99,
        "usd_transaction_fee": 0.25,
        "eur_commission": 5.99,
        "eur_transaction_fee": 0.25,
        "gbp_commission": 5.99,
        "gbp_transaction_fee": 0.25,
        "btc_commission": 5.99,
        "btc_transaction_fee": 0.25,
        "eth_commission": 5.99,
        "eth_transaction_fee": 0.25
    }
}
Referans
Hata Kodları

Shopinext API'si aşağıda belirtilen hata kodlarını kullanır:

Hata Kodu Açıklama
SNE1 Token oluşturma başarısız oldu. Sağladığınız kimlik doğrulama bilgileri yanlış.
SNE2 Eksik parametre. Zorunlu alanlardan biri veya birkaçı gönderilmedi.
SNE3 Ödeme Kimliği (payment_id) bulunamadı veya sağlanan bilgilerle eşleşen ödeme yok.
SNE4 Tarih aralığı formatı hatalı. startdate ve enddate parametrelerini kontrol edin.
SNE5 Ödeme oluşturma başarısız oldu. Gönderilen parametreleri kontrol edin.
SNE6 Sistem Hatası. Lütfen Destek Ekibi ile iletişime geçin.
SNE7 İstenen para birimi için hesabınızın işlem yetkisi yok.
SNE8 Hesabınıza tanımlanan satış/ciro limitini aştınız.
SNE9 Kullanılmaya çalışılan kart altyapısı veya kart tipi desteklenmiyor.
SNE10 İstek atılan IP adresi yetkilendirilmemiş. Panelden IP tanımınızı kontrol edin.
SNE11 İstek atılan Domain (Header) yetkilendirilmemiş.
SNE12 Tarih aralığı sınır aşımı. Tek seferde en fazla 45 günlük sorgulama yapılabilir.
SNE13 API kimlik bilgileri (Client ID / Client Secret) bulunamadı veya geçersiz.
SNE14 Bu ödeme işlemi üzerinde sorgulama veya işlem yapma yetkiniz bulunmuyor.
SNE15 Ödeme işlemi geçerli durumda değil (Örn: Zaten tamamlanmış veya iptal edilmiş).
SNE16 Hesabınız pasif veya askıya alınmış durumda.
SNE17 Direct API (Native Checkout) kullanım yetkiniz bulunmamaktadır.
SNE18 3D Secure başlatma adımı başarısız oldu.
SNE19 Genel ödeme hatası. İşlem banka veya altyapı tarafından reddedildi.
SNE20 İşlem tutarı, sistemde izin verilen asgari (minimum) tutarın altında.
SNE21 Desteklenmeyen para birimi. Geçerli değerler: TRY, USD, EUR, GBP (Büyük harf).
SNE22 Hesabın bu para biriminde satış yetkisi yok. Yetkilendirme için destek ekibiyle görüşün.
SNE23 Geçersiz URL formatı (callback_url, success_url ve fail_url herkese açık https:// adresi olmalıdır) veya işlem risk denetimine takıldı.
SNE24 İşlem tutarı, sistemde izin verilen azami (maksimum) tutarın üzerinde.

Referans
Test Kartları

Aşağıdaki kredi kartı bilgilerini test işlemleri için kullanabilirsiniz.

Kart Numarası Son kullanım CVV 3D Şifre
5404 3554 0435 5405 12/2030 001 a
4546 7112 3456 7894 12/2026 000 a
5401 3412 3456 7891 12/2026 000 a

Referans
Destek ve İletişim

Entegrasyon sürecinde karşılaştığınız teknik sorunlar, yetkilendirme talepleri veya tüm sorularınız için e-posta yoluyla teknik destek ekibimizle iletişime geçebilirsiniz.

[email protected]