Instrukcja integracji dla sklepów internetowych

1. Definicje

Bank - Credit Agricole Bank Polska S.A.
Partner - podmiot prowadzący sklep internetowy, który podpisał umowę z Bankiem na oferowanie sprzedaży ratalnej (kredyt na zakup towarów i usług, zwany dalej ratami lub kredytem ratalnym).
eWniosek - aplikacja internetowa udostępniona przez Bank, umożliwiająca wykonanie symulacji kredytu ratalnego, złożenie wniosku przez Klienta, a w przypadku pozytywnej decyzji kredytowej zdalną identyfikację i podpisanie umowy. Umożliwia również monitowanie statusu złożonego wniosku.
identyfikatorSklepu - numer identyfikujący Partnera, nadany przez Bank po podpisaniu umowy o współpracy, np. PSP1234567.
Oferta - zestaw parametrów (oprocentowanie, liczba rat, itd.) na podstawie których zostanie uruchomiony kredyt ratalny. Partner ma dostęp do jednej lub wielu ofert w ramach umowy z Bankiem.

2. Wstęp

2.1. eWniosek - proces zdalnego podpisywania umowy kredytu ratalnego

eWniosek umożliwia zdalne podpisanie przez Klienta umowy o kredyt ratalny, bez konieczności kontaktu z pracownikiem Banku.

Proces online obejmuje:

  • wykonanie symulacji kredytu, wypełnienie wniosku i wysłanie go do decyzji,
  • otrzymanie online decyzji kredytowej,
  • identyfikację za pomocą przelewu 1 zł,
  • jeśli to konieczne - załączenie zdjęć dokumentów,
  • podpisanie umowy kodem SMS.

W standardowej (pozytywnej) ścieżce cały powyższy proces Klient jest w stanie przejść w 10 minut, w ramach jednej sesji.

Niniejsza instrukcja opisuje udostępnione metody integracji z systemem eWniosek, tak, by umożliwić sprzedaż towarów na raty z wykorzystaniem powyższego procesu. Zamieszczono tu również przykłady kodu w javascript i HTML a także gotowe biblioteki, do wykorzystania w Państwa e-Commerce.

2.2 Modele integracji

Zakłada się dwa modele integracji: podstawowy i rozszerzony. Wybór danego modelu zależy od Państwa strategii biznesowej.

Integracja podstawowaIntegracja rozszerzona
Jeśli chcesz zintegrować swój eCommerce z systemem ratalnym Banku, minimalizując koszt związany z IT.Jeśli chcesz maksymalnie zautomatyzować obsługę zamówień w eCommerce
W ramach integracji podstawowej:
  • umieścisz na stronie produktu i koszyka symulator, który pokaże Klientowi miesięczną ratę;
  • umieścisz w metodach płatności za zamówienie przycisk, otwierający formularz wniosku o kredyt
  • umieścisz na stronie sklepu logotyp CABP Raty wraz z linkiem do procedury ratalnej
  • zapewnimy powrót z formularza wniosku o kredyt do sklepu internetowego, po podpisaniu umowy przez Klienta
  • O statusach wniosku poinformujemy Cię mailowo.
Aby zautomatyzować proces obsługi zamówień z płatnością ratalną, możesz dodatkowo:
  • Automatycznie otrzymywać informacje o zmianie statusu wniosku kredytowego;
  • Na żądanie pobierać informacje o aktualnym stanie wniosku kredytowego;
  • Automatycznie potwierdzać rezerwację towaru pod zamówienie, bez konieczności logowania się do aplikacji Banku.

W dalszej części zostaną omówione oba powyższe modele, wraz z przykładami kodu w HTML i javascript.

