Ana içeriğe geç

retrieve-subscriptions

POST /api/{team}/gateway/retrieve-subscriptions

Aboneliklerin güncel hâlini döndürür; hiçbir şeyi değiştirmez. Her abonelik içinde bulunulan dönemi (renewal) ve kendi customer alanıyla döner.

Kimlik doğrulama​

X-Api-Key, X-Timestamp, X-Signature, Content-Type: application/json. Ayrıntılar: Kimlik Doğrulama ve İmza.

İstek​

Kayıt üç yoldan biriyle adlandırılır; en fazla biri gönderilir:

{ "token": "3b7e1f20-5c4a-4d8e-9f1b-7a6c5d4e3f21" }
{ "reference": "SIP-10233" }
{ "created_from": "2026-09-26", "created_to": "2026-10-02" }
AlanTipZorunluAçıklama
tokenstring (UUID)hayırKaydın token'ı. reference ya da tarih aralığıyla birlikte gönderilmez.
referencestringhayırAboneliğin referansı. Tarih aralığıyla birlikte gönderilmez. Bu referansla açılmış aboneliklerin hepsi döner.
created_fromstringhayırBaşlangıç günü, YYYY-MM-DD. created_to ile birlikte gönderilir.
created_tostringhayırBitiş günü, YYYY-MM-DD. created_from ile birlikte gönderilir; ondan önce olamaz. Aralık iki gün dahil en fazla 7 gündür.

Tarihler çalışma alanının saat dilimindedir. Hiçbir alan gönderilmezse ({}) bugün dahil son 7 gün listelenir. Yanıt her zaman bir listedir; eşleşen kayıt yoksa liste boştur. Başka bir çalışma alanının kaydı hiçbir zaman dönmez.

reference tekil değildir: aynı referansla yapılan her create-subscription çağrısı ayrı bir abonelik açar. reference ile sorgu bu aboneliklerin hepsini, eskiden yeniye döndürür; aralarından istediğinizi token ve status ile ayırt edin. Tek bir aboneliği kesin olarak sorgulamak için create-subscription yanıtında aldığınız token gönderilir.

SDK örnekleri​

not

Örneklerdeki $client / client nesnesinin kurulumu: İstemciyi Kurmak.

use Gurmehub\Odemehub\Request\RetrieveSubscriptions;

$subscription = $client->retrieveSubscriptions(RetrieveSubscriptions::byToken($subscriptionToken))->subscriptions[0] ?? null;

$subscription?->status; // Enum\SubscriptionStatus
$subscription?->renewal->paidAt;
$subscription?->nextPaymentAt;

Yanıt​

İlk dönemi HOSGELDIN kuponuyla ödenmiş bir abonelik:

{
"result": { "successful": true, "message": null },
"subscriptions": [
{
"token": "5e7a9c1d-3f2b-4d6e-8a0c-2b4d6f8a0c1e",
"reference": "ABO-1",
"description": null,
"payment_provider_token": null,
"status": "active",
"period": "monthly",
"renewal_limit": 12,
"renewals_paid": 1,
"items": [
{ "reference": null, "name": "Premium", "image": null, "quantity": 1, "unit_amount": "99.90", "tax_rate": "20.00" }
],
"shipping_method": null,
"discount": { "code": "HOSGELDIN", "amount": "20.00" },
"subtotal": "83.25",
"shipping_amount": "0.00",
"tax_amount": "16.65",
"amount": "99.90",
"currency": "TRY",
"is_test": false,
"renewal": {
"token": "9a1c3e5f-7b2d-4f6a-8c0e-1d3f5a7c9e2b",
"amount": "79.90",
"currency": "TRY",
"starts_at": "2026-10-02T10:00:00.000000Z",
"ends_at": "2026-11-02T10:00:00.000000Z",
"paid_at": "2026-10-02T10:00:00.000000Z"
},
"next_payment_at": "2026-11-02T10:00:00.000000Z",
"cancelled_at": null,
"created_at": "2026-10-02T09:55:00.000000Z",
"checkout_url": null,
"customer": {
"reference": "musteri-88",
"billing_address": { "firstname": "Ahmet", "lastname": "Yılmaz", "email": "[email protected]" },
"shipping_address": null
}
}
]
}
AlanTipAçıklama
created_from, created_tostringYalnızca tarih aralığıyla (ya da boş gövdeyle) sorulduğunda: listenin kapsadığı günler.
subscriptions[]arrayAbonelik nesneleri, her biri customer alanıyla; eskiden yeniye.

