Buckaroo Support

Push berichten

Wanneer de status van een transactie wijzigt, dan kan de status ervan via een push bericht naar het webshopsysteem of andere backoffice systeem van de merchant worden doorgestuurd. Dit gebeurd nadat het betaalproces door de klant is uitgevoerd en de status door de bank of een derde geldverwerkingspartij aan Buckaroo is doorgegeven. Het is verder niet altijd mogelijk om na het betaalproces al de definitieve status code van een transactie door te geven. Ook is het mogelijk dat het betaalproces door een consument onderbroken wordt, waardoor de status ook niet in de normale flow van het betaalproces teruggegeven wordt aan de webshop. Om in deze gevallen toch de status van de transactie te ontvangen, kan er gebruik gemaakt worden van de push. Deze stuurt de status zodra die bekend is bij ons, automatisch door naar de webshop.

Mocht de push mislukken, omdat het webshopsysteem tijdelijk niet bereikbaar is voor het opvangen van pushberichten, dan worden vanuit het systeem van Buckaroo automatisch meerdere pogingen gedaan om het push bericht succesvol te versturen. Dit zal nog tot 3 dagen aanhouden waarna het versturen van de push berichten wordt stopgezet als deze nog steeds niet goed wordt ontvangen door de webshop van de merchant.

Let op: Het is mogelijk dat het een push met een succes status vaker dan 1 keer uitgevoerd wordt. Houd hier dus rekening mee in het afhandelen van het push-bericht en maak bijvoorbeeld niet automatisch op elke geslaagde push een nieuwe order aan.

Mislukte PUSH

De PUSH service roept de ingestelde PUSH url aan. Dit zal een script zijn op uw webshop. Dit kan ook een normale pagina zijn die in de browser te openen is. De PUSH wordt beschouwd als gelukt wanneer er een HTTP 200 wordt ontvangen. Wanneer het aanroepen van de URL in een foutcode resulteert, dan interpreteert de PUSH service dit als dat de PUSH mislukt is. Er kan een waarschuwingsemail worden gestuurd naar een in te stellen email adres. Het PUSH bericht wordt later nogmaals verstuurd. Als na een aantal pogingen het bericht nog steeds niet met succes verstuurd is, kan er een afsluitende email gestuurd worden en worden er geen verdere pogingen gedaan om de PUSH te sturen. Wanneer dit plaatsvindt, is het altijd nog mogelijk de PUSH handmatig te doen, zie hiervoor de handmatige push. Een lijst van HTTP status codes kan op Wikipedia worden gevonden.

Herhalingen van de Push berichten

Indien de Push berichten niet succesvol worden bevestigd, zullen er nieuwe pogingen worden ondernomen. Dit kan voorkomen wanneer een Push-notificatie niet wordt geaccepteerd of wanneer de zogenaamde listener niet actief is. De frequentie waarmee de Push-notificatie opnieuw wordt aangeboden is: 5 min + 10 min + 15 min + 30 min + 1 uur + 2 uur + 4 uur + 8 uur + 8 uur + 24 uur + 24 uur. Dus in totaal 11 pogingen. Voor het waarschuwingsbericht bij de eerste mislukking van de Push en voor het sluitbericht bij de laatste Push kan er een e-mail worden ingesteld in de Plaza.

Dubbele PUSH

Om verschillende redenen is het mogelijk dat een PUSH dubbel of vaker uitgevoerd wordt. Dit kan veroorzaakt worden door een consument die heen en weer klikt in de betaalschermen. Het kan ook gebeuren dat bij het uitvoeren van de PUSH de PUSH server geen correct antwoord krijgt van de webshop en daarom op een later moment nogmaals de PUSH zal proberen. Let er daarom op dat uw systeem vaker dan 1x een PUSH bericht kan ontvangen. De timestamp van de PUSH zorgt ervoor dat onderscheid kan worden gemaakt tussen de verschillende berichten over dezelfde transactie en deze daarmee zijn deze in een vloeiende tijdslijn te plaatsen.

PUSH volgorde

Doordat een mislukte PUSH met een vertraging opnieuw aangeboden wordt, is het mogelijk dat verschillende PUSH berichten elkaar kruisen. Zo kan voorkomen dat een PUSH met een tijdelijke pending status van een transactie verstuurd wordt, nadat de definitieve geslaagde of mislukte status verstuurd is.

Om hier tegen te beschermen moet de meegestuurde timestamp gecontroleerd worden. De status uit een PUSH bericht met een eerdere timestamp mag niet de status overschrijven die gezet is door een PUSH bericht met een latere timestamp.

Post push data
Element Omschrijving Optioneel?
brq_payment De key van de Payment. Deze waarde wordt alleen terug gestuurd als de transactie tot een gekozen betaalmethode heeft geleid. Ja
brq_payment_method De servicecode van de methode waarmee de betaling is uitgevoerd.  
brq_statuscode De statuscode van de transactie Nee
brq_statuscode_detail Een detail status code welke een extra uitleg geeft over de huidige status code. Ja
brq_statusmessage Een bericht over de status code Ja
brq_invoicenumber Het invoicenummer dat in het verzoek is opgegeven Nee
brq_amount_credit Het creditbedrag dat in het verzoek is opgegeven, als het is opgegeven. Ja
brq_amount Het bedrag dat in het verzoek is opgegeven, als het is opgegeven. Ja
brq_currency De valuta van de transactie (bijv. EUR, USD, GBP). Nee
brq_timestamp De tijd waarop de betaling zijn huidige status heeft ontvangen. Nee
brq_service_[servicecode] _[parametername] Output parameters voor de gevraagde services. Zie hiervoor de service handleiding voor een lijst van parameters. Ja
cust_[parametername] De voorgedefiniëerde custom variabelen welke zijn meegestuurd met het originele verzoek. Ja
add_[parametername] De additionele variabelen welke zijn meegestuurd met het originele verzoek. ja
brq_transactions Een of meer transactie keys. Een key als er een onderliggende transactie is aangemaakt voor de betaling. Meerdere als er meerdere onderliggende transacties zijn die gelinkt zijn aan de betaling. Nee
brq_transaction_method De service waarmee de transactie is uitgevoerd (alleen wanneer een transactie is verwerkt). Nee
brq_transaction_type De transactie type code van de transactie (alleen wanneer een transactie is verwerkt). Nee
brq_mutationtype Het mutatie type van de transactie, dit kan 'collecting','processing','informational' of 'notset' zijn. Ja
brq_signature De digitale handtekening. Nee