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.