1. Payout Initiate API POST

Description: Initiates a payout from merchant to customer via secure banking channels.

📍 Endpoint
https://stanzape.com/api/uat/payout/init/
🔐 Headers
Content-Type: application/json
"X-Signature: " . base64_encode(hash_hmac('sha256', $json_body, $shared_secret, true))

🌐 Cross-Language HMAC Logic

Language Core Logic
Node.js crypto.createHmac('sha256', key).update(message).digest('base64')
Python base64.b64encode(hmac.new(key, msg, hashlib.sha256).digest()).decode()
Java Base64.getEncoder().encodeToString(mac.doFinal(message.getBytes()))
PHP base64_encode(hash_hmac('sha256', $message, $key, true))
📤 Request JSON Body
{
  "orderdata": {
    "orderid": "ORD2025010112562223",
    "userid": "1111199999",
    "mobile": "1111199999",
    "email": "test@gmail.com"
  },
  "paymentdata": {
    "amount": 500.00,
    "currency": "INR",
    "bankaccnum": "XXXXXXXXXX90",
    "ifsccode": "HDFC0000000",
    "accholdername": "Holder Name",
    "mode": "IMPS"
  },
  "merchantdata": {
    "mid": "XXXXXX02",
    "authkey": "XXXXXXXXXXXXXXstanzakey"
  }
}
✅ Success Response
{
  "status": "STANZA001",
  "message": "Payout Initiated successfully",
  "payout_id": "TXN1234567890"
}
❌ Error Response
{
  "status": "STANZA002",
  "message": "Error Msg"
}
📋 Parameter Breakdown
FieldTypeRequiredDescription
orderidStringYesUnique order reference
useridStringYesCustomer or User ID
mobileStringYesCustomer phone number
emailStringYesEmail address of customer
amountDecimalYesAmount to transfer
currencyStringYesCurrency (e.g., INR)
bankaccnumStringYesBank account number
ifsccodeStringYesBank IFSC code
accholdernameStringYesName of account holder
modeStringYesTransfer mode (IMPS, NEFT, RTGS)
midStringYesMerchant ID issued by StanzaPe
authkeyStringYesAuthentication token
📟 HTTP Status Codes
StatusCodeMeaning
STANZA001Request processed successfully
⚠️STANZA002Bad Request – Invalid or missing params
🔐STANZA003Unauthorized – Invalid auth key
💥STANZA004Server error – try again later

🔐 Signature Security

Include an X-Signature header, generated using HMAC SHA256 with your shared secret.

"X-Signature: " . base64_encode(hash_hmac('sha256', $json_body, $shared_secret, true))

📩 Webhook Response

Once the transaction is completed, we send a callback to your webhook URL.

{
  "status": "STANZA001",
  "message": "Callback Sent Successfully",
  "data": {
    "orderid": "ORD2025010112562223",
    "status": "TXN_SUCCESS",/"TXN_FAILURE",/"PENDING",
    "amount": "500",
    "utr": "15219934"
  }
}

🔎 Payout Status Check API POST

Description: Check the transaction status using the orderid.

📍 Endpoint
https://stanzape.com/api/uat/payout/status/
🔐 Headers
Content-Type: application/json
"X-Signature: " . base64_encode(hash_hmac('sha256', $json_body, $shared_secret, true))
📤 Request JSON Body
{
  "request": {
    "orderid": "ORD2025010112562223"
  },
  "merchantdata": {
      "mid": "XXXXXX02",
      "authkey": "XXXXXXXXXXXXXXstanzakey"
  }
}
✅ Sample Success Response
{
  "status": "STANZA001",
  "message": "Order Found",
  "order": {
    "orderid": "ORD2025010112562223",
    "amount": "500.00",
    "status": "TXN_SUCCESS",/"TXN_FAILURE",/"PENDING",
    "created_at": "2025-07-23T22:15:00+05:30",
    "utr": "15219934"
  }
}
❌ Sample Failure Response
{
  "status": "STANZA002",
  "message": "Order not found"
}

📬 Need Help?

If you're facing issues or need integration support, Email: support@stanzape.com or connect with our team.