Tranzacțiile de servicii web sunt comenzi pentru a efectua o serie de sarcini pentru un utilizator prin Internet. Multe dintre aceste tranzacții sunt legate de afaceri, cum ar fi atunci când cineva comandă ceva online, dar nu este neapărat cazul. Ele ar putea implica, de asemenea, interogări complexe de baze de date și alte activități. Sunt disponibile protocoale standardizate pentru utilizare în tranzacțiile cu servicii web, pentru a se asigura că acestea funcționează fără probleme.
În tranzacțiile cu servicii web, trebuie efectuate mai multe sarcini, sau întreaga procedură se anulează. De exemplu, în comerțul electronic, dacă un utilizator de internet plasează o comandă pentru un laptop nou și o husă de transport, aceasta inițiază o tranzacție de servicii web în care acea solicitare este trimisă serverului vânzătorului. Serverul la rândul său solicită o metodă de plată. Atât comanda, cât și plata trebuie să fie efectuate pentru ca comerciantul să completeze comanda; cumpărătorii nu vor să plătească pentru ceva care nu ajunge, iar comercianții nu vor să trimită ceva pentru care nu au fost plătiți.
Acesta poate fi un proces complex, iar tranzacțiile cu servicii web simplifică procesul utilizând o serie de pași. Acești pași permit serverelor să trimită informații și solicitări, să confirme că informațiile sunt transmise și apoi să se angajeze să finalizeze tranzacția. Când ceva nu merge bine, întreaga tranzacție eșuează, iar utilizatorul primește o eroare. Acesta ar putea fi ceva, cum ar fi o notificare pentru a introduce un nou număr de card de credit sau a verifica o adresă, sau ar putea fi o notificare pentru a contacta cealaltă parte pentru a rezolva o problemă cu comanda.
Nu este suficient ca tranzacțiile cu serviciile web să se desfășoare fără probleme și corect. De asemenea, de obicei trebuie să fie în siguranță. Utilizatorii nu doresc să dezvăluie informații financiare private sau de contact, deoarece acest lucru i-ar putea face vulnerabili. Astfel, tranzacția trebuie, de asemenea, să fie codificată pentru a proteja datele și a limita accesul la acestea. Sunt disponibile diferite metode de codare, cu niveluri variabile de securitate, iar site-urile web pot afișa o notificare care oferă informații despre securitatea și confidențialitatea tranzacțiilor.
Tranzacțiile cu servicii web în sine pot fi, de asemenea, folosite ca instrument de abuz într-un atac de refuzare a serviciului, în care un atacator trimite mai multe cereri către server pentru a-l supraîncărca. Rutinele de programare pentru a gestiona tranzacțiile cu servicii web trebuie să țină cont de acest risc și să dezvolte un protocol pentru gestionarea tranzacțiilor suspecte, repetate și neobișnuite. Scopul implică de obicei blocarea tranzacțiilor false, permițând în același timp celor legitime să treacă, prevenind astfel atacul de refuzare a serviciului să distrugă un server și să provoace o întrerupere.