2.3 Wymagania wstępne

  1. Partner po podpisaniu umowy o współpracy otrzymuje m.in. identyfikator sklepu (numer PSP), którym posługuje się w komunikacji z systemem Banku.
  2. Na stronach informacyjnych sklepu musi znajdować się odnośnik do procedury zakupów ratalnych wraz z logotypem CABP Raty. Niezbędne pliki graficzne prezentujące płatność CABP Raty są udostępnione Partnerom na serwerach Banku. Pliki (logotyp CABP Raty i buttony) muszą zostać podlinkowane z serwerów Banku, banery promocyjne umieszczane są lokalnie na stronach sklepów, ze względu na konieczność ich przeskalowania i linkowania do podstron sklepu. Bank zastrzega sobie prawo do modyfikacji elementów graficznych obsługujących CABP Raty. W takim przypadku Partner, po otrzymaniu powiadomienia, powinien zmodyfikować elementy graficzne udostępnione lokalnie.
  3. Partner jest zobowiązany do umieszczenia informacji o współpracy z Bankiem, w miejscu do tego przeznaczonym na stronie sklepu, najczęściej na podstronie Płatności/Raty. Treści do umieszczenia są zamieszczone w rozdziale 5, podrozdział 5.1 Treść na strony sklepów instrukcji.
  4. Na stronach z opisem produktu należy umieścić odnośnik do symulatora kredytowego. Zakup ratalny powinien być dostępny jedynie dla zamówień, które spełniają warunki umowy pomiędzy Partnerem, a Bankiem. W szczególności kupowany produkt musi należeć do dozwolonego asortymentu. Jeżeli towar należy do kategorii niekredytowanej (np. telefony komórkowe) na stronie produktowej symulator nie powinien być dostępny. Jeżeli taki towar jest w koszyku, płatność CABP Raty powinna być zablokowana.
  5. Partner ustala i przekazuje hasło wykorzystywane do komunikacji z Bankiem. Minimalna liczba znaków w haśle to 8, a maksymalna 64. Hasło wykorzystywane jest do uwierzytelnienia sklepu Partnera w kontekście wywołania wniosku kredytowego.
  6. Klient po skompletowaniu zamówienia powinien mieć możliwość wyboru płatności ratalnej. Po jej wyborze mechanizmy sklepu Partnera powinny przesłać podstawowe informacje o zamówieniu do eWniosku (zgodnie z poniższą instrukcją) oraz przekierować przeglądarkę Klienta do eWniosku.
  7. Wdrożenie CABP Rat na sklepie Partnera powinno zostać zaakceptowane przez pracownika Banku przed produkcyjnym uruchomieniem. Dotyczy to zarówno działania mechanizmów (przesyłanie danych) jak i rozwiązań graficznych (np. sposób wykorzystania logotypu CABP Raty i ewentualnie logotypu Banku).
  8. Po podpisaniu umowy o współpracy Partner podaje adres/adresy źródłowe sklepu a także:
    • URL powrotu do sklepu w przypadku pozytywnego zakończenia procesu,
    • URL powrotu do sklepu w przypadku negatywnego zakończenia procesu.

3. Integracja podstawowa

3.1 Strona główna sklepu

3.1.1 Zamieszczenie logotypu

Strona główna sklepu Partnera powinna zawierać logotyp CABP Raty (przykład rys. 1). Zaleca się umieszczenie logotypu w głównym layoucie strony, tak aby był on widoczny również na wszystkich podstronach. Logotyp powinien być widoczny co najmniej w jednym z poniższych miejsc:

  1. na głównej stronie sklepu
  2. w miejscu prezentacji innych operatorów płatności: na stronie głównej (zwykle na dole) lub na dedykowanej podstronie Płatności/Raty

Lista dostępnych logotypów (zamieszczona w serwisie internetowym Banku) znajduje się w załączniku w w rozdziale 5, podrozdział 5.2.3 Przyciski Raty.

Ważne! Prosimy nie kopiować i nie zapisywać przycisków lokalnie. Niedozwolone są jakiekolwiek modyfikacje grafik - podlegają one prawom autorskim Banku.

3.1.2 Przekierowanie do procedury ratalnej

Kliknięcie w logotyp CABP Raty powinno otwierać procedurę ratalną w nowym oknie:
https://ewniosek.credit-agricole.pl/eWniosek/procedure.jsp?PARAM_TYPE=RAT&PARAM_PROFILE=identyfikatorSklepu

Przykładowy adres:
https://ewniosek.credit-agricole.pl/eWniosek/procedure.jsp?PARAM_TYPE=RAT&PARAM_PROFILE=PSP1234567

Przykładowa pozycja logotypu CABP Raty na stronie głównej sklepu

Rys. 1. Przykładowa pozycja logotypu CABP Raty na stronie głównej sklepu.

3.1.3 Przykład kodu

<a href="https://ewniosek.credit-agricole.pl/eWniosek/procedure.jsp?PARAM_TYPE=RAT&PARAM_PROFILE=PSP1234567"><img src="https://ewniosek.credit-agricole.pl/eWniosek/res/CA_grafika/485_duckblue.png"/></a>

3.2 Obliczanie raty dla produktu lub koszyka

W tym rozdziale pokazujemy, w jaki sposób można umożliwić Klientowi obliczenie raty dla danego produktu lub całego zmówienia. Proponujemy 3 sposoby o różnym stopniu zaawansowania, a do Państwa należy decyzja, który sposób wybierzecie.

Ważne jest, aby symulator ratalny otwierał się w nowym oknie. Zabronione jest w tym przypadku korzystanie z technologii iFrame.

3.2.1 Zamieszczenie przycisku "Oblicz ratę"

Najprostszym sposobem jest umieszczenie przycisku „CA Oblicz ratę” . Przycisk należy umieścić na karcie ze szczegółami produktu (przykład rys. 2)

Przykładowa pozycja przycisku „CA Oblicz ratę” na stronie ze szczegółami produktu.

Rys. 2. Przykładowa pozycja przycisku „CA Oblicz ratę” na stronie ze szczegółami produktu.

oraz w koszyku, w miejscu, gdzie wyświetlona jest lista wszystkich zamówionych produktów wraz z kosztami przesyłki (przykład rys. 3).

Przykładowa pozycja przycisku „CA Oblicz ratę” na stronie podsumowania zamówienia.

Rys. 3. Przykładowa pozycja przycisku „CA Oblicz ratę” na stronie podsumowania zamówienia.

Kliknięcie w przycisk powinno skutkować otwarciem w nowym oknie symulatora ratalnego z podstawioną ceną produktu lub wartością zamówienia.

