|
|
# Payment Module for WooCommerce
|
|
|
# CrefoPay Payment Plugin for WooCommerce on Wordpress
|
|
|
|
|
|
This is a payment module to handle payments using an iframe solution for PCI compliance.
|
|
|
## Documentation
|
|
|
|
|
|
With this single module you are able to potentially offer the following payment methods:
|
|
|
* Credit/Debit Card with and without 3D Secure
|
|
|
* Direct Debit
|
|
|
* PayPal
|
|
|
* Sofortüberweisung
|
|
|
* Bill payment
|
|
|
* Pay in Advance
|
|
|
|
|
|
You are also able to handle both b2b and b2c customers. This module will cover the following topics:
|
|
|
### English
|
|
|
|
|
|
* [Installation and Requirements](installation)
|
|
|
* [Configuration](configuration)
|
|
|
* [Basic usage covering captures, refunds](usage) etc.
|
|
|
* Notes on what templates are overwritten in the module and if what customisations may be required if the overwrites do not work |
|
|
\ No newline at end of file |
|
|
|
|
|
### German
|
|
|
|
|
|
* tbd
|
|
|
|
|
|
## Development Process Description
|
|
|
|
|
|
### Git Flow
|
|
|
|
|
|
This Plugin is under current development. To reach a permanently high quality standard we defined a development, testing and release cycle based on the git flow pattern. [Here](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) you can get further information to get a deeper understanding of git flow and it's idea.
|
|
|
|
|
|
![gitflow](uploads/df5790c532fbbe3bc68892fa3b98bc4e/gitflow.jpg)
|
|
|
|
|
|
### Definitions
|
|
|
|
|
|
The development tasks under git flow are separated into different types:
|
|
|
* Master
|
|
|
* Develop
|
|
|
* Acceptance
|
|
|
* Hotfix
|
|
|
* Feature
|
|
|
* Release
|
|
|
|
|
|
#### Master
|
|
|
|
|
|
The master branch always represents the latest stable version of the plugin.
|
|
|
|
|
|
#### Develop
|
|
|
|
|
|
The develop branch always holds a functional version with the newest features but might have some undetected bugs, because of it's might not be testet by the CrefoPay QA.
|
|
|
|
|
|
#### Acceptance
|
|
|
|
|
|
This is an internal branch that should not be used by any merchant. The branch maps the crefopay communication URLs to the CrefoPay QA automated testsystems:
|
|
|
* Production: https://acceptance02.pay-dev.de
|
|
|
* Sandbox: https://devel02.pay-dev.de
|
|
|
|
|
|
#### Hotfix
|
|
|
|
|
|
Bugs are categorized in different stages based on his priority:
|
|
|
* Blocker - Checkout affected: This kind of bugs will be fixed as soon as possible and will lead into a hotfix
|
|
|
* Critical - Main funtionality affected: This kind of bug will be fixed as soon as possible but might not directly lead into a hotfix
|
|
|
* Regular - Minor functionality and/or special szenario: This kind of bug will also be fixed as soon as possible but might stand behind other fixes with a higher priority.
|
|
|
|
|
|
A hotfix will appear everytime a critical bug has been reported.
|
|
|
|
|
|
#### Feature
|
|
|
|
|
|
A feature is a new or expanded functionality of the plugin. The ability to create a capture over the CrefoPay API based on the invoice creation in Magento2 is a feature if the plugin.
|
|
|
|
|
|
#### Release
|
|
|
|
|
|
Features will normally not being pushed to the current version as a stand alone, but at least one feature together with one or more other features and (optional) together with some hotfixes will be called release. Every release will get his own version and can be identified based on this versioning.
|
|
|
|
|
|
## Versioning
|
|
|
|
|
|
The versioning for any CrefoPay plugin or module in general is structured in three different grades:
|
|
|
* Major-Version
|
|
|
* Minor-Version
|
|
|
* Sub-Version
|
|
|
|
|
|
### Major-Version
|
|
|
|
|
|
The major release will only be increased when some main functionality has been changed. When you find a major version update, we strongly recommend to get in touch with the CrefoPay [customer service team](mailto:service@crefopay.de) before you start updating your module.
|
|
|
|
|
|
### Minor-Version
|
|
|
|
|
|
A minor release normally contains some new features.
|
|
|
|
|
|
### Sub-Version
|
|
|
|
|
|
A sub version normally comes up with a hotfix or with some very minor changes; for example some error handling within the code that makes an existing functionality more stable.
|
|
|
|
|
|
## Release Cycle
|
|
|
|
|
|
The normal release cycle is one release per month. The Release date should always be the first half of the first week of a month. If there is a hotfix or feature release depends on the issues and the tasks of the current cycle.
|
|
|
|
|
|
Every release and it's features will be documented within the plugins CHANGENLOG.md and it will be generated a tag for every version that has been pushed to master.
|
|
|
|
|
|
## Quality Assurance
|
|
|
|
|
|
Every release has to pass a predefined set of stages to keep and guarantee the high quality of the plugin. This stages are:
|
|
|
|
|
|
`Develop -> Acceptance -> Master`
|
|
|
|
|
|
Every completed feature can be pushed directly into the develop branch by follow the git flow guidelines. A feature is complete when it's own functionality has been implemented and tested. When a release and it's features are closed and it should be released into master, it will be pushed acceptance. In this context *closed* means that every single feature or hotfix has been pushed to develop branch.
|
|
|
|
|
|
After merging the develop into acceptance branch, the CrefoPay QA department will be informed and they will start their automated and some manual testing.
|
|
|
|
|
|
When QA have finished testing and haven't found any issues, the acceptance/develop branch will be pushed to master. If not already updated at this point, the CHANGELOG.md will be updated and a new tag will announce the new version. |