A third party has partially completed a module for Magento to integrate with a specific payment gateway. It can transact payments at checkout as expected. However, functionality is missing to take a delayed payment at point of dispatch rather than an immediate payment at point of sale.
We need someone to complete the missing code to add this functionality. The module must accept XML input from an external system in a specific format, e.g.:
<paymentRequest date="2011-07-08 14:47:59">
<order externalReference = "100000467">
<shipment externalReference = "100000467-1">
<orderLine product="YFCANVASKITTRIPLE" quantity="2">
It must then look up the referenced order in Magento and interact with the payment gateway using API functions we will provide, so that payment for the full value of the order is taken from the card supplied at checkout.
Depending on the outcome of the payment, the module must return a success or failure response to the external system via XML, e.g.:
It will also be necessary to verify whether the checkout process is correctly pre-authing and storing the card using the payment gateway's API functions. Without this, it will not be possible to transact the card at a later time.
The payment gateway in question is our own in-house solution, so we will provide documentation and support for the required API functions. Likewise, the external system generating the delayed payment requests is supported by a third-party. The missing link is the interaction between Magento and the payment gateway.