> For the complete documentation index, see [llms.txt](https://developers.mtpelerin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.mtpelerin.com/integration-guides/conversion-webhook.md).

# Conversion webhook

On request, we can setup for you a webhook that tells you when a transaction has been completed.

To use it, you simply pass an 'oid' parameter that contains your own internal order id.

Once a transaction has been completed, we call your webhook with the following payload:

```
{
    "id": "664369c938b3ca001a3cd44f", // our internal transaction id
    "amount": 123.45,
    "currency": "USDC",
    "external_id": "123456789", // Your own order id that you passed in the 'oid' parameter
}
```

### Setup

For us to setup the webhook, we need from you the webhook URL that we must call, as well as 2 keys (authentication and signature) that we will exchange.

The authentication key will be used in the "Authentication" header.

The signature key will allow to compute a HMAC on your side. This HMAC will have to be the same as the "Mtp-Signature" header parameters. The HMAC has to be computed on the full request body. JS example:

```
const computedSignature = crypto.createHmac('sha256', SIGNATURE_KEY).update(JSON.stringify(body)).digest('hex')
```
