I'm getting ready to integrate the smart buttons for payment onto my site. I'm looking at the integration docs and I can't find anything that removes the client (browser) from the scenario of updating my database with an order ID on successful payment.
Essentially what I see happening is maybe the browser fails or crashes or something happens that the onApprove method is never called and then the payment is not registered in my system. In short, the browser client shouldn't be responsible for updating a transaction with an Order ID because if it fails, then I have no way of correlating that data.
Did I miss a page in the docs? Is the best way to achieve this using webhooks instead? Where I have an endpoint that updates a transaction with a PayPal Order ID?