...
Painel | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Painel | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Expandir | ||
---|---|---|
| ||
|
Acerca del manual
Propósito y alcance
...
|
Painel | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Acerca del manual
Propósito y alcance
El presente manual de usuario tiene como finalidad la capacitación al usuario que desee utilizar los servicios provistos por Bridge para la integración con otros sistemas que provean de la información requerida de maestros y configuraciones generales para el funcionamiento de Bridge en su operatoria de tiendas con sus puntos de venta.
Se detallan los campos requeridos por cada entidad, los errores posibles y se proveen algunos escenarios de aplicación del servicio para las diferentes entidades.
En el presente documento se detallan las entidades de los maestros de Bridge que se podrán actualizar en la versión de API v7.1
...
Dica | ||
---|---|---|
| ||
Se sugieren algunos puntos a modo de recomendación para los envíos de información a través de los servicios de integración.
|
...
Propiedad | Tipo de dato | Descripción | Requerido |
---|---|---|---|
name | String(100) | Identificador de la marca comercial. | Si |
description | String(200) | Nombre de la marca. | NoSi |
disabled | Boolean | Flag que indica si la marca está habilitada en el sistema. | SiNo |
Request de Marca
Bloco de código |
---|
<?xml version="1.0" encoding="UTF-8"?> <bridgeCoreRequest> <operation>createOrUpdate</operation> <params> <brands type="list"> <brand type="bean"> <name>ELECX</name> <description>ELECTROLUX</description> <disabled>false</disabled> </brand> <brand type="bean"> <name>ATM</name> <description>ATMA</description> <disabled>true</disabled> </brand> </brands> </params> </bridgeCoreRequest> |
...
Propiedad | Tipo de dato | Descripción | Requerido | ||||
---|---|---|---|---|---|---|---|
code | String | Código del atributo del ítem | Si | ||||
name | String | Descripción del atributo del ítem | Si | ||||
dataType | String | Tipo de dato que puede tomar el atributo | Sí | editOpcionsFlag | Boolean | Los tipos posibles son: list, string, number, date, boolean | Sí |
editOpcionsFlag | Boolean | Un campo que NO es requerido, que permita habilitar/deshabilitar la opción de permitir editar opciones en el POS | No | ||||
showInfo | Boolean | Indicador si se requiere mostrar o no la información de la opción del atributo (default si no se recibe: false) | No | ||||
showRgb | Boolean | Indicador si se requiere mostrar o no el RGB asignado a la opción del atributo (default si no se recibe: false) | No | ||||
disabled | Boolean | Indicador de atributo deshabilitado o no (default si no se recibe: false) | No | ||||
options | List | Lista de opciones o valores que tendrá el atributo del ítem El tag debe agregarse aunque no sea del tipo lista el atributo. <options/> Requerido con todos los datos cuando el atributo es tipo "lista" | No |
La lista options debe contener entidades "option”, las cuales poseen la siguiente estructura:
...
Propiedad | Tipo de dato | Descripción | Requerido |
---|---|---|---|
value | String | Valor de la opción del atributo | Si |
rgb | String | Código del RGB (enviar sin #) | No |
order | Integer | Código de la agrupación jerárquica de nivel más alto a la que pertenece el artículo. En este campo los valores admitidos deben encontrarse dados de alta dentro de la tabla MerchandiseHierarchy (code)Indica como quedará listada la opción de los atributos. Permite definir un orden de búsqueda en el POS. | No |
info | String | Información adicional de la opción del atributo | No |
disabled | Boolean | Indicador de atributo deshabilitado o no (default si no se recibe: false) | No |
...
Bloco de código |
---|
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services.business.soap.bridge.synthesis.com/"> <soapenv:Header /> <soapenv:Body> <ser:execute> <!--Optional:--> <service>itemAttribute</service> <!--Optional:--> <request><![CDATA[ <bridgeCoreRequest> <operation>createOrUpdate</operation> <params> <itemAttributes type="list"> <itemAttribute type="bean"> <code>PROCEDENCIA</code> <dataType>list</code>dataType> <name>Procedencia</name> <showInfo>true</showInfo> <showRgb>false</showRgb> <options type="list"> <option type="bean"> <value>NAC</value> <order>1</order> <info>hola</info> </option> </options> <options type="list"> <option type="bean"> <value>IMPORTADO</value> <order>2</order> <info>pepe</info> </option> </options> </itemAttribute> <itemAttribute type="bean"> <code>DISCONTINUADO</code> <<dataType>boolean</itemAttributes>dataType> < <name>Discontinuado</params> </bridgeCoreRequest>]]></request>name> <disabled>false</disabled> <showInfo>true</showInfo> <!--Optional:--> <showRgb>false</showRgb> <store>0</store> </ser:execute>options> </itemAttributes> </params> </bridgeCoreRequest>]]></request> <!--Optional:--> <store>0</store> </ser:execute> </soapenv:Body> </soapenv:Envelope> |
...
Propiedad | Tipo de dato | Descripción | Requerido | Campo de importación |
---|---|---|---|---|
itemCode | String (25) | Código del artículo. | Si | |
description | String (50) | Descripción del artículo | Si | |
hierarchyGroupCode | String (10) | Código de la agrupación jerárquica de nivel más bajo al que pertenece el artículo. | No | |
price | Decimal(11,2) | Precio de venta por unidad. | Si | |
unitCostPrice | Decimal(11,2) | Costo de la unidad. | No | |
specialPrice | Decimal(11,2) | Precio especial de venta para clientes. | No | |
vatCode | String (3) | Código del tipo de IVA asociado al artículo. | Si | |
notForSaleFlag | Boolean | Flag que indica que el artículo no está a la venta. | No | |
notForDiscountsFlag | Boolean | Flag que indica que el artículo no admite descuentos. | No | |
priceRequiredFlag | Boolean | Flag que indica que el artículo requiere el ingreso del precio. | No | |
weightRequiredFlag | Boolean | Flag que indica que el artículo requiere el ingreso de peso. | No | |
quantityRequiredFlag | Boolean | Flag que indica que el artículo requiere el ingreso de una cantidad o magnitud. | No | |
quantityAllowedFlag | Boolean | Flag que indica que el artículo admite el ingreso de cantidad. | No | |
restrictedSaleFlag | Boolean | Flag de venta en horaio restringido | No | |
logExceptionFlag | Boolean | Flag que indica si debe registrarse en el log de excepciones. | No | |
authorizationRequiredFlag | Boolean | Flag que indica que el artículo requiere autorización del supervisor. | No | |
foodStampFlag | Boolean | Flag Food Stamp, indica si está asociado al medio de pago Food Stamp. | No | |
serialNumberRequiredFlag | Boolean | Flag que indica que el artículo requiere el ingreso de número de serie. | No | |
returnNotAllowedFlag | Boolean | Flag que indica que el artículo no admite ser devuelto. | No | |
supplierCode | String (100) | Código del proveedor del artículo. | No | |
brandCode | String (100) | Código de la marca del artículo. | No | |
itemType | String (25) | Código del tipo de artículo.
| Si | |
promotionalPrice | Decimal(11,2) | Precio promocional. | No | |
promotionalPriceDateFrom | DateTime | Fecha y hora de inicio de la vigencia del precio promocional | No | |
promotionalPriceDateTo | DateTime | Fecha de hora de finalización de la vigencia del precio promocional | No | |
uomCode | String (25) | Código de la unidad de medida para el artículo.
| Si | |
lastUpdateSaleUnitPrice | DateTime | Fecha y hora de la última actualización del precio de venta. | No | |
genericItemFlag | Boolean | Flag que indica que el artículo es genérico. | Si | |
kitComponentFlag | Boolean | Flag que indica que el artículo es un componente de un kit. | Si | |
inventoryLocationCode | Varchar (25) | Código del almacén o depósito | Si | |
commissionPercent | Decimal(6,2) | Porcentaje de comisión sobre el artículo que le corresponde al asociado. | No | |
disabled | Boolean | Flag que indica que el artículo está deshabilitado | Si | |
itemVATCategory | String (2) | Categoría de IVA del ítem. Los valores posibles son: C, E, F, o G: | ||
uom2Code | String (1) | Código de la segunda unidad de medida para el artículo. | No | |
uom2Units | Decimal(14,2) | Factor de conversión entre la primera y la segunda unidad de medida | No | |
uom2Operation | String (1) | Tipo de conversión. | No | |
stockReservationRequired | Boolean | Indicador de requiere reserva de stock. Default false. Modifica el flag "Requiere reserva de stock" (FL_STKRES_RQ)) | No | Si el parámetro store.setItemSerializedFlagWithReservationByService = true cuando en el servicio de importación el item venga con el campo serialNumberRequiredFlag = true, importar item.stockReservationRequired = true Si el parámetro store.setItemSerializedFlagWithReservationByService = false procede como actualmente (si viene el valor en este campo lo setea con ese valor sino importa el default: false) |
genericFieldString1 | String (50) | Campo para uso genérico | No | Importar en ITM_USR_DATA, campo USR_I_STRNG |
genericFieldString2 | String (50) | Campo para uso genérico | No | Importar USR_II_STRNG |
genericFieldString3 | String (50) | Campo para uso genérico | No | Importar USR_III_STRNG |
genericFieldString4 | String (50) | Campo para uso genérico | No | Importar USR_IV_STRNG |
genericFieldBoolean1 | Boolean | Campo para uso genérico | No | Importar en USR_I_FL |
genericFieldBoolean2 | Boolean | Campo para uso genérico | No | Importar en USR_II_FL |
genericFieldBoolean3 | Boolean | Campo para uso genérico | No | Importar en USR_III_FL |
genericFieldBoolean4 | Boolean | Campo para uso genérico | No | Importar en USR_IV_FL |
genericFieldDecimal1 | Decimal(8,2) | Campo para uso genérico | No | Importar en campo USR_I_INT |
genericFieldDecimal2 | Decimal(8,2) | Campo para uso genérico | No | Importar en campo USR_II_INT |
genericFieldDecimal3 | Decimal(8,2) | Campo para uso genérico | No | Importar en campo USR_III_INT |
genericFieldDecimal4 | Decimal(8,2) | Campo para uso genérico | No | Importar en campo USR_IV_INT |
importDocReq | Boolean | Indicador si requiere de documento de importación (para serializables) | No | |
sellerRequired | Boolean | Indicador si requiere el ingreso del vendedor | No | |
webDescription | Varchar (max) | Descripción ampliada del artículo para la web | No | |
extendedWebDescription | Varchar (max) | Descripción detallada del artículo para la web | No | |
internalTaxes | List | Lista de impuestos internos | No | |
itemPictures | List | Lista de imágenes asociadas | No | |
formRequiredFlag | boolean | Flag indicador de formulario requerido | No (opcional) | Default = false si no viene informado |
upc | String | Código Universal de Producto del Articulo | No | Es un dato que permite agrupar varios artículos para listas de precios por umbral y su acumulación de unidades |
manufacturer | string | Código del fabricante En este campo los valores admitidos deben encontrarse dados de alta dentro de la tabla manufacturer (campo code) (a partir de Bridge7.2) | No (opcional) | (a partir de Bridge 7.2) |
exemptFlag | boolean | Flag de item exento (a partir de Bridge7.2) | No (opcional) | Default = false si no viene informado (a partir de Bridge 7.2) |
otherUnitOfMeasure | list | Lista de unidades de medida complementarias otherUnitOfMeasure <uomCode>blister</uomCode> <conversionFactor>0.1</conversionFactor> | No (opcional) | (a partir de 7.2) |
printCommandsFlag | boolean | Flag de ítem para impresión de comanda | No (opcional) | Default = False si no viene informado. (a partir de Bridge 7.3) |
maxStock | Decimal(11,2) | Stock Máximo que la Tienda puede tener por Producto | No (opcional) | Default = 0 si no viene informado. (a partir de Bridge 7.3) |
securityStock | Decimal(11,2) | Stock de Seguridad Adicional al forecast | No (opcional) | Default = 0 si no viene informado. (a partir de Bridge 7.3) |
attributes | List | Atributos de un item | No (opcional) | <attributes type="list"> <attribute type="bean"> <code>PROCEDENCIA</code> <option>NAC</option> </attribute> </attributes> |
creditAllowed | boolean | Flag que indica si el articulo puede ser vendido con crédito propio | No (opcional, default=false) | (a partir de 7.4) |
blockedForIcd | boolean | Flag para Artículo bloqueado para Compras y Reposición: No permite reposición | No (opcional) | Default = false si no viene informado (a partir de Bridge 7.4) |
alcoholicBeverage | boolean | Flag que indica si el articulo debe ser validado como bebida alcohólica | No (opcional) default=false | (a partir de 7.5) |
affiliateBenefit | boolean | Flag que indica si el articulo tiene el beneficio de Afiliado | No (opcional, default=false) | (a partir de 7.4) |
serialFormat | string | Permite definir el tipo de formato admitido para el nro de serie | opcional | (a partir de 7.4) |
externalCode | number | Permite definir el código externo del item | No (opcional) | v1.17 (a partir de 7.5) |
...
Propiedad
...
Tipo de dato
...
Descripción
...
Requerido
...
internalTaxCode
...
String(25)
...
Código de impuesto interno
...
Si
...
internalTaxAmount
...
Decimal
...
Monto del impuesto interno o porcentaje (sobreescribe el general del impuesto para el item en particular, si no se informa, toma el default del impuesto)
...
No
Request de artículo
...
language | xml |
---|
...
minSalePrice | Decimal | Precio mínimo de venta (para cálculo de márgenes para pedidos si aplicara por configuración) | No | minSalePrice (a partir de 7.5.2) |
minStockForChannels | number | Cantidad de unidades definidas como stock mínimo para canales | No | |
fullDescription | string | Descripcion ampliada | No (opcional) | v1.23 (a partir de 7.7) |
stockItem | object | ¿Es un artículo que maneja stock? | No (opcional) | v1.23 (a partir de 7.7) |
itemDepth | NumberDecimal | Profundidad del ítem | No (opcional) | v1.23 (a partir de 7.7) |
itemHeight | NumberDecimal | Altura del ítem | No (opcional) | v1.23 (a partir de 7.7) |
itemNetWeight | NumberDecimal | Peso del ítem | No (opcional) | v1.23 (a partir de 7.7) |
minStockForChannels | NumberDecimal | Stock Minimo para Canales | No (opcional) | v1.23 (a partir de 7.7) |
itemGrossWeight | NumberDecimal | Peso bruto del ítem | No (opcional) | v1.23 (a partir de 7.7) |
itemDiameter | NumberDecimal | Diámetro del ítem | No (opcional) | v1.23 (a partir de 7.7) |
itemWidth | NumberDecimal | Ancho del ítem | No (opcional) | v1.23 (a partir de 7.7) |
calculateCommission | boolean | Calcula comision | No (opcional) | v1.23 (a partir de 7.7) |
relevance | integer | Relevancia | No (opcional) | v1.23 (a partir de 7.7) |
published | boolean | Publicado | No (opcional) | v1.23 (a partir de 7.7) |
detailedDescription | string | Descripcion detallada | No (opcional) | v1.23 (a partir de 7.7) |
barcode | string | CodBarra | No (opcional) | v1.23 (a partir de 7.7) |
requiresPrescriptionFlag | boolean | Requiere receta | No (opcional) | v1.23 (a partir de 7.7) |
onConsignment | boolean | Consignado | No (opcional) | v1.23 (a partir de 7.7) |
classification | string | Clasificacion | No (opcional) | v1.23 (a partir de 7.7) |
daysToReturn | integer | Dias para devoluciones y cambios | No (opcional) | v1.23 (a partir de 7.7) |
invoiceNotAllowed | boolean | No permite facturar | No (opcional) | v1.23 (a partir de 7.7) |
notForSale | boolean | No admite otro artículo en la venta | No (opcional) | v1.23 (a partir de 7.7) |
packQty | integer | Empaque Mínimo | No (opcional) | v1.23 (a partir de 7.7) |
gtin | integer | Código GTIN | No (opcional) | v1.23 (a partir de 7.7) |
requiresValidationExternalFlag | boolean | Requiere Validación Externa | No (opcional) | v1.23 (a partir de 7.7) |
La lista internalTaxes debe contener entidades "internalTax", las cuales poseen la siguiente estructura:
Nota: cuando la nueva property "store.internalTaxInformedWithItem" esté en false, no considerar el tag internalTaxes al importar ya que se usará el servicio de relación de artículos con impuestos internos.
Cuando la property esté en true, se mantiene la lógica actual: con cada importación del servicio "ítem" se borran los impuestos internos asociados al ítem en el modelo y se crean las relaciones incluidas en el servicio.
Propiedad | Tipo de dato | Descripción | Requerido |
---|---|---|---|
internalTaxCode | String(25) | Código de impuesto interno | Si |
internalTaxAmount | Decimal | Monto del impuesto interno o porcentaje (sobreescribe el general del impuesto para el item en particular, si no se informa, toma el default del impuesto) | No |
La lista de atributos debe contener entidades "attribute", las cuales poseen la siguiente estructura:
Ejemplo
<attributes type="list">
<attribute type="bean">
<code>PROCEDENCIA</code>
<option>NAC</option>
</attribute>
<attribute type="bean">
<code>COLOR</code>
<option>AZUL</option>
</attribute>
<attribute type="bean">
<code>PREP Physical</code>
<option>true</option>
</attribute>
</attributes>
NOTA: si la opción o valor enviado pertenece a un atributo del tipo "list", se validará que la opción exista previamente. No se creará el item si este valor no existe para no generar inconsistencias de datos. (a partir de 7.5.1)
Propiedad | Tipo de dato | Descripción | Requerido |
---|---|---|---|
code | String(25) | Código de impuesto interno | Si |
option | String | Según el tipo de dato | Si |
Request de artículo
Bloco de código | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <bridgeCoreRequest> <operation>createOrUpdate</operation> <params> <items type="list"> <item type="bean"> <itemCode>ABC999</itemCode> <description>ABC999 Producto con atributo</description> <description2>PROD</description2> <description3>PROD</description3> <price>7000.0000</price> <unitCostPrice>2000.0000</unitCostPrice> <vatCode>2</vatCode> <notForSaleFlag /> <notForDiscountsFlag /> <priceRequiredFlag /> <weightRequiredFlag /> <quantityRequiredFlag /> <quantityAllowedFlag>true</quantityAllowedFlag> <restrictedSaleFlag /> <logExceptionFlag /> <authorizationRequiredFlag /> <serialNumberRequiredFlag>false</serialNumberRequiredFlag> <returnNotAllowedFlag /> <supplierCode>MIRGOR2</supplierCode> <brandCode /> <itemType>NORM</itemType> <promotionalPrice /> <promotionalPriceDateFrom format="dd-MM-yyyy hh:mm:ss" /> <promotionalPriceDateTo format="dd-MM-yyyy hh:mm:ss" /> <uomCode>u</uomCode> <imageCode /> <lastUpdateSaleUnitPrice format="dd-MM-yyyy hh:mm:ss" /> <genericItemFlag>false</genericItemFlag> <kitComponentFlag>false</kitComponentFlag> <inventoryLocationCode>DEP1</inventoryLocationCode> <commissionPercent /> <disabled>false</disabled> <itemVATCategory>G</itemVATCategory> <uom2Code /> <uom2Units /> <uom2Operation /> <stockReservationRequired>true</stockReservationRequired> <importDocReq>true</importDocReq> <sellerRequired>false</sellerRequired> <amountRequiredFlag>true</amountRequiredFlag> <genericFieldBoolean1>false</genericFieldBoolean1> <genericFieldString1 /> <genericFieldDecimal1 /> <webDescription>PROD Seriado12</webDescription> <extendedWebDescription /> <itemPictures> <itemPicture /> </itemPictures> <attributes type="list"> <attribute type="bean"> <code>PROCEDENCIA</code> <option>NAC</option> </attribute> <attribute type="bean"> <code>COLOR</code> <itemPicture /> <<option>AZUL</itemPictures>option> <attributes type="list"> </attribute> <attribute type="bean"> <code>PROCEDENCIA<<code>PREPARADO</code> <option>NAC<<option>true</option> </attribute> </attributes> </item> </items> </params> </bridgeCoreRequest> |
...
Propiedad | Tipo de dato | Descripción | Requerido | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
item | String | Código de artículo | Si | ||||||||||||||||
itemTypeRelated | String | Código de la relación entre artículos (Valores posibles, los indicados en la columna "Código")
| Si | ||||||||||||||||
itemRelated | String | Código del artículo relacionado | Si | ||||||||||||||||
nameRelated | String | Descripción del tipo de relación (texto opcional) | No | ||||||||||||||||
disabled | Boolean | Indicador de habilitado | No |
Request de
...
artículos relacionados
Bloco de código |
---|
<bridgeCoreRequest> <operation>createOrUpdate</operation> <params> <itemsRelated type="list"> <itemRelated type="bean"> <item>AW5420</item> <itemRelated>825301</itemRelated> <itemTypeRelated>CI</itemTypeRelated> <nameRelated>RComplementario</nameRelated> </itemRelated> <itemRelated type="bean"> <item>AW5420</item> <itemRelated>825650</itemRelated> <itemTypeRelated>SI</itemTypeRelated> <nameRelated>RSimil</nameRelated> </itemRelated> </itemsRelated> </params> </bridgeCoreRequest> |
...
Campo del servicio -- Propiedad -- | Tipo de dato | Requerido | Descripción | Campo en el cual importar en la tabla "itemInternalTax" | Default | |
---|---|---|---|---|---|---|
1 | item | string | si | Código del ítem | Se va a recibir el código del artículo, en la tabla se guardaría el ID del objeto ítem que coincida con el internalCode recibido (de la tabla item)
| |
2 | internalTaxType | string | si | Código del impuesto interno | Se va a recibir el código del impuesto interno (campo internalTaxType.code). Se debe buscar en la tabla internalTaxType y guardar el ID del objeto
| |
3 | amount | number | si | Monto del impuesto (este sobre escribe el del impuesto para el artículo) | amount | |
4 | effectiveDateTime | date | si | Fecha inicio de validez del impuesto | effectiveDateTime | |
5 | expirationDateTime | date | si | Fecha fin de validez del impuesto | expirationDateTime | |
6 | description | string | no | Descripción de la relación del impuesto-artículo | description | |
7 | disabled | boolean | si | Indicador de habilitado o no la relación del item-impuesto interno | disabled | false |
- Los campos updatedAt (si se actualiza o se crea el registro) y createdAt se importarán al momento de la creación del registro
...
Bloco de código |
---|
<?xml version="1.0" encoding="UTF-8"?>
<bridgeCoreRequest>
<operation>createOrUpdate</operation>
<params>
<transferDocument type="bean">
<sourceRetailStore>1</sourceRetailStore>
<destinationRetailStoreID>2</destinationRetailStoreID>
<originatorNumber />
<createDateTimestamp format="yyyy-MM-dd">2019-08-19</createDateTimestamp>
<expectedDeliveryDate format="yyyy-MM-dd">2019-08-19</expectedDeliveryDate>
<serialFormID />
<inventoryControlDocumentState />
<inventoryControlDocumentLineItems type="list">
<inventoryControlDocumentLineItem>
<item>1234</item>
<unitCount>1</unitCount>
</inventoryControlDocumentLineItem>
</inventoryControlDocumentLineItems>
</transferDocument>
</params>
</bridgeCoreRequest> |
Transferencia
Este servicio permite enviar desde un sistema externo una transferencia hacia una tienda que se podrá visualizar luego desde el menú Inventario/Transferencias. Este es un caso particular donde la tienda origen es una tienda que debe encontrarse configurada como erpFlag=true (emulando ser un centro de distribución) Solo se mostrará en BMC y en la tienda destino. Esta transferencia ingresa en estado confirmada
Disponible a partir de Bridge 7.2
Nombre del Servicio: transferDocument
Parámetros de entrada:
Entidad “transferDocument", que posee la siguiente estructura:
...
Propiedad
...
Tipo de dato
...
Descripción
...
Requerido
...
sourceRetailStore
...
String (20)
...
Código de la tienda origen
...
Si
...
destinationRetailStoreID
...
String (20)
...
Código de la tienda destino
...
Si
...
originatorNumber
...
Integer
...
Número de la transferencia externo
...
No
...
createDateTimestamp
...
date
...
Fecha de creación
...
Si
...
ExpectedDeliveryDate
...
date
...
Fecha esperada de entrega
...
No
...
serialFormID
...
Integer
...
Código de la transferencia
...
No cuando estado 2
Si cuando estado 4 o 5
...
inventoryControlDocumentState
...
String
...
"CONFIRMADA" (2) -> Nueva transferencia
"CERRADA" 4 -> Recepción
"CANCELADA" 5 -> Recepción Cancelada
No
...
</transferDocument>
</params>
</bridgeCoreRequest> |
Transferencia
Este servicio permite enviar desde un sistema externo una transferencia hacia una tienda que se podrá visualizar luego desde el menú Inventario/Transferencias. Este es un caso particular donde la tienda origen es una tienda que debe encontrarse configurada como erpFlag=true (emulando ser un centro de distribución) Solo se mostrará en BMC y en la tienda destino. Esta transferencia ingresa en estado confirmada
Disponible a partir de Bridge 7.2
Nombre del Servicio: transferDocument
Parámetros de entrada:
Entidad “transferDocument", que posee la siguiente estructura:
Propiedad | Tipo de dato | Descripción | Requerido | ||||||||||
sourceRetailStore | String (20) | Código de la tienda origen | Si | ||||||||||
destinationRetailStoreID | String (20) | Código de la tienda destino | Si | ||||||||||
originatorNumber | Integer | Número de la transferencia externo | No | ||||||||||
createDateTimestamp | date | Fecha de creación | Si | ||||||||||
ExpectedDeliveryDate | date | Fecha esperada de entrega | No | ||||||||||
serialFormID | Integer | Código de la transferencia |
| ||||||||||
inventoryControlDocumentState | String | "CONFIRMADA" (2) -> Nueva transferencia "CERRADA" 4 -> Recepción "CANCELADA" 5 -> Recepción Cancelada | Sí
| ||||||||||
ICDReference | Integer | Número de la orden de transferencia | No | ||||||||||
inventoryControlDocumentLineItems | List | Lista de artículos de la transferencia | Si cuando serialFormID no informado. No cuando el serialFormID informado |
...
Propiedad | Tipo de dato | Descripción | Requerido | ||||||||||||||||||||||||||||
partyRole id
| Varchar (15) | Identificador del rol. Este campo será utilizado para el envío a PROMO por tipo de cliente. Este listado es del tipo de roles que se crean por setup en la instalación. Puede ser unos de los siguientes valores: 1- (Cliente) 2- (Empleado) 3- (Posible cliente) 4- (Proveedor) 5- (Ejecutivo de ventas) 6- (Ejecutivo de compras)
| Si | ||||||||||||||||||||||||||||
Name | Varchar | Nombre del rol Se valida que corresponda al nombre del rol indicado en el campo partyRoleId (campo NM_RO_PRTY)Ej: “Cliente”, “Empleado”indicado en el campo partyRoleId (campo NM_RO_PRTY) Ej: “Cliente”, “Empleado” NOTA: este campo es caseSensitive, con lo cual debe enviarse tal cual se encuentra creado en el ABM de tipos de clientes (campo nombre) | Si | ||||||||||||||||||||||||||||
effectiveDate | Date | Fecha de inicio de vigencia del rol | Si | ||||||||||||||||||||||||||||
expirationDate | Date | Fecha de expiración del rol | Si | ||||||||||||||||||||||||||||
statusCode | Integer | Estado de la asignación del rol al party | No | ||||||||||||||||||||||||||||
contactMethods | List | Lista de métodos de contacto (L a estructura puede verse bajo el título "Metodos de contacto" , ver “ Metodos de contacto” ) | SI (al menos debe tener uno) |
...
Propiedad | Tipo de dato | Descripción | Requerido |
purposeType id | Integer | Id del tipo de propósito del contacto. El listado de los valores ya precargados por setup son los siguientes valores: 1 – Emergencia 2 – Consulta (default) | Si |
methodType id | Integer | Id del tipo de método de contacto. Estos valores vienen configurados en el setup o podrán ser ajustados por BM. Puede ser unos de los siguientes valores: 1 – Particular 2 – Laboral Si Puede ser unos de los siguientes valores: 1 – Particular 2 – Laboral | Si |
name | String | Nombre del método de contacto (ej: personal, laboral) | No |
externalSellerID | String | Opcional ID del vendedor externo | No |
externalSellerName | String | Opcional Nombre del vendedor externo
| No |
effectiveDate | Date | Fecha de inicio vigencia | Si |
expirationDate | Date | Fecha expiración del contacto | Si |
address | Bean | Domicilio (L a estructura puede verse bajo el título "Domicilio", ver “Domicilio” ) | No |
emailAddress | Bean | Correo Electronico(L a estructura puede verse bajo el título "Correo electrónico", ver “Correo electrónico” ) | No |
telephone | Bean | Telefono(L a estructura puede verse bajo el título "Telefono" , ver “Telefono” ) | No |
...
Bloco de código |
---|
<bridgeCoreRequest> <operation>createOrUpdate</operation><params> <customers type="list"> <customer type="bean"><code>920180</code> <store>1</store><party type="bean"> <name>PINTURERIA ORO SA</name> <typeCode>OGN</typeCode> <roleAssignments type="list"><partyRoleAssignment type="bean"> <contactMethods type="list"> <partyContactMethod type="bean"> <purposeType id="2"/><methodType id="1"/> <name>Laboral</name> <effectiveDate>2017-01-20T16:12:17</effectiveDate> <expirationDate>2200-12-30 00:00:00.000</expirationDate> <address type="bean"> <city type="bean"> <code>10859</code> </city><country type="bean"> <code>ARG</code></country> <state type="bean"> <code>AR-B</code></state> <firstLine>CASA 60 SAN JOSE LA HERAS</firstLine> <postalCode>9017</postalCode> </address><emailAddress type="bean"> <name>[email protected]</name> </emailAddress> </partyContactMethod> </contactMethods> <sequenceNumber>1</sequenceNumber> <partyRole id="1"> <name>Cliente</name> </partyRole> <effectiveDate format="dd-MM-yyyy">20-01-2017</effectiveDate> <expirationDate format="dd-MM-yyyy">30-12-2200</expirationDate> </partyRoleAssignment></roleAssignments> <identifications type="list"><partyIdentification type="bean"> <identificationType id="3"/><identifierValue>20225939420</identifierValue> </partyIdentification></identifications><taxRegistrations> <taxRegistration type="bean"> <name>PINTURERIA ORO SA</name> <number>20225939420</number> <taxTypes type="list"> <taxRegistrationTaxType type="bean"> <inscEffectiveDate>2017-01-20T16:12:17</inscEffectiveDate> <inscExpirationDate>2155-01-20T16:12:17</inscExpirationDate> <jurisdictionNType type="list"> <jurisdiction type="bean"> <taxJurisdictionCode>ARG</taxJurisdictionCode> -- en caso del IVA siempre es ARG porque </jurisdiction><taxCategory type="bean"> <code>RI</code> </taxCategory><type type="bean"> <code>IVA</code></type> </jurisdictionNType> </taxRegistrationTaxType> </taxTypes> </taxRegistration> <taxRegistration type="bean"> <name>PINTURERIA ORO SA</name> <number>20225939420</number> <taxTypes type="list"> <taxRegistrationTaxType type="bean"> <inscEffectiveDate>2017-01-20T16:12:17</inscEffectiveDate> <inscExpirationDate>2155-01-20T16:12:17</inscExpirationDate><certificates type="list"/> <jurisdictionNType type="list"> <jurisdiction type="bean"> <taxJurisdictionCode>BA</taxJurisdictionCode> </jurisdiction> <taxCategory type="bean"> <code>L</code> </taxCategory><type type="bean"> <code>IB</code></type> </jurisdictionNType> </taxRegistrationTaxType> </taxTypes> </taxRegistration> </taxRegistrations> </party> </customer> </customers> </params> <replicationStore>0</replicationStore> </bridgeCoreRequest> |
...
Propiedad | Tipo de dato | Descripción | Requerido | ||||
name | String (50) | Nombre o número de legajo del usuario | Si | ||||
userName | String (50) | Nombre de usuario | Si para nuevo usuario No para usuario existentepasswordusuario existente | ||||
password | String (50) | Contraseña encriptada | No Validaciones:
| ||||
passwordSalt | String (50) | Contraseña encriptadaSi para nuevo de usuario | No para usuario existente | passwordSalt | String (50) | Contraseña de usuario | Si para nuevo usuario No para usuario existenteValidaciones:
|
codeStore | Integer (20) | Código de identificación de la tienda | No | ||||
String (100) | Dirección email del usuario | No | |||||
roleGroups | List | Lista de roles para los usuarios Se debe informar la relación grupo-tienda | No , en caso de no enviar se asume que va a toda tienda <roleGroups type="list"> Validaciones:
| ||||
disabled | Boolean | Indicador si está habilitado o no el usuario | No (default si no se recibe = false) | ||||
mustChangePassword | Boolean | Tiene que cambiar la contraseña cuando la misma caduque o cuando pase los XX días de inactividad. | No. Es opcional. Se tomará por defecto que deba cambiar la contraseña. | ||||
blocksOnUserNoActivity | Boolean | Después de XX cantidad de días de inactividad, se pide cambio de contraseña. | No. Es opcional. Por defecto el usuario se bloquea después de los XX días de inactividad. | ||||
accountLocked | Boolean | Determina si la cuenta está bloqueada (30 mins en central y hasta que se modifique la password en tienda por haber ingresado mas de XX veces mal la contraseña). | No, es opcional. Por defecto el usuario se encuentra desbloqueado. | ||||
passwordExpire | Boolean | Determina si la contraseña expira o no. Si expira, pasados los XX días del último cambio de contraseña, se pide cambio de contraseña. | No, es opcional. Por defecto la contraseña expira. | ||||
Alternative_user_code | Varchar (25) | Código de usuario alternativo | No, opcional (en proyectos se podrá utilizar como código de usuario del ERP) |
...
Propiedad | Tipo de dato | Descripción | Requerido | Campo a importar en ItemStore |
---|---|---|---|---|
internalCode | String (25) | Código de artículo | Si |
|
storeCode | String | Código de tienda | Si |
|
notForSale | Integer | Item no a la venta. Valores posibles:
| No | "notForSale" |
disabled | Integer | Item deshabilitado Valores posibles:
| No | "disabled" |
blockedForIcd | Integer | Item Bloqueado para la compra (solo en órdenes de compra) Valores posibles:
| No | "blockedForIcd" |
ivaType | String (3) | Código del tipo de IVA asociado al artículo. En este campo los valores admitidos deben encontrarse dados de alta dentro de la tabla VAT (campo code) | No |
|
brand | String (100) | Código de la marca del artículo. En este campo los valores admitidos deben encontrarse dados de alta dentro de la tabla Brand (campo name) | No |
|
itemType | String (25) | Código del tipo de artículo. En este campo los valores admitidos son:
| No |
|
maxStock | Decimal(11,2) | Cantidad máxima de stock permitida utilizado únicamente para la funcionalidad de pedido sugerido | No | "maxStock" |
securityStock | Decimal(11,2) | Stock de seguridad utilizado únicamente para la funcionalidad de pedido sugerido | No | "securityStock" |
price | NumberDecimal("0.0000") | Precio de venta | No | "price" |
unitCost | NumberDecimal("0.0000") | Precio de costo - Si método de costeo = ppp, se actualizará en tienda, únicamente en la carga inicial. Cualquier costo posterior que se envíe, no pisará el costo de la tienda. | No | "unitCost" |
minSalePrice | Decimal | Precio mínimo de venta (para cálculo de margenes si aplicara por configuración) | No | minSalePrice |
minStockForChannels | Decimal | Cantidad de stock mínimo para canales por tienda | No | minStockForChannels |
location | Varchar(25) | Código del almacén o depósito por default. | No | "location" |
saleLocation | Varchar(25) | Código del almacén o depósito para la venta. | No | "saleLocation" |
onConsignment | Integer | Item en consignación Valores posibles:
| No | "onConsignment" |
Consideraciones de algunos campos no informados en el servicio:
internalCode | itemStore.item → item.internalCode | Con el código del ítem recibido, se obtiene el ID del ítem |
description | itemStore.item → item.description | Con el ID del item se obtiene el item.description |
storeCode | itemStore.store → store.code | Con el código de la tienda recibido, se obtiene el ID del store |
processed | por defecto false | |
notForSale | Si no es informado, por defecto deben ser 0 | |
disabled | Si no es informado, por defecto deben ser 0 | |
blockedForIcd | Si no es informado, por defecto deben ser 0 | |
createdAt | Si es un nuevo registro importar la fecha actual, sino no se modifica | |
updatedAt | Actualizar con la fecha actual | |
hierarchyGroup | ||
processed | Importar con valor false (para que luego lo tome el job de API que los procesa) | |
onConsignment | Si no es informado, por defecto debe ser 0 |
Request de itemStore
Bloco de código |
---|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services.business.soap.bridge.synthesis.com/"> <soapenv:Header/> <soapenv:Body> <ser:execute> <!--Optional:--> <service>itemStore</service> <!--Optional:--> <request> <![CDATA[ <bridgeCoreRequest> <operation>createOrUpdate</operation> <params> <itemStores type="list"> <itemStore><itemCode>2345<<itemStore><internalCode>2345</itemCode><storeCode>1<internalCode><storeCode>1</storeCode> <vatCode>2</vatCode> </itemStore> <itemStore><itemCode>2345<<itemStore><internalCode>2345</itemCode><storeCode>2<internalCode><storeCode>2</storeCode> <vatCode>1</vatCode> </itemStore> <itemStore> <itemCode>312<<internalCode>312</itemCode><storeCode>2<internalCode><storeCode>2</storeCode> <disabled>2</disabled></itemStore> </itemStores> </params> </bridgeCoreRequest> ]]> </request> <!--Optional:--> </ser:execute> </soapenv:Body> </soapenv:Envelope> |
...