Abonelik nesnesi​

create-subscription, update-subscription yanıtlarında ve bu listede aynı nesne döner.

AlanTipAçıklama
tokenstringAboneliğin token'ı.
referencestringAboneliğin referansı. Tekil değildir; aynı referansla birden çok abonelik olabilir.
descriptionstring | nullAçıklama.
payment_provider_tokenstring | nullİstekte verilen ödeme hesabı; verilmediyse null.
statusstringpending, active, past_due, cancelled, completed. Aşağıya bakın.
periodstringdaily, weekly, monthly, annually.
renewal_limitinteger | nullAlınacak toplam dönem ödemesi sayısı; sınırsızsa null.
renewals_paidintegerŞimdiye kadar ödenen dönem sayısı.
items[], shipping_methodSipariş nesnesindeki gibi.
discountobject | nullİlk dönemin ödemesinde ödeme sayfasında uygulanan kupon: code, amount (kalemlerden düşülen tutar, aboneliğin para biriminde). Kupon yoksa null. Kupon yalnızca ilk dönemde uygulanır. Bkz. Kupon ve discount.
subtotal, shipping_amount, tax_amount, amountstringAboneliğin güncel kalemlerine göre bir dönemin tutarları; Sipariş nesnesindeki gibi. Gönderim ücreti yalnızca ilk dönemde alınır. Kupon indirimi bu tutarlardan düşülmez; ilk dönem için çekilen indirimli tutar, ilk dönemin renewal.amount alanındadır.
currencystringPara birimi.
is_testboolean | nullİlk ödemeden önce null; sonra ilk ödemenin test modunda alınıp alınmadığı.
renewalobjectİçinde bulunulan (en son) dönem.
renewal.tokenstringDönemin token'ı; checkout_url bu token'la kurulur.
renewal.amount, renewal.currencystringDönemin tutarı ve para birimi. İlk dönemde kupon ve gönderim ücreti bu tutara yansır.
renewal.starts_at, renewal.ends_atstring | nullDönemin başlangıcı ve sonu, ISO 8601 UTC. Dönem ödenmeden null.
renewal.paid_atstring | nullDönemin ödendiği an; ödenmediyse null.
next_payment_atstring | nullBir sonraki dönem ödemesinin müşterinin varsayılan kartından çekileceği an. İlk ödemeden önce, iptalden sonra ve son dönemde null.
cancelled_atstring | nullİptal anı; iptal edilmediyse null.
created_atstringISO 8601 UTC.
checkout_urlstring | nullİçinde bulunulan dönemin ödeme sayfası. Dönem ödenmemişken ve abonelik cancelled ya da completed değilken dolu; değilse null.
statusAnlamı
pendingAbonelik açıldı, ilk dönem henüz ödenmedi.
activeSon dönem ödendi. İptal edilmiş ama ödenmiş dönemi süren abonelik de dönem sonuna kadar active kalır (cancelled_at dolu).
past_dueBir dönem ödemesi kayıtlı karttan alınamadı; dönem checkout_url üzerinden ödenebilir.
cancelledİptal edildi ve sona erdi.
completedrenewal_limit kadar dönem ödendi ve son dönem bitti.

Listedeki her aboneliğin customer alanı: Yanıttaki customer.

HTTP durum kodları​

KodDurum
200Liste döndü; eşleşen kayıt yoksa boş.
401API anahtarı ya da imza geçersiz.
403Çalışma alanı işlem yapamıyor, planı abonelikleri kapsamıyor ya da Abonelik modülü kapalı.
422Doğrulama hatası.
429İstek sınırı aşıldı.

Hatalar​

AlanMesaj
tokenToken ile birlikte referans ya da tarih aralığı gönderilmez.
referenceReferans ile birlikte tarih aralığı gönderilmez.
created_toBitiş tarihi başlangıç tarihinden önce olamaz. / Tarih aralığı en fazla 7 gün olabilir.