[ 
https://issues.apache.org/jira/browse/FINERACT-2834?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ralph Hopman updated FINERACT-2834:
-----------------------------------
    Fix Version/s: 1.16.0

> 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
>    Affects Versions: 1.14.0, 1.15.0
>            Reporter: Ralph Hopman
>            Assignee: Ralph Hopman
>            Priority: Minor
>             Fix For: 1.16.0
>
>
> 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)

Reply via email to