PUT
/trancodes/{id}Update a transaction code template (increments version)
Update the specified tranCode. Note: Updates increment the version number for audit trail.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string uuid | Transaction Code UUID |
Request bodyrequired
| Field | Type | Description |
|---|---|---|
namerequired | string | |
description | string nullable | |
params_schema | one of: ParamsSchema nullable | |
entries_templaterequired | EntriesTemplate | Double-entry template stored on a transaction code. At least 2 entries are required; once parameters are substituted, debits and credits must balance. |
entries_template.entriesrequired | EntryTemplate[] min items: 2 | |
attributes_template | one of: AttributesTemplate nullable | |
validation_rules | object nullable | |
metadata | object nullable |
Responses
200Transaction code updated
{
"success": true,
"data": {
"id": "01997c1e-4d2a-7c3e-9a1b-2f0e8c6d4b5a",
"ledger_id": "01997c1e-4d2a-7c3e-9a1b-2f0e8c6d4b5a",
"code": "PAYMENT",
"name": "Customer Payment",
"status": "active",
"version": 1,
"entries_template": {
"entries": [
{
"account": "{params.from_account}",
"type": "credit",
"amount": "{params.amount}"
},
{
"account": "{params.to_account}",
"type": "debit",
"amount": "{params.amount}"
}
]
},
"created_at": "2026-01-15T10:30:00Z",
"updated_at": "2026-01-15T10:30:00Z"
}
} 400Validation error
{
"success": false,
"message": "Validation failed",
"code": "VALIDATION_ERROR"
} 401Unauthenticated
{
"success": false,
"message": "Validation failed",
"code": "VALIDATION_ERROR"
} 403Forbidden
{
"success": false,
"message": "Validation failed",
"code": "VALIDATION_ERROR"
} 404Transaction code not found
{
"success": false,
"message": "Validation failed",
"code": "VALIDATION_ERROR"
} Examples
curl -X PUT https://ledga.io/api/v1/trancodes/{id} \
-H "Authorization: Bearer sk_xxxxxxxx_your_secret" \
-H "Content-Type: application/json" \
-d '{
"name": "string",
"entries_template": {
"entries": [
{
"account": "{params.from_account}",
"type": "credit",
"amount": "{params.amount}"
},
{
"account": "{params.to_account}",
"type": "debit",
"amount": "{params.amount}"
}
]
}
}' use Ledga\Api\LedgaClient;
$ledga = new LedgaClient('sk_xxxxxxxx_your_secret');
$code = $ledga->transactionCodes->update('01997c1e-4d2a-7c3e-9a1b-2f0e8c6d4b5a', ['name' => 'Book transfer v2']);