Details
-
Type: Improvement
-
Status: Open
-
Priority: Major
-
Resolution: Unresolved
-
Affects Version/s: 4.7
-
Fix Version/s: Unscheduled
-
Component/s: CiviContribute
-
Labels:None
-
Versioning Impact:Patch (backwards-compatible bug fixes)
-
Documentation Required?:Developer Doc
-
Funding Source:Contributed Code
Description
As LExIM extension to enhance core functionality, with the expectation that the extension will be maintained by JMA but become a 'core' extension', create an extension to allow refunds to be recorded as accounts payables, and later for payment of these accounts payable to be processed.
Assumptions/constraints of the first version of the extension:
- All refunds are recorded first as accounts payable owing.
- Only a single payment is made to pay a refund.
- Refunds are for full amount paid so far on contribution (ie no partial refunds initially).
- A single accounts payable account will be used for all refunds.
- Users may want to pay refunds from different accounts.
- Users may want to specify different contra revenue accounts to record revenues that have been refunded, or they be content to just reverse the payment out of the revenue account. This has to be possible for each line item's financial accounts.
See CiviAccounts Data Flow https://wiki.civicrm.org/confluence/display/CRM/CiviAccounts+Data+Flow#CiviAccountsDataFlow-Extension:RefundaCompletedContribution(IndirectlyviaAccountsPayable) and https://wiki.civicrm.org/confluence/display/CRM/CiviAccounts+Data+Flow#CiviAccountsDataFlow-Extension:ProcessPendingRefundPayment(RecordpaymentforAccountsPayableoutstanding)
See also https://wiki.civicrm.org/confluence/display/CRM/Refund+API (updates still required for that spec).