TransactionDefinition (v1.0.0)

Defines the structure and posting rules for specific transaction types in the accounting system

TransactionDefinition Entity

The TransactionDefinition entity defines the structure and behavior of specific transaction types within the accounting system. Each transaction definition contains the posting rules that determine how transactions of that type affect various accounts in the double-entry bookkeeping system.

Properties

NameTypeRequiredDescription
idintegerRequiredUnique identifier for the transaction definition (auto-generated primary key)
namestringRequiredName of the transaction type (e.g., "CHARGE", "REFUND", "FEE_ADDED")
bookkeeping_config_fkintegerOptionalForeign key reference to the parent bookkeeping configuration

Schema

schema.json
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"title": "TransactionDefinition",
"description": "Defines the structure and posting rules for specific transaction types in the accounting system",
"properties": {
"id": {
"type": "integer",
"description": "Unique identifier for the transaction definition (auto-generated primary key)",
"example": 15825
},
"name": {
"type": "string",
"enum": ["CHARGE", "REFUND", "FEE_ADDED", "CHARGEBACK", "CHARGEBACK_CREDIT", "REMITTANCE", "RESERVE_REMITTANCE", "REVERSE_REMITTANCE", "TOPUP", "ADJUSTMENT_CREDIT", "ADJUSTMENT_DEBIT", "SCHEME_FEE", "CAPS_REMITTANCE"],
"description": "Name of the transaction type",
"example": "CHARGE"
},
"bookkeeping_config_fk": {
"type": "integer",
"description": "Foreign key reference to the parent bookkeeping configuration",
"example": 15656
}
},
"required": ["id", "name"],
"additionalProperties": false
}

Transaction Type Categories

Transaction definitions cover various categories of financial operations:

Payment Operations

  • CHARGE: Customer payment processing
  • REFUND: Return of funds to customers
  • FEE_ADDED: Additional fees applied to transactions

Risk Management

  • CHARGEBACK: Disputed transaction reversals
  • CHARGEBACK_CREDIT: Credits for resolved chargebacks

Settlement Operations

  • REMITTANCE: Settlement payments to merchants
  • RESERVE_REMITTANCE: Holding funds before settlement
  • REVERSE_REMITTANCE: Reversal of settlement payments

Account Management

  • TOPUP: Manual account balance increases
  • ADJUSTMENT_CREDIT: Positive balance adjustments
  • ADJUSTMENT_DEBIT: Negative balance adjustments

Operational Fees

  • SCHEME_FEE: Payment network processing fees
  • CAPS_REMITTANCE: Capacity-based settlements

Posting Rules Integration

Each transaction definition contains multiple posting rules that:

  • Define which accounts are affected by the transaction
  • Specify whether each posting is a debit (POSITIVE) or credit (NEGATIVE)
  • Ensure the transaction maintains double-entry bookkeeping principles
  • Support complex multi-account transactions

Usage in Transaction Processing

When processing a transaction:

  1. The system identifies the transaction type
  2. Retrieves the corresponding transaction definition
  3. Applies all associated posting rules
  4. Validates that debits equal credits
  5. Updates account balances accordingly

Configuration Management

Transaction definitions are:

  • Configured through the admin backend
  • Associated with specific bookkeeping configurations
  • Validated for completeness and accuracy
  • Versioned to support changes over time

Validation Rules

  • Transaction name must be unique within a bookkeeping configuration
  • Must have at least one posting rule defined
  • Posting rules must balance (total debits = total credits)
  • All referenced accounts must exist in the associated chart of accounts

Business Impact

Proper transaction definition configuration ensures:

  • Accurate financial reporting
  • Compliance with accounting standards
  • Consistent transaction processing
  • Auditability of all financial operations