billing
Crypto payment processor webhook
Receives crypto payment events (payment.completed, etc.) for platform billing. No auth; verified by provider signature.
POST
/api/billing/webhooks/cryptoAuthentication
Public — No Auth Required
Request Body
Crypto payment webhook payload (event type and data with paymentId, reference, amount, currency, network, status, metadata).
json
{
"event": "payment.finalized",
"data": {
"paymentId": "5gzZdQJKwNqsXZgP",
"reference": "bus parse",
"amount": 637.81,
"currency": "SSP",
"network": "port program",
"status": "driver copy",
"metadata": {}
}
}{
"event": "payment.finalized",
"data": {
"paymentId": "5gzZdQJKwNqsXZgP",
"reference": "bus parse",
"amount": 637.81,
"currency": "SSP",
"network": "port program",
"status": "driver copy",
"metadata": {}
}
}SDK setup
Create a client instance. No authentication is required for this endpoint.
import { MudbaseClient } from "mudbase";
const client = new MudbaseClient();import { MudbaseClient } from "mudbase";
const client = new MudbaseClient();Example request
Call this endpoint using the client from SDK setup. Use View HTTP for a raw cURL example.
const result = await client.billing.handleCryptoWebhook({
event: "system synthesize",
data: "bus calculate"
});const result = await client.billing.handleCryptoWebhook({
event: "system synthesize",
data: "bus calculate"
});Try It Live
Test this endpoint with your own credentials. Your requests will be sent to the live API.
No Request Yet
Send a request to see the full inspector
Responses
200Webhook processed
json
{
"received": true
}{
"received": true
}400Event type is required or invalid payload
json
{
"error": "program back up"
}{
"error": "program back up"
}401Authentication required or invalid token.
403Access denied or insufficient permissions.
500Internal server error.
Errors
| Code | Meaning |
|---|---|
400 | Event type is required or invalid payload |
401 | Authentication required or invalid token. |
403 | Access denied or insufficient permissions. |
500 | Internal server error. |