Kayıtlı Kartlar
Kayıtlı kart, ödeme hesabının sağlayıcısında saklanan ve gateway'de bir token'la (saved_card.token) adlandırılan karttır. Gateway kartın ilk 6–8 hanesini ve son 4 hanesini döndürür.
Çalışma alanının planı kayıtlı kartları kapsamalı ve ödeme hesabının sağlayıcısı kart saklamayı desteklemelidir.
Kart saklama
| Yöntem | Nasıl | Token nerede döner |
|---|---|---|
| Ödemeyle birlikte | secure-payment ya da regular-payment isteğinde card.should_save: true. Kart yalnızca ödeme başarılı olursa saklanır. | Regular: ödeme yanıtının saved_card alanı. Secure: retrieve-payment yanıtının saved_card alanı. |
| Ödemesiz | save-card. | save-card yanıtının saved_card alanı. |
| Abonelik | İlk abonelik ödemesinde kart her zaman saklanır. | saved-cards ile listelenir. |
Kayıtlı kartla ödeme
secure-payment ya da regular-payment isteğinde card yerine transaction.saved_card_token gönderin.
{
"transaction": {
"channel_token": "6f1c2e7a-4b3d-4c8e-9a61-2f5d7b0c3e14",
"channel_reference": "SIP-10235",
"saved_card_token": "7d3e9a10-2b4c-4f6e-8a1b-c2d3e4f5a6b7",
"amount": "120.00",
"installment_number": 1,
"ip": "85.105.10.20"
},
"customer": { "channel_reference": "musteri-88", "firstname": "Ahmet", "lastname": "Yılmaz", "email": "[email protected]", "phone": "05551112233", "address": "Kızılırmak Mah. Dumlupınar Blv. No:3", "district": "Çankaya", "province": "Ankara", "country": "Türkiye" }
}
Kart kabul edilmesi için:
| Koşul | Sağlanmazsa (transaction.saved_card_token) |
|---|---|
| Kart çalışma alanınıza ait | Böyle bir kayıtlı kart bulunamadı. |
Kart, istekteki customer.channel_reference ve kanaldaki müşteriye ait | Kayıtlı kart bu müşteriye ait değil. |
| Kartın saklandığı ödeme hesabı silinmemiş | Kayıtlı kartın saklandığı ödeme hesabı silinmiş. |
| Kart, çalışma alanının şu anki modunda (test/canlı) saklanmış | Kayıtlı kart bu ortamda saklanmamış. |
card gönderilmemiş | Kayıtlı kartla ödemede kart bilgisi gönderilmez. |
payment_provider_token gönderilmemiş | Kayıtlı kartla ödemede ödeme hesabı gönderilmez; ödeme kartın saklandığı hesaptan alınır. |
Kayıtlı kartla ödeme her zaman kartın saklandığı hesaptan alınır; yönlendirme kuralları ve varsayılan hesap uygulanmaz.
- PHP
- Node.js
- Python
- Java
use Gurmehub\Odemehub\Request\RegularPayment;
$payment = $client->regularPayment(new RegularPayment(
channelReference: 'SIP-10235',
amount: '120.00',
installmentNumber: 1,
ip: $_SERVER['REMOTE_ADDR'],
customer: $customer,
savedCardToken: $savedCard->token,
));
const payment = await client.regularPayment({
channelReference: 'SIP-10235',
amount: '120.00',
installmentNumber: 1,
ip: req.ip,
customer,
savedCardToken: savedCard.token,
});
from odemehub.request import RegularPayment
payment = client.regular_payment(RegularPayment(
channel_reference="SIP-10235",
amount="120.00",
installment_number=1,
ip=request.remote_addr,
customer=customer,
saved_card_token=saved_card.token,
))
import com.odemehub.request.RegularPayment;
var payment = client.regularPayment(RegularPayment.builder()
.channelReference("SIP-10235")
.amount("120.00")
.installmentNumber(1)
.ip(request.getRemoteAddr())
.customer(customer)
.savedCardToken(savedCard.getToken())
.build());
SDK'larda card ile savedCardToken (Python'da saved_card_token) birlikte verilemez; ikisinden biri zorunludur.
Varsayılan kart
- Müşterinin ilk kayıtlı kartı varsayılan olur.
default-saved-cardbaşka bir kartı varsayılan yapar; önceki kartınis_defaultdeğerifalseolur.- Abonelik ödemesinde (ilk ödeme ya da
past_duedönemin ödemesi) kullanılan kart varsayılan olur. - Varsayılan kart silinirse müşterinin kalan kartlarından en son saklanan varsayılan olur.
- Abonelik yenilemeleri varsayılan karttan çekilir.
Uçlar
| Uç | İşlem |
|---|---|
save-card | Ödeme yapmadan kart saklar. |
saved-cards | Müşterinin kartlarını listeler. |
default-saved-card | Varsayılan kartı değiştirir. |
delete-saved-card | Kartı sağlayıcıdan ve gateway'den siler. |
Kart nesnesinin alanları: Kart nesnesi.