VibeFox Ozow for OpenCart — Ayuda
Requisitos
OpenCart: 3.0.x (probado en 3.0.5.0) o 4.0.2 y posteriores (probado en 4.1.0.3).
PHP: 8.0 o posterior.
Moneda: rand sudafricano (ZAR). La tienda debe tener la moneda ZAR (System > Localisation > Currencies), y el método de pago solo se muestra cuando el cliente finaliza la compra en ZAR. Ozow cobra en céntimos enteros, así que la moneda debe usar 2 decimales.
Cuenta de Ozow: una cuenta de comerciante de Ozow con el Site Code y la Private Key de tu sitio de Ozow, que encontrarás en tu panel de comerciante de Ozow. La API Key es opcional, pero recomendable. Ozow usa el mismo Site Code y las mismas claves para los pagos de prueba y los reales.
Sitio accesible: tu tienda debe ser accesible desde Internet, sin protección con contraseña ni cortafuegos que bloquee a Ozow, para que lleguen las notificaciones de Ozow. La notificación también funciona mientras la tienda está en modo de mantenimiento: OpenCart 3 deja pasar las solicitudes de las extensiones de pago, y en OpenCart 4 la extensión añade una acción de inicio que deja pasar la notificación y el regreso del cliente desde Ozow.
Clave de licencia de VibeFox: se compra en vibefox.net. Una clave funciona en un solo dominio.
Instalación
La descarga es un único archivo zip con los paquetes de ambas versiones de OpenCart. Descomprímelo en tu ordenador. Contiene README.txt, el paquete de OpenCart 3 wcp_ozow_pay-oc3-(version).ocmod.zip y el paquete de OpenCart 4 wcp_ozow_pay.ocmod.zip. Instala solo el paquete de tu versión de OpenCart. La clave de licencia es la misma para ambas versiones.
OpenCart 3
1. En el administrador ve a Extensions > Installer, haz clic en Upload y elige el archivo wcp_ozow_pay-oc3-(version).ocmod.zip. La extensión no tiene modificaciones OCMOD, así que Extensions > Modifications no necesita actualizarse. En lugar del instalador, también puedes copiar el contenido de la carpeta upload de este paquete en la carpeta raíz de tu tienda.
2. Ve a Extensions > Extensions y elige el tipo Payments. Busca VibeFox Ozow Pay y haz clic en Install (el botón verde +). Tu usuario administrador necesita el permiso para modificar la lista de extensiones de pago.
3. Haz clic en Edit (el botón con el lápiz) para abrir la página de ajustes. Pega tu clave de licencia de VibeFox en License key, en el bloque de licencia de la parte superior de la página, y haz clic en Activate (consulta Clave de licencia).
4. Introduce el Site Code y la Private Key, y preferiblemente la API Key, desde tu panel de comerciante de Ozow. Las URL de notificación y de retorno se envían a Ozow con cada pago, así que no hay que configurar nada en el panel de Ozow.
5. Activa Enable/Disable y haz clic en Save. Haz un pago de prueba con Test mode activado y después desactívalo para aceptar pagos reales.
OpenCart 4
1. En el administrador ve a Extensions > Installer, haz clic en Upload y elige el archivo wcp_ozow_pay.ocmod.zip. No cambies el nombre del archivo: OpenCart 4 toma el código de la extensión del nombre del archivo, y un paquete renombrado no funciona.
2. El paquete aparece en la lista de extensiones instaladas en la misma página. Haz clic en Install (el botón verde +) junto a él.
3. Ve a Extensions > Extensions y elige el tipo Payments. Busca VibeFox Ozow Pay, haz clic en Install (el botón verde +) y después en Edit (el botón con el lápiz).
4. Introduce la clave de licencia y las claves de Ozow, y prueba el pago como en los pasos 3 a 5 de OpenCart 3. La página de ajustes y sus campos son iguales en ambas versiones. Solo las URL de notificación y de retorno son diferentes (consulta Notificaciones de pago); también se envían a Ozow con cada pago.
Una instalación nueva empieza con el método de pago desactivado y el modo de prueba activado.
Configuración
Todos los ajustes están en la página de la extensión: Extensions > Extensions > Payments > VibeFox Ozow Pay > Edit. Las secciones aparecen a la izquierda; el botón Save situado debajo de la lista guarda toda la página. Encima de los ajustes, la página te avisa cuando falta el Site Code o la Private Key (en ese caso Ozow no aparece en la finalización de compra), cuando la moneda predeterminada de la tienda no es ZAR, cuando la moneda tiene más de 2 decimales (ponla en 2 en System > Localisation > Currencies), y muestra Test mode is on: no real payments are accepted. Do not ship orders paid in test mode. mientras el modo de prueba está activado. Sin el permiso para modificar la extensión, la página muestra los ajustes pero no puede guardarlos.
Los campos de Ozow nunca impiden guardar, salvo un Title de más de 128 caracteres (The title must be no longer than 128 characters.). Los campos de OpenCart se comprueban: Sort Order debe ser un número entero (se permiten negativos), Total debe ser un número igual o mayor que 0, y la zona geográfica y los estados de pedido deben existir. Si alguno es incorrecto, un error indica el campo y no se guarda nada.
Ozow
Enable/Disable: Enable Ozow payments activa o desactiva el método de pago. Por defecto: desactivado.
Title: el nombre del método de pago que ven los clientes en la finalización de compra. También es el nombre del método de pago que se guarda en el pedido. Hasta 128 caracteres; si se deja vacío, se muestra Instant EFT (Ozow). Por defecto: Instant EFT (Ozow).
Description: el texto que ve el cliente en el paso Confirm Order, encima del botón de confirmación. Por defecto: Pay instantly and securely from your South African bank account. You will be redirected to Ozow to choose your bank and approve the payment. En modo de prueba se añade debajo la línea TEST MODE: no money will be charged. (solo si la descripción no está vacía).
Sort Order: la posición de Ozow entre los métodos de pago de la finalización de compra. Déjalo vacío o introduce un número entero.
Geo Zone: ofrece Ozow solo a las direcciones de pago de la zona geográfica seleccionada. Por defecto: All zones. Las zonas geográficas se configuran en System > Localisation > Geo Zones. En OpenCart 4, cuando la tienda no pide ninguna dirección de pago, se usa la dirección de envío.
Total: el total de la compra, en la moneda predeterminada de la tienda, que un pedido debe alcanzar para que se ofrezca Ozow. Déjalo vacío para ofrecer Ozow con cualquier importe.
Credenciales de Ozow
Copia el Site Code, la Private Key y la API Key desde tu panel de comerciante de Ozow (Merchant details / Sites). La sección enlaza con la documentación de integración de Ozow en hub.ozow.com.
Site Code: el Site Code del sitio de Ozow que recibe los pagos. Las respuestas de otro Site Code se rechazan.
Private Key: firma cada solicitud de pago y verifica cada respuesta de Ozow. Manténla en secreto. Se guarda exactamente como la introduces. Sin ella, el método de pago se oculta y no se acepta ninguna respuesta de Ozow.
API Key (recommended): opcional. Con una API Key, cada pago completado también se confirma con la API GetTransaction de Ozow antes de que el pedido se marque como pagado. La API debe indicar que el pago está completo, con el mismo importe, moneda y Site Code.
Las claves guardadas nunca se vuelven a mostrar. El campo queda vacío y muestra Saved — leave empty to keep it. Escribe un valor nuevo solo si quieres cambiarlo. Para eliminar una clave guardada, marca Clear the saved Private Key on save o Clear the saved API Key on save bajo el campo y haz clic en Save.
Test mode: Ozow usa el mismo Site Code y las mismas claves para las pruebas: los pagos se crean con IsTest=true y no se mueve dinero. Los pedidos pagados en modo de prueba reciben una nota; no los envíes. Desactiva el modo de prueba para aceptar pagos reales. Un pago de prueba nunca paga un pedido en modo real. Por defecto: activado.
Notificaciones de pago
La sección muestra las cuatro URL que la extensión envía a Ozow con cada pago: Notification URL (Ozow envía allí la notificación de pago), Success URL, Cancel URL y Error URL (Ozow devuelve allí al cliente). Tienen este aspecto: https://your-store/index.php?route=extension/payment/wcp_ozow_pay/notify y https://your-store/index.php?route=extension/payment/wcp_ozow_pay/back&ozow_return=success, en OpenCart 4 como https://your-store/index.php?route=extension/wcp_ozow_pay/payment/wcp_ozow_pay.notify y https://your-store/index.php?route=extension/wcp_ozow_pay/payment/wcp_ozow_pay.back&ozow_return=success, y se construyen a partir de la dirección de la tienda de tu instalación de OpenCart. No hay que configurar nada en el panel de Ozow. Si tu sitio de Ozow tiene URL fijas, copia las URL exactamente como aparecen en los ajustes.
Pedidos
OpenCart crea el pedido en el paso Confirm Order sin estado (pedido perdido). El pedido recibe un estado solo cuando Ozow envía una respuesta firmada correctamente. Un pago cancelado o fallido deja el pedido sin estado, y el cliente vuelve a la finalización de compra con el carrito conservado. Cada campo siguiente muestra los estados de pedido de tu OpenCart.
Order Status After Payment: Ozow indicó que el pago está Complete con el importe y la moneda esperados (confirmado por GetTransaction cuando hay una API Key). Por defecto: Procesando.
Awaiting Ozow Payment Status: Ozow o el banco están investigando el pago (estado de Ozow PendingInvestigation). Cuando Ozow indica Complete, el pedido recibe el estado posterior al pago. Por defecto: Pendiente.
On Hold (Review) Status: el pago necesita tu revisión (consulta Estados de pedido). El pedido no se marca como pagado. Por defecto: Pendiente, porque OpenCart no tiene un estado On hold. Puedes crear tu propio estado en System > Localisation > Order Statuses y seleccionarlo aquí.
Failed Payment Status: un pago en investigación que Ozow después indicó como Cancelled, Error o Abandoned. Por defecto: Fallido.
Cancelled Order Status: el estado que tu tienda usa para los pedidos cancelados. Un pago recibido para un pedido así pasa el pedido al estado de revisión en lugar de marcarlo como pagado. La extensión nunca asigna este estado. Por defecto: Cancelado.
Refunded Order Status: el estado que tu tienda usa para los pedidos reembolsados. Un pago recibido para un pedido así solo añade una nota. La extensión nunca asigna este estado. Por defecto: Reembolsado.
Avanzado
Debug log: escribe las solicitudes de pago y las respuestas de Ozow en ozow_p_debug.log.php, en la carpeta de registros de OpenCart (storage/logs). El archivo no se puede abrir desde la web y, al llegar a 5 MB, se mueve a ozow_p_debug.old.log.php. Los errores y las advertencias siempre se registran. Las claves, los hashes, los tokens y los datos de los clientes nunca se registran. Por defecto: desactivado.
Log: muestra el tamaño y las últimas entradas del registro. Haz clic en Clear log para vaciarlo.
Delete data on uninstall: si está activado, al desinstalar la extensión se eliminan los ajustes de la pasarela y el registro. Los datos de Ozow de los pedidos siempre se conservan. Por defecto: desactivado.
Importar / Exportar
Export: Download JSON guarda los ajustes como un archivo JSON. La Private Key y la API Key no se exportan.
Import: pega el JSON exportado previamente y haz clic en Import para restaurar los ajustes. Las claves guardadas se conservan.
Finalización de compra
En el paso Payment Method el cliente elige el método de pago (por defecto Instant EFT (Ozow)). En el paso Confirm Order el cliente ve tu descripción y la nota You will be redirected to Ozow to choose your bank and approve the payment. OpenCart crea el pedido en este paso, todavía sin estado. En OpenCart 4, el cliente elige el método de pago con el botón Choose del bloque del método de pago, en la ventana Payment method options, y hace clic en Confirm Order al final de la página de finalización de compra. Cuando el cliente hace clic en Confirm Order, la extensión lo envía a la página de pago alojada de Ozow con una solicitud firmada por el total del pedido en ZAR. La referencia del extracto bancario es Order y el número de pedido (hasta 20 letras latinas, dígitos, espacios y guiones). El nombre del cliente se envía a Ozow. En la página de Ozow, el cliente elige un banco sudafricano y aprueba el pago en su aplicación bancaria.
Después, Ozow notifica a la tienda y devuelve al cliente. Ambos envíos llevan la misma respuesta firmada y se procesan de la misma forma, así que el pedido recibe su estado aunque uno de ellos se pierda. El pedido solo se marca como pagado cuando Ozow lo confirma: el hash debe verificarse con tu Private Key, el Site Code debe ser el tuyo, la respuesta debe pertenecer a este intento de pago del pedido, y el importe y la moneda deben coincidir con el pedido. Con una API Key, el pago también se comprueba con la API GetTransaction. Luego el pedido recibe su estado de la forma estándar de OpenCart, con los correos habituales del pedido y la actualización del stock.
Tras un pago correcto, el cliente ve la página de éxito del pedido de OpenCart. Si Ozow o el banco todavía están investigando el pago, la página también indica We are waiting for Ozow to confirm your payment. You will receive an e-mail as soon as it is confirmed — there is no need to pay again. Si el pedido está en el estado de revisión, indica Your Ozow payment was received and is being reviewed by the store. We will contact you if anything is needed. Si un pago investigado falla después o el pedido no pagado se cancela, indica Your Ozow payment was not completed. Please contact us about this order. (en OpenCart 4 el cliente vuelve a la finalización de compra en su lugar, consulta más abajo). Si Ozow todavía no ha confirmado el pago cuando el cliente vuelve, aparece una página de Payment confirmation con el texto de espera y los botones Check again y Back to checkout.
Si el cliente cancela en la página de Ozow o el pago falla, el pedido se queda sin estado. El cliente vuelve a la finalización de compra con el mismo carrito y ve The Ozow payment was cancelled. You can try again or choose another payment method. o The Ozow payment was not completed. You can try again or choose another payment method. En OpenCart 4 estos mensajes se muestran encima de la página de finalización de compra.
OpenCart 3 crea un pedido nuevo cada vez que se muestra el paso Confirm Order. OpenCart 4 mantiene un solo pedido para la finalización de compra y lo actualiza, así que tras un pago cancelado o fallido el cliente paga el mismo pedido con un nuevo intento. Si otro pedido del mismo carrito ya está pagado o pendiente de Ozow, el cliente pasa directamente a la página de éxito, y un pago tardío del segundo pedido no se aplica: una nota en el pedido pagado te pide que reembolses el duplicado en tu panel de Ozow.
Si un pedido del carrito se pagó y después tú lo cancelaste o reembolsaste, el cliente vuelve a la finalización de compra y paga el carrito con un pedido nuevo. En OpenCart 3 el mensaje es This order was cancelled or refunded by the store. Please confirm the order again to pay with a new order.
OpenCart 4 mantiene el pedido en la finalización de compra hasta que se muestra la página de éxito. Cuando el cliente vuelve a hacer clic en Confirm Order o regresa desde Ozow, y ese pedido está cerrado, el cliente vuelve a la finalización de compra con un mensaje, y el siguiente Confirm Order paga un pedido nuevo: Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order. (por ejemplo, si un pago investigado falló o tú cancelaste el pedido no pagado) o Your previous order was cancelled or refunded by the store. Please confirm the order again to pay with a new order. (el pedido se pagó y después se canceló o reembolsó). Si ese pedido ya está pagado y el carrito ahora tiene otros productos o cantidades, Confirm Order muestra Your previous order has already been paid. Your cart has changed since — please confirm the order again to pay for the current cart.
Si la finalización de compra no está en ZAR, el cliente ve Ozow accepts payments in South African rand (ZAR) only. Please choose another payment method.
La extensión solo acepta pagos únicos en ZAR. No tiene reembolsos desde OpenCart, ni suscripciones, ni cuentas bancarias guardadas o tokenización, ni enlaces de pago enviados desde el administrador.
Pedidos y reembolsos
Estados de pedido
Sin estado (pedido perdido): el cliente fue enviado a Ozow y no ha pagado, ha cancelado, o Ozow todavía no ha confirmado el pago. En Sales > Orders estos pedidos solo aparecen con el filtro Order Status en Missing Orders.
En OpenCart 4 un pedido no pagado de la finalización de compra puede recibir el estado Voided, que OpenCart 4 asigna cuando el cliente vuelve al paso Confirm Order. La extensión trata ese pedido como un pedido sin estado, y un pago posterior sigue confirmándolo.
Order Status After Payment (default Processing): el pago se confirmó. Una nota muestra el importe y el ID de transacción de Ozow, y si el pago fue confirmado por la API GetTransaction. Un pago de prueba recibe la nota TEST MODE — no money was received, do not ship this order.
Awaiting Ozow Payment Status (default Pending): Ozow o el banco están investigando el pago. El pedido se actualiza cuando Ozow envía el estado final: Order Status After Payment si el pago se completa, o Failed Payment Status si falla.
On Hold (Review) Status (default Pending): la nota indica el motivo: el importe o la moneda pagados no coinciden con el pedido; llegó un pago para un pedido que ya estaba cancelado; o, con una API Key, la API GetTransaction todavía no puede confirmar el pago o lo contradice. Comprueba el pago en tu panel de Ozow y cambia el estado del pedido. Si la API no pudo responder, la siguiente notificación de Ozow completa el pedido.
Failed Payment Status (default Failed): un pago que estaba en investigación se canceló, se abandonó o falló. Una respuesta posterior y correcta de Ozow para ese pago todavía marca el pedido como pagado.
Un pedido que ya está pagado nunca vuelve a cambiar, y un pedido cancelado o reembolsado nunca se vuelve a abrir. Si llega un segundo pago para un pedido ya pagado, una nota te pide que reembolses el duplicado en tu panel de Ozow. Un pago de prueba nunca paga un pedido mientras la extensión está en modo real; una nota lo indica.
Las notas son entradas del History del pedido que el cliente no ve.
Pestaña VibeFox Ozow Pay
En Sales > Orders abre un pedido pagado con Ozow. En la parte inferior de la página del pedido, junto a History y Additional, la pestaña VibeFox Ozow Pay muestra la Transaction reference (el número de pedido) y el intento, el Ozow transaction ID, el Status, el importe Requested, el Amount reported by Ozow, el Ozow message, una etiqueta TEST MODE para los pagos de prueba y las Ozow notes del pedido. La pestaña se muestra a los usuarios que tienen acceso a la extensión.
Reembolsos
Los reembolsos desde OpenCart no son compatibles. Reembolsa el pago en tu panel de comerciante de Ozow y después registra el reembolso manualmente en OpenCart. Las devoluciones de productos en Sales > Returns no devuelven dinero a través de Ozow.
Clave de licencia
La extensión funciona con una clave de licencia de VibeFox de vibefox.net. El bloque de licencia License — VibeFox Ozow Pay es el primer bloque de Extensions > Extensions > Payments > VibeFox Ozow Pay > Edit, encima de los ajustes. Pega la clave en License key y haz clic en Activate. Después, el bloque muestra la clave enmascarada, el estado (por ejemplo, la fecha hasta la que la licencia está activa, y tu dominio) y los botones Check now para volver a comprobar el estado, Change key para introducir otra clave y Remove key para eliminar la clave de esta tienda. Debajo aparecen la línea Product: opencart-payment-ozow y el enlace Manage licenses and domains in your account, que abre tu cuenta de vibefox.net. Solo los usuarios administradores con el permiso Modify para la extensión pueden cambiar la clave. Los textos del bloque siguen el idioma del administrador (se incluyen inglés y ruso).
Si la clave no se acepta, el bloque indica el motivo, por ejemplo Key not found, This key belongs to another product, Domain limit reached o License expired on seguido de una fecha. Después de cambiar la dirección de la tienda, o de liberar una plaza de dominio en tu cuenta, haz clic en Check now. Si el servidor de licencias no responde, la extensión sigue funcionando con el último estado conocido.
Una clave funciona en un solo dominio: la dirección de la tienda según la configuración de OpenCart. Eliminar la clave de la tienda no libera su plaza de dominio. Libera la plaza en tu cuenta de vibefox.net.
Sin una clave activa, Ozow no se muestra a los clientes en la finalización de compra. Si de todos modos se inicia un pago, el cliente ve This payment method is not available. Please choose another one. Un usuario administrador que haya iniciado sesión en el administrador en el mismo navegador sigue viendo el método de pago en la tienda, marcado como (unlicensed — visible to admins only), para que puedas configurar y probar la extensión antes de comprar una clave. En OpenCart 4 esta vista previa no está disponible: la tienda no ve el inicio de sesión del administrador, así que sin una clave activa el método de pago se oculta para todos. Después de abrir la página Edit una vez, aparece un recordatorio en el Dashboard del administrador. Ciérralo con × para ocultarlo durante 7 días. Los pedidos existentes no se ven afectados: los pagos ya iniciados se siguen confirmando.
Cuando una licencia caduca, la extensión sigue funcionando, pero las actualizaciones y el soporte necesitan una renovación. El estado se vuelve a comprobar automáticamente al abrir el Dashboard o la página Edit del administrador: una vez al día durante los primeros 14 días después de introducir la clave, y después una vez por semana. No se necesita ninguna tarea cron. Al desinstalar la extensión siempre se eliminan la clave de licencia y el estado de la licencia.
Solución de problemas
Ozow no aparece en la finalización de compra: comprueba que la licencia está activa, que Enable/Disable está activado, que Site Code y Private Key están rellenados y que el cliente finaliza la compra en ZAR. Comprueba también que la dirección de pago está en la Geo Zone seleccionada y que el pedido alcanza el Total de los ajustes. La página de ajustes muestra una advertencia cuando falta algo.
El pago se realizó, pero el pedido se queda sin estado: la notificación de Ozow no llegó a la tienda y el cliente no volvió. Comprueba que tu tienda es accesible desde Internet (sin protección con contraseña ni cortafuegos que bloquee a Ozow). Si tu sitio de Ozow tiene URL fijas, comprueba que las URL son exactamente las que aparecen en Payment notifications. Activa Debug log y lee el campo Log de la página de la extensión.
La notificación responde Invalid hash: la Private Key de los ajustes no pertenece al sitio de Ozow que envió la respuesta. Cópiala de nuevo desde tu panel de comerciante de Ozow. No se cambia nada.
La notificación responde Unknown site: la respuesta vino de otro sitio de Ozow. Comprueba el Site Code.
La notificación responde Order mismatch u Order not found: la respuesta no pertenece a un pago iniciado en esta tienda. No se cambia nada.
La notificación responde Gateway not configured: falta el Site Code o la Private Key. Complétalos; Ozow puede volver a intentarlo.
La notificación responde Payment not confirmed yet: la respuesta todavía no se pudo aplicar. Con una API Key, la API GetTransaction no pudo confirmar el pago (el pedido está en el estado de revisión y la siguiente notificación lo completa; si sigue ahí, comprueba la API Key y el pago en tu panel de Ozow). Esta respuesta también aparece cuando la vuelta del cliente se estaba procesando para el mismo carrito en el mismo momento; consulta el registro.
El cliente ve This payment method is not available. Please reload the checkout page.: la sesión de la finalización de compra ya no coincide con el pedido, o el método de pago se desactivó entretanto. El cliente debe recargar la página de finalización de compra.
Un pago de prueba no pagó el pedido: la extensión está en modo real. Los pagos de prueba nunca pagan un pedido en modo real; la nota del pedido o el registro lo indican.
El pedido está en el estado de revisión después del pago: lee las notas de la pestaña VibeFox Ozow Pay y comprueba el pago en tu panel de Ozow; después asigna el estado del pedido o reembolsa el pago en Ozow.
Desinstalación
Ve a Extensions > Extensions, elige el tipo Payments y haz clic en Uninstall (el botón rojo −) junto a VibeFox Ozow Pay. La clave de licencia y el estado de licencia de esta extensión siempre se eliminan. OpenCart siempre elimina los ajustes propios de la extensión: Enable/Disable, Sort Order, Geo Zone, Total y los estados de pedido de la sección Orders, que vuelven a sus valores predeterminados al reinstalar. También se elimina el evento de OpenCart de la extensión (en OpenCart 4, sus eventos y su acción de inicio, que deja pasar la notificación y el regreso en modo de mantenimiento). Si Delete data on uninstall está activado, se eliminan los demás ajustes de la pasarela (título, descripción, Site Code, claves, modo de prueba, registro) y el registro. Si está desactivado, se conservan para una reinstalación posterior. Los registros de pagos de Ozow siempre se conservan, así que las notificaciones tardías de pedidos antiguos se siguen reconociendo tras una reinstalación. Los pedidos existentes conservan sus notas de pago.
En OpenCart 4, para eliminar también los archivos de la extensión, ve a Extensions > Installer después de desinstalar y haz clic en Uninstall (el botón naranja −) junto a VibeFox Ozow Pay en la lista de extensiones instaladas, y después en Delete (el botón rojo de papelera) para eliminar el paquete subido.
Ozow es una marca comercial de su respectivo titular. Esta extensión no está afiliada a Ozow ni cuenta con su aval.
