A payment backend module for django-SHOP, using Viveum (https://viveum.v-psp.com) as PSP.
Project description
====================
django-shop-viveum
====================
This module is a payment backend module for django-SHOP (https://github.com/divio/django-shop),
using Viveum (https://viveum.v-psp.com) as the shops payment service provider.
It can be used for credit card and other kind of payments.
Currently only payment methods are implemented, which do not require a PCI DSS certification
(https://www.pcisecuritystandards.org/) for your shop. This means that your shop never "sees" the
credit card numbers, and thus can not store and in consequence abuse them.
Installation
============
Using pip::
pip install django-shop-viveum
Viveum Configuration
====================
Get in touch with Viveum and ask for a test account. They will send you an identifier
and a password. Use the given values and log into
https://viveum.v-psp.com/ncol/test/admin_viveum.asp
this will bring you into an admin backend. All the relevant settings required to configure this
module can be fetched from the menu item
**Configuration > Technical information > Global security parameters**::
Hash algorithm: SHA-1
Character encoding: UTF-8
Enable JavaScript check on template: Yes
Allow usage of static template: Yes
Generate a 16 digit SHA-IN and a 12 digit SHA-OUT random pass phrase (``base64``
and ``/dev/urandom`` are your friends) and copy them into the given fields at
**Configuration > Technical information > Data and origin verification > SHA-IN pass phrase**::
**Configuration > Technical information > Transaction feedback**::
YES, I would like to receive transaction feedback parameters on the redirection URLs.
YES, I would like VIVEUM to display a short text to the customer on the secure payment page
Timing of the request: Always online
Request method: GET
Dynamic e-Commerce parameters Selected:
ACCEPTANCE
AMOUNT
BRAND
CARDNO
CN
CURRENCY
IP
NCERROR
ORDERID
PAYID
STATUS
SHA-OUT pass phrase: (as above)
Test the Configuration
======================
In order to run the unit tests, you must install an additional Python package,
which is not required for normal operation::
pip install requests
Unfortunately there might be an unresolved issue with SSL on requests. Please read
docs/ssl-problem.rst for details.
Run ``./runtests.sh``.
If everything worked fine, you should receive two emails, one for a successful,
and one for a declined payment.
If there is an error, check the error log at the Viveum admin interface.
Test cards
==========
During manual testing, you may not want to use a real credit card number. Here are a few official
credit card numbers for testing:
* VISA: 4111111111111111 with any expiry date in the future and any 3 digit security code.
* A number of a "stolen" card: 4111113333333333 – payment shall be refused.
Use these settings in your shop Configuration
=============================================
If all tests work fine, use these tested settings for your production environment.
* In Viveums admin interface, transfer your test account settings to production.
* In your project setting.py
* add ``viveum``, to INSTALLED_APPS.
* add ``synthesa.payment.backends.ViveumPaymentBackend`` to SHOP_PAYMENT_BACKENDS.
* copy the content of ``tests/viveum_settings.py`` into the ``settings.py`` file of
your project. In dict ``VIVEUM_PAYMENT`` change
``ORDER_STANDARD_URL`` to ``https://viveum.v-psp.com/ncol/prod/orderstandard_UTF8.asp``
CHANGES
=======
* 0.1.0: First release to the public.
* 0.3.2: Can distinguish between return status 5 and 9 and accept both.
django-shop-viveum
====================
This module is a payment backend module for django-SHOP (https://github.com/divio/django-shop),
using Viveum (https://viveum.v-psp.com) as the shops payment service provider.
It can be used for credit card and other kind of payments.
Currently only payment methods are implemented, which do not require a PCI DSS certification
(https://www.pcisecuritystandards.org/) for your shop. This means that your shop never "sees" the
credit card numbers, and thus can not store and in consequence abuse them.
Installation
============
Using pip::
pip install django-shop-viveum
Viveum Configuration
====================
Get in touch with Viveum and ask for a test account. They will send you an identifier
and a password. Use the given values and log into
https://viveum.v-psp.com/ncol/test/admin_viveum.asp
this will bring you into an admin backend. All the relevant settings required to configure this
module can be fetched from the menu item
**Configuration > Technical information > Global security parameters**::
Hash algorithm: SHA-1
Character encoding: UTF-8
Enable JavaScript check on template: Yes
Allow usage of static template: Yes
Generate a 16 digit SHA-IN and a 12 digit SHA-OUT random pass phrase (``base64``
and ``/dev/urandom`` are your friends) and copy them into the given fields at
**Configuration > Technical information > Data and origin verification > SHA-IN pass phrase**::
**Configuration > Technical information > Transaction feedback**::
YES, I would like to receive transaction feedback parameters on the redirection URLs.
YES, I would like VIVEUM to display a short text to the customer on the secure payment page
Timing of the request: Always online
Request method: GET
Dynamic e-Commerce parameters Selected:
ACCEPTANCE
AMOUNT
BRAND
CARDNO
CN
CURRENCY
IP
NCERROR
ORDERID
PAYID
STATUS
SHA-OUT pass phrase: (as above)
Test the Configuration
======================
In order to run the unit tests, you must install an additional Python package,
which is not required for normal operation::
pip install requests
Unfortunately there might be an unresolved issue with SSL on requests. Please read
docs/ssl-problem.rst for details.
Run ``./runtests.sh``.
If everything worked fine, you should receive two emails, one for a successful,
and one for a declined payment.
If there is an error, check the error log at the Viveum admin interface.
Test cards
==========
During manual testing, you may not want to use a real credit card number. Here are a few official
credit card numbers for testing:
* VISA: 4111111111111111 with any expiry date in the future and any 3 digit security code.
* A number of a "stolen" card: 4111113333333333 – payment shall be refused.
Use these settings in your shop Configuration
=============================================
If all tests work fine, use these tested settings for your production environment.
* In Viveums admin interface, transfer your test account settings to production.
* In your project setting.py
* add ``viveum``, to INSTALLED_APPS.
* add ``synthesa.payment.backends.ViveumPaymentBackend`` to SHOP_PAYMENT_BACKENDS.
* copy the content of ``tests/viveum_settings.py`` into the ``settings.py`` file of
your project. In dict ``VIVEUM_PAYMENT`` change
``ORDER_STANDARD_URL`` to ``https://viveum.v-psp.com/ncol/prod/orderstandard_UTF8.asp``
CHANGES
=======
* 0.1.0: First release to the public.
* 0.3.2: Can distinguish between return status 5 and 9 and accept both.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-shop-viveum-0.3.4.tar.gz
(15.3 kB
view details)
File details
Details for the file django-shop-viveum-0.3.4.tar.gz
.
File metadata
- Download URL: django-shop-viveum-0.3.4.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7799ee73c692653b4d1453e827681c5289a43ddd6d18e2cd438f0523ead9faf9 |
|
MD5 | ee5f5e95d574e4fc94ef21faeb4095a5 |
|
BLAKE2b-256 | e4d2d4790f9641411f4f59e6a5cf08eeffbbab95e922df63cc6570d25be88a20 |