Adds the execution of a forms processor when a payment processor reports that the transaction for a contribution is completed.
## Forms Processor
The formprocessor that can be configured needs one parameter with the technical name `id`. This is filled with the contribution id.
## Configuration
You can configure the extension at the following url `https://<<yourcivirmserver>>/civicrm/contributioncompletetransaction_formprocessor/settings`
You can also reach the screen, using the Administration Console, looking in the CiviContribute Section and click on the _Contribution Complete Transaction_ entry.
In this configuration screen you can select the forms processor and decide on the payment processor on which it must executed.
![Settings Screen](img/settingsscreen.png)
## Technicals details
The Contribution api has an extra method `completetransaction`. This method is called when a payment is processed. This extension uses a hook to execute the formsprocessor after the call is executed.
## Possible improvements
* The forms processor could be extended that is also used the transaction identifier, and the payment processor.
* The settings screen can be made more convenient by facilitating the selection of the forms processor name instead of relying on an agreed name.
## The known unknowns
* It is not known that when the bank cancels a transaction this `contribution.completetransaction` is also called.