Lista dostępnych przycisków „CA Oblicz ratę” (zamieszczona w serwisie internetowym Banku) znajduje się w rozdziale 5, podrozdział 5.2.2 Przyciski „Oblicz ratę”.
Ważne! Prosimy nie kopiować i nie zapisywać przycisków lokalnie. Niedozwolone są jakiekolwiek modyfikacje grafik - podlegają one prawom autorskim Banku.

Opisany powyżej przycisk „Oblicz ratę” powinien otwierać symulator ratalny, prezentujący Klientowi m.in. szacowaną wysokość raty i RRSO. Adres URL otwierający symulator ratalny ma postać: https://ewniosek.credit-agricole.pl/eWniosek/simulator.jsp?PARAM_TYPE=RAT&PARAM_PROFILE=identyfikatorSklepu&PARAM_CREDIT_AMOUNT=kwota gdzie kwota = cenaProduktu (dla ekranu symulacji) albo kwota = wartoscZamówienia (dla strony z podsumowaniem zamówienia); wartość zamówienia zawiera także koszty przesyłki. Jeżeli na tym etapie niemożliwe jest określenie kosztów przesyłki, to należy przekazać do symulatora jedynie wartość wszystkich zamówionych produktów. W takim przypadku koszty przesyłki nie będą kredytowane.

Cena produktu/wartość zamówienia powinna zostać przekazana w formacie xxx.xx, bez separatorów tysięcy.

Przykładowy adres: https://ewniosek.credit-agricole.pl/eWniosek/simulator.jsp?PARAM_TYPE=RAT&PARAM_PROFILE=PSP1234567&PARAM_CREDIT_AMOUNT=5325.20

3.2.2 Zamieszczenie przycisku prezentującego kwotę raty

Zamiast przycisku „Oblicz ratę” możliwe jest również zamieszczenie przycisku graficznego, który od razu będzie prezentował wysokość raty:

W tym celu na stronie należy umieścić przycisk graficzny, jako parametry podając kredytowaną kwotę, nr PSP i typ obrazka, np.:

http://ewniosek.credit-agricole.pl/eWniosek/button/img.png?creditAmount=5000&posId=PSP1000000&imgType=5 , gdzie:

PrzyciskimgTypeRozmiar
1163x30
2183x38
3248x75
4250x38
5323x75

Przykład kodu

<a href="https://ewniosek.credit-agricole.pl/eWniosek/simulator.jsp?PARAM_TYPE=RAT&PARAM_PROFILE=PSP1234567&PARAM_CREDIT_AMOUNT=5325.20"><img src="https://ewniosek.credit-agricole.pl/widget.html/img.php?creditAmount=5325.20&posId=PSP1234567&imgType=4"/></a>

3.2.3 Obliczanie wysokości raty - pobieranie wyliczeń

Najbardziej zaawansowaną metodą jest pobieranie wyliczeń metodą GET. W tym przypadku należy skorzystać z poniższego adresu i parametrów.

Adres: https://ewniosek.credit-agricole.pl/eWniosek/comm/getInstallment

Parametry:

Nazwa atrybutuDopuszczalne wartościZnaczenieDozwolone NULL
posIdSSSNNNNNNNidentyfikator sklepu w formacie SSSNNNNNNN (np. PSP1234567).Nie
productTypeRATtyp produktuNie
offerIdIdentyfikator oferty (np. 2000000). Gdy brak pola, zostanie wybrana domyślna oferta.Tak
insuranceIdIdentyfikator pakietu ubezpieczeniowego (np. 1000000). Gdy brak pola, zostanie wybrany domyślny pakiet ubezpieczeniowy.Tak
creditAmountKwota kredytu netto rozumiana jako suma kredytowanych towarów po odjęciu wpłaty klienta (liczba dziesiętna z separatorem w postaci kropki np. NNN.NN). W przypadku podania przecinka jako separatora wystąpi wyjątek java.lang.NumberFormatException.Nie
installmentsNoliczba ratNie
respjsonDla wartości „json” wynik obliczeń zostanie zwrócony zgodnie z formatem JSON i będzie zawierał elementy installmentAmount (kwotę ratę), stopę RRSO (roczna rzeczywista stopa oprocentowania) oraz dodatkowe wyliczenia (kwota ubezpieczenia, całkowity koszt kredytu, oprocentowanie nominalne w skali roku, prowizja, całkowita kwota kredytu, całkowita kwota odsetek, całkowity koszt ubezpieczenia, całkowita kwota do zapłaty). W przypadku jego braku zostanie wysłana kwota raty w postaci tekstowej (123.45). Tak

Przykład (dla sklepu PSP1234567 oraz kwocie kredytu 1234,56):

https://ewniosek.credit-agricole.pl/eWniosek/comm/getInstallment?creditAmount=1234.56&posId=PSP1234567&productType=RAT
Odpowiedź: 143.68
Jeśli odpowiedź ma przyjść w formacie JSON:
https://ewniosek.credit-agricole.pl/eWniosek/comm/getInstallment?creditAmount=1234.56&posId=PSP1234567&productType=RAT&resp=json
Odpowiedź: {"instAmount":"155.01","rrso":"66.72","insuranceFee":"0.00","totalCreditCost":"315.53","interestRate":"10.00","commisionAmount":"246.79","totalCreditAmount":"1234.56","totalInterestAmount":"68.74","totalInsuranceCost":"0.00","totalAmountToPay":"1550.09"}

