Skip to content

Create a payment

POST
/payments
curl --request POST \
--url https://api.bizzle.my/v1/payments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "amount": 1, "currency": "TZS", "description": "example", "customer": "example", "metadata": {}, "success_url": "https://example.com", "cancel_url": "https://example.com" }'
Idempotency-Key
string
<= 255 characters

Unique identifier used to replay requests safely.

Media typeapplication/json
object
amount
required
integer
>= 1
currency
string
default: TZS
description
string
customer
string
metadata
object
success_url
string format: uri
cancel_url
string format: uri

Payment created.

Media typeapplication/json
object
id
string
object
string
Allowed values: payment
amount
integer
currency
string
status
string
Allowed values: pending paid failed refunded
fee
integer
nullable
net
integer
nullable
payout_status
string
checkout_url
string format: uri
created
integer format: int64
nullable

Example

{
"id": "pay_8xQVk2zMqY4",
"object": "payment",
"currency": "TZS",
"status": "pending"
}

Error response.

Media typeapplication/json
object
error
required
string
message
string
code
string
details
object

Example generated

{
"error": "example",
"message": "example",
"code": "example",
"details": {}
}

Error response.

Media typeapplication/json
object
error
required
string
message
string
code
string
details
object

Example generated

{
"error": "example",
"message": "example",
"code": "example",
"details": {}
}

Too many requests.

Media typeapplication/json
object
error
required
string
message
string
code
string
details
object

Example generated

{
"error": "example",
"message": "example",
"code": "example",
"details": {}
}
RateLimit-Limit
integer

Maximum requests per window.

RateLimit-Remaining
integer

Requests remaining in the current window.

RateLimit-Reset
integer

Unix seconds when the window resets.

Retry-After
integer

Seconds to wait before retrying (on 429/handled outages).