Internal Credit System

by ,
Odoo          
v 10.0 Third Party 3

790.00 €

Live Preview
You bought this module and need support ? Click here !
Technical name pos_debt_notebook_sync
LicenseLGPL-3
Websitehttps://twitter.com/gabbasov_dinar
Read description for v 12.0 v 11.0
Included Dependencies Extra grouping options
POS Longpolling
POS Debt & Credit notebook

Internal Credit System

Organize your cash-free system for set of shops with a single payment point. E.g. at festivals, amusements parks, etc.

How it works

CASH-FREE

Use Credits to simplify multiple payment operations

EASY CONTROL

Make easy a control under the customer balances

SYNCHRONIZE

Synchronize the customer credit details across multiple POSes

ANALYSIS AND REPORT

Analyze and review all customer credit transactions.

Max Debt Limit

Step 1. Use the Max Debt Limit setting to specify should customers have to pay in advance (Max Debt = 0) or they allowed to pay later (Max Debt > 0). You can also specify different settings for different customers.

POS Payment Settings

Step 2. Specify which POSes can accept real-money Payments (cash, bank cards etc) and which ones can register usage of internal-money ("Credits") only. Note, that POS may be allowed to do both.

Customer Identification

Step 3. Take care about device to create and scan customer card. It can be RFID-chip based system or simple barcode based system.

Credits via E-commerce

Step 4. (Optional) Create "Credit" products as predefined prepayment value (e.g. 20$, 100$, etc). Also, it allows customers to make advance payment via Odoo eCommerce system.

DONE! System is ready! Whenever customer purchase goods or make a deposit, all POSes receive updated customer balance instantly.

Customer Debt/Credit History

See all client debt/credit history from POS interface directly.

Reports. Age Analysis.



For further information check Documentation tab, description of Debt Notebook module or contact us as described below.


Tested on Odoo
10.0 community
Tested on Odoo
10.0 enterprise

Internal Credit System

Installation

Configuration

Max Debt Limit

  • Go to Point of Sale >> Configuration >> Payment Methods
  • open journal form (e.g. Debt Journal)
    • click on [Edit]
    • On Point of Sale tab check the box Credit Journal
    • set Max Debt value
    • click [Save]

Default Max Debt

  • go to Point of Sale >> Settings
    • set Default Max Debt value for new customers

POS Payment

  • Go to Point of Sale >> Configuration >> Point of Sale
    • open POS
    • select Available Payment Methods
      • Debt Journal if POS will operate with credits only
      • e.g. Cash or Bank if POS may receive a real money
      • set both if POS is used to operate with credits and real money

Credit Product

  • go to Point of Sale >> Products
    • click on [Create]
    • open Invoicing tab
    • select an available journal in Journal Credit Product field
    • click [Save]

Payment Acquirer

  • open Invoicing >> Configuration >> Payments >> Payment Acquirer
  • select Payment Acquirer you are going to use, e.g. Paypal.
    • click [Edit]
    • on Configuration tab set Order Confirmation field equal to Authorize & capture the amount, confirm the SO and auto-validate the invoice on acquirer confirmation
    • click [Save]

Usage

POS sales

  • open one POS
  • open another POS as another user
  • on the first POS:
    • select customer
    • EITHER add Credit Product to an order and register usual payment (e.g. via Cash journal)
    • OR add usual products and register Debt payment. See Debt notebook module for more information.
    • click [Validate]
  • on second POS
    • open Customer list
    • find the customer
    • customer's debt/credit is updated

eCommerce sales

  • open POS
  • purchase Credit Product via website (/shop/...)
  • debt/credit value on POS is updated

Please log in to comment on this module

Odoo
there is some error
by on

Traceback (most recent call last): File "/mnt/odoo-source/odoo/http.py", line 641, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/mnt/odoo-source/odoo/http.py", line 683, in dispatch result = self._call_function(**self.params) File "/mnt/odoo-source/odoo/http.py", line 333, in _call_function return checked_call(self.db, *args, **kwargs) File "/mnt/odoo-source/odoo/service/model.py", line 101, in wrapper return f(dbname, *args, **kwargs) File "/mnt/odoo-source/odoo/http.py", line 326, in checked_call result = self.endpoint(*a, **kw) File "/mnt/odoo-source/odoo/http.py", line 941, in __call__ return self.method(*args, **kw) File "/mnt/odoo-source/odoo/http.py", line 506, in response_wrap response = f(*args, **kw) File "/mnt/odoo-source/addons/web/controllers/main.py", line 896, in call_button action = self._call_kw(model, method, args, {}) File "/mnt/odoo-source/addons/web/controllers/main.py", line 884, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/mnt/odoo-source/odoo/api.py", line 689, in call_kw return call_kw_multi(method, model, args, kwargs) File "/mnt/odoo-source/odoo/api.py", line 680, in call_kw_multi result = method(recs, *args, **kwargs) File "/mnt/addons/it-projects-llc/pos-addons/pos_debt_notebook/models.py", line 356, in open_session_cb res = super(PosConfig, self).open_session_cb() File "/mnt/odoo-source/addons/point_of_sale/models/pos_config.py", line 260, in open_session_cb 'config_id': self.id File "/mnt/odoo-source/addons/point_of_sale/models/pos_session.py", line 162, in create default_journals = pos_config.with_context(ctx).default_get(['journal_id', 'invoice_journal_id']) File "/mnt/odoo-source/odoo/models.py", line 1120, in default_get defaults[name] = field.default(self) File "/mnt/odoo-source/addons/point_of_sale/models/pos_config.py", line 34, in _default_sale_journal if journal and journal.sudo().company_id == self.env.user.company_id: File "/mnt/odoo-source/odoo/fields.py", line 915, in __get__ self.determine_value(record) File "/mnt/odoo-source/odoo/fields.py", line 1017, in determine_value record._prefetch_field(self) File "/mnt/odoo-source/odoo/models.py", line 3073, in _prefetch_field result = records.read([f.name for f in fs], load='_classic_write') File "/mnt/odoo-source/odoo/models.py", line 3017, in read self._read_from_database(stored, inherited) File "/mnt/odoo-source/odoo/models.py", line 3141, in _read_from_database cr.execute(query_str, params) File "/mnt/odoo-source/odoo/sql_db.py", line 154, in wrapper return f(self, *args, **kwargs) File "/mnt/odoo-source/odoo/sql_db.py", line 231, in execute res = self._obj.execute(query, params) ProgrammingError: column account_journal.credits_via_discount does not exist LINE 1: ...t_journal"."loss_account_id" as "loss_account_id","account_j... ^