Rehit an order
POST https://karauti.com/api/v1/transaction/{order_id}/rehit
Runs a failed order again under the same order_id and trx_id. Charged like a
new order. The result arrives on the webhook.
Only for a failed order whose failure_code is one of:
RETRYABLE, PROVIDER_DOWN, PLATFORM_ERROR, SKU_UNAVAILABLE, CONNECTION_LOGIN_FAILED, CONNECTION_2FA_FAILED, MERCHANT_WALLET_INSUFFICIENT, INVALID_TARGET, CONNECTION_OTP_REQUIRED .
Anything else, including an order still awaiting confirmation, is refused with NOT_REHITTABLE.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
order_id | string, in the path | yes | The order_id you sent. |
merchant_id | string | yes | See Authentication. |
curl -X POST https://karauti.com/api/v1/transaction/ORD-1001/rehit \
-H 'Content-Type: application/json' \
-H 'X-Karauti-Timestamp: 1786686400' \
-H 'X-Karauti-Nonce: 4c81e09a7b2d63f1' \
-H 'X-Karauti-Signature: …' \
-d '{"merchant_id":"M2608001","order_id":"ORD-1001"}'
{
"status": 1,
"data": {
"order_id": "ORD-1001",
"trx_id": "K260816YULHW3",
"status": 0,
"failure_code": null,
"message": "The order is being processed. Wait for the webhook.",
"sku": "UNIFF25",
"target": "9003278192",
"nickname": null,
"sn": null,
"fee": 2,
"balance": 4976,
"created_at": "2026-08-14T05:46:40+00:00"
},
"meta": {
"unix_timestamp": 1786686460
}
}
Errors
| HTTP | failure_code | Cause |
|---|---|---|
| 404 | NOT_FOUND | No order with that order_id. |
| 422 | NOT_REHITTABLE | Not failed, or failed in a way that may have bought something. |
| 422 | ALREADY_RUNNING | Another rehit of this order got there first. |
| 422 | NO_CONNECTION | The supplier account the order used is no longer connected. |
| 422 | INSUFFICIENT_BALANCE | Karauti balance below the fee. |
Warning
Rehit the same order_id instead of placing a new order with a changed one. A new
order_id is a separate order, and the failed one stays failed in your list.
API documentation