amount alanına iade edilmek istenen kesin tutar gönderilmelidir.refund olarak güncellenir.partially_refund olarak güncellenir.refund endpoint'ine istek gönderilerek gerçekleştirilir.hash algorithmiçerisinde kullanılacak parametreler ve sıralamaları aşağıdaki gibidir.amount invoice_id merchant_key app_secret
#!/usr/bin/env bash
generate_hash_key() {
local amount="$1"
local invoice_id="$2"
local merchant_key="$3"
local app_secret="$4"
local data="${amount}|${invoice_id}|${merchant_key}"
local iv
iv=$(openssl rand -hex 16 | openssl sha1 | awk '{print $2}' | cut -c1-16)
local password
password=$(printf "%s" "$app_secret" | openssl sha1 | awk '{print $2}')
local salt
salt=$(openssl rand -hex 16 | openssl sha1 | awk '{print $2}' | cut -c1-4)
local salt_with_password
salt_with_password=$(printf "%s" "${password}${salt}" | openssl sha256 | awk '{print $2}' | cut -c1-32)
local key_hex
key_hex=$(printf "%s" "$salt_with_password" | xxd -p -c 256)
local iv_hex
iv_hex=$(printf "%s" "$iv" | xxd -p -c 256)
local encrypted_base64
encrypted_base64=$(printf "%s" "$data" | openssl enc -aes-256-cbc -K "$key_hex" -iv "$iv_hex" -base64)
local msg="${iv}:${salt}:${encrypted_base64}"
msg="${msg//\//__}"
echo "$msg"
}
amount="100.50"
invoice_id="INV-2026-0001"
merchant_key="test_merchant_123"
app_secret="my_secret_key_456"
result=$(generate_hash_key "$amount" "$invoice_id" "$merchant_key" "$app_secret")
echo "Hash Key: $result"{
"status_code": 100,
"status_description": "Refund completed successfully",
"order_no": "VP17695816358637973",
"invoice_id": "CPIKQUM29TXMQFF-1769581631",
"ref_no": "602800085396",
"ref_number": "602800085396"
}