Uyarı: Bu bölüm yazılım geliştirme uzmanlığı gerektirmektedir.
Çeşitli sebeplerden dolayı kendi ödeme formunuzu kodlamak isteyebilirsiniz. Ödeme formunuzu kodlamak istiyorsanız 2 sayfa oluşturmalısınız:
Kendi ödeme formunuzu kodlamanız için, formunuzda aşağıdaki parametrelerin bulunması gerekmektedir.
Teklif ve Firma Bilgileri
Subscriber Parametreleri
Payment Parametreleri
Bu parametreleri POST metoduyla aşağıdaki adrese POST etmeniz gerekir:
https://${sitename}.subscreasy.com/na/subscription/start/4ds
Firmanız için kullandığınız subdomain acme
olduğunu varsayalım. Bu durumda, aşağıdaki adrese POST etmelisiniz:
https://acme.subscreasy.com/na/subscription/start/4ds
Örnek HTML Form
<form method="post" action="https://acme.subscreasy.com/na/subscription/start/4ds">
<input type="hidden" name="offer.id" value="4737" /><br />
<input type="hidden" name="companySiteName" value="acme" /><br />
<input type="hidden" name="callbackUrl" value="https://acme.subscreasy.com/payment3ds/success" /><br />
Subscriber Name: <input type="text" name="subscriber.name" value="" /><br />
Subscriber Surname: <input type="text" name="subscriber.surname" value="" /><br />
Email: <input type="text" name="subscriber.email" value="" /><br />
Phone Number: <input type="text" name="subscriber.phoneNumber" value="" /><br />
Cardholder Name: <input type="text" name="paymentCard.cardHolderName" value="" /><br />
Card Number: <input type="text" name="paymentCard.cardNumber" value="" /><br />
Expiry Month: <input type="text" name="paymentCard.expireMonth" value="" /><br />
Expiry Year: <input type="text" name="paymentCard.expireYear" value="" /><br />
Security Code: <input type="text" name="paymentCard.cvc" value="" /><br />
<input type="hidden" name="paymentType" value="CC" /><br />
<input type="checkbox" name="privacyPolicyUrl" value="true" />I accept privacy policy<br />
<button type="submit">Pay Now</button>
</form>
Hata kodları HTTP header olarak iletilmektedir. HTTP cevabı 400 olarak iletildiğinde, X-subscreasy-error-key
ve X-subscreasy-error
başlıklarında hata bilgileri bulunmaktadır.
Ekranda gösterilecek hata mesajını belirlemek için, X-subscreasy-error-key
ve X-subscreasy-error
başlıklarını kullanmanız gerekmektedir. Aşağıda sistem tarafından dönülen hataların listesini bulabilirsiniz:
Örnek curl Request
curl 'https://acme.subscreasy.com/na/subscription/start/4ds' \
--data 'offer.id=4737& \
subscriber.name=John+& \
subscriber.surname=Doe& \
subscriber.email=johndoe%40gmail.com& \
subscriber.phoneNumber=5555555& \
privacyPolicyUrl=true& \
paymentType=CC& \
paymentCard.cardHolderName=John+Doe& \
paymentCard.cardNumber=4355+0843+5508+4358& \
paymentCard.expireMonth=12& \
paymentCard.expireYear=2019& \
paymentCard.cvc=000& \
companySiteName=acme& \
callbackUrl=https%3A%2F%2Facme.abone.io%2Fpayment3ds%2Fsuccess'
Tahsilat işlemi tamamlandıktan sonra müşteri bu adrese yönlendirilir. Bu sayfaya işlem sonuçları, aşağıdaki örnekte olduğu gibi query parameter olarak dönülür:
http://browsymous.example.com:8080/payment3ds/success?paymentId=13368433&authCode=280997&subscriptionId=19&nextChargingDate=1626100355&subscriberSecureId=feee3cacf15248ada2ea2a32df7aec25&subscriberName=Aygun Ozdemir&subscriberSurname=Ozdemir&startDate=1626100295&endDate=1626100355&offerId=-124&offerName=MentalUp Demo Edition 1 Hour&price=10.00000000&
Callback sayfasına aşağıdaki parametreler dönülür:
Bu parametreleri ileriye dönük olarak saklayıp saklamamak, satıcının inisiyatifindedir. Ödeme bilgilerine, her zaman subscreasy dashboard'dan ve ya API ile ulaşmanız mümkün.