14 Commits
9 changed files with 55 additions and 21 deletions
+11
View File
@@ -0,0 +1,11 @@
# BTCPay Server payment gateway for Odoo 16 and 17
## Accept bitcoin payments on Odoo 16 and 17
This odoo addon allows you to accept bitcoin and Lightning Network (and other cryptocurrency) payments in your Odoo e-commerce store.
![BTCPay Server Banner](https://raw.githubusercontent.com/btcpayserver/odoo/17.0/payment_btcpay/static/description/BTCPay-Odoo-17-featured.png)
## How to install
Please find the installation instructions here:
- [Odoo 17 documentation](https://github.com/btcpayserver/odoo/blob/17.0/payment_btcpay/README.md)
- [Odoo 16 documentation](https://github.com/btcpayserver/odoo/blob/16.0/payment_btcpay/README.md)
+18 -8
View File
@@ -1,12 +1,16 @@
# payment_btcpay
# BTCPay Server payment gateway for Odoo 16.0
# BTCPay Server payment gateway for Odoo 17
## This is the module to connect Odoo 16.0 and BTCPay
## This is the module to connect Odoo 17 and BTCPay Server
This module allows you to accept bitcoin (and other cryptocurrency) payments in your Odoo e-commerce store.
![BTCPay Server Website](../payment_btcpay/static/description/BTCPayServer_org.png)
![BTCPay Server Banner](https://raw.githubusercontent.com/btcpayserver/odoo/17.0/payment_btcpay/static/description/BTCPay-Odoo-17-featured.png)
:::tip
If you use Odoo 16 you can find the documentation [here](https://github.com/btcpayserver/odoo/blob/16.0/payment_btcpay/README.md).
:::
## Install the module
* Clone our [repository](https://github.com/btcpayserver/odoo) or download the .zip from the [releases page](https://github.com/btcpayserver/odoo/releases)
* Make sure you are on branch `17.0` or downloaded a release tagged with version v17.x
* Place the `payment_btcpay` directory in your Odoo addons directory
* Install dependencies by running `pip install -r requirements.txt` (from inside the `payment_btcpay` directory)
* Restart Odoo
@@ -33,16 +37,22 @@ In the BTCPay settings form, tab "Credentials":
* Field Facade, keep default 'merchant'.
On the tab "Configuration":
* Set field "Payment Journal" to "Bank", you can click the dropdown and click on the suggestion "Bank"
* Make sure field "Payment Journal" is set to "Bank", otherwise you can click the dropdown and click on the suggestion "Bank"
* Now you can **save** the settings
![Payment Provider Settings](../payment_btcpay/static/description/BTCPayPaymentSettings.png)
Check the payment method is enabled:
* Go to **Website** -> **Configuration** -> **Payment Methods**
* Make sure "Pay with Bitcoin / Lightning Network" is active
Congrats, all done. Do some testing to be sure all works.
![Payment Provider Settings](https://raw.githubusercontent.com/btcpayserver/odoo/17.0/payment_btcpay/static/description/BTCPayPaymentSettings.png)
## How does the payment page look?
During the checkout the customers will have the option to select the payment method "Pay with Bitcoin / Lightning Network". After selecting they will be redirected to the BTCPay checkout page as shown below.
![Payment Provider](../payment_btcpay/static/description/BTCPayLooksLike.png)
![Checkout page example](https://raw.githubusercontent.com/btcpayserver/odoo/17.0/payment_btcpay/static/description/BTCPayLooksLike.png)
## Transaction BTCPay Details
@@ -51,4 +61,4 @@ In transaction object, you will find more technical information about this metho
* Invoice Id: the id of the invoice for which you want to fetch an event token
* Transaction Status: That indicates state of transaction
![Transaction Btcpay Details](../payment_btcpay/static/description/BtcpayTxDetails.png)
![Transaction details of BTCPay](https://raw.githubusercontent.com/btcpayserver/odoo/17.0/payment_btcpay/static/description/BtcpayTxDetails.png)
+4 -4
View File
@@ -6,9 +6,9 @@ from . import models
from odoo.addons.payment import setup_provider, reset_payment_provider
def post_init_hook(cr, registry):
setup_provider(cr, registry, 'btcpay')
def post_init_hook(env):
setup_provider(env, 'btcpay')
def uninstall_hook(cr, registry):
reset_payment_provider(cr, registry, 'btcpay')
def uninstall_hook(env):
reset_payment_provider(env, 'btcpay')
+3 -3
View File
@@ -1,7 +1,7 @@
#******************************************************************************
# PAYMENT BTCPAY FOR ODOO
#
# Copyright (C) 2023 Susanna Fort <susannafm@gmail.com>
# Copyright (C) 2024 Susanna Fort <susannafm@gmail.com>, ndeet
#
#******************************************************************************
#
@@ -21,11 +21,11 @@
{
'name': 'Payment Provider: BTCPay',
'summary': 'This module integrates BTCPAY - pay with Bitcoin - with Odoo v16.0',
'summary': 'This module integrates BTCPAY - pay with Bitcoin - with Odoo v17.0',
'author': 'Vandekul',
'website': 'https://github.com/btcpayserver/odoo',
'category': 'Accounting/Payment Providers',
'version': '16.0.1.0',
'version': '17.0.1.1',
'license': 'GPL-3',
'application': False,
'installable': True,
+1 -1
View File
@@ -62,7 +62,7 @@ class BTCPayController(http.Controller):
"redirectURL": redirect_url,
"notificationURL": notification_url,
"extendedNotifications": True,
"buyer": {"email": data.get('email'),
"buyer": {"email": data.get('email') or 'noemailavailable@example.com',
"name": data.get('name'),
"address1": data.get('street'),
"locality": data.get('city'),
+15 -2
View File
@@ -1,13 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo noupdate="1">
<record id="payment_method_btcpay" model="payment.method">
<field name="name">Pay with Bitcoin / Lightning Network</field>
<field name="code">btcpay</field>
<field name="active">True</field>
<field name="image" type="base64" file="payment_btcpay/static/description/icon.png"/>
<field name="support_tokenization">False</field>
<field name="support_express_checkout">False</field>
</record>
<record id="payment_provider_btcpay" model="payment.provider">
<field name="name">BTCPay payments</field>
<field name="display_as">Pay with Bitcoin / Lightning Network</field>
<field name="code">btcpay</field>
<field name="image_128" type="base64" file="payment_btcpay/static/description/icon.png"/>
<field name="module_id" ref="base.module_payment_btcpay"/>
<field name="redirect_form_view_id" ref="redirect_form"/>
<field name="module_id" ref="base.module_payment_btcpay"/>
<field name="payment_method_ids"
eval="[Command.set([
ref('payment_btcpay.payment_method_btcpay'),
])]"
/>
</record>
</odoo>
Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

+1 -1
View File
@@ -4,7 +4,7 @@
<section class="oe_container">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan">BTCPay Gateway</h2>
<h3 class="oe_slogan">This is the module to connect Odoo 16.0 and Btcpay</h3>
<h3 class="oe_slogan">This is the module to connect Odoo 17.0 and BTCPay</h3>
<div class="oe_span6">
<div class="oe_bg_img">
<img src="BTCPayServer_org.png" class="oe_picture oe_screenshot">
@@ -7,11 +7,11 @@
<field name="inherit_id" ref="payment.payment_provider_form"/>
<field name="arch" type="xml">
<group name="provider_credentials" position='inside'>
<group attrs="{'invisible': [('code', '!=', 'btcpay')]}">
<group invisible="code != 'btcpay'">
<field name="btcpay_location"/>
<field name="btcpay_pairingCode"/>
</group>
<group attrs="{'invisible': [('code', '!=', 'btcpay')]}">
<group invisible="code != 'btcpay'">
<field name="btcpay_token"/>
<field name="btcpay_privateKey"/>
<field name="btcpay_facade"/>