Browse Source

[ADD] Initial Commit

pull/81/head
SHEREEF PT 8 years ago
parent
commit
e2d6560039
  1. 25
      payment_wepay_gateway/__init__.py
  2. 43
      payment_wepay_gateway/__openerp__.py
  3. 3
      payment_wepay_gateway/controllers/__init__.py
  4. 117
      payment_wepay_gateway/controllers/main.py
  5. 18
      payment_wepay_gateway/data/wepay.xml
  6. 24
      payment_wepay_gateway/models/__init__.py
  7. 45
      payment_wepay_gateway/models/models.py
  8. 45
      payment_wepay_gateway/readme.md
  9. 2
      payment_wepay_gateway/security/ir.model.access.csv
  10. BIN
      payment_wepay_gateway/static/description/apidashboard.png
  11. BIN
      payment_wepay_gateway/static/description/banner.jpg
  12. BIN
      payment_wepay_gateway/static/description/checkoutconfirm.png
  13. BIN
      payment_wepay_gateway/static/description/checkoutiframe.png
  14. BIN
      payment_wepay_gateway/static/description/cybro_logo.png
  15. BIN
      payment_wepay_gateway/static/description/icon.png
  16. 159
      payment_wepay_gateway/static/description/index.html
  17. BIN
      payment_wepay_gateway/static/description/paymentshop.png
  18. BIN
      payment_wepay_gateway/static/description/shopconfirm.png
  19. BIN
      payment_wepay_gateway/static/description/transaction.png
  20. BIN
      payment_wepay_gateway/static/description/wepaybackend.png
  21. BIN
      payment_wepay_gateway/static/description/wepaytransaction.png
  22. BIN
      payment_wepay_gateway/static/src/img/wepay_icon.png
  23. 29
      payment_wepay_gateway/views/templates.xml
  24. 37
      payment_wepay_gateway/views/views.xml

25
payment_wepay_gateway/__init__.py

