Developers
Build payment flows with a simple REST API, secure webhooks, and ready-to-use SDKs. Use our sandbox to develop and test before going live.
The Uniquity Solutions API is a JSON-over-HTTPS REST API. Authenticate using Bearer tokens, handle idempotency, and receive events via webhooks.
Use your secret key in the Authorization header. Keep keys confidential and rotate as needed.
curl -X GET "https://sandbox.api.uniquitysolutions.com/v1/payments" \
-H "Authorization: Bearer sk_test_123456789" \
-H "Accept: application/json"
Create a one-time payment with minimal fields.
POST /v1/payments
Content-Type: application/json
Authorization: Bearer sk_test_123...
{
"amount": 10000,
"currency": "USD",
"payment_method": {
"type": "card",
"token": "tok_test_visa"
},
"description": "Order #1001",
"idempotency_key": "7c2f1c8a-9d8e-4b0d-92f1-a6b8f7e90123"
}
200 OK
{
"id": "pay_abc123",
"status": "succeeded",
"amount": 10000,
"currency": "USD",
"created": 1715012345
}
Prevent duplicate charges by sending an Idempotency-Key header (a UUID) on POST requests. Re-using the same key returns the original result.
Errors return 4xx/5xx with a JSON body.
400 Bad Request
{
"error": {
"type": "invalid_request",
"code": "missing_parameter",
"message": "amount is required",
"param": "amount"
}
}
Default limit: 100 requests per minute per IP and key. The response includes headers X-RateLimit-Limit, X-RateLimit-Remaining, and Retry-After.
Receive asynchronous events (payment.succeeded, payment.failed, refund.created, payout.sent).
POST /webhooks/uniquity
X-Webhook-Signature: t=1715012345,v1=7e4a...,v1=backup...
{
"id": "evt_123",
"type": "payment.succeeded",
"data": { "object": { "id": "pay_abc123", "amount": 10000, "currency": "USD" } }
}
Import our OpenAPI/collection (coming soon) to explore endpoints quickly.