Webhooks allow you to receive real-time HTTP notifications of events on the Paxful marketplace. For example, we could send you a notification when a new trade starts or whenever your trade partner sends a message in a trade chat. This prevents you from having to query the API for changes to objects that may or may not have happened and helps you avoid reaching your rate limit. This guide will describe how exactly you can set up Webhooks with Paxful.
We support Webhooks for the following events:
- New incoming trade on Paxful
- Message received in trade chat
- Attachment received in trade chat
Setting up Webhooks
Note: Make sure your service is ready for receiving Webhooks. During the URL saving process, your service should take the "X-Paxful-Request-Challenge" request header and put it into the response as-is.
Here is how our request header should appear in your payload (this is a Webhooks service example in Node.js):
1. Log in to your Paxful account, hover over your username on the top right of the page and click Settings from the context menu that appears.
The Settings page appears.
2. On the menu on the left side of the page, click Developer.
The Developer page appears.
3. In case if you don’t have an API key, insert the two-factor code in the field below and click Add new API key. If you already have an API key, you can skip this step.
Your new API key appears on the Developer page alongside with additional sections.
4. Copy the URL from your app.
Go to the Webhooks section on the Paxful Developer page. Paste the link into the Request URL field and click Save.
Warning: Our Webhooks are supported by HTTPS address types only. HTTP addresses will not work for this purpose.
A request header is sent to your app.
Note: We have a timeout of 30 seconds. In case if we do not receive a response from your app, the URL will not be saved, and a Webhook will not be created.
5. In case of success, a list of events available for subscription appears below. Tick a box to select an event from the Subscribe to events list.
- Once selected, events are saved automatically.
- In the case of three failed attempts to send event information to your app, Webhook (URL) becomes disabled.
- To insert a new link, replace the current URL with the new one and click Change.
- To deactivate your Webhooks completely, click Delete.
- To reactivate a disabled URL, click Retry.
In case if request URL is saved successfully, this is how our events will appear in your app: