Skip to main content

An application for intagrating WebPay with oscar based e-commerce sites

Project description

Right now only the NORMAL payment method is available.

This django app provides the necessary views and functionality for integrate a WSDL WebPay payment service into adjango-oscar based site.

This package has been only tested against the chilean WebPay service.

Important notes about payment flow

Operation InitTransaction: Initializes a transaction in Webpay. In response to the invocation, a Token is generated, which uniquely represents a transaction. It is important to consider that once this method is invoked, the delivered Token has a reduced life span of 5 minutes, after which the Token is expired and can not be used in a payment.

Operation getTransactionResult: Corresponds to the operation after the init Transaction. Allows you to obtain the result of the transaction once Webpay has resolved your financial authorization

Operation acknowledgeTransaction: If the invocation is not performed within 30 seconds (regardless of the result delivered by the getTransactionResult method), Webpay will reverse the transaction, assuming that the trade was unable to report its result, thus preventing cardholder payment.

Reference

Settings

In order to use this you must provide some configurations, you can setup the methods you want to use, the methods are: NORMAL, NORMAL_MALL, CAPTURE or ONECLICK.

# Configuration example

WEBPAY_RETURN_IP_ADDRESS = '127.0.0.1'              # Ip address of the host hosting the e-commerce site.
WEBPAY_RETURN_PORT = 8000                           # Port where the server is listening for?

WEBPAY_NORMAL = {


    'ACTIVE_ENVIRON': 'INTEGRATION',                # INTEGRATION, PRODUCTION or CERTIFICATION
                                                    # This values determines which url is used
                                                    # from the 'ENVIRONMENTS' setting.

    'ENVIRONMENTS': {                               # Map the service urls to the active environment value.
        'INTEGRATION': 'https://webpay3gint.transbank.cl/WSWebpayTransaction/cxf/WSWebpayService?wsdl',
        'CERTIFICATION': 'https://webpay3gint.transbank.cl/WSWebpayTransaction/cxf/WSWebpayService?wsdl',
        'PRODUCTION': 'https://webpay3g.transbank.cl/WSWebpayTransaction/cxf/WSWebpayService?wsdl',
    },

    # The following settings are self explanatory.
    'PRIVATE_KEY':  '~/webpay_dev_certs/integracion_normal/597020000541.key',
    'PUBLIC_CERT':  '~/webpay_dev_certs/integracion_normal/597020000541.crt',
    'WEBPAY_CERT':  '~/webpay_dev_certs/integracion_normal/tbk.pem',
    'COMMERCE_CODE': '597020000541'
}

Redirecting to WebpayPaymentDetailsView

Add the following:

if payment_method.lower() == 'webpay':
       return redirect('webpay-redirect')

to the PaymentDetailsView.get method.

Including urls

Add to your urls configuration:

url(r'^checkout/', include('oscar_webpay.urls')),
url(r'^dashboard/webpay/', include(webpay_dashboard.urls))

Modifying dependencies

If you are experiencing some problems getting this to work properly, try to modify some dependencies according to this:

http://www.transbankdevelopers.cl/?m=api

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-oscar-webpay-0.2.4.post1.tar.gz (53.2 kB view details)

Uploaded Source

File details

Details for the file django-oscar-webpay-0.2.4.post1.tar.gz.

File metadata

File hashes

Hashes for django-oscar-webpay-0.2.4.post1.tar.gz
Algorithm Hash digest
SHA256 8fe9c0b1bb1010bb6203e2c662d523419603894aed76b03ffb35a4f48e0cd7be
MD5 1a1363198f7916195d96c2456b6f164b
BLAKE2b-256 6320eac111ad433f60a0810ed6517b39089097dc55137645106fed833a1f3780

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page