1. Tekrarlı Oluştur

Tekrarlı Ödeme Oluştur

POST {{Base Adres}}/api/paywall/recurring

Önemli: Tekrarlı Ödeme Oluşturma servisini kullanabilmeniz için 'Header' alanında 'apikeypublic' ve 'apiclientpublic' parametrelerini göndermeniz gerekmektedir. PaymentAPI Adresi

ParametreTipZorunluAçıklama

apikeypublic

string

Evet

Üye işyeri panelinden temin etmiş olduğunuz Public Key.

apiclientpublic

string

Evet

Üye işyeri panelinden temin etmiş olduğunuz Public Client.

Servise gönderilmesi gereken parametreler şu şekildedir :

ParametreTipZorunluAçıklama

Card:UniqueCode

string

Evet

Ödemelerin alınacağı saklı kart UniqueCode bilgisi, kayıtlı kartlarda kaydetme anında ve listelemede cevap olarak PayWall'dan döner

SubscriptionType

int

Evet

Üyelik tipi. Şimdilik sadece 1 desteklenmektedir bkz: Tekrarlı Ödeme

SubscriptionMerchantCode

string

Evet

Tekrarlı ödemeye ait sizin tarafınızdan verilen tekil takip numarası

CurrencyId

int

Evet

Para birimi

Amount

decimal

Evet

Tekrarlı ödeme tutarı. Her seferinde karttan çekilecek tutar

CallbackUrl

string

Hayır

Ödeme sonuçlarının POST atılacak adrestir. Boş gönderilmesi durumunda callback atılmaz bkz. Post Body

HasTrial

bool

Evet

Üyeliğe uygulanan bir deneme süresi var mı?

TrialDay

int

Evet

Üyeliğe uygulanan deneme süresinin günü. Ödeme aylık periyotta 02/07 'de oluşturulduysa ve 10 gün deneme süresi varsa ilk ödeme 12/08 'de alınıyor olacak.

PaymentAtCreation

bool

Evet

Parametreyi TRUE göndermeniz durumunda, üyelik oluşturulmadan önce ilgili bilgilerle ilk ödeme tahsil edilir. Tahsilatın başarıyla gerçekleşmesiyle birlikte ilgili kart bilgileriyle üyelik oluşturulur. FALSE gönderilmesi durumunda ise üyelik oluşturulur ve seçilen periyotla birlikte ödeme emri oluşturulur. Ancak üyelik oluşturulurken ilk ödeme tahsil edilmez. Not: Trial gün verilmesi durumunda bu parametre TRUE gönderilse bile ilk ödeme bugün + trial gün sonrasında alınır.

FirstPaymentDate

DateTime

Hayır

Ödemenin ilk tarihini kendi tarafınızdan belirleyebilirsiniz. Parametre 2024-04-04 gönderilmesi durumunda, ilgili ödeme ilk 2024-04-04 tarihinde alınacaktır ve sonrası için belirlediğiniz periyot ile devam edilecektir. Not: Trial uygulamanız durumunda ilk ödeme tarihinin üstüne gün eklenir ve ödeme öyle gerçekleştirilir. 2024-04-04 belirmeniz durumunda 10 gün de Trial varsa ilk ödeme 2024-04-14 tarihinde alınır.

RecurringPeriodType

int

Evet

Ödemenin tekrarlanacağı periyot tipi bkz: Tekrarlı Ödeme

RecurringPeriodCount

int

Evet (Koşullu)

Üyelik tipinin "Adet Bazlı" olması durumunda çekilmek istenen adet bilgisi girilir

FailAttempt

int

Evet

Ödemenin başarısız olması durumunda tekrar deneme adedi. Max: 5

FailAttemptPendingHour

int

Evet

Başarısız ödeme tekrarlarının arasında PayWall'un bekleyeceği saat dilimi. Max: 24

Customer:SubscriptionCustomerPoolId

int

Hayır

Müşteri/Kullanıcı havuzundan bir kayıt ile üyelik oluşturulmak istenirse ilgili kaydın id (kimlik) bilgisidir

Customer:Name

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri adı

Customer:Lastname

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri soyadı

Customer:Phone

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri telefon numarası

Customer:Email

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri e-posta adresi

Customer:Country

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri ülke bilgisi

Customer:City

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri şehir bilgisi

Customer:Address

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri adres bilgisi

Customer:IdentityNumber

string

Evet

Ödemeye ait sisteminizdeki kullanıcı/müşteri kimlik bilgisi

Items:SubscriptionItemPoolId

int

Hayır

İçerik havuzundan bir kayıt ile üyelik oluşturulmak istenirse ilgili kaydın id (kimlik) bilgisidir

Items:Type

int

Evet

Ödemeye konu olan satışın tipi bkz: Tekrarlı Ödeme

Items:Name

string

Evet

Ödemeye konu olan satışın adı

Items:Amount

decimal

Evet

Ödemeye konu olan satışın tutarı Items nesnesi bir array'dir ve girilen item'lerin Amount bilgisi toplam tutara eşit olmalıdır

Servise gönderilecek örnek JSON ve örnek kodlar aşağıdaki gibidir.

{
    "Card": {
        "UniqueCode": "aQbAoMhiAeYSfailjc2UzF7S1E/6QC=="
    },
    "SubscriptionType": 1,
    "SubscriptionMerchantCode": "12asaaaaasssaasaass2ada3",
    "CurrencyId": 1,
    "Amount": 110,
    "CallbackUrl": "https://webhook.site/8d70cb8e-fe1b-478b-8ee3-823870549ef2",
    "HasTrial": false,
    "TrialDay": 10,
    "FirstPaymentDate": "2023-09-26T05:00", // Null verilebilir
    "RecurringPeriodType": 1,
    "RecurringPeriodCount": 0, // RecurringPeriodType
        // parametresi 2 gönderilmesi durumunda API
        // tarafından kontrol edilir. 0 ile 365 arasında değer alır!
    "FailAttempt": 1,
    "FailAttemptPendingHour": 1,
    "Customer": {
        "SubscriptionCustomerPoolId": null, // Müşteri/Kullanıcı
            // havuzundan bir seçim yapıldıysa ve
            // üyelik oluşturulacaksa, havuzdaki kaydın
            // id (kimlik) bilgisi
            // -Havuz verisiyle oluşturma
            // anında aşağıdaki bilgilere gerek kalmaz-
        "Name": "Jogni",
        "Lastname": "Kivi",
        "Phone": "5554433212",
        "Email": "kivijogni@paywall.one",
        "Country": "Turkey",
        "City": "Istanbul",
        "Address": "Heaven",
        "IdentityNumber": "11111111110"
    },
    "Items": [
        {
            "SubscriptionItemPoolId": null, // Üyelik içeriği
            // havuzundan bir seçim yapıldıysa ve
            // üyelik oluşturulacaksa, havuzdaki kaydın
            // id (kimlik) bilgisi
            // -Havuz verisiyle oluşturma
            // anında aşağıdaki bilgilere gerek kalmaz-
            "Type": 1,
            "Name": "Gold Package",
            "Amount": 110
        }
    ]
}

Servisten dönen parametreler şu şekildedir:

ParametreTipAçıklama

ErrorCode

int

Hata kodu. İşlem başarılı ise '0' değerini döner.

Result

bool

True ya da false değeri döner. İşlem başarılı iste 'true' değerini döner.

Message

string

İşlem hatalıysa, bu hataya dair belirtilen mesajdır

Body

nesne

Detay dönmemektedir

{
    "ErrorCode": 0,
    "Result": true,
    "Message": "",
    "Body": null
}

Last updated