@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2017-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author:Cybrosys Technologies (<www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import models
import controllers

43
payment_wepay_gateway/__openerp__.py

@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2017-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Hilar AK(<hilar@cybrosys.in>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': "WePay Payment Gateway",
'version': '9.0.1.0.0',
'summary': """Wepay Payment Gateway.""",
'description': """Payment Acquirer: Wepay""",
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'website': "http://cybrosys.com/",
'category': 'eCommerce',
'depends': ['base', 'payment', 'website_sale'],
'data': [
'views/views.xml',
'views/templates.xml',
'data/wepay.xml',
],
'images': ['static/description/banner.jpg'],
'license': 'LGPL-3',
'installable': True,
'application': True
}

3
payment_wepay_gateway/controllers/__init__.py

@ -0,0 +1,3 @@
# -*- coding: utf-8 -*-
import main

117
payment_wepay_gateway/controllers/main.py

@ -0,0 +1,117 @@
# -*- coding: utf-8 -*-
import logging
import pprint
import requests
import werkzeug
import json
from openerp import http, SUPERUSER_ID
from openerp.http import request
from openerp.addons.payment.models.payment_acquirer import ValidationError
_logger = logging.getLogger(__name__)
class WepayController(http.Controller):
@http.route(['/wepay/checkout'], type='http', auth='none', csrf=None, website=True)
def checkout(self, **post):
"""
Function which creates the checkout iframe after clicking on PayNow Button. It requires
wepay account id, and access tocken to create the checkout iframe.
Check https://developer.wepay.com/api-calls/checkout#create for more Information.
redirect and the callback_uri must be a full URL and must not include localhost or wepay.com.
redirect_uri must be a full uri (ex http://www.example.com) if you are in production mode.
:param post:
:return: Checkout uri provided after creating checkout, response from /checkout/create
"""
_logger.info('Wepay datas %s', pprint.pformat(post)) # debug
cr, uid, context, env = request.cr, SUPERUSER_ID, request.context, request.env
acquirer = env['payment.acquirer'].sudo().browse(eval(post.get('acquirer')))
currency = env['res.currency'].sudo().browse(eval(post.get('currency_id'))).name
if currency not in ['CAD', 'GBP', 'USD']:
_logger.info("Invalid parameter 'currency' expected one of: 'CAD', 'GBP', 'USD'")
return request.redirect('/shop/cart')
url = "https://stage.wepayapi.com/v2/checkout/create" if acquirer.environment == 'test'\
else "https://wepayapi.com/v2/checkout/create"
base_url = request.env['ir.config_parameter'].get_param('web.base.url')
return_url = base_url + '/wepay/checkout/confirm'
payload = json.dumps({
"account_id": int(acquirer.wepay_account_id),
"amount": post.get('amount') or '',
"type": "goods", #Possible values:, goods, service, donation, event, and personal
"currency": currency,
"short_description": "Payment From Odoo E-commerce",
"long_description": "Payment From Odoo E-commerce",
"email_message": {
"to_payer": "Please contact us at 555-555-555 if you need assistance.",
"to_payee": "Please note that we cover all shipping costs."
},
"callback_uri": return_url,#'http://example.com',
"reference_id": post.get('reference'),
"auto_release": True,
"hosted_checkout": {
"redirect_uri": return_url,
"shipping_fee": 0,
"mode": "regular",
"prefill_info": {
"email": post.get('partner_email'),
"name": post.get('billing_partner_name') or post.get('partner_name'),
"address": {
"address1": post.get("billing_partner_address") or '',
"address2": post.get("billing_partner_address") or '',
"city": post.get('billing_partner_city') or '',
"region": post.get("billing_partner_state") or '',
"postal_code": post.get('billing_partner_zip') or '',
"country": env['res.country'].sudo().browse(eval(post.get("billing_partner_country_id"))).code or ''
}
}
},
})
headers = {
'content-type': "application/json",
'authorization': "Bearer %s" % acquirer.wepay_access_tocken.replace(" ", ""),
'cache-control': "no-cache",
}
response = requests.request("POST", url, data=payload, headers=headers)
vals = json.loads(response.text)
_logger.info(pprint.pformat(vals))
return werkzeug.utils.redirect(vals.get('hosted_checkout')['checkout_uri'])
@http.route(['/wepay/checkout/confirm'], type='http', auth='none', csrf=None, website=True)
def checkout_confirm(self, **post):
"""
route which serves when a transaction is completed by wepay through checkout iframe, which we defines the
return uri while creating wepay checkout. ie, redirect_uri in hosted_checkout dict.
released,authorized are the successfull transactions and cancelled,falled are the error responses.
:param post:
:return: /shop/payment/validate if success else /shop
"""
cr, uid, context, env = request.cr, SUPERUSER_ID, request.context, request.env
acquirer = env['payment.acquirer'].sudo().search([('provider', '=', 'wepay')])
url = "https://stage.wepayapi.com/v2/checkout/" if acquirer and acquirer.environment == 'test' \
else "https://wepayapi.com/v2/checkout/"
headers = {
'content-type': "application/json",
'authorization': "Bearer %s" % acquirer.wepay_access_tocken.replace(" ", ""),
'cache-control': "no-cache",
}
tx = request.website.sale_get_transaction()
tx.sudo().wepay_checkout_id = post.get('checkout_id')
response = requests.request("POST", url, data=json.dumps(post), headers=headers)
vals = json.loads(response.text)
_logger.info(pprint.pformat(vals))
if vals.get('state') == 'authorized':
tx.state = 'done'
tx.wepay_checkout_id = vals.get('checkout_id')
tx.sale_order_id.with_context(dict(context, send_email=True)).action_confirm()
return request.redirect('/shop/payment/validate')
elif vals.get('state') in ['cancelled', 'falled']:
tx.state = 'error'
return request.redirect('/shop')
elif vals.get('state') in ['released']:
tx.state = 'pending'
tx.wepay_checkout_id = vals.get('checkout_id')
tx.sale_order_id.with_context(dict(context, send_email=True)).action_confirm()
return request.redirect('/shop/payment/validate')

18
payment_wepay_gateway/data/wepay.xml

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<record id="payment_wepay_acquirer" model="payment.acquirer">
<field name="name">WePay</field>
<field name="image" type="base64" file="payment_wepay_gateway/static/description/icon.png"/>
<field name="provider">wepay</field>
<field name="company_id" ref="base.main_company"/>
<field name="view_template_id" ref="wepay_button"/>
<field name="environment">test</field>
<field name="pre_msg"><![CDATA[
<p>You will be redirected to the Wepay payment window after clicking on the payment button.</p>]]></field>
<field name="wepay_merchant_id">dummy</field>
<field name="wepay_account_id">dummy</field>
<field name="wepay_access_tocken">dummy</field>
</record>
</data>
</openerp>

24
payment_wepay_gateway/models/__init__.py

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2017-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author:Cybrosys Technologies (<www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import models

45
payment_wepay_gateway/models/models.py

@ -0,0 +1,45 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2017-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author:Cybrosys Technologies (<www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import logging
from openerp import models, fields, _
_logger = logging.getLogger(__name__)
class Wepay(models.Model):
_inherit = 'payment.acquirer'
def _get_providers(self, cr, uid, context=None):
providers = super(Wepay, self)._get_providers(cr, uid, context=context)
providers.append(['wepay', 'WePay'])
return providers
wepay_merchant_id = fields.Char("Client Id")
wepay_account_id = fields.Char("Account Id")
wepay_access_tocken = fields.Char("Access Token")
class WepayTransaction(models.Model):
_inherit = "payment.transaction"
wepay_checkout_id = fields.Char("Wepay Checkout Id")
acquirer_name = fields.Selection(related='acquirer_id.provider')

45
payment_wepay_gateway/readme.md

@ -0,0 +1,45 @@
# Wepay Payment Gateway
Wepay Payment Acquirer act as a new payment method in odoo e-commerce and easy checkout functionality with two steps.
- We have two modes test & production
- Test Url - https://stage.wepay.com/
- Production mode - https://www.wepay.com/
- Follow here to create test account https://stage.wepay.com/register/
- Follow here to create Production account https://www.wepay.com/register/
- expected one of currencies 'CAD', 'GBP', 'USD'
### Depends
Ecommerce, Website, Payment modules in odoo
### Tech
* [Python] - Models,Controllers
* [XML] - Odoo website templates, views
### Installation
- www.odoo.com/documentation/9.0/setup/install.html
- Install our custom addon, which also installs its depends [website, website_sale, payment]
### Usage
> Provide Wepay test or active account credentials.
> Account id, access_tocken, client id will be get after creating a client account on wepay.
> Follow https://support.wepay.com/hc/en-us/articles/203609673-How-do-I-set-up-my-WePay-account- for account creation.
> Wepay Support https://support.wepay.com/hc/en-us/articles/203609503-WePay-FAQ
> Publish wepay acquirer for odoo e-commerce.
> redirect and the callback_uri must be a full URL and must not include localhost or wepay.com.
### References
https://developer.wepay.com/
https://www.wepay.com/developer
https://www.wepay.com/developer/register
https://stage-go.wepay.com/
https://go.wepay.com/
License
----
GNU LESSER GENERAL PUBLIC LICENSE, Version 3 (LGPLv3)
(http://www.gnu.org/licenses/agpl.html)

2
payment_wepay_gateway/security/ir.model.access.csv

@ -0,0 +1,2 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_payment_wepay_gateway,payment_wepay_gateway.payment_wepay,model_payment_wepay_gateway,,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_payment_wepay_gateway payment_wepay_gateway.payment_wepay model_payment_wepay_gateway 1 0 0 0

BIN
payment_wepay_gateway/static/description/apidashboard.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

BIN
payment_wepay_gateway/static/description/banner.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
payment_wepay_gateway/static/description/checkoutconfirm.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

BIN
payment_wepay_gateway/static/description/checkoutiframe.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
payment_wepay_gateway/static/description/cybro_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
payment_wepay_gateway/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

159
payment_wepay_gateway/static/description/index.html

@ -0,0 +1,159 @@
<section class="oe_container oe_dark">
<h2 class="oe_slogan" style="margin-top:20px;" >Wepay Payment Gateway</h2>
<h4 class="oe_slogan" style="font-size: 23px;">Author : Cybrosys Techno Solutions , www.cybrosys.com</h4>
</section>
<section class="oe_container">
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Expected one of currencies 'CAD', 'GBP', 'USD'</b></h2>
</div>
</div>
</div>
<div class="oe_container oe_dark">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Wepay Account Dashboard</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="apidashboard.png">
</div>
</div>
</div>
</div>
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Configure Wepay backend and Provide specified credentials</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="wepaybackend.png">
</div>
</div>
</div>
</div>
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Checkout Form and Wepay Payment Method</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="paymentshop.png">
</div>
</div>
</div>
</div>
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Wepay Checkout Iframe</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="checkoutiframe.png">
</div>
</div>
</div>
</div>
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Confirm Wepay Checkout</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="checkoutconfirm.png">
</div>
</div>
</div>
</div>
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Sale order status after successfull Payment</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="shopconfirm.png">
</div>
</div>
</div>
</div>
<div class="oe_container">
<div class="row mt32 o_animate o_animate_in_children o_animate_offset_min"
style="animation-name: none; visibility: hidden; animation-play-state: paused;">
<div class="col-md-5 col-md-offset-1" style="transition-delay: 0ms;">
<h2 class=" mt32 mb16"><b>Payment Transaction and Wepay checkout Id</b></h2>
</div>
<div class="col-md-6" style="transition-delay: 500ms;">
<div class=" oe_demo oe_picture oe_screenshot">
<img style="max-width: 100%;-moz-transform: scale(1.2);-webkit-transform: scale(1.2); -o-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2);"
src="transaction.png">
</div>
</div>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<h2 class="oe_slogan" style="margin-top:20px;" >Need Any Help?</h2>
<div class="oe_slogan" style="margin-top:10px !important;">
<div>
<a class="btn btn-primary btn-lg mt8"
style="color: #FFFFFF !important;border-radius: 0;" href="http://www.cybrosys.com"><i
class="fa fa-envelope"></i> Email </a> <a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;"
href="http://www.cybrosys.com/contact/"><i
class="fa fa-phone"></i> Contact Us </a> <a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;"
href="http://www.cybrosys.com/odoo-customization-and-installation/"><i
class="fa fa-check-square"></i> Request Customization </a>
</div>
<br>
<img src="cybro_logo.png" style="width: 190px; margin-bottom: 20px;" class="center-block">
<div>
<a href="https://twitter.com/cybrosys" target="_blank"><i class="fa fa-2x fa-twitter" style="color:white;background: #00a0d1;width:35px;"></i></a></td>
<a href="https://www.linkedin.com/company/cybrosys-technologies-pvt-ltd" target="_blank"><i class="fa fa-2x fa-linkedin" style="color:white;background: #31a3d6;width:35px;padding-left: 3px;"></i></a></td>
<a href="https://www.facebook.com/cybrosystechnologies" target="_blank"><i class="fa fa-2x fa-facebook" style="color:white;background: #3b5998;width:35px;padding-left: 8px;"></i></a></td>
<a href="https://plus.google.com/106641282743045431892/about" target="_blank"><i class="fa fa-2x fa-google-plus" style="color:white;background: #c53c2c;width:35px;padding-left: 3px;"></i></a></td>
<a href="https://in.pinterest.com/cybrosys" target="_blank"><i class="fa fa-2x fa-pinterest" style="color:white;background: #ac0f18;width:35px;padding-left: 3px;"></i></a></td>
</div>
</div>
</section>

BIN
payment_wepay_gateway/static/description/paymentshop.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

BIN
payment_wepay_gateway/static/description/shopconfirm.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

BIN
payment_wepay_gateway/static/description/transaction.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

BIN
payment_wepay_gateway/static/description/wepaybackend.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 KiB

BIN
payment_wepay_gateway/static/description/wepaytransaction.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 KiB

BIN
payment_wepay_gateway/static/src/img/wepay_icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

29
payment_wepay_gateway/views/templates.xml

@ -0,0 +1,29 @@
<openerp>
<data>
<template id="wepay_button" name="Wepay Payment Button">
<form t-if="acquirer.wepay_account_id and acquirer.wepay_merchant_id" action="/wepay/checkout" method="post" target="_self">
<input type="hidden" name="acquirer" t-att-value="acquirer.id"/>
<input type="hidden" name="partner_name" t-att-value="partner_name"/>
<input type="hidden" name="reference" t-att-value="reference"/>
<input type="hidden" name="billing_partner_id" t-att-value="billing_partner_id"/>
<input type="hidden" name="billing_partner_name" t-att-value="billing_partner_name"/>
<input type="hidden" name="billing_partner_last_name" t-att-value="billing_partner_last_name"/>
<input type="hidden" name="billing_partner_address" t-att-value="billing_partner_address"/>
<input type="hidden" name="billing_partner_zip" t-att-value="billing_partner_zip"/>
<input type="hidden" name="street" t-att-value="street"/>
<input type="hidden" name="street2" t-att-value="street2"/>
<input type="hidden" name="currency_id" t-att-value="currency_id"/>
<input type="hidden" name="billing_partner_country_id" t-att-value="billing_partner_country_id"/>
<input type="hidden" name="billing_partner_city" t-att-value="billing_partner_city"/>
<input type="hidden" name="custom" t-att-value="custom"/>
<input type="hidden" name="partner_email" t-att-value="partner_email"/>
<input type="hidden" name="amount" t-att-value="amount"/>
<button type="submit" width="100px"
t-att-class="submit_class">
<img t-if="not submit_txt" src="/payment_wepay_gateway/static/description/icon.png"/>
<span t-if="submit_txt"><t t-esc="submit_txt"/> <span class="fa fa-long-arrow-right"/></span>
</button>
</form>
</template>
</data>
</openerp>

37
payment_wepay_gateway/views/views.xml

@ -0,0 +1,37 @@
<openerp>
<data>
<record id="acquirer_form_wepay" model="ir.ui.view">
<field name="name">Wepay Acquirer Form</field>
<field name="model">payment.acquirer</field>
<field name="inherit_id" ref="payment.acquirer_form"/>
<field name="arch" type="xml">
<xpath expr='//group[@name="acquirer"]' position='after'>
<group attrs="{'invisible': [('provider', '!=', 'wepay')]}">
<field name="wepay_account_id"/>
<field name="wepay_merchant_id"/>
<field name="wepay_access_tocken" password="1"/>
<a colspan="2" href="https://support.wepay.com/hc/en-us/articles/203609673-How-do-I-set-up-my-WePay-account-"
target="_blank">How to configure your Wepay account?</a>
<a colspan="2" href="https://support.wepay.com/hc/en-us/articles/203609503-WePay-FAQ"
target="_blank">For more support</a>
</group>
</xpath>
</field>
</record>
<record id="transaction_form_extend" model="ir.ui.view">
<field name="name">Payment Transaction View Extend</field>
<field name="model">payment.transaction</field>
<field name="inherit_id" ref="payment.transaction_form"/>
<field name="arch" type="xml">
<field name="reference" position="after">
<field name="acquirer_name" invisible="1"/>
<field name="wepay_checkout_id" string="Wepay Checkout Id"
attrs="{'invisible': [('acquirer_name', '!=', 'wepay')]}"/>
</field>
</field>
</record>
</data>
</openerp>
Loading…
Cancel
Save