Kako teče online kartična transakcija: od checkouta do potvrde plaćanja
Blog • Web razvoj • • 8 min čitanja

Kako teče online kartična transakcija: od checkouta do potvrde plaćanja

Autor Autorski tim · DA. Diџital agencija
Ažurirano 29.09.2026
Vreme čitanja 8 min
Sadržaj Pregledajte teme u tekstu

Tok kartične transakcije online počinje na checkoutu, ali se ne završava odmah kada kupac vidi poruku da je plaćanje uspešno. Podaci ili token sa checkouta prosleđuju se payment provideru, zatim banci prihvatiocu, kartičnoj mreži i banci koja je izdala karticu. Odgovor se vraća kroz isti lanac, dok vaš sistem posebno mora da obradi potvrdu plaćanja i ažurira porudžbinu.

Najvažnija praktična razlika je između autorizacije, potvrde statusa u aplikaciji i poravnanja sredstava. Autorizacija znači da je transakcija odobrena ili odbijena. Porudžbina se u vašem sistemu pouzdano označava kao plaćena tek kada backend dobije verifikovan događaj od payment providera, a novac se na račun trgovca prenosi kasnije, prema pravilima konkretnog procesora.

Ko učestvuje u online kartičnoj transakciji

Pre nego što se prikaže sam tok, korisno je razdvojiti uloge:

  • Kupac i browser unose podatke kartice ili koriste sačuvani način plaćanja.
  • Trgovac prikazuje proizvode, formira iznos i odlučuje kada će isporučiti robu ili aktivirati uslugu.
  • Checkout komponenta može biti deo stranice trgovca, iframe, modal ili hosted payment page payment providera.
  • Payment service provider obrađuje zahtev za plaćanje i povezuje trgovca sa bankarskom infrastrukturom.
  • Acquirer, odnosno banka prihvatilac, obrađuje kartične transakcije u ime trgovca.
  • Kartična mreža, kao što su Visa ili Mastercard, prosleđuje zahtev između prihvatioca i banke izdavaoca.
  • Issuer, odnosno banka izdavalac, proverava karticu, raspoloživost sredstava i pravila za odobravanje transakcije.

U praksi payment provider može objediniti više ovih uloga. Zbog toga korisnik često vidi samo naziv jednog servisa, iako se iza zahteva odvija komunikacija kroz nekoliko sistema.

Tok kartične transakcije online: korak po korak

1. Checkout formira zahtev za plaćanje

Kupac na checkoutu potvrđuje korpu, adresu, način isporuke i iznos. Sistem trgovca treba da formira jedinstvenu narudžbinu sa jasnim identifikatorom, valutom i konačnim iznosom. Taj iznos ne bi trebalo slepo preuzimati iz browsera; backend treba ponovo da izračuna cenu na osnovu proizvoda, poreza, popusta i dostave.

U ovoj fazi određuje se i tip toka: jednokratno plaćanje, rezervacija sredstava pa kasnija naplata, pretplata ili eventualno plaćanje kroz redirect. To nije samo UX odluka. Izabrani model utiče na statusne oznake, refundacije, čuvanje tokena i način obrade neuspešnih pokušaja.

2. Podaci kartice se prikupljaju i štite

Kada kupac unese broj kartice, datum isteka i sigurnosni kod, podaci se ne bi smeli nepotrebno slati kroz vaš server. U zavisnosti od integracije, checkout ih prosleđuje direktno payment provideru ili ih zamenjuje tokenom. Token predstavlja referencu koju provider može da koristi za konkretnu naplatu, dok trgovac ne mora da čuva puni broj kartice.

Hosted checkout i providerova ugrađena komponenta često smanjuju količinu kartičnih podataka koju dodiruju vaša aplikacija i infrastruktura. To ne znači da su bezbednost i obaveze trgovca automatski rešene, ali arhitektura može značajno uticati na obim sistema koji ulazi u PCI DSS razmatranje. Više o toj odluci objašnjeno je u tekstu PCI DSS scope i smanjenju količine kartičnih podataka.

3. Kreira se payment intent ili ekvivalentan objekat

Moderni payment sistemi obično prvo kreiraju objekat koji predstavlja nameru plaćanja. On sadrži iznos, valutu, referencu narudžbine, izabrani način plaćanja i početni status. Naziv i tačan model razlikuju se po provideru, ali je princip isti: transakcija dobija identitet i može da prođe kroz više stanja.