3.3 Złożenie zamówienia przez Klienta sklepu z metodą płatności „CABP Raty”

Po wyborze płatności CABP Raty oraz złożeniu zamówienia, skrypt sklepu powinien wysłać szczegóły zamówienia do eWniosku, a tym samym zainicjować formularz wniosku o kredyt ratalny.

3.3.1 Tworzenie formularza wniosku kredytowego

Aby rozpocząć wnioskowanie o kredyt ratalny, należy wysłać dane zamówienia na adres https://ewniosek.credit-agricole.pl/eWniosek/simulator_u.jsp.

Właściwości wywołania:

  • Encoding: UTF-8
  • Http-Method: POST
  • Content-Type: application/x-www-form-urlencoded

Przykłady kodowania:

  • nazwa towaru „---> Regulacja roweru” powinno zostać przesłana jako „---%3E%20Regulacja%20roweru”.
  • nazwa towaru „ładna pralka!” powinna zostać przesłana jako „%C5%82adna%20pralka”.
  • nazwa towaru „Rower MTB 29"” powinna zostać przesłana jako „Rower%20MTB%2029%22”.

W formularzu POST należy przesłać następujące parametry:

ParametrOpisM/O*Dopuszczalne wartości / wyrażenia regularneInformacje dodatkowe
PARAM_TYPETyp kredytuM^[a-zA-Z]{3}$
W tym przypadku stała wartość ‘RAT’.
Wartość stała ‘RAT’
PARAM_PROFILEIdentyfikator sklepuM^PSP[0-9]{7}$
Np. PSP1234567
Identyfikator Partnera nadany przy podpisywaniu umowy współpracy z Bankiem.
POST_ATTRStała technicznaMWartość stała ‘1’Wartość stała ‘1’
email.addressemail KlientaM/^[a-z\d]+[\w\d.-]*@(?:[a-z\d]+[a-z\d-_]+\.){1,5}[a-z]{2,4}$/i 
cart.orderNumbernumerZamowieniaM^.{0,30}$Jest wykorzystywany przy powrocie Klienta z wniosku kredytowego do sklepu.
PARAM_CREDIT_AMOUNTKwota kredytuM^\d{1,5}((\.|)\d{1,2})?$Separator dziesiętny w kwocie stanowi kropka, kwota powinna być zapisana bez spacji, np. „2550.00”.
PARAM_AUTHRodzaj funkcji szyfrującejM^[1-2]{1}$1=SHA 256
2=MD5
PARAM_HASHSkrót (hash)M^[A-Fa-f0-9]{32,64}$Skrót wyliczony według podanego poniżej algorytmu - służy do uwierzytelnienia Partnera. Patrz: Wyliczanie skrótu do uwierzytelnienia.
randomizerLosowa wartośćM^.{0,36}$Wchodzi w skład skrótu
offerIdidentyfikator oferty kredytowejO^\d{10}$Jeżeli pole nie zostanie wypełnione, Klient po otwarciu formularza wnioskowego będzie mógł wybrać dowolną ofertę kredytową spośród dostępnych dla danego sklepu. Jeżeli jednak decyzja o wyborze oferty kredytowej dla danego produktu/koszyka ma być po stronie sklepu, wówczas należy uzupełnić to pole, podając numer oferty specjalnej otrzymany od reprezentanta Banku. Należy pamiętać, że dostępne oferty mogą się zmienić. Informacje o nowych ofertach i ich numerach są przekazywane Partnerowi przez reprezentanta Banku.
cart.itemName1Nazwa towaru M^.{0,40}$ 
cart.itemQty1Liczba sztuk towaru 1M^([1-9]|[1-9][0-9])$ 
cart.itemPrice1Cena towaru 1M^\d{1,5}\.\d{1,2})?$Nie przyjmujemy towarów w cenie 0.00 W przypadku darmowej dostawy, darmowych gratisów i innych towarów z ceną 0PLN - nie ma potrzeby dodawania takich pozycji do wniosku kredytowego.
cart.itemNameX
cart.itemQtyX
Cart.itemPriceX…
Dla każdego towaru w zamówienia należy wysłać zestaw parametrów jak powyżej (cart.itemName1, cart.itemName2… cart.itemNameX). X to liczba z zakresu 1-20. Suma wartości itemQty dla wszystkich towarów, nie może przekraczać 99.
Przykład:
itemQty1 = 20, itemQty2 = 30
20+30<99

* M - Mandatory, O - Optional

Koszty przesyłki, o ile występują, powinny zostać przekazane jako dodatkowy towar o nazwie „Przesyłka”.
W przypadku udzielenia rabatów rekomendujemy przekazanie ceny pojedynczych towarów już po uwzględnieniu rabatów. Opcjonalnie możliwe jest przekazanie pierwotnych cen towarów i dodatkowego towaru o nazwie „bonus” z ujemną ceną.

