You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@fineract.apache.org by "Ralph Hopman (Jira)" <ji...@apache.org> on 2026/09/15 08:45:00 UTC
[jira] [Created] (FINERACT-2834) Expose the originating client charge ID on client payment transactions
Ralph Hopman created FINERACT-2834:
--------------------------------------
Summary: Expose the originating client charge ID on client payment transactions
Key: FINERACT-2834
URL: https://issues.apache.org/jira/browse/FINERACT-2834
Project: Apache Fineract
Issue Type: Improvement
Components: Charges
Reporter: Ralph Hopman
Assignee: Ralph Hopman
I would like the client transaction API to return the originating client charge ID for charge-payment transactions, so that I can associate each payment transaction with the exact client charge it pays without relying on charge names, amounts, or other ambiguous attributes.
h3. Acceptance Criteria
* When a client charge is paid, the resulting client transaction response includes a field named {{{}clientChargeId{}}}.
* The value of {{clientChargeId}} equals the ID of the client charge associated with the payment transaction.
* The field is populated from the existing {{m_client_charge_paid_by.client_charge_id}} relationship.
* The field is available when retrieving an individual client transaction through the public client transaction API.
* Transactions that are not associated with a client charge may return {{clientChargeId}} as null or omit it according to the existing serialization policy.
* Existing client transaction fields and API behavior remain unchanged.
* Existing client transaction retrieval, reversal, and external-ID operations continue to work.
* An integration test creates and pays a client charge, retrieves the resulting transaction through the public API, and verifies that {{clientChargeId}} matches the originating charge.
h3. Technical Notes
* Add {{clientChargeId}} to the client transaction response data object.
* Map the already-selected {{clientChargeId}} SQL column in the client transaction row mapper.
* Keep the regression coverage in the existing client transaction integration test.
* No database schema migration is required because the relationship and SQL selection already exist.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)