To je važno zato što online plaćanje može da bude asinhrono. Kupac može napustiti redirect, banka može zahtevati dodatnu autentikaciju, a odgovor providera može stići nakon što je browser već promenio stranicu. Sistem koji se oslanja samo na jedan trenutni odgovor iz checkouta teško može pouzdano da prati takve situacije.

4. Pokreće se autentikacija kupca

U zavisnosti od kartice, zemlje, rizika i pravila izdavaoca, kupac može biti preusmeren na dodatnu autentikaciju. Kod 3-D Secure toka to može biti potvrda u mobilnoj aplikaciji, jednokratni kod ili drugi postupak koji određuje banka izdavalac.

Autentikacija nije isto što i konačna autorizacija. Ona potvrđuje dodatni element identiteta ili legitimnosti pokušaja, ali nakon nje transakcija i dalje mora da prođe kroz autorizacioni proces. Kako se 3-D Secure 2 uklapa u checkout, koje podatke koristi i gde može da prekine tok objašnjeno je u vodiču 3-D Secure 2 i autentikacija kupca.

5. Zahtev putuje do banke izdavaoca

Payment provider ili acquirer prosleđuje zahtev kroz kartičnu mrežu banci koja je izdala karticu. Issuer proverava više elemenata, između ostalog:

  • da li je kartica važeća i omogućena za online plaćanja;
  • da li postoje raspoloživa sredstva ili dovoljan kreditni limit;
  • da li se iznos, valuta i trgovac uklapaju u pravila transakcije;
  • da li postoje indikatori rizika ili neuobičajenog ponašanja;
  • da li je potrebna dodatna autentikacija.

Rezultat može biti odobrenje, odbijanje ili status koji zahteva dodatnu radnju. Poruka o odbijanju nije uvek dovoljno precizna da bi trgovac znao tačan razlog, pa korisnički interfejs treba da prikaže neutralnu i korisnu instrukciju: pokušaj ponovo, proveri podatke ili izaberi drugi način plaćanja.

6. Transakcija se autorizuje ili odbija

Autorizacija je odluka da se transakcija odobri i, kod određenih modela, da se sredstva rezervišu. Ona sama po sebi ne znači da je novac već prenet trgovcu. Ako je naplata podešena kao automatsko potvrđena, payment provider može odmah preći na capture. Ako se koristi odvojena autorizacija i naplata, trgovac mora eksplicitno da potvrdi capture u predviđenom roku.

Razlika je naročito važna kod proizvoda koji se šalju kasnije, rezervacija ili usluga čija dostupnost se proverava naknadno. Pre implementacije treba utvrditi šta se dešava kada autorizacija istekne, kada capture bude odbijen i da li se rezervacija automatski oslobađa.

7. Browser dobija povratni odgovor, ali backend nije završen

Kupac može biti vraćen na success, failure ili pending stranicu. Ta stranica je važna za korisničko iskustvo, ali ne bi trebalo da bude jedini izvor istine. Browser može izgubiti vezu, korisnik može zatvoriti prozor, a napadač može pokušati da pozove URL potvrde bez stvarnog plaćanja.

Zato backend treba da primi webhook ili drugi server-to-server događaj od payment providera, proveri njegov potpis i poveže ga sa očekivanom narudžbinom. Tek nakon provere treba promeniti status iz „u obradi“ u „plaćeno“, izdati digitalni proizvod, poslati potvrdu ili pokrenuti isporuku.

Koje statuse treba modelovati

Jednostavan model sa samo „plaćeno“ i „nije plaćeno“ često nije dovoljan. Nazivi zavise od providera, ali poslovni sistem obično mora da razlikuje sledeće situacije:

StatusŠta znači za trgovca
Payment initiatedZahtev je kreiran, ali nema potvrde da je naplata završena.
Requires actionKupac mora da završi dodatnu autentikaciju ili drugu radnju.
AuthorizedIzdavalac je odobrio zahtev, ali capture ili konačna naplata mogu biti odvojeni.
Paid / capturedProvider je potvrdio naplatu prema definisanom modelu.
FailedPokušaj nije uspeo; razlog može biti privremen ili konačan.
RefundedSredstva su vraćena delimično ili u celosti, prema statusu refundacije.

Webhook obrada treba da bude idempotentna. Ako isti događaj stigne dva puta, sistem ne sme dvaput da kreira porudžbinu, pošalje digitalni sadržaj ili evidentira prihod. Takođe je korisno čuvati audit trag: identifikator narudžbine, identifikator payment objekta, primljene događaje, vreme obrade i rezultat validacije.

Šta se dešava posle potvrde plaćanja