Bank zakłada, że Partner jest w stanie wywiązać się z umówionego z Klientem terminu dostarczenia towaru. Dlatego, w modelu podstawowym integracji, potwierdzenie rezerwacji towaru następuje automatycznie. Istnieje jednak możliwość włączenia ręcznego potwierdzenia rezerwacji towaru w systemie eSprzedaż. W tym celu należy zgłosić takie zapotrzebowanie do Opiekuna Handlowego.

3.3.2 Wyliczanie skrótu do uwierzytelnienia

Do wyliczenia skrótu PARAM_HASH należy zbudować ciąg tekstowy z poniższych parametrów, a następnie wyliczyć skrót funkcją SHA 256 (alternatywnie można użyć funkcji md5 - niezalecane). W przypadku kiedy któryś z parametrów jest pusty, pole pomijamy.

Skrót jest wyliczany z następujących wartości

PozycjaNazwa atrybutuŹródło danych
1Identyfikator sklepu PARAM_PROFILE
2Typ produktuPARAM_TYPE
3Rodzaj walidacjiPARAM_AUTH
4Sumaryczna cena towarówcreditInfo.creditAmount
5Cena pierwszego towaru z koszykacart.itemPrice1
6Wartość losowarandomizer
7Hasło sklepuparametryzacja sklepu -> hasło

Przykład:

ID sklepu PSP1234567, funkcja SHA 256, kwota zamówienia 26,07 PLN. cena pierwszego towaru 1,07 PLN, hasło „haslo”
Ciąg tekstowy: PSP1234567RAT126.071.07haslo
Wyliczona wartość hasha to 56519295406871A913DEE6F4523A19268438AECB67F222F2F0F89A449EEED068

3.3.3 Przykład kodu

Formularz (HTML):

<form action="https://ewniosek.credit-agricole.pl/eWniosek/ewniosek.jsp" name="cartFormPost" method="post" target="_blank" class="pure-form pure-form-aligned"><input type="hidden" name="PARAM_TYPE" value="RAT"/><input type="hidden" name="PARAM_PROFILE" value="PSP1234567"/><input type="hidden" name="POST_ATTR" value="1"/><input type="hidden" name="email.address" value="example@credit-agricole.pl"/><input type="hidden" name="cart.orderNumber" value="zamowienie_234234"/><input type="hidden" name="PARAM_CREDIT_AMOUNT" value="3600.00"/><input type="hidden" name="PARAM_AUTH" value="1"/><input type="hidden" name="PARAM_HASH" value="00015b14c28c2951f6d628098ce6853e14300f1b7d6d985e18d508f9807f44d8"/><input type="hidden" name="randomizer" value="84j34rf30r2j3r23r3j"/><input type="hidden" name="offerId" value="847584"/><input type="hidden" name="cart.itemName1" value="Szafa obrotowa"/><input type="hidden" name="cart.itemQty1" value="1"/><input type="hidden" name="cart.itemPrice1" value="1200.00"/><input type="hidden" name="cart.itemName2" value="Drzwi rozkładane"/><input type="hidden" name="cart.itemQty2" value="1"/><input type="hidden" name="cart.itemPrice2" value="1200.00"/></form>

Wyliczanie hasha:
Ważne! Ze względu na wymaganie użycia jawnej postaci hasła do wyznaczenia skrótu, kod należy wykonać wyłącznie po stronie serwera. Do frontendu powinny zostać przekazane jedynie zmienne hash, randomizer oraz hashTypeNum.

PHP 7:

<?php    $psp="PSP1234567";    $password='3#G4^haslo$4*9%';    $orderAmount=584.37;    $firstProductName='Szafa obrotowa';    $firstProductPrice=584.37;    $applType="RAT"    $hashType='sha256';    $hashTypeNum=$hashType=='sha256'?'1':'2';    $randomizer=bin2hex(random_bytes(16));    $toHash=$psp.$applType.$hashTypeNum.number_format($orderAmount,2,'.','').$firstProductName.number_format($firstProductPrice,2,'.','').$randomizer.$password;    $hash=hash($hashType,$toHash);?>

JavaScript (z wykorzystaniem Forge.js 0.7):

var forge = require('node-forge');var psp ="PSP1234567";var password ='3#G4^haslo$4*9%';var orderAmount =584.37;var firstProductName ='Szafa obrotowa';var firstProductPrice =584.37;var applType ="RAT"var hashType ='sha256';var hashTypeNum = hashType =='sha256'?'1':'2';var randomizer = forge.util.bytesToHex(forge.random.getBytesSync(16));var toHash = psp + applType + hashTypeNum + orderAmount.toFixed(2)+ firstProductName + firstProductPrice.toFixed(2)+ randomizer + password;var digest = forge.md[hashType].create(); digest.update(toHash);var hash = digest.digest().toHex();

3.4 Powrót na stronę sklepu z formularza wnioskowego

