Skip to main content

Zapamätanie karty (ComfortPay)

ComfortPay je samostatná služba, ktorá umožňuje zapamätať si kreditnú kartu používateľa pre budúce použitie.

Upozornenie

Ak chcete túto funkciu používať, musíte na ňu spĺňať podmienky. Pre viac informácií kontaktujte podporu Tatrabanky.

Registrácia pre uloženie karty

Pre uloženie údajov o kreditnej karte používateľa je potrebné vykonať jednu platbu a zadať parameter card_detail.comfort_pay.

$initiate_payment_request = new Tatrapayplus\TatrapayplusApiClient\Model\InitiatePaymentRequest([
"base_payment" => new Tatrapayplus\TatrapayplusApiClient\Model\BasePayment([
"instructed_amount" => new Tatrapayplus\TatrapayplusApiClient\Model\Amount([
"amount_value" => 10.0,
"currency" => "EUR",
]),
"end_to_end" => new Tatrapayplus\TatrapayplusApiClient\Model\E2e([
"variable_symbol" => "1",
"specific_symbol" => "2",
"constant_symbol" => "3",
]),
]),
"card_detail" => new Tatrapayplus\TatrapayplusApiClient\Model\CardDetail([
"card_holder" => "Janko Hrasko",
"comfort_pay" => new Tatrapayplus\TatrapayplusApiClient\Model\RegisterForComfortPayObj([
"register_for_comfort_pay" => true,
]),
]),
// ...
]);

Získanie a uloženie tokenu karty

Po úspešnej platbe s card_detail.comfort_pay = RegisterForComfortPayObj(["register_for_comfort_pay" => true]) dostanete údaje o zákazníckej karte v premennej saved_card.

$payment_id = 'b54afd37-5bb9-4080-9416-5ec450779087'; // Retrieved from initiatePayment
$[$simple_status, $response] = $tatrapayplus_api->getPaymentIntentStatus($payment_id);

$status_obj = $response["object"]->getStatus();

$status_obj->getMaskedCardNumber(); // '440577******5558'
$comfort_pay_obj = $status_obj->getComfortPay(); // CardPayStatusStructureComfortPay instance
$comfort_pay_obj->getCid(); // '123'
PremennáPopis
cidTento token by mal byť uložený pre účet zákazníka.
masked_card_numberMôže byť zobrazené používateľovi, aby si mohol vybrať z uložených kariet

Použitie uloženého tokenu

Po uložení tokenu cid pre zákazníka by ste mali zákazníkovi zobraziť uložené karty na vašej webovej stránke. Keď si používateľ vyberie jednu z uložených kariet, musíte odovzdať cid funkcii TatraPayPlusAPIApi::generateSignedCardId a výsledok tejto funkcie je možné odovzdať funkcii comfort_pay.SignedCardIdObj().

$cid = '123'; // cid taken from stored customer
$public_key_content = '...'; // contents of public key file in string format
$signed_card_id = TatraPayPlusAPIApi::generateSignedCardId(
$cid,
$public_key_content
);

$initiate_payment_request = new Tatrapayplus\TatrapayplusApiClient\Model\InitiatePaymentRequest([
"base_payment" => new Tatrapayplus\TatrapayplusApiClient\Model\BasePayment([
"instructed_amount" => new Tatrapayplus\TatrapayplusApiClient\Model\Amount([
"amount_value" => 10.0,
"currency" => "EUR",
]),
"end_to_end" => new Tatrapayplus\TatrapayplusApiClient\Model\E2e([
"variable_symbol" => "1",
"specific_symbol" => "2",
"constant_symbol" => "3",
]),
]),
"user_data" => new Tatrapayplus\TatrapayplusApiClient\Model\UserData([
"first_name" => "Janko",
"last_name" => "Hrasko",
"email" => "janko.hrasko@example.com",
]),
"card_detail" => new Tatrapayplus\TatrapayplusApiClient\Model\CardDetail([
"card_holder" => "Janko Hrasko",
"comfort_pay" => new Tatrapayplus\TatrapayplusApiClient\Model\SignedCardIdObj([
"signed_card_id" => $signed_card_id
]),
]),
// ...
]);