Gate2Shop gateway for accept payments on your website.
Project description
How to install
Using pip:
$ pip install django-gate2shop
- Edit “settings.py”
add “g2s” to your “INSTALLED_APPS”
add following settings:
G2S_MERCHANT_ID = "123456"
G2S_SECRET_KEY = "YourSecretWord"
G2S_MERCHANT_SITE_ID = "1234567"
G2S_CURRENCY = 'USD'
Add to “urls.py” paths
urlpatterns = patterns('',
url(r'^g2s/g2s_form/$', 'g2s_form', name='g2s-form'),
url(r'^g2s/', include('g2s.urls')),
)
Create table in your database
$ python manage.py syncdb
$ python manage.py migrate
Create/render form
Create an instance of the form in your “views.py” and make render in your template
from g2s.forms import G2SForm
def g2s_form(request):
# this is what user wants to buy
items_list = [
{
'item_name': 'Test',
'item_amount': 1.11,
'item_quantity': 1,
},
]
# this data you can get from user profile or from custom user model
payment_details = {
'country': 'Russia',
'city': 'Moscow',
'address1': 'Moscow, Arbat',
'zip': '121099',
'first_name': 'Ivan',
'last_name': 'Ivanov',
'email': 'ivanov.ivan@yandex.ru',
'phone1': '+79031234567',
'total_amount': 1.11,
'user_token_id': 1,
'productId': 1,
}
form = G2SForm(items_list, initial=payment_details)
return render(request, "g2s/order.html", {"form": form})
In “order.html”:
{{ form.render }}
After payment G2S sends a signal to your server (DMN URL). The transaction will be saved in the database, then will be send a signal. You can use it to process your own actions (add amount to users account, etc..)
from django.forms.models import model_to_dict
from g2s.signals import g2s_payment_was_successful
from pprint import pprint
def transaction_result(sender, **kwargs):
if sender.Status == 'APPROVED':
pprint(model_to_dict(sender))
g2s_payment_was_successful.connect(
transaction_result, dispatch_uid="demo.models.transaction_result")
Demo installation:
$ pip install virtualenvwrapper
$ source /usr/local/bin/virtualenvwrapper.sh
$ mkvirtualenv django-gate2shop
$ git clone https://github.com/gotlium/django-gate2shop.git
$ cd django-gate2shop
$ python setup.py develop
$ cd demo
$ pip install -r requirements.txt
$ python manage.py syncdb --noinput && python manage.py migrate --noinput
$ python manage.py runserver >& /tmp/runserver.log &
$ xdg-open http://127.0.0.1:8000/g2s/
Full Gateway Specification available at: http://www.g2s.com/documentation/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-gate2shop-1.0.1.tar.gz
(14.7 kB
view hashes)
Built Distribution
Close
Hashes for django_gate2shop-1.0.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7ade7c1b72b00d0d609522388b3ca27bcf9541960419535530718eec8c8dd74 |
|
MD5 | 0e5c0ffb411e89698a4ab48ee4ee5cff |
|
BLAKE2b-256 | 8f676289996b46081bbfdf2f610321eb61105ec87f4ea7c778245585ac61d119 |