Partner powinien przygotować strony obsługujące powroty Klienta z eWniosku. Dotyczy to zarówno powrotu pozytywnego (strona, na którą zostanie przekierowany Klient sklepu po podpisaniu umowy o kredyt), jak i negatywnego (strona, na którą zostanie przekierowany Klient sklepu jeśli zrezygnuje z wypełniania wniosku ratalnego lub otrzyma odmowę udzielenia kredytu). Adresy stron powinny zostać przekazane do Banku po podpisaniu umowy o współpracy. Szczegóły opisane są w rozdziale 6, podrozdział 6.4 Co to są strony powrotne i jak je przygotować?

Przykład:
Do URL powrotnego zostanie doklejony parametr orderNumber, zawierający numer zamówienia ze sklepu internetowego:
http://sklep15.raty.intenso.pl/success/index.php?orderNumber=1234234

Strony powrotu powinny zawierać co najmniej następujące informacje:

  1. Dla powrotu pozytywnego:
    Umowa wpłynęła do naszego systemu. Po zakończeniu weryfikacji potwierdzenie otrzymasz w kolejnym e-mailu.
  2. Dla powrotu negatywnego:
    Wniosek został odrzucony. Skontaktuj się ze sklepem i wybierz inną metodę płatności.

4. Integracja rozszerzona

4.1 Obiór informacji o zmianie statusu wniosku

W celu odbierania informacji o zmianach statusu wniosków kredytowych należy utworzyć webserwis po stronie Partnera oraz przekazać do Banku adres URL, który zostanie wykorzystany do komunikacji. Webserwis powinien być zgodny z ExchangeReceiver.wsdl.

Nazwa atrybutuZnaczenieDopuszczalne wartości
applNumberCAnumer wniosku w systemie eSprzedażMax40Text ^.{0,40}$
applNumberExtnumer zamówienia nadany przez sklepUnboundedText
statusCAidentyfikator statusu np. S60Max4Text
statusCAInfoopis statusu, np. Wniosek rozpatrzony pozytywnie.UnboundedText
modificationDatedata zlecenia wysłania komunikatu.ISODateTime

4.1.1 Statusy wniosków

KodOpis
E01Wniosek anulowany. Posiadasz już jeden wniosek w trakcie rozpatrywania.
S20Wniosek w trakcie realizacji - pozytywna decyzja kredytowa. Odbiór towaru i finalizacja wniosku w sklepie stacjonarnym.
S30Wniosek rozpatrywany. Wydłużona decyzja kredytowa.
S50Umowa przekazana Klientowi do podpisu.
S55Wniosek rozpatrzony pozytywnie. Oczekiwanie na potwierdzenie rezerwacji towaru
S56Pozytywna wstępna decyzja kredytowa. Można potwierdzać rezerwację towaru.
S57Warunkowa decyzja kredytowa.
S60Umowa podpisana przez Klienta, wniosek zatwierdzony.
S70Wniosek rozpatrzony pozytywnie. Potwierdzono rezerwację towaru.
S90Odmowa udzielenia kredytu lub Klient zrezygnował z wniosku.

Rys. 4. Sekwencja wysyłki komunikatów o zmianie statusu wniosku kredytowego.

Szczegółowy opis wysyłki komunikatów znajduje się poniżej.

  1. Pierwsza informacja o zmianie statusu zostanie wysłana do Partnera po wysłaniu przez Klienta wniosku do decyzji kredytowej. Bank wyśle wówczas jeden z następujących statusów:
    • E01 - wniosek odrzucony, gdyż Klient posiada już wniosek o kredyt ratalny w trakcie rozpatrywania
    • S56 - wstępna pozytywna decyzja kredytowa; w tym momencie nie można jeszcze wysyłać towaru do Klienta. Należy jedynie zarezerwować towar na potrzeby obsługi transakcji. Trzeba mieć jednak na uwadze, że jest to moment w procesie przed przedstawieniem wstępnej umowy Klientowi do podpisu.
    • S57 - warunkowa decyzja kredytowa (konieczna zmiana liczby rat lub wpłata własna); wówczas Klient podejmuje decyzję - albo zmienia parametry kredytu i ponownie wysyła wniosek do decyzji (wówczas po pozytywnej decyzji kredytowej wyślemy status S56), albo rezygnuje z kredytu ratalnego (S90).
    • S90 - negatywna decyzja kredytowa, rezygnacja Klienta, rezygnacja Partnera, wniosek odrzucony.
    • S20 - wstępna pozytywna decyzja kredytowa dla wniosków z odbiorem towarów w sklepie stacjonarnym; dalsze procesowanie wniosku w sklepie, proces zdalny zostaje zakończony.
  2. W momencie przekazania umowy do podpisania przez Klienta (a więc niezwłocznie po wydaniu wstępnej pozytywnej decyzji kredytowej) Bank wyśle status S50. Oznacza to, ze Klient jest w trakcie procesowania wniosku (identyfikacja, ew. załączenie potrzebnych dokumentów i zdalne podpisanie umowy kodem SMS).
  3. Po podpisaniu umowy przez Klienta następuje sprawdzenie, czy Partner potwierdził rezerwację towaru (o ile jest to wymagane) dla zamówienia (dostarczył dane o towarach, manualnie w systemie eSprzedaż lub automatycznie, jeżeli wybrano taki model integracji). W zależności od wyników weryfikacji zostaną wysłane statusy:
    • S55 - oznaczający brak danych o towarach. Należy wówczas niezwłocznie je uzupełnić. Wniosek nie będzie kontynuowany do czasu uzupełnienia przez Partnera brakujących danych.
    • S70 - oznaczający potwierdzenie, ze Bank otrzymał wszelkie niezbędne dane o towarach.
  4. Jeśli potwierdzono rezerwację towarów dla zamówienia, a Klient dopełnił wszelkich formalności wraz z podpisaniem umowy, Bank wyśle status S60, którego otrzymanie oznacza zatwierdzenie umowy kredytu, a tym samym możliwość wysyłki towaru do Klienta.
  5. W przypadku rezygnacji Klienta z wniosku na dowolnym etapie procesu, Bank wyśle status S90, oznaczający zamknięcie wniosku.
  6. W przypadku powiadomienia typu POST od Partnera oczekujemy w treści odpowiedzi „OK”. Jeśli po wywołaniu powiadomienia Bank nie otrzyma w odpowiedzi „OK”, to uznaje, że powiadomienie się nie udało i w rezultacie po jakimś czasie próbuje ponownie wysłać tę samą wiadomość. Próbę ponawiamy 20 razy.

