Webhook / Callback
Xendit mengirimkan HTTP request ke aplikasi Anda secara asinkron setelah ada event yang terjadi. Contoh event adalah event pembayaran Virtual Account yang mengindikasikan bahwa Xendit telah selesai memroses pembayaran Virtual Account, sehingga Xendit mengirimkan notifikasi ke sistem Anda, agar Anda dapat melanjutkan proses pesanan pelanggan Anda.
Request secara asinkron ini disebut juga sebagai webhook atau callbacks. Biasanya webhook dikirimkan ke aplikasi Anda untuk menandakan sebuah event telah terjadi dan sistem Anda akan atau hendak melakukan sesuatu setelah menerima event tersebut.
Xendit menggunakan webhook untuk mengirimkan event ke sistem Anda dengan menggunakan POST HTTP request ke tautan URL yang Anda setel di Dasbor Xendit. Event yang dikirimkan menyertakan informasi informasi lainnya terkait dengan detil event tersebut, seperti detil pembayaran atau data lainnya tergantung produk Xendit yang Anda gunakan.
Berikut perbandingan alur antara API vs Webhook menggunakan Invoice Xendit sebagai contoh:
Anda dapat membangun aplikasi atau website kecil yang dapat menerima request HTTP untuk menerima _webhook. Bila Anda telah memiliki aplikasi atau website tersebut, silakan setel URL target aplikasi tersebut di Dasbor Xendit.
Bila Anda belum mempunyai website atau aplikasi, Anda dapat membangunnya dengan framework-framework yang tersedia pada beragam macam bahasa pemrograman server-side. Contohnya seperti:
- ASP.NET MVC untuk C#
- Servlets dan Spark untuk Java
- Express untuk Node.js
- Django dan Flask untuk Python
- Rails dan Sinatra untuk Ruby
- PHP dapat digunakan sendiri atau menggunakan framework seperti Laravel, Symfony dan YiiYii.
Webhook juga dapat ditangani dengan menggunakan framework serverless seperti AWS Lambda atau Azure Functions.
Webhook akan bekerja secara konsisten dengan framework atau bahasa pemrograman apapun yang Anda pilih. Request HTTP akan dibuat ke URI yang Anda setel di Xendit. Aplikasi Anda harus mengembalikan respon secara langsung dan hanya melakukan proses-proses lainnya, seperti pemanggilan API lainnya, proses komputasi, dll, setelah respon dibalikkan ke Xendit
Last Updated on 2023-06-02