Skip to content

Commit a49e762

Browse files
mial-odooStraubCreativeFelicious
authored andcommitted
[ADD] inventory: Create envia_shipping.rst
This PR is to fill the info regarding the new Envia shipping connector closes #12405 X-original-commit: 3990bd1 Signed-off-by: Miguel Angel Lopez (mial) <[email protected]> Co-authored-by: StraubCreative <[email protected]> Co-authored-by: Felicia Kuan <[email protected]>
1 parent ae9030b commit a49e762

File tree

8 files changed

+305
-2
lines changed

8 files changed

+305
-2
lines changed

content/applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration.rst

+1
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ delivery order. To add or change the delivery method on the delivery itself, go
7575
setup_configuration/labels
7676
setup_configuration/bpost
7777
setup_configuration/dhl_credentials
78+
setup_configuration/envia_shipping
7879
setup_configuration/fedex
7980
setup_configuration/sendcloud_shipping
8081
setup_configuration/starshipit_shipping
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,300 @@
1+
=====================
2+
Envia.com integration
3+
=====================
4+
5+
Envia.com is a shipping service that connects businesses with multiple carriers in Odoo. Key
6+
features include:
7+
8+
- **Multi-carrier & international shipping**: Compare rates across carriers and select the best
9+
option for domestic or global shipments.
10+
- **Automated label generation**: Generate shipping labels at order confirmation.
11+
- **Real-time rate calculation**: Fetch rates based on package details and destination.
12+
13+
Setup in Envia
14+
==============
15+
16+
To integrate `Envia.com <https://www.envia.com>`_ with Odoo, first create an account and activate
17+
the necessary shipping carriers. Then, obtain the API credentials, which is used to connect
18+
Envia.com to the Odoo database.
19+
20+
Create an account and activate carriers
21+
---------------------------------------
22+
23+
Begin by going to `Envia.com <https://www.envia.com>`_.
24+
25+
After signing in, in the left sidebar, click :menuselection:`Settings --> Print Options and
26+
Carriers`. Next, select the country to set the currency and display available shipping carriers.
27+
28+
.. important::
29+
When signing up, make sure to select the correct language **and** country in the upper right-hand
30+
corner. This affects the currency of the account!
31+
32+
.. image:: envia_shipping/envia-registry-process.png
33+
:alt: Registry process in website with Envia.com.
34+
35+
After deciding on the desired carrier, click :guilabel:`Activate`, then click :guilabel:`Services`
36+
to select the carrier's available shipping options.
37+
38+
.. tip::
39+
Billing is always processed in the currency of the country that matches the primary billing
40+
address. If the company operates in multiple countries, consider creating separate accounts for
41+
each location.
42+
43+
.. note::
44+
Envia will send an SMS or WhatsApp message to confirm the email address and phone number.
45+
46+
.. image:: envia_shipping/carriers-and-services.png
47+
:alt: Select carrier services.
48+
49+
Generate Envia.com credentials
50+
------------------------------
51+
52+
Go to `Envia.com <https://www.envia.com>`_, navigate to :menuselection:`Developers --> API Keys`, on
53+
the left menu, then click :guilabel:`add` to generate a new key.
54+
55+
This key is required to authenticate Odoo's connection with Envia.com. Retrieve it at any time by
56+
returning to the :guilabel:`API Keys` section.
57+
58+
.. image:: envia_shipping/envia-token.png
59+
:alt: API Keys in Envia.com.
60+
61+
Setup in Odoo
62+
=============
63+
64+
:ref:`Install <general/install>` the :guilabel:`Envia Shipping` (`delivery_envia`) module, and
65+
proceed to the following sections to configure the integration in Odoo.
66+
67+
Envia.com shipping connector configuration
68+
------------------------------------------
69+
70+
After activating the Envia.com connector, create a delivery method by going to
71+
:menuselection:`Inventory --> Configuration --> Delivery Methods` and click :guilabel:`New`.
72+
73+
Fill out the following form fields:
74+
75+
- :guilabel:`Shipping Method`: Name of the shipping method, e.g. `Envia.com`.
76+
- :guilabel:`Provider`: Select :guilabel:`Envia` from the drop-down menu.
77+
- :guilabel:`Delivery Product`: The product listed on the sales order as the delivery charge. A
78+
specific delivery product for Envia.com must be created.
79+
- In the :guilabel:`Envia Configuration` tab, enter the :guilabel:`Envia Production Access Token`.
80+
- In the :guilabel:`Envia Configuration` tab, enter the :guilabel:`Envia Sandbox Access Token`.
81+
- :guilabel:`Insurance percentage`: If insurance is needed, place a percentage of the value to
82+
insure. If not, leave it as 0. Keep in mind that the insurance price is calculated only after the
83+
label has been generated, including for LTL shipments.
84+
85+
.. tip::
86+
It is mandatory to fill both the production and sandbox tokens, but it could be left as a random
87+
character as it is not validated at this point.
88+
89+
Additional considerations for the :guilabel:`Envia Default Package`:
90+
91+
- The package is specified in :guilabel:`mm` and :guilabel:`kg`. The weight refers to the container
92+
itself, not its contents. Leave the weight as `0` if no weight is reported, and set the max weight
93+
to `0` if there is no specified limit.
94+
- :guilabel:`Envia Package Type`: Set to :guilabel:`Box` by default. Ensure the correct type is
95+
selected, as it affects the available carriers and options displayed, which vary depending on this
96+
selection.
97+
98+
Once previous fields are properly set, navigate to the :guilabel:`Envia Configuration` tab, and in
99+
the :guilabel:`Envia.com Service Name` field, click the :icon:`fa-refresh` :guilabel:`(refresh)`
100+
icon to sync the carriers. In the pop-up window that appears, select a carrier and a service level
101+
from the list.
102+
103+
.. image:: envia_shipping/envia-popup.png
104+
:alt: Envia.com carrier and services popup.
105+
106+
.. important::
107+
Envia keeps the main currency of the account fixed. In order to provide more precise conversions
108+
for the costs of shipping, specify the currency that is set for the account on Envia. If
109+
necessary, Odoo offers the option to change the country. By default it uses the country
110+
associated with the company.
111+
112+
.. note::
113+
If more than one shipping option is needed, create more shipping methods in Odoo and modify any
114+
parameter like the package, carrier, or service.
115+
116+
.. _inventory/shipping_receiving/envia-shipping-info:
117+
118+
Shipping information
119+
--------------------
120+
121+
To use Envia.com to generate shipping labels, the following information **must** be filled out
122+
accurately and completely in Odoo:
123+
124+
#. **Customer information**: When creating a quotation, ensure the selected :guilabel:`Customer` has
125+
a valid phone number, email address, and shipping address.
126+
127+
To verify, select the :guilabel:`Customer` field to open their contact page. Here, add their
128+
shipping address in the :guilabel:`Contact` field, along with their :guilabel:`Mobile` number and
129+
:guilabel:`Email` address.
130+
#. **Product weight**: Ensure all products in a delivery order have a specified :guilabel:`Weight`
131+
in the :guilabel:`Inventory` tab of their product form. Refer to the :ref:`Product weight section
132+
<inventory/shipping_receiving/configure-weight>` of this article for detailed instructions.
133+
#. **Warehouse address**: By default all packages are sent from the specified address in the
134+
warehouse, make sure to set the address for correct label generation.
135+
136+
Address filling guide
137+
---------------------
138+
139+
Each country has rules regarding how an address is filled. This is a comprehensive guide of each
140+
country's expected fields exceptions:
141+
142+
.. list-table::
143+
:header-rows: 1
144+
:stub-columns: 1
145+
146+
* - Country
147+
- Street
148+
- Street 2
149+
- City
150+
- State_id
151+
* - Argentina
152+
- Street and number
153+
- Locality
154+
- City
155+
- Province
156+
* - Brazil
157+
- Exception
158+
- Neighborhood
159+
- City
160+
- State
161+
* - Chile
162+
- Street and number
163+
- City
164+
- Commune
165+
- Region
166+
* - Colombia
167+
- Street and number
168+
- Not needed
169+
- Municipality
170+
- Department
171+
* - Guatemala
172+
- Street and number
173+
- Neighborhood
174+
- City
175+
- State
176+
* - Mexico
177+
- Street and number
178+
- Neighborhood
179+
- City
180+
- State
181+
* - Uruguay
182+
- Street and number
183+
- Complementary info
184+
- Locality
185+
- State
186+
187+
Countries not listed here should be entered normally.
188+
189+
.. note::
190+
For some countries, the zip code is not commonly requested. If empty, Odoo will use Envia's zip
191+
approximation services to get the zip code.
192+
193+
For Colombia, the zip code is extracted from the city selected in `city_id` if the localization
194+
is installed, otherwise Odoo will use the zip field.
195+
196+
.. note::
197+
Colombia and Mexico have a list of cities referred to as `city_id` in Odoo. If `city_id` is set,
198+
it is used as the city field. If not set, then Odoo will try to use the city field.
199+
200+
.. note::
201+
In Mexico, some carriers might require the :guilabel:`Colony` field, commonly known as
202+
neighborhood. It is not always mandatory, but when using the **EDI for Mexico (Advanced
203+
Features)** module, the :guilabel:`Colony` field is required.
204+
205+
.. note::
206+
In Brazil the address is split to comply with regulation, so `street_name` is used for the street
207+
name only. `street_number1` is used for the street number and `street_number2` is used for the
208+
complement. This logic also applies if the :guilabel:`Extended Addresses` module is installed.
209+
210+
Generate labels with Envia
211+
==========================
212+
213+
When creating a quotation in Odoo, add shipping and the :guilabel:`Envia.com shipping product`.
214+
Then, :guilabel:`Validate` the delivery. Shipping label documents are automatically generated in the
215+
chatter, which include the following:
216+
217+
#. :guilabel:`Shipping label(s)` depending on the number of packages.
218+
#. :guilabel:`Return label(s)` if the Envia.com connector is configured for returns.
219+
220+
.. important::
221+
When labels are created, Envia.com automatically charges the configured account and the final
222+
amount is logged in the chatter. If multi-currency operations occur, the amount logged is
223+
calculated using Odoo's rate. Actual rates may vary.
224+
225+
Additionally, the tracking number is now available.
226+
227+
.. note::
228+
Brazilian Authorities might request the invoice related to the shipping (NFe). It is recommended
229+
to physically attach the invoice of the order along with the label.
230+
231+
International shipping
232+
----------------------
233+
234+
For international shipments it is required to fill both the :guilabel:`HS code` and the country of
235+
:guilabel:`Origin of Goods`, both can be found on the product's :guilabel:`Inventory` tab.
236+
237+
LTL shipments
238+
-------------
239+
240+
LTL shipment labels can be generated through the Envia connector. The insurance for LTL shipments is
241+
based on the *insurance percentage* specified in the delivery method's form.
242+
243+
.. important::
244+
For Mexico, since a *Bill of Landing* needs to be created for the shipment, Odoo is required to
245+
send the UNSPSC code of the contents, as well as a unit of measure for transportation which is
246+
**X8A - Pallet de madera** by default.
247+
248+
.. note::
249+
Additional services are available when selecting `pallet` as a :guilabel:`Envia Package Type` on
250+
the delivery method, which allows selecting additional services like lift assistance and
251+
deliveries during weekends.
252+
253+
.. _inventory/shipping_receiving/setup_configuration/cancel:
254+
255+
Tracking and cancellation
256+
=========================
257+
258+
Shipments registered with Envia can be tracked using the :guilabel:`Tracking` smart button from the
259+
delivery order or using the tracking link from the :doc:`customer portal
260+
<../../../../general/users/portal>`.
261+
262+
.. image:: envia_shipping/envia-customer-portal-tracking.png
263+
:alt: Customer portal tracking.
264+
265+
FAQ
266+
===
267+
268+
Measuring volumetric weight
269+
---------------------------
270+
271+
Many carriers have several measurements for weight. There is the actual weight of the products in
272+
the parcel, and the volumetric weight. Volumetric weight is the volume that a package occupies when
273+
in transit, i.e. the physical size of a package.
274+
275+
.. note::
276+
Due to volumetric weight, it is possible that the actual weight in the label is higher than the
277+
calculated value.
278+
279+
Which printing options are available?
280+
-------------------------------------
281+
282+
On Envia.com in :menuselection:`Settings --> Print options and Carriers printing options` for each
283+
of the carriers displayed, make sure to use the appropriate format for the chosen carrier.
284+
285+
The needed service is not available
286+
-----------------------------------
287+
288+
For available carriers, make sure that they are enabled through Envia.
289+
290+
Who will pay customs duties?
291+
----------------------------
292+
293+
It's important to make sure that if there are exports to other countries, use Envia's carrier
294+
settings to configure whether it is paid by the sender or the receiver.
295+
296+
What is "Envia error"?
297+
----------------------
298+
299+
It's a message that appears when there's an error in Envia. This message mentions what went wrong in
300+
their platform so it can be addressed.

content/applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration/third_party_shipper.rst

+4-2
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,12 @@ The following is a list of available shipping connectors in Odoo:
2828

2929
* - Carrier
3030
- Region availability
31-
* - :doc:`FedEx <fedex>`
32-
- All
3331
* - :doc:`DHL Express <dhl_credentials>`
3432
- All
33+
* - :doc:`Envia.com <envia_shipping>`
34+
- All
35+
* - :doc:`FedEx <fedex>`
36+
- All
3537
* - :doc:`UPS <ups_credentials>`
3638
- All
3739
* - US Postal Service

0 commit comments

Comments
 (0)