Resurssit · 47

Epävarmat maksut: kassatapahtuman palauttaminen ilman kaksoiskappaleita

Täsmäytä verkkoviiveet, selaimen palautukset, ilmoitukset ja liiketoiminnan tila sen sijaan, että mitä tahansa signaalia käsiteltäisiin riittävänä.

Päivitetty · 3 min

Mitä tämä opas auttaa saavuttamaan

  • Erillinen yritys, maksu ja tilaus
  • Viivästyneiden tai puuttuvien palautusten käsittely
  • Ilmoitusten ja pyyntöjen kaksoiskappaleiden poistaminen
  • Epävarmuuden selittäminen pyytämättä käyttäjiä maksamaan uudelleen

Pikatarkistus

  • Mikä lähde vahvistaa maksun?
  • Muuttaako selaimen sulkeminen yrityksen tilaa?
  • Valmisteleeko toistuva tapahtuma kaksi tilausta?
  • Tarkistetaanko tapahtumien allekirjoitukset?
  • Miten tuki löytää epävarman toiminnon?

Vaiheittainen menetelmä

  1. 1

    Määrittele tilat

    Erota ostoskori, yritys, valtuutus, vahvistettu maksu, tilaus ja hyvitys. Kirjoita siirtymät, auktoriteettilähde ja sallitut toiminnot. Noudata todellista toimittajaa ja maksutapoja; kaikki menetelmät eivät vahvista välittömästi.

    Tuotos: tilakaavio ja liiketoimintasopimus.

  2. 2

    Tunnista toiminto.

    Yhdistä yritys tilaukseen ja toimittajan tunnisteisiin. Käytä dokumentoitua idempotenssisääntöä saman toiminnon toistamiseen. Uusi tarkoitus tai muutetut parametrit vaativat nimenomaisen päätöksen sokkonavaimen uudelleenkäytön sijaan.

    Tuotos: vakaa identiteetti ja palautussäännöt.

  3. 3

    Käsittele selaimen paluuta.

    Näytä palvelinpuolen tarkistuksen tila toimittajan kannalta sopivana. Pelkkä uudelleenohjaus onnistumissivulle ei ole maksutodiste. Peitä suljettu selain, puuttuva paluu, keskeytynyt todennus ja hidas verkko.

    Tuotos: paluumatka ja viestit tilan mukaan.

  4. 4

    Vahvista ilmoitukset.

    Tarkista aitous toimittajan dokumentaation mukaisesti, tallenna tapahtuman identiteetti ja käsittele toistot ilman päällekkäisyyksiä. Tapahtumat voivat olla myöhässä tai epäjärjestyksessä. Tarvittaessa nouda viiteobjekti ennen peruuttamatonta siirtymää.

    Toimitettava: testattu käsittelijä ja pankkidatattomat jäljet.

  5. 5

    Täsmäytä ristiriitaisuudet.

    Vertaile palveluntarjoajan toimintoja, tilauksia ja täyttämistä. Eristä maksut ilman tilausta, tilaukset ilman vahvistusta, kaksoiskäsittely ja etenemättömät hyvitykset. Anna jokaiselle ristiriidalle omistaja ja menettely; älä toista automaattisesti epävarmaa veloitusta.

    Toimitettava: täsmäytysjono ja päätökset.

  6. 6

    Testaa täydellinen palautus.

    Palveluntarjoajan testitilassa toiston aikakatkaisu, kaksoiskappale, viivästynyt tapahtuma, käänteinen järjestys ja puuttuva palautus. Tarkista yksi liiketoimintasiirtymä, oikeat asiakastiedot ja tuen näkyvyys. Idempotenssitiedot vaihtelevat palveluntarjoajien välillä.

    Toimitettava: kaksoiskappaleiden puuttumisen todisteet ja käyttöönottokriteerit.

Kuvitteellinen esimerkki

Havainnollistava tilanne

Havainnollistava tilanne: maksu onnistuu, mutta asiakas menettää yhteyden ennen vahvistusta ja kaksi ilmoitusta saapuu myöhemmin.

Päätös ja odotettu näyttö

Yksi tilaus on vahvistettu. Palautus näyttää vahvistetun tilan, ja tuki voi täsmäyttää viitteen pyytämättä pankkitietoja.

Mekanismien erottaminen

MekanismiTarkoitusVahvistus tai rajoitus
Selaimen paluuIlmoita käyttöliittymälle ja jatka sitäVoi puuttua tai olla keskeytynyt
Vahvistettu webhookVastaanota tarjoajan tilan muutosVoidaan toistaa, viivästyttää tai olla epäjärjestyksessä
Palvelimen täsmäytysVertaa maksun ja tilauksen tilaaTarvitsee ristiriitaisuuksien ratkaisusäännön

Johdon indikaattorit

IndikaattoriMitä se mittaaEnsimmäinen toimenpide
Epävarmat tilatToiminnot, joita ei ole ratkaistu suunnitellun viiveen sisälläTarkista viitetila
KaksoisvaikutuksetTilaukset tai käsittely suoritetaan kahdestiKorjaa liiketoiminnan deduplikaatio
Suljetut aukotTäsmäytetyt tapaukset päätöksellä ja todisteillaKäsittele vanhimpia ja kriittisiä tapauksia

Yleisiä virheitä

  • Vahvistaminen pelkästään onnistumis-URL-osoitteesta
  • Aikakatkaisun käsittely maksun epäonnistumisena
  • Olettaen, että tapahtumat saapuvat järjestyksessä
  • Veloituksen toistaminen ennen tarkistus

Usein kysytyt kysymykset

Tarkoittaako aikakatkaisu epäonnistumista?

Ei. Se tarkoittaa, että vastausta ei vastaanotettu viiveen sisällä. Tarkista toiminnon tila ennen uuden luomista.

Onko toimittajan idempotenssi riittävä?

Ei. Tilauksen luomisen, täyttämisen ja ilmoitusten on myös siedettävä toistuvaa käsittelyä ilman päällekkäisiä liiketoimintavaikutuksia.

Mitä käyttäjälle tulisi kertoa?

Selitä, että vahvistus on käynnissä, anna turvallinen viite ja tapa noutaa tila. Vältä uuden maksun pyytämistä, kun edellinen on epävarma.

Viralliset viitteet

Viitteet tukevat menetelmää. Sovita tarkastukset kontekstiisi; ne eivät ole sertifiointia. Alkuperäiset viitteiden otsikot ja lähdeasiakirjat voivat olla toisella kielellä.