Nakon uspešne naplate sledi clearing i settlement, odnosno obračun i poravnanje između učesnika. Trgovac ne mora da vidi svaki interni korak, ali treba da zna da se stanje na dashboardu providera, stanje narudžbine i stanje novca na bankovnom računu ne moraju promeniti istog trenutka.

Kasnije mogu nastati refundacija, dispute ili chargeback. Refundacija je povraćaj koji pokreće trgovac ili provider, dok chargeback uključuje spor koji kupac pokreće kroz banku. Zato evidencija narudžbine ne treba da se zasniva samo na početnom success odgovoru. Finansijski status mora moći da se menja i nakon isporuke.

Kod pretplata se na ovaj tok dodaju budući pokušaji naplate, istek kartice, ažuriranje payment metoda i ponovni pokušaji. To je zasebna arhitektonska tema; detaljniji pregled nalazi se u tekstu Recurring payments: arhitektura pretplata i automatskih naplata. Za neuspela ponavljanja naplate važni su i pravila komunikacije sa korisnikom, o čemu govori vodič Failed payments i dunning.

Hosted checkout ili integrisana forma?

Ne postoji univerzalno najbolja varijanta. Hosted checkout prebacuje korisnika na stranicu providera ili koristi njegovu gotovu komponentu. Prednosti su manja količina kartičnih podataka u vašoj infrastrukturi, jednostavniji početak i manje elemenata koje sami održavate. Trade-off je manja kontrola nad izgledom, navigacijom i nekim detaljima checkouta.

Integrisana forma ili SDK daje više kontrole nad korisničkim tokom i može se bolje uklopiti u složen checkout. Istovremeno zahteva pažljiviju implementaciju, testiranje promena u browseru, obradu grešaka, zaštitu ključeva i jasnu granicu između frontend i backend odgovornosti.

Odluka treba da se zasniva na potrebama toka, a ne samo na tome kako forma izgleda. Praktičan pregled celokupne tehničke odluke i povezivanja payment servisa sa sajtom nalazi se na stranici integracija platnih kartica. Ako se plaćanje uvodi kao deo novog ili redizajniranog korisničkog toka, relevantna je i izrada sajta, posebno kada checkout zavisi od strukture kataloga, naloga i narudžbina.

Kontrolna lista za pouzdan tok plaćanja

  • Backend sam izračunava iznos i valutu, umesto da veruje vrednostima iz browsera.
  • Svaka narudžbina ima jedinstven interni identifikator i vezu sa payment objektom.
  • Podaci kartice se prikupljaju kroz odobrenu providerovu komponentu ili hosted tok kad je to odgovarajuće.
  • Frontend razlikuje neuspeh, čekanje i zahtev za dodatnom autentikacijom.
  • Webhook potpis se proverava, a obrada događaja je idempotentna.
  • Isporuka robe ili usluge pokreće se na osnovu verifikovanog statusa, ne samo URL-a uspeha.
  • Postoje testovi za odbijanje kartice, 3-D Secure, prekid redirecta, duplirani webhook i refundaciju.
  • Administracija može da pronađe transakciju po broju narudžbine i identifikatoru providera.
  • Čuvaju se samo podaci koji su potrebni za poslovni proces i podršku.

Pravi sledeći korak nije da se odmah izabere dugme ili forma, već da se nacrta stanje kroz koje prolazi jedna narudžbina: od kreiranja zahteva, preko autentikacije i autorizacije, do webhook potvrde, isporuke i eventualne refundacije. Kada su te granice jasne, izbor payment providera i način integracije mogu da se procene prema konkretnom procesu, a ne prema izolovanom checkout ekranu.

Podelite tekst
LinkedIn X Facebook
DA.
Autor i urednik sadržaja

DA. Editorial Team

SEO, PPC, web razvoj i dizajn tim DA. Tekstove zasnivamo na iskustvu iz aktivnih projekata, Search Console podacima, platformskim promenama i praktičnim testovima.

Google Preferred Sources

Pratite DA. kao izvor koji želite da viđate češće.

Dodajte da.org.rs u svoje Preferred Sources i olakšajte Google-u da vam češće prikaže DA. sadržaj kada je relevantan za vaše pretrage.

Dodaj DA. kao izvor
DA. Integracija platnih kartica

Treba vam Integracija platnih kartica kao konkretna usluga?

Pouzdana integracija platnih kartica, 3DS-a, tokenizacije, refundacija i webhook događaja za bezbedno online plaćanje u sajtu, aplikaciji ili web shopu.

DA. DIGITALNI SAVETNIK

Pitajte DA.

Recite mi cilj, problem ili sledeći potez. Usmeriću vas na relevantan DA vodič ili uslugu.