4.1.2 WSDL/XSD

WSDL dla exchangeReceiver

4.2 Odpytywanie o status wniosku

Prócz odbierania informacji o statusach wniosku za pomocą ExchangeReceivera (rozdział powyżej), sklep ma możliwość aktywnego odpytania o status wniosku na każdym jego etapie. W tym celu należy skorzystać z usługi restowej getApplicationStatus (POST).

Zapytanie:

Nazwa atrybutuZnaczenieDopuszczalne wartości
posId Numer sklepu (PSP) Regex ^PSP[0-9]{7}$
order id Numer zamówienia ze sklepu internetowegoRegex ^.{0,30}$
applicationNo Numer wniosku z systemu eSPrzedaż (CABP) Regex ^\d{16}$

Przykład:
https://ewniosek.credit-agricole.pl/eWniosek/comm/getApplicationsStatus?posId=PSP1070000&orderId=46600000&resp=json

Odpowiedź (w formacie JSON):

Nazwa atrybutuZnaczenie
applicationFoundCzy znaleziono wniosek (true/false). Nie znalezienie wniosku może oznaczać także, że dla wniosku nie wydano jeszcze żadnej decyzji kredytowej.
statusDescriptionOpis statusu
exchangeStatusCodeStatus wniosku (zgodnie z tabelą w rozdziale Statusy wniosków)
posIdNumer sklepu (PSP)
orderIdNumer zamówienia ze sklepu internetowego

Przykład:
{"applicationFound":true,"statusDescription":"Wniosek rozpatrzony pozytywnie. Oczekiwanie na potwierdzenie rezerwacji towaru.","exchangeStatusCode":"S55","posId":" PSP1070000","orderId":"46600000"}

Statusy opisane są w rozdziale Statusy wniosków. W przypadku, kiedy zostanie zadane pytanie o status wniosku, zanim zostanie on wysłany do decyzji kredytowej, zostanie zwrócona informacja o wniosku, bez wypełnienia pola exchangeStatusCode, np.:
{"applicationFound":true,"statusDescription":"Wniosek w trakcie realizacji.","exchangeStatusCode":"","posId":"PSP1234567","orderId":"02233445566"}

5. Załączniki

5.1 Treść na strony sklepów

Kupuj wygodnie, wybierz raty Banku Credit Agricole.

Sprawdź jakie to proste:

  • wybierz produkt który Cię interesuje
    gdy wartość koszyka przekroczy 300 zł skorzystaj z rat Banku Credit Agricole,
  • wypełnij wniosek online i poczekaj na decyzję kredytową,
  • przelej 1 zł i załącz zdjęcie dowodu osobistego,
  • potwierdź zawarcie umowy kodem z SMS,
  • umowę otrzymasz na swoją skrzynkę e-mail,
    a sklep zacznie realizować Twoje zamówienie.

Poniżej zgodnie z art. 7 ust. 5 ustawy o kredycie konsumenckim Partner - pośrednik zobowiązany jest do podania nazw wszystkich pośredników, z którymi współpracuje. Proponowana treść:

(Nazwa Partnera) oświadcza, iż na podstawie zawartych umów z Credit Agricole Bank Polska S.A. jest upoważniony do wykonywania czynności faktycznych związanych z zawarciem/zmianą umów kredytu na zakup towarów i usług.

5.2 Logotypy i przyciski do zamieszczenia na stronie sklepu

5.2.1 Przyciski „RRSO 0%”

http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/aprc_sm_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/aprc_md_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/aprc_lg_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/aprc_md_full.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/aprc_lg_full.png

5.2.2 Przyciski „Oblicz ratę”

http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/calc_sm_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/calc_md_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/calc_lg_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/calc_md_full.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/calc_lg_full.png

5.2.3 Przyciski „Raty”

http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/inst_md_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/inst_lg_comp.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/inst_md_full.png
http://ewniosek.credit-agricole.pl/eWniosek/res/buttons/inst_lg_full.png

