Este módulo permite utilizar OCA E-Pak como un método de envío en Magento 2
Usar composer para instalar Gento_Oca.
composer require gento-arg/module-oca
Luego, es necesario activar el módulo y actualizar la base de datos.
bin/magento module:enable Gento_Oca
bin/magento setup:upgrade
bin/magento cache:clean
Este paso sólo es requerido en caso de querer generar las etiquetas de envío. En el menú Stores -> Configuration
, en
la sección General -> General
y el grupoStore information
, es requerido completar los siguientes campos:
- Store name
- Store phone number
Luego, en la sección Sales -> Shipping Settings
, en el grupo Origin
:
- Street address
- City
- Zip/Postal code
- Country
En las configuraciónes de métodos de envío, sección Sales -> Shipping Methods
o Sales -> Delivery methods
dependendienddo la versión de Magento, OCA utililza el CUIT
para identificar a sus clientes a fin de validar los
contratos y estimar los costos de envío. A continuación se explican los diferentes campos de configuración:
- CUIT: (*) Dato del titular del contrato.
- Titulo: Es el titulo que aparecerá junto a las diferentes operatorias en el checkout y en la información de envío.
- Account number: (**) Es un numero de cuenta que provee OCA como parte del contrato de ePak.
- Username: (**) Usuario de ePak.
- Password: (**) Password de ePak.
- Days to send: Días para informarle a OCA al momento de generar la orden de retiro.
- Days to send (Extra): Estos días no serán informados a OCA pero se visualizarán en el carro en caso de
que
Show days to send
esté activado. - Show days to send: En caso de activarse, además del nombre del método de envío se le informará al cliente el tiempo en el paquete será despachado.
- Reception time: Rango horario en el que OCA debe realizar el
- Confirm: En caso de estar en
No
, la orden de retiro debe confirmarse desde el panel de OCA. - Disabled Postal codes: En caso de necesitar deshabilitar ciertos códigos postales, se pueden listar en este campo, uno por línea.
- Branch description: En formato de template, indica la información que debería verse en el pedido en caso de seleccionar retiro en sucursal.
- Oep WebService URL: URL para comunicarse con servicios
OEP.
http://webservice.oca.com.ar/oep_tracking_test/Oep_Track.asmx
para test yhttp://webservice.oca.com.ar/oep_tracking/Oep_Track.asmx
para producción. - Epak WebService URL: URL para comunicarse con servicios de
ePak.
http://webservice.oca.com.ar/epak_tracking_test/Oep_TrackEPak.asmx
para test yhttp://webservice.oca.com.ar/epak_tracking/Oep_TrackEPak.asmx
para producción. - Tracking URL: Ésta URL será a la que se le concatenará el número de seguimiento para rastreo. Por
defecto:
https://www5.oca.com.ar/ocaepakNet/Views/ConsultaTracking/TrackingConsult.aspx?numberTracking=
. Tener en cuenta que OCA suele cambiar esta URL. - Min box volume: Para calcular los costos de envío, OCA requiere que se le indique el volumen de lo que se va a enviar, en caso de no tener atributos en los productos con los que se pueda calcular el volumen, se utilizará este valor. Dependiendo el contrato con OCA puede que este valor no sea necesario y se utilice el peso.
- Product (width|height|length) attribute: Atributo del producto que se utilizará para calcular el volumen.
- Unit product attribute: Unidad de medida en la que está expresada la dimensión del producto.
* Valor requerido para el cálculo de costo de envío
** Valor requerido para impresión de etiquetas
En el menú GENTo -> Operatories
se deben agregar las operatorias con las que se desea trabajar.
- Name: Este es el título que verá el cliente para seleccionar.
- Code: Código interno de OCA.
- Uses branches: Indica si la operatoria es de retiro en sucursal.
- Pays on destination branch: En caso de ser positivo, el monto será informado el cliente pero no le generará una deuda.
Las sucursales se crean automáticamente con una sincronización de cron. Una vez que fueron creadas, es posible deshabilitarlas o incluso cambiar ciertos datos. Atención: Si se cambia el código de la sucursal, puede que no funcione correctamente.
Usando el endpoint de graphql es posible filtrar las sucursales por código postal:
path: /graphql
method: POST
body: { "query": "query { ocaBranches ( zipCode: \"2000\" ) { items { code short_name address_street address_number address_floor address_dpt address_tower telephone email city zipcode servicios branch_description } } }" }
Esa consulta retorna:
{
"data": {
"ocaBranches": {
"items": [
{
"code": "93",
"short_name": "RO1",
"address_street": "CORRIENTES",
"address_number": "746",
"address_floor": "",
"address_dpt": "",
"address_tower": "",
"telephone": "0341-4496111",
"email": "",
"city": "ROSARIO",
"zipcode": "2000",
"servicios": [
"1",
"2",
"3"
],
"branch_description": "ROSARIO\nCORRIENTES 746\n0341-4496111\n"
},
{
"code": "587",
"short_name": "D50",
"address_street": "BOULEVARD BELGRANO",
"address_number": "1250",
"address_floor": "",
"address_dpt": "",
"address_tower": "",
"telephone": "03476-15-582392",
"email": "",
"city": "TOTORAS",
"zipcode": "2144",
"servicios": [
"1",
"2"
],
"branch_description": "TOTORAS\nBOULEVARD BELGRANO 1250\n03476-15-582392\n"
},
{
"code": "595",
"short_name": "D55",
"address_street": "SAN MARTIN",
"address_number": "1482",
"address_floor": "",
"address_dpt": "",
"address_tower": "",
"telephone": "426-3357",
"email": "",
"city": "ROSARIO",
"zipcode": "2000",
"servicios": [
"1",
"2"
],
"branch_description": "ROSARIO\nSAN MARTIN 1482\n426-3357\n"
}
]
}
}
}
bin/magento module:uninstall Gento_Oca
If you used Composer for installation Magento will remove the files and database information.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
- Fork it
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create new Pull Request