Skip to main content

A simple and modular django app to help with Paytm checkout and custom checkout

Project description

Django Paytm Checkout

A simple modular approach for Paytm's checkout and custom checkout

Documentation is yet to be done

This is currently in beta phase

Installation

Use pip to install from PyPI:

pip install django-paytm-checkout

Configuration

Configure your django project by adding the following in your settings:

PAYTM_MERCHANT_ID = 'YOUR_PAYTM_MERCHANT_ID'
PAYTM_MERCHANT_KEY = 'YOUR_PAYTM_MERCHANT_KEY'
PAYTM_INDUSTRY = 'YOUR_INDUSTRY_TYPE'
PAYTM_WEBSITE = 'YOUR_PAYTM_WEBSITE'

Setting the environment:

PAYTM_DEBUG = True 
# default: True (for staging)
# False (for production)

These are optional settings, change if it not the same as default:

PAYTM_CHANNEL_WEBSITE = ''  # default: WEB
PAYTM_CHANNEL_MOBILE_APP = ''  # default: WAP

PAYTM_STAGING_DOMAIN = ''  # default: securegw-stage.paytm.in
PAYTM_PRODUCTION_DOMAIN = ''  # default: securegw.paytm.in

Using Default application

Add the following into your urls.py

from django.urls import path, include

urlpatterns = [
    path('paytm/', include('paytm.urls', namespace='paytm')),
]

Customising views

You can override all the Generic custom views

ex: Customising and using the initiate view

from django.conf import settings as django_settings
from django.shortcuts import render, Http404

from paytm.checkout.views import GenericInitiatePaymentView
from paytm.models import Item


class InitiatePaymentView(GenericInitiatePaymentView):
    """Wrapper for testing"""
    include_payment_charge = False
    channel = 'WEB'

    def get_amount(self):
        item_id = self.request.POST['item']
        item = Item.objects.get(pk=item_id)
        return item.price

    def get(self, request):
        if not django_settings.DEBUG:
            raise Http404

        self.request = request
        return render(request, 'paytm/checkout/index.html', {
            'items': Item.objects.all()
        })

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for django-paytm-checkout, version 0.0.3
Filename, size File type Python version Upload date Hashes
Filename, size django_paytm_checkout-0.0.3-py3-none-any.whl (15.4 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size django-paytm-checkout-0.0.3.tar.gz (10.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page