Skip to main content
POST

Authorizations

Authorization
string
header
required

Your private key, Base64-encoded.

Encode the key before sending it — for example base64_encode($privateKey) in PHP or Buffer.from(privateKey).toString('base64') in Node.js. Paste the already-encoded value here when testing from these docs.

Use your test key here. This console only calls the sandbox environment, so a production key will not authenticate.

Body

application/json
trackid
string
required

Your unique identifier for this transaction. Alphanumeric only — no special characters. Must never be reused.

Maximum string length: 255
Example:

"ORDER-2001"

amount
string
required

Transaction amount as a plain decimal string. No currency symbols, commas, or spaces.

Maximum string length: 10
Example:

"11.250"

currency
string
required

ISO 4217 numeric currency code. Use 414 for Kuwaiti Dinar.

Maximum string length: 3
Example:

"414"

success_url
string
required

URL Payzah redirects the customer to after a successful payment.

Maximum string length: 255
Example:

"https://yourstore.com/success"

error_url
string
required

URL Payzah redirects the customer to if payment fails or is cancelled.

Maximum string length: 255
Example:

"https://yourstore.com/error"

payment_type
enum<string>

Which checkout experience to use. 1 = direct to K-Net, 2 = direct to Credit Card, 3 = hosted Transit Page (includes Apple Pay).

Available options:
1,
2,
3
Example:

"3"

language
enum<string>

Language shown on the Payzah payment page. Defaults to ENG.

Available options:
ENG,
ARA
Example:

"ENG"

kfast_id
number

K-Net faster checkout customer ID, if the customer has enrolled in K-Net fast checkout.

customer_name
string

Customer's full name, for tracking and reconciliation.

Maximum string length: 255
Example:

"Ahmed Al-Rashid"

customer_phone
string

Customer's phone number, for tracking.

Maximum string length: 255
Example:

"96512345678"

customer_email
string

Customer's email address, for tracking.

Maximum string length: 255
udf1
string

User-defined field 1. No special characters.

Maximum string length: 255
udf2
string

User-defined field 2. No special characters.

Maximum string length: 255
udf3
string

User-defined field 3. No special characters.

Maximum string length: 255
udf4
string

User-defined field 4. No special characters.

Maximum string length: 255
udf5
string

User-defined field 5. No special characters.

Maximum string length: 255
delivery_company
number

Multivendor only — numeric identifier for the delivery company on this order.

delivery_cost
number

Multivendor only — delivery cost applied to this transaction.

commission_type
enum<number>

Multivendor only — 1 fixed amount, 2 percentage, 3 mixed.

Available options:
1,
2,
3
commission_percent
number

Multivendor only — percentage rate, used when commission_type is 2 or 3.

commission_fixed
number

Multivendor only — fixed amount, used when commission_type is 1 or 3.

Response

200 - application/json

Always returned with HTTP 200. Check the status field to determine success or failure.

status
boolean

true when the payment session was created successfully.

Example:

true

data
object