Sincronización de servicio de persona
El servicio de sincronización de persona es un servicio web de entrada responsable de añadir o actualizar una persona en HCL Commerce para sincronizar HCL Commerce con el depósito maestro externo.
Casos de uso típico
- Creación o actualización de una persona
- Creación o actualización de una dirección para una persona
URL de punto final y operación
El URL de punto final predeterminado de este servicio web de entrada es https://hostname:8000/webapp/wcs/services/MemberServices. La operación de este servicio web de entrada es SyncPerson
, con BOD SyncPerson
como petición y BOD ConfirmBOD
como respuesta.
Solicitud
Las peticiones de este servicio web de entrada están en formato de BOD SyncPerson
. Hay dos tipos de peticiones que se pueden realizar:
- Añadir o actualizar una persona
- Añadir o actualizar una dirección de una persona
Adición o actualización de una persona
Las peticiones para añadir o actualizar una persona se correlacionan con com.ibm.commerce.usermanagement.commands.UserRegistrationAdminUpdateCmd y debe incluir la siguiente información:
XPath* | Tipo | Se correlaciona con el siguiente parámetro de mandato | Descripción: | Obligatorio |
---|---|---|---|---|
ApplicationArea/BusinessContext/ContextData | USERDATA | - | Datos de contexto. Por ejemplo:
| N |
DataArea/Sync/ActionCriteria/ActionExpression/@actionCode | string | action | El código de acción. Los valores válidos son los siguientes: Añadir: para añadir una persona. Cambiar: para actualizar una persona existente. | Y |
DataArea/Sync/ActionCriteria/ActionExpression | string | commerceObject | Expresión de acción. Se debe especificar de la forma indicada a continuación:
| Y |
DataArea/Person/ParentIdentifier/DistinguishedName | string | parentMember | Nombre distinguido de la organización padre. Si no se especifica, los valores predeterminados son: o=organización predeterminada, o=organización raíz | N |
DataArea/Person/Authentication/LogonID | string | logonId | ID de inicio de sesión de la persona. | Y |
DataArea/Person/Authentication/Password | string | logonPassword | Contraseña de la persona. | Y - al añadir una persona N - al actualizar una persona |
DataArea/Person/Authentication/SecurityHint/Question | string | challengeQuestion | Pregunta de identificación para confirmar la identidad de una persona. | N |
DataArea/Person/Authentication/SecurityHint/Answer | string | challengeAnswer | Respuesta a la pregunta para identificación. | N |
DataArea/Person/Authentication/@expired | boolean | passwordExpired | Especifica que la contraseña del usuario caducó. Los valores válidos son los siguientes:
|
N |
DataArea/Person/Authentication/@status | boolean | userStatus | Permite que la persona tenga inhabilitado el ID de conexión sin eliminar la persona del sistema.
| N |
DataArea/Person/Authentication/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
DataArea/Person/PersonName/LastName | string | lastName | Apellido | N |
DataArea/Person/PersonName/PersonTitle | string | personTitle | Tratamiento de la persona, por ejemplo, Dr., Sr. o Sra. | N |
DataArea/Person/PersonName/FirstName | string | firstName | Nombre de la persona | N |
DataArea/Person/PersonName/MiddleName | string | middleName | Segundo nombre de la persona | N |
DataArea/Person/PersonalProfile/PreferredCurrency | string | preferredCurrency | La moneda preferida de la persona. Una clave foránea que hace referencia a la columna SETCCURR de la tabla SETCURR. | N |
DataArea/Person/PersonalProfile/PreferredLanguage | string | preferredLanguage | El idioma preferido de la persona; una clave foránea que hace referencia a la columna LANGUAGE_ID de la tabla LANGUAGE. | N |
DataArea/Person/PersonalProfile/DisplayName | string | displayName | Nombre utilizado para visualizar el nombre de la persona en una lista de resumen. | N |
DataArea/Person/PersonalProfile/PhotoURL | string | photo | Ubicación para la fotografía de la persona. | N |
DataArea/Person/PersonalProfile/PreferredMeasure | string | preferredMeasure | La unidad de medida preferida. | N |
DataArea/Person/PersonalProfile/PreferredCommunication | string | preferredCommunication | Método preferido de comunicación por teléfono. | N |
DataArea/Person/PersonalProfile/PreferredDelivery | string | preferredDelivery | Método de entrega preferido. | N |
DataArea/Person/PersonalProfile/Description | string | description | Descripción de la persona. | N |
DataArea/Person/PersonalProfile/Gender | string | gender | El sexo de la persona. Los valores válidos son los siguientes:
| N |
DataArea/Person/PersonalProfile/Income | int | income | Los ingresos anuales de la persona. | N |
DataArea/Person/PersonalProfile/MaritalStatus | string | maritalStatus | El estado civil de la persona. | N |
DataArea/Person/PersonalProfile/IncomeCurrency | string | incomeCurrency | Moneda de los ingresos de la persona. | N |
DataArea/Person/PersonalProfile/NumberOfChildren | int | children | El número de hijos que tiene esa persona. Si no se proporciona, el valor predeterminado es 0. | N |
DataArea/Person/PersonalProfile/Household | int | household | Número de personas que forman la unidad familiar. | N |
DataArea/Person/PersonalProfile/CompanyName | string | companyName | La empresa para la que trabaja la persona. | N |
DataArea/Person/PersonalProfile/Hobbies | string | hobbies | Intereses y aficiones principales de la persona. | N |
DataArea/Person/PersonalProfile/Timezone | string | timeZone | EL huso horario en el que reside la persona. | N |
DataArea/Person/PersonalProfile/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
DataArea/Person/BusinessProfile/BusinessTitle | string | businessTitle | Cargo en la empresa. | N |
DataArea/Person/BusinessProfile/OrganizationName | string | organizationName | El nombre de la organización. | N |
DataArea/Person/BusinessProfile/OrganizationalUnitName | string | organizationUnitName | Nombre de la unidad organizativa. | N |
DataArea/Person/BusinessProfile/EmployeeID | string | employeeId | Método para identificar el empleado como, por ejemplo, número de empleado. | N |
DataArea/Person/BusinessProfile/AlternateID | string | alternateId | ID especial asignado por la organización o la unidad de organización a la que pertenece este usuario. | N |
DataArea/Person/BusinessProfile/EmployeeType | string | employeeType | El tipo de empleado como, por ejemplo, regular, tiempo parcial, tiempo parcial especial, eventual y contratista. | N |
DataArea/Person/BusinessProfile/DepartmentNumber | string | departmentNumber | Número de departamento del usuario de la empresa. | N |
DataArea/Person/BusinessProfile/Manager | string | manager | El nombre del gestor o supervisor de este usuario de empresa. | N |
DataArea/Person/BusinessProfile/Secretary | string | secretary | El nombre del secretario o asistente administrativo del usuario de empresa. | N |
DataArea/Person/BusinessProfile/RequisitionerID | string | requisitionerId | ID exclusivo para identificar al solicitante. | N |
DataArea/Person/BusinessProfile/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
DataArea/Person/ContactInfo/Telephone[1] | string | phone1 | Número de teléfono primario de la persona. | N |
DataArea/Person/ContactInfo/Telephone[1]/@type | string | phone1Type | El tipo de teléfono que se utiliza para el número de teléfono primario. Por ejemplo, TTY para personas con problemas de audición, PCM para modulación por pulsos codificados o CEL para teléfono móvil. Este valor es un campo de 3 caracteres. | N |
DataArea/Person/ContactInfo/Telephone[1]/@publish | boolean | publishPhone1 | Especifica si el número de teléfono primario aparece en la lista. | N |
DataArea/Person/ContactInfo/Telephone[2] | string | phone2 | Número de teléfono secundario de la persona. | N |
DataArea/Person/ContactInfo/Telephone[2]/@type | string | phone2Type | El tipo de teléfono que se utiliza para el número de teléfono secundario. Por ejemplo, TTY para personas con problemas de audición, PCM para modulación por pulsos codificados o CEL para teléfono móvil. Este valor es un campo de 3 caracteres. | N |
DataArea/Person/ContactInfo/Telephone[2]/@publish | boolean | publishPhone2 | Especifica si el número de teléfono primario aparece en la lista. | N |
DataArea/Person/ContactInfo/Email[1] | string | email1 | Dirección de correo electrónico primaria de la persona. | N |
DataArea/Person/ContactInfo/Email[2] | string | email2 | Dirección de correo electrónico secundaria de la persona. | N |
DataArea/Person/ContactInfo/Fax[1] | string | fax1 | Número de fax primario de la persona. | N |
DataArea/Person/ContactInfo/Fax[2] | string | fax2 | Número de fax secundario de la persona. | N |
DataArea/Person/ContactInfo/Address/@type | string | addressType | La finalidad de la dirección. Los valores válidos son:
| N |
DataArea/Person/ContactInfo/Address/City | string | city | La ciudad. | N |
DataArea/Person/ContactInfo/Address/StateOrProvinceName | string | state | Estado o provincia. | N |
DataArea/Person/ContactInfo/Address/Country | string | country | País o región. | N |
DataArea/Person/ContactInfo/Address/PostalCode | string | zipCode | El código postal. | N |
DataArea/Person/ContactInfo/Address/AddressLine[1] | string | address1 | Primera línea de la dirección. | N |
DataArea/Person/ContactInfo/Address/AddressLine[2] | string | address2 | Segunda línea de la dirección. | N |
DataArea/Person/ContactInfo/Address/AddressLine[3] | string | address3 | Tercera línea de la dirección. | N |
DataArea/Person/ContactInfo/Address/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
DataArea/Person/ContactInfo/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
DataArea/Person/ContextAttribute[j]/Name | string | attributeName parte de la especificación de atributos de miembro personalizado siguiente: &attributeName_storeId_r_n=value | Nombre de un atributo personalizable. | N |
DataArea/Person/ContextAttribute[j]/AttributeValue[k]/Value[n] | string | value parte de la especificación de atributos de miembro personalizado siguiente: &attributeName_storeId_r_n=value | Valor del atributo personalizable. | N |
DataArea/Person/ContextAttribute[j]/AttributeValue[k]/StoreID | int | storeId parte de la especificación de atributos de miembro personalizado siguiente: &attributeName_storeId_r_n=value | ID de tienda donde se aplica el valor de atributo. Si no se especifica, el valor se aplica en todas las tiendas. | N |
DataArea/Person/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
Adición o actualización de una dirección para una persona:
Las peticiones para añadir o actualizar una dirección de una persona se correlacionan con com.ibm.commerce.usermanagement.commands.AddressAddCmd y com.ibm.commerce.usermanagement.commands.AddressUpdateCmd. Las peticiones deben contener la siguiente información:
XPath* | Escriba | Se correlaciona con el siguiente parámetro de mandato | Descripción: | Necesario |
ApplicationArea/BusinessContext/ContextData | USERDATA | - | Datos de contexto. Por ejemplo:
| N |
DataArea/Sync/ActionCriteria/ActionExpression/@actionCode | string | action | El código de acción. Los valores válidos son los siguientes:
|
Y |
DataArea/Sync/ActionCriteria/ActionExpression | string | commerceObject | Expresión de acción. Se debe especificar de la forma indicada a continuación:
| Y |
DataArea/Person/PersonIdentifier/DistinguishedName | string | distinguishedName | Nombre distinguido de la persona, que se utiliza junto con el apodo para identificar a la persona. | Y |
DataArea/Person/ContactList/ContactEntry/@contactNickName | string | Apodo | El apodo o identificador de la dirección que se añade o actualiza. Una persona puede tener una colección de direcciones, cada una con un apodo. El sistema trata la dirección que un usuario proporciona durante el registro como la dirección propia de la persona. El sistema establece el apodo de esa dirección en el ID de inicio de sesión de la persona. | Y |
DataArea/Person/ContactList/ContactEntry/ContactName/LastName | string | lastName | Apellido de la persona. | N |
DataArea/Person/ContactList/ContactEntry/ContactName/PersonTitle | string | personTitle | Tratamiento de la persona, por ejemplo, Dr., Sr. o Sra. | N |
DataArea/Person/ContactList/ContactEntry/ContactName/FirstName | string | firstName | Nombre de la persona. | N |
DataArea/Person/ContactList/ContactEntry/ContactName/MiddleName | string | middleName | Segundo nombre de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Telephone[1] | string | phone1 | Número de teléfono primario de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Telephone[1]/@type | string | phone1Type | El tipo de teléfono que se utiliza para el número de teléfono primario. Por ejemplo, TTY para personas con problemas de audición, PCM para modulación por pulsos codificados o CEL para teléfono móvil. Este valor es un campo de 3 caracteres. | N |
DataArea/Person/ContactList/ContactEntry/Telephone[1]/@publish | string | publishPhone1 | Especifica si el número de teléfono primario aparece en la lista. | N |
DataArea/Person/ContactList/ContactEntry/Telephone[2] | string | phone2 | Número de teléfono secundario de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Telephone[2]/@type | string | phone2Type | El tipo de teléfono que se utiliza para el número de teléfono secundario. Por ejemplo, TTY para personas con problemas de audición, PCM para modulación por pulsos codificados o CEL para teléfono móvil. Este valor es un campo de 3 caracteres. | N |
DataArea/Person/ContactList/ContactEntry/Telephone[2]/@publish | string | publishPhone2 | Especifica si el número de teléfono primario aparece en la lista. | N |
DataArea/Person/ContactList/ContactEntry/Email[1] | string | email1 | Dirección de correo electrónico primaria de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Email[2] | string | email2 | Dirección de correo electrónico secundaria de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Fax[1] | string | fax1 | Número de fax primario de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Fax[2] | string | fax2 | Número de fax secundario de la persona. | N |
DataArea/Person/ContactList/ContactEntry/Address/@type | string | addressType | La finalidad de la dirección. Los valores válidos son:
| N |
DataArea/Person/ContactList/ContactEntry/Address/City | string | city | La ciudad. | N |
DataArea/Person/ContactList/ContactEntry/Address/StateOrProvinceName | string | state | Estado o provincia. | N |
DataArea/Person/ContactList/ContactEntry/Address/Country | string | country | País o región. | N |
DataArea/Person/ContactList/ContactEntry/Address/PostalCode | string | zipCode | Código postal o ZIP. | N |
DataArea/Person/ContactList/ContactEntry/Address/AddressLine[1] | string | address1 | Primera línea de la dirección. | N |
DataArea/Person/ContactList/ContactEntry/Address/AddressLine[2] | string | address2 | Segunda línea de la dirección. | N |
DataArea/Person/ContactList/ContactEntry/Address/AddressLine[3] | string | address3 | Tercera línea de la dirección. | N |
DataArea/Person/ContactList/ContactEntry/Address/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
DataArea/Person/ContactList/ContactEntry/UserData/UserDataField | USERDATA | - | Se utiliza para pasar más parámetros al mandato de destino. | N |
* Los prefijos de espacios de nombres se ignoran para una mayor sencillez.
Ejemplos
- SyncPerson.xml: adición de una persona
- SyncPersonAddress.xml: adición de una dirección para una persona
Respuesta
Las respuestas de este servicio web de entrada están en formato de BOD ConfirmBOD.
Una respuesta para añadir o actualizar una persona contiene la siguiente información:
XPath* | Tipo | Descripción: |
DataArea/BOD/BODSuccessMessage | - | Este elemento está presente si la petición ha sido satisfactoria. |
DataArea/BOD/BODSuccessMessage/UserArea/Person/PersonIdentifier/UniqueID | string | ID de miembro de la persona |
Una respuesta a la adición o actualización de la dirección de una persona contiene la información siguiente:
XPath* | Tipo | Descripción: |
DataArea/BOD/BODSuccessMessage | - | Este elemento está presente si la petición ha sido satisfactoria. |
* Los prefijos de espacios de nombres se ignoran para una mayor sencillez.
Ejemplos
- ConfirmBODPerson.xml: respuesta de la adición o actualización satisfactoria de una persona
- ConfirmBODPersonError.xml: respuesta de la adición o actualización satisfactoria de una dirección
Excepciones
Todas las excepciones se devuelven en formato de BOD ConfirmBOD
con un elemento ResponseCriteria
debajo del verbo Confirm
. Los elementos contienen la siguiente información:
XPath* | Tipo | Descripción: |
---|---|---|
DataArea/Confirm/ResponseCriteria/ChangeStatus/Code | string | El identificador de correlación. Se puede utilizar para identificar de forma exclusiva una excepción en los registros de servidor. |
DataArea/Confirm/ResponseCriteria/ChangeStatus/ReasonCode | string | El código de razón, que es un HCL Commercecódigo de error del sistema si está disponible, o la clave del mensaje EC más un código de error secundario opcional si el código de error del sistema de HCL Commerce no está disponible (generalmente en el caso de excepciones de aplicación). |
DataArea/Confirm/ResponseCriteria/ChangeStatus/Reason | string | El mensaje de excepción. |
* Los prefijos de espacios de nombres se ignoran para una mayor sencillez.
Archivo de correlación de mensajes utilizado: SyncPersonBODMapping.xml
Ejemplos
- SyncPerson.xml
- SyncPersonAddress.xml
- ConfirmBODPersonError.xml: respuesta de excepción cuando falta un parámetro necesario.