Forum OpenACS Q&A: Response to online reservations and payments

Collapse
Posted by Bart Teeuwisse on
Titi, the payment service contract is a contract much like the search service contract. It defines a contract (or API) for financial transactions such as charging, crediting, voiding etc. A contract can have several implementations each implementing the defined transactions differently. E.g. the Authorize.net implementation would use the Authorize.net gateway to perform the actual transactions.

Other packages can use the contract to access a payment gateway of their choice. The payment service contract does not cover general billing issues such as recurring billing cycles, discounts or late fees. The service contract governs only basic financial transactions.

Your general_billing package could make use the payment service contract when it becomes available. Please do keep the community informed about the general_billing package. It sounds to me that the general_billing package could extend the payment service contract and offer general billing handling capabilities to other packages.