Hvis du bruker “On-hold” som status ved retur fra Vipps, så vil ordre bli captured på “Processing”. Hvis du bruker “Processing” blir capture utsatt til “Complete”. Du kan også capture manuelt (når ordren fullføres). I ditt tilfelle ser det ut å være mest naturlig å bruke “Processing” som returverdi, særlig siden deres andre gateways gjør dette.
Grunnen til at vi har brukt on-hold her er hovedsaklig historisk, da dokumentasjonen fra Woo om reserve/capture-flyten på dette tidspunktet brukte “On-hold” til Reserve-ordre. “Processing” betyr da at ordren er i ferd med å leveres. Hovedproblemet med dette er at mange nettbutikker bruker statusen “On-hold” til noe helt annet, nemlig “Det er et problem med betalingen”. Derfor ser man også at Klarna og kanskje de fleste andre gateway’ene gjør capture først på Complete.
Når det gjelder advarselen om at capture *kan* mislykkes: Dette kan skje av to grunner: Den ene er midlertidig (foreksempel, Vipps er nede, nettverket på serveren krasjer, andre former for force majeure), og den andre, som er den mest problematiske, er at capture mislykkes *hos betalingsleverandør* av en eller annen permanent grunn (ala ikke dekning på kort likevel, eller kortet er kansellert i mellomtiden). Det siste har vi fått én eneste rapport om gjennom flere års drift, men det er altså en *teoretisk* mulighet.
Hvis capture mislykkes, blir ordren automatisk satt til “On-hold” (jfr over “problemer med betaling”) med en feilmelding annotert i loggen. Du vil vanligvis kunne sette den til Fullført igjen på et senere tidspunkt, da feilen antagelig er midlertid eller kan opprettes. Hvis ikke, må betalingen kanselleres eller betaling må ordnes på en annen måte.
Hvis du derimot har et system som automatisk *sender* pakken på samme tid som ordren blir satt til fullført, eller at du har en rutine der du sender pakken *før* ordren settes til fullført, så kan du ha en situasjon der pakken er ute av døren men pengene ikke er trukket ennå. Det er som sagt da en svært usannsynlig situasjon, men vi føler det er viktig å gjøre oppmerksom på den, slik at dere kan tilpasse rutinene til dette.
I systemet som du beskriver, ville det idelle systemet tatt orden fra “Processing” til “Complete” og så sjekket resultatet på samme ordre for å verifisere at den ikke endte opp som “On-hold”. Litt avhengig av hva dere selger og hvordan fraktrutinene er så kan det holde å følge med på “On-hold”-ordre og så intervenere på disse ordrene helst før de sendes ut.
Som et alternativ, og da det som er mest i tråd med opprinnelig dokumentasjon her, så ville det automatiske systemet tatt ordre fra “On-hold” til “Processing” i det leveransen starter; hvorpå resten av systemet kjører som du beskriver det.
For Klarna er dette mindre viktig, spesielt for fakturabetaling og lignende – der kan ikke capture mislykkes, da fakturaen går ut uansett.