Tuto variantu kalkulačky mohou využít pouze vázaní partneři. Pro nevázané partnery ("tipaře") slouží standalone varianta kalkulačky - více info např. zde)
Kalkulačka (jejíž kód běží v prohlížeči zákazníka) potřebuje získat data o možných splátkách. Pomocí HTTP GET provolá odpovídající API endpointy Home Creditu. Tyto požadavky musí obsahovat odpovídající API key HTTP hlavičku.
Vlastní kód kalkulačky je třeba nahrát na webový server. Jedná se o soubor JS konrétně app.js.
Příklad: https://eshop.example.com/js/app.js
Na stránku s produkty, u kterých si zákazník může zvolit nákup na splátky, je třeba:
které vyvolá pro dané zboží kalkulačku. HTML element bude mít nastaveno zpracování události onClick - spuštění pomocné funkce showCalc.
<button onclick="showCalc()">Nákup na splátky</button>
která obsahuje potřebné udaje pro zobrazení kalkulačky.
productSetCode
- konstanta dodaná HC- pro testovací účely:
- CZ: COCHCONL
- SK: COCHCONL
- pro testovací účely:
Tento parametr udává produktovou sadu Home Creditu, jenž se má pro výpočet použít - pokud je zboží zařazeno do speciální akce (např. "Za 0%"), na které se vztahuje kalkulace pod akční produktovou sadou, je potřeba tuto sadu v tomto kroku použít - Je žádoucí, aby ve správě produktů e-shopu byla možnost tuto vlastnost jednoduše nastavovat (alternativou je mít tuto možnost např. pro vybranou kategorii produktů). Výběr konkrétního produktu pak vede na použití akční produktové sady (
productSetCode
) při inicializaci kalkulačky
-
price
- cena daného zboží (košíku) -
language
- jazyk ve kterém kalkulačka běží. Pokud není dodán používá se Čeština -
downPayment
- hodnota akontace, může být 0 -
fixDownPayment
– vypnutí podpory volitelné akontace -
dataCalculatorBaseUrl
– pevně daná URL dodaná HC- pro testovací účely:
- CZ:
https://apicz-test.homecredit.cz/verdun-train/public/v1/calculator/
- SK:
https://apisk-test.homecredit.sk/verdun-train/public/v1/calculator/
- CZ:
- na produkčním prostředí:
- CZ:
https://api.homecredit.cz/public/v1/calculator/
- CZ:
- pro testovací účely:
-
apiKey
– API klíč, konstanta dodaná HC- pro testovací účely:
- CZ: calculator_test_key / calculator_test_key_dp (s podporou pro akontace)
- SK: calculator_test_key / calculator_test_key_dp (s podporou pro akontace)
- na produkčním prostředí:
- obdržíte od zodpovědné osoby z HC po schválení vaší implementace
- pro testovací účely:
-
processCalcResult
- JS funkce, která se zavolá, když si zákazník zvolí některou z nabízených možností splácení. -
debug
- možnost zapnout si debug. pomoci app.debug=true, který pomahá při implementaci a hledání případných chyb -
isModal
- možnost zapnout ci vypnout zda se ma kalkulacka zobrazit v modalu a nebo ji vykreslit do prislusneho elementu, ktery se urcije pomoci document.body.appendChild(app). -
hideHeader
- možnost zapnout ci vypnout ci se ma zobrazovat hlavicka, ta obsahuje logo HomeCreditu, nadpis a krizek. -
document.body.appendChild(app)
- zde určujeme kde v DOMu chceme kalkulačku zobrazit. Dle příkladu se kalkulačka zobrazí v tagu body.
// helper function example
function showCalc() {
let app = document.createElement('hc-calc');
app.callback = processCalcResult;
app.apiKey = 'calculator_test_key'; // example
app.dataCalculatorBaseUrl = 'https://apicz-test.homecredit.cz/verdun-train/public/v1/calculator/';
app.productSetCode = 'COCHCONL'; // example
app.price = document.getElementById('price').value; // number in minor units
app.downPayment = 0; // number in minor units
app.fixDownPayment = true; // parameter to decide if enable od disable downpayment
app.language = 'cs-CZ'; // Language can be "cs-CZ" or "sk-SK"
app.isModal = true; // parametr to decide if launch in model or not
app.hideHeader = false; // parametr to decide if hide header of hc-calc
document.body.appendChild(app); // Where to mount calculator
}
která zpracuje výsledky z kalkulačky. Typicky uloží údaje pro pozdější použití a přesune zákazníka do Košíku. Příklad objektu calcResult
, který je funkci předán jako parametr:
function processCalcResult(calcResult) {
console.log(calcResult);
// store the values ...
// go to basket ...
}
// calcResult object example:
{
annualInterestRate: 19.97,
creditAmount: 1300000, // minor units
creditTotalRepay: 1554000, // minor units
preferredDownPayment: 100000, // minor units
legalLine: "Každou žádost posuzujeme...",
preferredInstallment: 129500, // minor units
productCode: "COCONL12",
annualPercentageRate: 22,
preferredMonths: 12
}
Do hlavičky přidat fonty
<head>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;600&display=swap" rel="stylesheet">
</head>
Cestu ke scriptu si zvolíte sami
<script src="./app.js"></script>