5.2.4 Przyciski „Wypełnij wniosek”

https://ewniosek.credit-agricole.pl/eWniosek/res/buttons/fill_md_comp.png
https://ewniosek.credit-agricole.pl/eWniosek/res/buttons/fill_md_full.png

6. FAQ

6.1 Jak kodować nazwy towarów w koszyku?

Tekst przesyłany w formularzu POST musi być kodowany, zgodnie ze standardami dla formularzy HTML: UTF8 i „URL Encoded Form”.

  • Encoding: UTF-8
  • Http-Method: POST
  • Content-Type: application/x-www-form-urlencoded

Poniżej przykładowe nazwy towarów z zastosowaniem powyższego kodowania:

  • nazwa towaru „---> Regulacja roweru” powinno zostać przesłana jako „---%3E%20Regulacja%20roweru”.
  • nazwa towaru „ładna pralka!” powinna zostać przesłana jako „%C5%82adna%20pralka!”
  • nazwa towaru „Rower MTB 29"” powinna zostać przesłana jako „Rower%20MTB%2029%22”.

6.2 Jak przesyłać koszty przesyłki?

Koszty przesyłki, o ile występują, powinny zostać przekazane jako dodatkowy towar o nazwie „Przesyłka”. Np.:

cart.itemName1=[MonitorGMASTERG2530HSU],
cart.itemPrice1=[599.00],
cart.itemQty1=[1],
cart.itemName2=[Przesylka],
cart.itemPrice2=[19.00],
cart.itemQty2=[1],

Jeżeli koszty przesyłki nie zostaną przesłane jako pozycja na liście towarów, nie będą kredytowane. Należy jednak pamiętać, aby w takiej sytuacji nie uwzględniać kosztów przesyłki w całkowitej kwocie zamówienia, gdyż eWniosek zgłosi błąd w sytuacji, gdy suma cen towarów będzie mniejsza niż całkowita kwota zamówienia.

6.3 Jak obsłużyć rabaty?

W przypadku udzielenia rabatów rekomendujemy przekazanie ceny pojedynczych towarów już po uwzględnieniu rabatów.

Np. Jeżeli towar1 kosztuje 500 zł, towar2 kosztuje 1000 zł i Klient wykorzystuje kod rabatowy na 10% zniżki, przesyłamy:

cart.itemName1=[towar1],
cart.itemPrice1=[450.00],
cart.itemQty1=[1],
cart.itemName2=[towar2],
cart.itemPrice2=[900.00],
cart.itemQty2=[1],

Opcjonalnie możliwe jest przekazanie pierwotnych cen towarów i dodatkowego towaru o nazwie „bonus” z ujemną ceną:

cart.itemName1=[towar1],
cart.itemPrice1=[500.00],
cart.itemQty1=[1],
cart.itemName2=[towar2],
cart.itemPrice2=[1000.00],
cart.itemQty2=[1],
cart.itemName3=[bonus],
cart.itemPrice3=[-150],
cart.itemQty3=[1],

6.4 Co to są strony powrotne i jak je przygotować?

Po podpisaniu umowy o kredyt ratalny Klientowi wyświetla się strona z podziękowaniami oraz z przyciskiem umożliwiającym powrót do sklepu internetowego, w którym dokonał zakupu.

Po naciśnięciu tego przycisku, eWniosek przekieruje Klienta z powrotem na stronę sklepu na adres, który został podany jako adres powrotu pozytywnego, po podpisaniu umowy o współpracy z Bankiem. Sklep powinien wyświetlić na niej tekst wskazany w rozdziale 3.4 Powrót na stronę sklepu z formularza wnioskowego:

Jako parametr wywołanego adresu będzie przekazany numer zamówienia ze sklepu.

Podobnie po decyzji negatywnej lub rezygnacji Klienta z wypełniania wniosku, w formularzu wnioskowym zostanie wyświetlony następujący komunikat:

Po kliknięciu na przycisk „Powrót do sklepu” Klient powinien zostać przeniesiony do sklepu na stronę powrotu negatywnego. Sklep powinien wyświetlić na niej tekst wskazany w rozdziale 3.4 Powrót na stronę sklepu z formularza wnioskowego:

Jako parametr wywołanego adresu będzie przekazany numer zamówienia ze sklepu. Dzięki temu po stronie eCommerce będzie możliwe oprogramowanie powrotu do zamówienia i wyboru innej metody płatności.

Proponowane treści do wyświetlenia na stronach powrotnych zamieszczone są w rozdziale 3.4 Powrót na stronę sklepu z formularza wnioskowego.

6.5 Co to jest URL źródłowy i do czego służy?

Po podpisaniu umowy z Bankiem i nadaniu unikalnego numeru PSP, sklep podaje Bankowi tzw. URL źródłowy (lub listę URLi źródłowych). Są to adresy domen sklepów internetowych.
Po stronie Banku te adresy są zarejestrowane i weryfikowane podczas otrzymywania wniosków ze sklepów internetowych. Wnioski z adresów URL niezarejestrowanych w Banku nie będą przyjmowane.

Oferta banku

Twoja opinia
 
Nowy wygląd strony www