Skip to main content
POST
/
api
/
v1
/
collections
/
webhooks
Register a webhook endpoint
curl --request POST \
  --url https://dev-api-partner.onecluster.co/api/v1/collections/webhooks \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "https://yourapp.com/webhooks/ubn",
  "events": [
    "collection.credit",
    "collection.reversal"
  ]
}
'
{
  "success": true,
  "responseCode": "00",
  "message": "Request processed successfully",
  "data": {}
}

Authorizations

Authorization
string
header
required

Your API key, formatted as: ApiKey ubn_sb_your_key_here

  • Sandbox keys start with ubn_sb_
  • Production keys start with ubn_pk_
  • Never use production keys during testing — they will charge real money

Headers

X-Correlation-ID
string<uuid>

A UUID v4 you generate to trace this request through our systems. If you don't provide one, we generate it for you. Always include it in support requests — it helps us find your request in logs.

Example:

"7f3a9c21-4e8b-4a12-b6d1-3c8a7f2e1b09"

Body

application/json
url
string<uri>
required

Your HTTPS endpoint. We will POST collection notifications here. Must respond with 200 OK within 30 seconds.

Example:

"https://yourapp.com/webhooks/ubn"

events
enum<string>[]
required

Which events to receive:

  • collection.credit: Money arrived in a collection account
  • collection.reversal: A credit was reversed
  • collection.dispute: A dispute was opened on a transaction
Available options:
collection.credit,
collection.reversal,
collection.dispute

Response

Webhook registered. Test ping succeeded.

Standard response wrapper for all successful API calls

success
boolean
required

Always true for successful responses

Example:

true

responseCode
string
required

00 means success

Example:

"00"

message
string
required

Human-readable description of the result

Example:

"Request processed successfully"

data
object
required

The actual response data (varies by endpoint)