Improve README

This commit is contained in:
Enrique Barcelli 2023-06-29 17:24:05 +08:00
parent c52952998f
commit 13eb502c76
Signed by: kikobar
GPG key ID: 006C13A68E25D3B7

View file

@ -4,16 +4,22 @@ This project attempts to extract data from Openbravo to generate a JSON to submi
to the Banqup API of Unifiedpost.
**Requirements**
* Python installed on the machine running this application
* Credentials for accessing an Openbravo 3+ instance running with the REST API enabled
* Python installed on the machine running this application.
* Credentials for accessing an Openbravo 3+ instance running with the REST API enabled.
* The role in Openbravo used for the extraction/integration must have read access to 'Sales Invoices' and 'Product' via web services.
* Credentials for accessing the Banqup API by Unifiedpost
* Add the businessPartner id to the 'Customer code' of the customer on the 'Customers & Suppliers' section of the Banqup portal - This is critical, this programs requires this field to extract some parameters that only exist in the Banqup platform
* Add the businessPartner id to the 'Customer code' of the customer on the 'Customers & Suppliers' section of the Banqup portal - This is critical, this programs requires this field to extract some parameters that only exist in the Banqup platform.
**How to run this application**
* Copy the file `config-sample.py` to `config.py`
* Edit `config.py` with your credentials for Openbravo and Banqup
* Run `python3 extract_invoice.py <documentNo>`
Where `<documentNo>` is the human readable invoice number in Openbravo.
* Copy the file `config-sample.py` to `config.py`.
* Edit `config.py` with your credentials for Openbravo and Banqup.
* Run `python3 extract_invoice.py <documentNo>`, where `<documentNo>` is the human readable invoice number in Openbravo.
* The application will do the following:
* Fetch the invoice `<documentNo>` from Openbravo.
* Authenticate with Banqup using OAuth2, for which it will launch a webbrowser to complete the authentication. The browser will receive the response from the Banqup server including the authentication token. The user will need to 'Copy' and 'Paste' this response at the corresponding prompt in the terminal.
* Fetch the corresponding `businessPartner` from Banqup to verify its existence and correct setup.
* Build a json in compatible format with the Banqup API.
* Post the invoice to the Banqup API for the creation of the corresponding invoice in Banqup.
* Display the response from the Banqup API, confirming the success or failure of the request.
* The new invoice will be created as a 'Draft' in the Banqup portal, so that it could be further processed.