diff --git a/ebill_paynet/messages/invoice-2013A-invocloud.xml b/ebill_paynet/messages/invoice-2013A-invocloud.xml
index fecf085..4d278da 100644
--- a/ebill_paynet/messages/invoice-2013A-invocloud.xml
+++ b/ebill_paynet/messages/invoice-2013A-invocloud.xml
@@ -60,7 +60,7 @@
{{ bank.sanitized_acc_number }}
{{ bank.acc_holder_name or bank.partner_id.name }}
{# Is this the default for e-banking customers ? -#}
- 209
+ {{bank.bank_id.clearing}}
diff --git a/ebill_paynet/models/account_invoice.py b/ebill_paynet/models/account_invoice.py
index 9b4721b..616a91b 100644
--- a/ebill_paynet/models/account_invoice.py
+++ b/ebill_paynet/models/account_invoice.py
@@ -25,7 +25,7 @@ class AccountInvoice(models.Model):
if self.transmit_method_id == paynet_method:
contract = self.partner_id.get_active_contract(self.transmit_method_id)
if contract:
- self.invoice_partner_bank_id = (
+ self.partner_bank_id = (
contract.paynet_service_id.partner_bank_id
)
@@ -106,28 +106,26 @@ class AccountInvoice(models.Model):
self.ensure_one()
return []
- def log_invoice_accepted_by_system(self):
+ def log_invoice_accepted_by_system(self, provider = False):
""" """
self.activity_feedback(
["ebill_paynet.mail_activity_dws_error"],
feedback="It worked on a later try",
)
- self.message_post(body=_("Invoice accepted by the Paynet system"))
+ self.message_post(body=_("Invoice accepted by the %s system" % (provider)))
self.invoice_export_confirmed = True
- def log_invoice_refused_by_system(self):
+ def log_invoice_refused_by_system(self, provider = False):
""" """
activity_type = "ebill_paynet.mail_activity_dws_error"
activity = self.activity_reschedule(
[activity_type], date_deadline=fields.Date.today()
)
- values = {}
+
if not activity:
- message = self.env.ref("ebill_paynet.dws_reject_invoice")._render(
- values=values
- )
+ message = _("The %s system rejected the eBill that was send." % (provider))
activity = self.activity_schedule(
- activity_type, summary="Invoice rejected by Paynet", note=message
+ activity_type, summary="Invoice rejected by %s" % (provider), note=message
)
# error_log = values.get("error_detail")
# if not error_log:
diff --git a/ebill_paynet/models/paynet_invoice_message.py b/ebill_paynet/models/paynet_invoice_message.py
index 3aafb42..ceb248f 100644
--- a/ebill_paynet/models/paynet_invoice_message.py
+++ b/ebill_paynet/models/paynet_invoice_message.py
@@ -183,8 +183,9 @@ class PaynetInvoiceMessage(models.Model):
def update_invoice_status(self):
"""Update the export status in the chatter."""
+ provider = self.service_id.service_provider if self.service_id.service_provider else 'No provider chosen'
for message in self:
if message.state == "done":
- message.invoice_id.log_invoice_accepted_by_system()
+ message.invoice_id.log_invoice_accepted_by_system(provider)
elif message.state in ["reject", "error"]:
- message.invoice_id.log_invoice_refused_by_system()
+ message.invoice_id.log_invoice_refused_by_system(provider)
diff --git a/ebill_paynet/models/paynet_service.py b/ebill_paynet/models/paynet_service.py
index b3326a3..ad2e358 100644
--- a/ebill_paynet/models/paynet_service.py
+++ b/ebill_paynet/models/paynet_service.py
@@ -53,7 +53,7 @@ class PaynetService(models.Model):
readonly=True,
)
active = fields.Boolean(default=True)
-
+
#Adjustment to use InvoCloud
service_provider = fields.Selection(
selection=[("paynet", "Paynet"), ("invocloud", "InvoCloud")],
@@ -61,7 +61,13 @@ class PaynetService(models.Model):
default="paynet",
help="There are some specific diference between provider",
)
-
+
+ @api.onchange('service_provider')
+ def _onchange_fill_provider_url(self):
+ if self.service_provider == 'invocloud':
+ self.url = 'https://api.invohub.ch/dws'
+ else:
+ self.url = 'https://dws.paynet.ch/DWS/DWS'
@api.depends("use_test_service")
def _compute_url(self):