URL ReturnProcess

Este URL determina el estado de aprobación de una autorización de devolución de mercancía (RMA).

Este URL determina el estado de aprobación de una autorización de devolución de mercancía (RMA) examinando el estado de los artículos de devolución. Si la RMA se aprueba, el URL redirige al URL especificado mediante el valor del parámetro URL. Si la RMA no se aprueba, el URL redirige al valor de URL2. Si la RMA ha caducado, y se ha especificado un URL de caducidad, el URL redirige al valor de RMAExpiryURL.

El mandato ReturnProcess lo ejecutan los clientes y los Representantes de servicio al cliente (CSR) de la tienda. Es el paso final en la creación o edición de una RMA. El flujo básico de una devolución es el siguiente:

  1. Ejecutar los mandatos ReturnItemAdd, ReturnItemUpdate y ReturnItemDelete, según sea pertinente, para preparar la RMA.
  2. Ejecutar el mandato ReturnPrepare para calcular los impuestos y los abonos.
  3. Ejecutar el mandato ReturnProcess para completar la RMA. Este mandato puede considerarse la "finalización" de la RMA.

Un cliente puede ejecutar cualquier combinación de adición, actualización y supresión, y luego preparar una RMA, pero solo puede ejecutar el URL ReturnProcess una vez. Un CSR puede editar una RMA incluso después de que se haya ejecutado el URL ReturnProcess. El URL ReturnProcess determina si una RMA se ha aprobado automáticamente. Si no se ha aprobado, un CSR puede editar la RMA hasta que se apruebe automáticamente, o si el CSR tiene el nivel de autorización apropiado, puede utilizar el URL ReturnApprove para aprobar una RMA tal cual.

Estructura de URL

http:// host_name/path/
El nombre totalmente calificado de HCL Commerce Server y la vía de acceso de configuración.

Valores de parámetros

forUser
El ID de inicio de sesión del usuario en cuyo nombre se ejecutará el mandato; este parámetro solo lo puede especificar una persona con autorización para procesar pedidos.
forUserId
Igual que forUser, pero el usuario se identifica mediante el ID de usuario interno que aparece en la tabla USERS.
langId
Establece o restablece el idioma preferido durante el tiempo que dura la sesión; los idiomas soportados para una tienda se encuentran en la tabla STORELANG.
storeId
Se necesita: El número de referencia de la tienda.
RMAId
Se necesita: El identificador de la RMA que se ha de procesar.
URL
Se necesita: El URL al que redirigirse si la RMA se aprueba.
URL2
El URL al que redirigirse si la RMA no se aprueba. Si no se especifica, se utilizará el valor especificado en el parámetro URL.
refundPolicyId
El ID de la política a utilizar para el método de pago de reembolsos. Este parámetro es opcional siempre y cuando solo haya una política de pago de reembolsos en el contrato; de lo contrario, debe especificarse un valor la primera vez que se llama al mandato.
RMAExpiryURL
El URL al que redirigirse si la RMA ha caducado. Si se especifica este URL y se ha sobrepasado el valor de RMGOODFOR, se llama al mandato ReturnPrepareCmd y tendrá lugar una redirección a este URL. Si no se especifica este URL, se ejecuta el mandato ReturnProcessCmd, aunque se llame al mandato ReturnPrepareCmd porque el periodo de tiempo RMGOODFOR ha caducado para RMA.

Ejemplo

El mandato siguiente procesa un pedido utilizando dos URL de redirección.


http://myhostname/webapp/wcs/stores/servlet/
ReturnProcess?RMAId=1&storeId=1&URL=ReturnDisplay&URL2=ReturnListDisplay

Comportamiento

  • Comprueba si la RMA existe. Si no existe, devuelve un error.
  • Comprueba si se ha especificado una política de reembolso, ya sea en la llamada del mandato o anteriormente, o porque solo hay una opción. Si no existe, devuelve un error.
  • Comprueba si la RMA se ha preparado. Si no se ha preparado, devuelve una excepción.
  • Llama al mandato de tarea RePrepareExpiredRMACmd para comprobar si ha caducado el periodo de tiempo RMAGOODFOR para cada artículo devuelto. Si ese es el caso, llama al mandato ReturnPrepare y tendrá lugar una redirección al RMAExpiryURL, si se ha especificado. Si el parámetro RMAExpiryURL no se ha especificado, el mandato ReturnProcess se completa con normalidad.
  • Llama al mandato de tarea CalculateRMAApprovalCmd para calcular el estado general de la RMA. Si la RMA se aprueba, el mandato la marca como aprobada, anota el aviso de autorización y se redirige al URL especificado. Si la RMA no se aprueba, el mandato la marca como pendiente y se redirige al URL2.

Condiciones de excepción

Las condiciones siguientes harán que el mandato no se ejecute satisfactoriamente:

  • Si el RMAId especificado no es válido o está en un estado incorrecto, como por ejemplo, si no se ha preparado, se genera una excepción ECApplicationException con el mensaje _ERR_RMA_IN_INVALID_STATE_FOR_COMMAND
  • Si no se ha especificado ninguna política de reembolso, o si la política especificada no es válida para la RMA, se genera una excepción ECApplicationException con el mensaje _ERR_BAD_MISSING_CMD_PARAMETER