BRIDGE - Documentación de TLOG
Registrar Transacción
BridgePOS
Analisis y Documentacion
Revisión 5.1
Analisis y Documentacion de TLOG
Registrar Transacción
Descripción breve
En este documento se describe lo siguiente:
- la interfase Standard IXRETAIL
Objetivo
El fin de este análisis es poder documentar cómo se debe reflejar cada concepto que se agrega a una transacción y verificar que todo se esté registrando correctamente.
Alcance
Este documento detalla la forma de grabar la información de cada transacción, durante la regla de Negocio "Registrar Transacción" que es parte del caso de uso "Vender en POS" y de otros casos de uso que requieren registrar el detalle de la transacción realizada.
La regla de Negocio "Registrar Transacción" es responsable de generar un registro conteniendo el detalle de la transacción en curso y grabarlo en algún repositorio como por ejemplo, un archivo o base de datos. Los mecanismos de extensión de este componente, deben permitir implementar distintos métodos y formatos para hacer este registro, de modo de permitir integrar el POS con el resto de las aplicaciones de cada cliente. Para este caso, se adopta como base el esquema XML definido por ARTS dentro de la iniciativa ARTS XML (IXRETAIL: Estándar de mensajería con formato XML orientado a Retailers), específicamente el esquema denominado POSLog. Estos esquemas se pueden extender para cubrir necesidades propias de un cliente o del segmento de industria. Se trabaja sobre la versión 2.2 de mensajes de POSLog que está en etapa de revisión y próxima a ser publicada.
Documentación asociada o de referencia
- ARTS ( Association for Retail Technology Standadars ) www.nrf-arts.com
- Especificación POSLog 2.2
Esquema POSLog
Especificamos el formato XML básico a utilizar, en base al esquema POSLog de IXRETAIL, teniendo en cuenta solo los elementos requeridos.
Transacción de Venta/Devolución
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction CancelFlag="false" TrainingModeFlag="false" SuspendedFlag="false" VoidedFlag="false" OfflineFlag="false" ContigencyFlag="false">
<RetailStoreID>145</RetailStoreID>
<WorkstationID>5</WorkstationID>
<TillID>4</TillID>
<TillType>Workstation</TillType>
<SequenceNumber>99</SequenceNumber>
<BusinessDayDate>2006-12-05</BusinessDayDate>
<Period>3</Period>
<Subperiod>4</Subperiod>
<BeginDateTime>2006-12-05 09:56:17</BeginDateTime>
<EndDateTime>2006-12-05 09:56:30</EndDateTime>
<OperatorID>105</OperatorID>
<OriginalTransaction></OriginalTransaction>
<RetailTransaction Version="2.2">
<TypeCode>Sale</TypeCode>
<SubTypeCode>Venta Regular</SubTypeCode>
<TypeID>1</TypeID>
<OriginalSequenceNumber/>
<OriginalWorstationId/>
<OriginalRetailStoreID/>
<OriginalTransactionDate>2016-08-12 11:00:32</OriginalTransactionDate>
<OriginalBillType/>
<OriginalSerieOfficialBill/>
<OriginalFiscalPOSNumber/>
<OriginalBillNumber/>
<CustomerOrderIdentification>
<WorkstationId>4</WorkstationId>
<SequenceNumber>22</SequenceNumber>
<RetailStoreID>1</RetailStoreID>
<Date>2016-08-12 24:00:00</Date>
<InternalOrderNumber>0001000001000200</InternalOrderNumber>
</CustomerOrderIdentification>
<OfficialBill>
<BillType>TF</BillType>
<SerieOfficialBill>B</SerieOfficialBill>
<FiscalPOSNumber>0020</FiscalPOSNumber>
<BillNumber>00023212</BillNumber>
<AmountOfBill>1123.55</AmountOfBill>
</OfficialBill>
<CancelledOfficialBill>
<BillType>TK</BillType>
<SerieOfficialBill>B</SerieOfficialBill>
<FiscalPOSNumber>0001</FiscalPOSNumber>
<BillNumber>00398210</BillNumber>
</CancelledOfficialBill>
<ReturnReasonCode>PM</ReasonCode>
<CancelReasonCode>PM</ReasonCode>
<CustomerCode>9999</CustomerCode>
<POSEODSequenceNumber/>
<FiscalControllerNumber/>
<FiscalPOSNumber>0004</FiscalPOSNumber>
<CashdrawerOpeningRequested>false</CashdrawerOpeningRequested>
<Weight>544.00</Weight>
<Amount>832.59</Amount>
<Channel>2</Channel>
<UniqueTxNumber/>
<Packages>5</Packages>
<Profit>29.32</Profit>
<SalesPersonID/>
<LineItem>
<SequenceNumber>1</SequenceNumber>
detalle 1
</LineItem>
<LineItem>
<SequenceNumber>2</SequenceNumber>
detalle 2
</LineItem>
<LineItem>
<SequenceNumber>3</SequenceNumber>
detalle 3
</LineItem>
. . .
<Total>1123.75<Total>
<RingElapsedTime>00.30</RingElapsedTime>
<TenderElapsedTime>00.30</TenderElapsedTime>
<LockElapsedTime>00.30</LockElapsedTime>
</RetailTransaction>
</Transaction>
</POSLog>
Elemento
| Descripción |
POSLog | Informa que es un registro del Transaccional
|
Transaction | Informa que se está registrando una transacción
|
RetailStoreID | Informa la identificación del local
|
WorkstationID | informa la identificación de la Terminal
|
TillID | Informa la cuenta contable en la que se acumulará la transacción
|
TillType | Informa el tipo de contabilidad de la tienda
|
SequenceNumber | informa el número de transacción
|
BusinessDayDate | informa la fecha contable en la cual se registra esta transacción
|
Period | Informa el período en que se está realizando la transacción
|
Subperiod | Informa el subperíodo en que se está realizando la transacción
|
BeginDateTime | informa la fecha y hora de inicio en que se realizó la transacción
|
EndDateTime | informa la fecha y hora de finalización de la transacción
|
OperatorID | informa la identificación del operador que realizó la transacción (campo name de RS_USER)
|
OriginalTransaction | Incluye la transacción serializada |
RetailTransaction | Informa que la transacción es de Venta / Devolución o Cambio
|
TypeCode | Informa el tipo de transacción
|
Subtype | Subtipo de transacción
|
TypeID | ID del tipo de transacción
|
OriginalSequenceNumber | Sólo en devolución recuperando transacción original |
OriginalWorstationId | Sólo en devolución recuperando transacción original |
OriginalRetailStoreId | Sólo en devolución recuperando transacción original |
OriginalTransactionDate | Sólo en devolución recuperando transacción original |
OriginalBillType | Sólo en devolución recuperando transacción original |
OriginalSerieOfficialBill | Sólo en devolución recuperando transacción original |
OriginalFiscalPOSNumber | Sólo en devolución recuperando transacción original |
OriginalBillNumber | Sólo en devolución recuperando transacción original |
CustomerOrderIdentification
| Sólo en facturación de presupuesto. Identifica la transacción de presupuesto que se está facturando
|
OfficialBill | Informa el documento Fiscal asociado a esta Venta/Devolución o Cambio
|
BillType | Informa el tipo de documento Fiscal asociado a esta Venta/Devolución
|
SerieOfficialBill | Informa la letra o serie del Documento Fiscal
|
FiscalPOSNumber | Informa el nro de centro emisor del Documento Fiscal o punto de venta fiscal (si no es fiscal, se guarda el nro de terminal)
|
BillNumber | Informa el nro de comprobante del Documento Fiscal
|
AmountOfBill | Informa el Importe total del Documento Fiscal
|
CancelledOfficialBill | Informa aquellos documentos Fiscales asociados a esta Venta/Devolución que por algún motivo se hayan cancelado (ej: microcortes de energía en la printer fiscal, autocancelación por superar límites de ticket o ticket factura)
|
BillType | Informa el tipo de documento Fiscal asociado a esta Venta/Devolución, que se haya cancelado
|
SerieOfficialBill | Informa la letra o serie del Documento Fiscal que se haya cancelado
|
FiscalPOSNumber | Informa el nro de centro emisor del Documento Fiscal que se haya cancelado
|
BillNumber | Informa el nro de comprobante del Documento Fiscal que se haya cancelado
|
ReturnReasonCode | Informa el código del motivo que generó la devolución
|
CancelReasonCode | Informa el motivo que generó la cancelación
|
CustomerCode | Informa el código de cliente
|
POSEODSequenceNumber | Informa el número de cierre Z actual
|
FiscalControllerNumber | Informa el número de serie de la impresora fiscal
|
FiscalPOSNumber | Informa el centro emisor o punto de venta fiscal
|
ClosedFiscalReceiptInCourse | Informa datos del cierre Z actual (solo con printer fiscal)
|
CashdrawerOpeningRequested | Informa si la transacción requirió la apertura del cajón de dinero durante el transcuros de la misma
|
LineItem
| Informa una línea de detalle de la transacción
|
SequenceNumber | Identifica cada línea de detalle de la transacción
|
Detalle
| Cada elemento LineItem contiene uno y solo un elemento de detalle que depende del tipo de detalle. Vamos a considerar los siguientes:
|
RingElapsedTime | |
TenderElapsedTime | Informa el tiempo total transcurrido para realizar el pago |
LockElapsedTime | Informa el tiempo total transcurrido en el que el cajero bloquea la sesión hasta su desbloqueo. |
EJ | Datos guardados para el Electronic Journal. Ver Anexo auditoria y EJ |
Audit | Datos guardados para Auditoria. Ver Anexo auditoria y EJ |
Totales
Total
| Informa un total de la transacción
|
Transacción original en devoluciones
Sólo para transacciones de devolución
- Se registran los datos de la transacción original a devolver.
<!—Transaction number of original transaction -->
<OriginalSequenceNumber>179</OriginalSequenceNumber>
<!—Workstation ID of original transaction -->
<OriginalWorstationId>001</OriginalWorstationId>
<!—RetailStore ID of original transaction -->
<OriginalRetailStoreID>01</OriginalRetailStoreID>
<!-- Business day for original transaction -->
<OriginalTransactionDate>2014-09-15 24:00:00</OriginalTransactionDate>
<!—OriginalOfficialBill ID of original transaction -->
<OriginalBillType>FC</ OriginalBillType >
<OriginalSerieOfficialBill>A</ OriginalSerieOfficialBill >
<OriginalFiscalPOSNumber>0001</ OriginalFiscalPOSNumber>
<OriginalBillNumber>00023212</ OriginalBillNumber>
Transacción original en presupuestos
Sólo para transacciones de facturación de presupuestos
- Se registros los datos de la transacción de presupuesto original a facturar (tab CustomerOrderIdentification)
<!—Workstation ID of original transaction -->
<WorkstationId>4</WorkstationId>
<!—Transaction number of original transaction -->
<SequenceNumber>22</SequenceNumber>
<!—Workstation ID of original transaction -->
<RetailStoreID>1</RetailStoreID>
<!-- Business day for original transaction -->
<Date>2016-08-12 24:00:00</Date>
<!-- Business day for original transaction -->
<InternalOrderNumber>0001000001000200</InternalOrderNumber>
Detalle: Venta de un producto (Sale)
<LineItem EntryMethod="Keyed">
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>78</ItemID>
<POSItemID>1234587</POSItemID>
<Associate>
<AssociateID>111</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<Seria lNumber/>
<MerchandiseHierarchy>VGCo-PS3G</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>130.00</RegularSaleUnitPrice>
<ActualUnitPrice>130.00</ActualUnitPrice>
<ExtendedAmount>93.68</ExtendedAmount>
<UnitListPrice>120.59</UnitListPrice>
<ListPriceID>143</ListPriceID>
<SaleForDelivery></SaleForDelivery>
<Account>999988</Account>
<IDLocation>1</IDLocation>
<GiftReceiptFlag>false</GiftReceiptFlag>
<RetailTransactionDiscount>
<Amount>76.36</Amount>
<Percent>38.33</Percent>
</RetailTransactionDiscount>
<RetailPriceModifier MethodCode="PM">
<SequenceNumber>1</SequenceNumber>
<Amount Action="SB">18.09</Amount>
<Percent>15.00</Percent>
<ReasonCode>PM</ReasonCode>
<ReasonText>Ferrrero 50% en la segunda unidad</ReasonText>
<PromotionID>123</PromotionID>
<BenefitID>222</BenefitID>
</RetailPriceModifier>
<RetailPriceModifier MethodCode="PM">
<SequenceNumber>2</SequenceNumber>
<Amount Action="SB">8.82</Amount>
<Percent>15.00</Percent>
<ReasonCode>PM</ReasonCode>
<ReasonText>Ferrrero 50% en la segunda unidad</ReasonText>
<PromotionID>123</PromotionID>
<BenefitID>233</BenefitID>
</RetailPriceModifier>
<Tax TaxType="TAX" TypeCode="Sale">
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>Imp. Int. Ley 1234</TaxAuthority>
<Amount>0.00</Amount>
</Tax>
<Tax TaxType="VAT" TypeCode="Sale">
<SequenceNumber>2</SequenceNumber>
<TaxAuthority>IVA 10.5%</TaxAuthority>
<Amount>8.77</Amount>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">84.91</TaxableAmount>
<Percent>10.50</Percent>
</Tax>
<Reserved>true</Reserved>
<StockReservationLineItem>
<SequenceNumber>1</SequenceNumber>
<InventoryReservationID/>
<StoreReservationID>1</StoreReservationID>
<LocationReservationID>1</LocationReservationID>
<RevenueCenterID>RCD</RevenueCenterID>
<ItemInventoryStateID>OnSale</ItemInventoryStateID>
<parentInventoryReservationID/>
<reservedQuantity>3.00</reservedQuantity>
</StockReservationLineItem>
</Sale>
</LineItem>
Elemento
| XML ejemplo | Descripción |
Sale | <Sale> | Informa la venta de un producto
|
ItemID | <ItemID>78</ItemID> | Informa el código del producto
|
KitIndicator | <KitIndicator>false</KitIndicator> | Informa si es un articulo kit |
ComponentIndicator | <ComponentIndicator>true</ComponentIndicator> | Informa si es un componente de un kit |
POSItemID | <POSItemID>771221325623</POSItemID> | Informa el código de presentación (alias/código de barras) de un producto
|
Associate | <Associate> | Informa el vendedor asociado a la venta del producto
|
AssociateId | Informa el código de vendedor del producto
| |
ItemType | <ItemType>NORM</ItemType> | Informa el tipo de código
|
UnitCost | <UnitCost>40.00</UnitCost> | Informa el precio de costo del artículo
|
SerialNumber | <SerialNumber>132AHJD</SerialNumber> | Informa la serie del producto si tuviera
|
MerchandiseHierarchy | <MerchandiseHierarchy>VGCo-PS3G</MerchandiseHierarchy> | Informa la jerarquía departamental del producto
|
Quantity
| <Quantity Units="1" UnitOfMeasureCode="u">1</Quantity> | Informa la cantidad de productos vendidos en este detalle
|
RegularSaleUnitPrice | <RegularSaleUnitPrice>5.00</RegularSaleUnitPrice> | Informa el precio unitario del producto
|
ActualUnitPrice | <ActualUnitPrice>5.00</ActualUnitPrice> | Informa el precio real en el que se vendió el producto (no incluye los descuentos)
|
ExtendedAmount | <ExtendedAmount>5.00</ExtendedAmount> | Informa el precio extendido del producto (precio actual * cantidad – descuentos)
|
<UnitListPrice> | Informa el precio de lista del producto
| |
<ListPriceID> | Informa la lista de precios utilizada para el producto
| |
<SaleForDelivery> | Flag que informa si el producto es para delivery
| |
<Account> | Informa la cuenta contable del ERP
| |
IDLocation | <IDLocation>DEP1_OS</IDLocation> | Informa el depósito donde se toma el stock del artículo
|
GiftReceiptFlag | <GiftReceiptFlag>false</GiftReceiptFlag> | Informa si el producto fue marcado para la impresión de un ticket de regalo
|
RetailTransactionDiscount | <RetailTransactionDiscount> | Informa los descuentos acumulados sobre el producto
|
Amount | <Amount>5.00</Amount> | Informa el monto total de descuentos del producto
|
Percent | <Percent>10.00</Percent> | Informa el porcentaje proporcional que representa el total acumulado de descuentos sobre el ítem
|
RetailPriceModifier
| <RetailPriceModifier MethodCode="PO"> | Informa una alteración sobre el precio regular del producto.
|
SequenceNumber | <SequenceNumber>1</SequenceNumber> | Este elemento de RetailPriceModifier se usa para indicar el orden en que se aplicó cada modificación de precio.
|
Amount
| <Amount Action="SB">5.00</Amount> | Informa el importe de la modificación de precio.
|
Percent
| <Percent>10.00</Percent> | Indica el porcentaje de la modificación de precio.
|
ReasonCode | <ReasonCode>OD</ReasonCode> | Informa el código motivo que generó la modificación de precio o descuento.
|
ReasonText | <ReasonText>Menú Ejecutivo Alpastel Pâtisserie</ReasonText> | Informa el texto de motivo de descuento
|
PromotionID | <PromotionID>5936be39c3d18662f7fd5800</PromotionID> | Informa el código de la Promoción que generó la modificación de precio.
|
BenefitID | <BenefitID>5936be39c3d18662f7fd57fe</BenefitID> | Informa el código del beneficio aplicado que generó la modificación de precio.
|
Tax | <Tax TaxType="VAT" TypeCode="Sale"> | Ver detalle incluido en la sección 2.1.1.19 Detalle: Impuestos (tax) |
Reserved | <Reserved>false</Reserved> | Informa si existe una reserva para el producto
|
StockReservationLineItem |
| Informa detalle asociado a la reserva de stock realizada
|
SequenceNumber | <SequenceNumber>1</SequenceNumber> | Informa el número de secuencia
|
InventoryReservationID | <InventoryReservationID/> | Informa el número de reserva
|
StoreReservationID | <StoreReservationID>100</StoreReservationID> | Informa la tienda desde la cual se genera la reserva o de donde sale el stock (si no hubo reserva pero el ítem es StockItem)
|
LocationReservationID | <LocationReservationID>DEP2_OS</LocationReservationID> | Código del depósito de reserva o de donde sale el stock (si no hubo reserva pero el ítem es StockItem)
|
RevenueCenterID | <RevenueCenterID>RCD</RevenueCenterID> | Código del centro de costo del depósito de donde sale el stock (si no hubo reserva pero el ítem es StockItem)
|
ItemInventoryStateID | <ItemInventoryStateID>OnSale</ItemInventoryStateID> | Estado del itemInventory del depósito de donde sale el stock (si no hubo reserva pero el ítem es StockItem)
|
parentInventoryReservationID | <parentInventoryReservationID/> | Informa el número de reserva que se está anulando (sólo para ítems Void)
|
reservedQuantity | <reservedQuantity>1.00</reservedQuantity> | Informa la cantidad reservada
|
EJEMPLO:
<?xml version="1.0" encoding="UTF-8"?>
<PosLog xmlns:lxslt="http://xml.apache.org/xslt">
<Transaction CancelFlag="false" TrainingModeFlag="false" SuspendedFlag="false" VoidedFlag="false" OfflineFlag="false" ContigencyFlag="false">
<RetailStoreID>100</RetailStoreID>
<WorkstationID>1</WorkstationID>
<TillID>4</TillID>
<TillType>Operator</TillType>
<SequenceNumber>216</SequenceNumber>
<BusinessDayDate>2017-09-07</BusinessDayDate>
<Period>11</Period>
<Subperiod>12</Subperiod>
<BeginDateTime>2017-09-09 15:28:52</BeginDateTime>
<EndDateTime>2017-09-09 15:29:08</EndDateTime>
<OperatorID>MariaL</OperatorID>
<RetailTransaction Version="2.2">
<!—Venta -->
<TypeCode>Sale</TypeCode>
<SubTypeCode>Venta Regular</SubTypeCode>
<TypeID>1</TypeID>
<OriginalSequenceNumber/>
<OriginalWorstationId/>
<OriginalRetailStoreID/>
<OriginalTransactionDate/>
<OriginalBillType/>
<OriginalSerieOfficialBill/>
<OriginalFiscalPOSNumber/>
<OriginalBillNumber/>
<OfficialBill>
<!—TK B -->
<BillType>TK</BillType>
<SerieOfficialBill>B</SerieOfficialBill>
<FiscalPOSNumber>0001</FiscalPOSNumber>
<BillNumber>00000216</BillNumber>
<AmountOfBill>406.00</AmountOfBill>
</OfficialBill>
<CustomerCode/>
<POSEODSequenceNumber/>
<FiscalControllerNumber/>
<FiscalPOSNumber>0001</FiscalPOSNumber>
<CashdrawerOpeningRequested>false</CashdrawerOpeningRequested>
<!-- Venta de 7 unidades del producto 78-->
<LineItem EntryMethod="Keyed">
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>78</ItemID>
<KitIndicator>true</KitIndicator>
<ComponentIndicator>false</ComponentIndicator>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>96.89</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy>VGCo-PS3G</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">7</Quantity>
<RegularSaleUnitPrice>58.00</RegularSaleUnitPrice>
<ActualUnitPrice>58.00</ActualUnitPrice>
<ExtendedAmount>406.00</ExtendedAmount>
<IDLocation>DEP1_OS</IDLocation>
<GiftReceiptFlag>false</GiftReceiptFlag>
<!-- Venta de 1.6 kg del producto 1122, a $5.00 el kilo -->
<Sale>
<ItemID>1122</ItemID>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>4.00</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy/>
<Quantity Units="1.6" UnitOfMeasureCode="kg">1</Quantity>
<RegularSaleUnitPrice>5.00</RegularSaleUnitPrice>
<ActualUnitPrice>5.00</ActualUnitPrice>
<ExtendedAmount>8.00</ExtendedAmount>
…
</LineItem>
<!—Anulación de Venta del producto 90001, con nro de serie de $350.00 -->
<LineItem EntryMethod="Keyed" VoidFlag="true">
<SequenceNumber>4</SequenceNumber>
<Sale>
<ItemID>90001</ItemID>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>204.00</UnitCost>
<SerialNumber>123</SerialNumber>
<MerchandiseHierarchy>Elec-VGCo</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>350.00</RegularSaleUnitPrice>
<ActualUnitPrice>350.00</ActualUnitPrice>
<ExtendedAmount>350.00</ExtendedAmount>
…
</Sale>
</LineItem>
<!— Venta del producto 1234, que requiere precio y fue vendido por cantidad = 3, cada uno a $650.00. Se aplicó un descuento que fue aprobado por un supervisor -->
<Sale>
<ItemID>1234</ItemID>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>440.00</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy>Elec-DiCa</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">3</Quantity> <!— Se vende por cantidad 3-->
<RegularSaleUnitPrice>600.00</RegularSaleUnitPrice>
<ActualUnitPrice>650.00</ActualUnitPrice>
<ExtendedAmount>1755.00</ExtendedAmount>
<IDLocation>DEP1_OS</IDLocation>
<GiftReceiptFlag>false</GiftReceiptFlag>
<RetailTransactionDiscount>
<Amount>195.00</Amount>
<Percent>10.00</Percent>
</RetailTransactionDiscount>
<RetailPriceModifier MethodCode="PO"> <!— Se aplicó un descuento -->
<SequenceNumber>1</SequenceNumber>
<Amount Action="SB">195.00</Amount>
<Percent>10.00</Percent>
<ReasonCode>SU</ReasonCode>
<ReasonText/>
<PromotionID/>
<BenefitID/>
</RetailPriceModifier>
<Tax TaxType="VAT" TypeCode="Sale">
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>2 </TaxAuthority>
<Amount>304.59</Amount>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">1450.41</TaxableAmount>
<Percent>21.00</Percent>
</Tax>
<Reserved>false</Reserved>
</Sale>
<OperatorBypassApproval><!— Se aplicó un descuento que fue aprobado por un supervisor -->
<SequenceNumber>1</SequenceNumber>
<ApproverID>Juan</ApproverID>
<Description>applyDiscount</Description>
<EntryMethod>KYD</EntryMethod>
<LineApprovalCode/>
</OperatorBypassApproval>
</LineItem>
Detalle: Venta de un producto garantizado (Sale)
<!— Venta de un artículo y su garantía -->
<LineItem EntryMethod="Keyed">
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>90001</ItemID> <!— Artículo a garantizar -->
<POSItemID/>
<Associate>
<AssociateID>MariaL</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>504.00</UnitCost>
<SerialNumber>365932</SerialNumber>
<MerchandiseHierarchy>Elec-VGCo</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>1350.00</RegularSaleUnitPrice>
<ActualUnitPrice>1350.00</ActualUnitPrice>
<ExtendedAmount>1350.00</ExtendedAmount>
… (Se omiten el resto de los datos en este ejemplo)
</Sale>
</LineItem>
<LineItem EntryMethod="Keyed">
<SequenceNumber>2</SequenceNumber>
<Sale>
<ItemID>WRTY</ItemID><!— Artículo garantía -->
<POSItemID/>
<Associate>
<AssociateID>MariaL</AssociateID>
</Associate>
<ItemType>WRTY</ItemType>
<UnitCost>0.00</UnitCost>
<SerialNumber>365932</SerialNumber> <!— Nro de serie del artículo garantízado -->
<MerchandiseHierarchy/>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>0.00</RegularSaleUnitPrice>
<ActualUnitPrice>413.50</ActualUnitPrice>
<ExtendedAmount>413.50</ExtendedAmount>
… (Se omiten el resto de los datos en este ejemplo)
</Sale>
<Association TypeCode="WRT"><!— Asociación con el item sequence 1, ser su garantía -->
<SequenceNumber>1</SequenceNumber>
<PolicyNumber>3623200023000</PolicyNumber> <!— Nro de póliza de la garantía -->
<SerialNumber>365932</SerialNumber> <!— Nro de serie del producto garantizado -->
</Association>
</LineItem>
Elemento
| Descripción |
| Informa la relación de garantía y su sequence del ítem garantizado
|
PolicyNumber | Informa el número de la poliza |
SerialNumber | Informa el número de serie garantizado |
Detalle: Devolución de un producto (Return)
Indica un producto que se devuelve.
El importe (ExtendedAmount) va en positivo, se asume que resta del total. ( si se indica VoidlFlag="true" a nivel de LineItem, es una anulación de Devolución de producto, el importe se expresa también en positivo pero se asume que suma al total).
Tiene los mismos componentes que el detalle <Sale> con las siguientes extensiones:
Elemento
| Descripción |
Return | Informa la devolución de un producto
|
ReturnReasonCode | Informa el motivo de la devolución
|
ReturnReasonText | Informa el texto del motivo de la devolución ingresado por el vendedor.
|
EJEMPLO:
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<POSLog>
<Transaction CancelFlag="false" TrainingModeFlag="false" SuspendedFlag="false" VoidedFlag="false" OfflineFlag="false" ContigencyFlag="false">
<RetailStoreID>145</RetailStoreID>
<WorkstationID>5</WorkstationID>
<TillID>4</TillID>
<TillType>Workstation</TillType>
<SequenceNumber>99</SequenceNumber>
<BusinessDayDate>2006-12-05</BusinessDayDate>
<Period>3</Period>
<Subperiod>4</Subperiod>
<BeginDateTime>2006-12-05 09:56:17</BeginDateTime>
<EndDateTime>2006-12-05 09:56:30</EndDateTime>
<OperatorID>105</OperatorID>
<OriginalTransaction></OriginalTransaction>
<RetailTransaction Version="2.2">
<TypeCode>Return</TypeCode>
<SubTypeCode>Devolucion Venta Regular</SubTypeCode>
<TypeID>2</TypeID>
<OriginalSequenceNumber>224</OriginalSequenceNumber>
<OriginalWorstationId>1</OriginalWorstationId>
<OriginalRetailStoreID>100</OriginalRetailStoreID>
<OriginalTransactionDate>2017-09-10 24:00:00</OriginalTransactionDate>
<OriginalBillType>TK</OriginalBillType>
<OriginalSerieOfficialBill>B</OriginalSerieOfficialBill>
<OriginalFiscalPOSNumber>0001</OriginalFiscalPOSNumber>
<OriginalBillNumber>00000224</OriginalBillNumber>
<OfficialBill>
<BillType>NC B</BillType>
<SerieOfficialBill>B</SerieOfficialBill>
<FiscalPOSNumber>0004</FiscalPOSNumber>
<BillNumber>00000012</BillNumber>
<AmountOfBill>749.76</AmountOfBill>
</OfficialBill>
<CustomerCode>9999</CustomerCode>
<POSEODSequenceNumber/>
<FiscalControllerNumber/>
<FiscalPOSNumber>0004</FiscalPOSNumber>
<CashdrawerOpeningRequested>false</CashdrawerOpeningRequested>
<!— Devolución del producto 78 por cantidad 2 con referencia de compra original -->
<LineItem EntryMethod="SYS"> <!— Cuando es devolución con referencia, el método es por sistema -->
<SequenceNumber>1</SequenceNumber>
<Return>
<ItemID>78</ItemID>
<KitIndicator>true</KitIndicator>
<ComponentIndicator>false</ComponentIndicator>
<POSItemID/>
<Associate>
<AssociateID>MariaL</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>46.89</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy>VGCo-PS3G</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">2</Quantity>
<RegularSaleUnitPrice>58.00</RegularSaleUnitPrice>
<ActualUnitPrice>58.00</ActualUnitPrice>
<ExtendedAmount>116.00</ExtendedAmount>
<IDLocation>DEP1_OS</IDLocation>
<GiftReceiptFlag>false</GiftReceiptFlag>
<RetailTransactionDiscount>
<Amount>0.00</Amount>
<Percent>0.00</Percent>
</RetailTransactionDiscount>
<Tax TaxType="TAX" TypeCode="Return"> <!— Impuestos -->
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>4</TaxAuthority>
<Amount>6.70</Amount>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">116.00</TaxableAmount>
<Percent>5.78</Percent>
</Tax>
<Tax TaxType="VAT" TypeCode="Return"> <!— IVA -->
<SequenceNumber>2</SequenceNumber>
<TaxAuthority>2 </TaxAuthority>
<Amount>18.97</Amount>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">90.33</TaxableAmount>
<Percent>21.00</Percent>
</Tax>
<Reserved>false</Reserved>
<StockReservationLineItem>
<SequenceNumber>1</SequenceNumber>
<InventoryReservationID/>
<StoreReservationID>100</StoreReservationID>
<LocationReservationID>DEP1_OS</LocationReservationID>
<RevenueCenterID>RCD</RevenueCenterID>
<ItemInventoryStateID>OnSale</ItemInventoryStateID>
<parentInventoryReservationID/> <!— la reserva fue por 3 unidades -->
<reservedQuantity>3.00</reservedQuantity>
</StockReservationLineItem>
<ReturnReasonCode>PI</ReturnReasonCode> <!— motivo de devolución -->
<ReturnReasonText>Producto incompleto</ReturnReasonText>
</Return>
</LineItem>
Detalle: Promociones con beneficios no monetarios a nivel transacción o a nivel ítem
Informa los códigos de promociones y id de beneficios no monetarios dentro del <benefit>. Esto pudiera aplicar tanto a nivel transacción como a nivel ítem.
Se informan los datos comunes a todos los beneficios como type, promotionID y benefitID. Luego por cada tipo de beneficio, se registran datos específicos.
- No implementado -
Ejemplo:
<Benefit type= "LoyaltyBenefit">
<PromotionID>1441</PromotionID>
<BenefitID>11</BenefitID>
<LoyaltyBenefit>
<Type>Millage</Type>
<Value>500</Value>
<TotalPoints>500</TotalPoints>
</LoyaltyBenefit>
</Benefit>
Elemento
| Descripción |
Benefit
| Informa un beneficio no monetario aplicado por alguna promoción
|
PromotionID | Informa el código de la Promoción que generó la aplicación del beneficio no monetario.
|
BenefitID | Informa el código del beneficio aplicado que generó la modificación de precio.
|
Detalle: Descuento a nivel transacción ( Discount)
Informa descuentos realizados a nivel de transacción
<SequenceNumber>2</SequenceNumber> <!— Descuento al total de la transacción por monto fijo -->
<Discount ProratedFlag="" TypeCode="Sale">
<Amount>10.00</Amount>
<ReasonCode>OS</ReasonCode>
<ReasonText/>
</Discount>
</LineItem>
<LineItem> <!— Descuento al total de la transacción porcentual -->
<SequenceNumber>3</SequenceNumber>
<Discount ProratedFlag="" TypeCode="Sale">
<Amount>27.00</Amount>
<Percentage>25</Percentage>
<ReasonCode>OS</ReasonCode>
<ReasonText/>
</Discount>
</LineItem>
<LineItem VoidFlag="true"> <!— Descuento al total de la transacción anulado -->
<SequenceNumber>4</SequenceNumber>
<Discount ProratedFlag="" TypeCode="Sale">
<Amount>10.00</Amount>
<ReasonCode>OS</ReasonCode>
<ReasonText/>
</Discount>
</LineItem>
Elemento
| Descripción |
Discount | Informa un descuento que afecta al total de la transacción
|
Amount | Informa el importe del descuento.
|
Percentage | Informa el porcentaje del descuento.
|
ReasonCode | Informa el motivo que generó el descuento a nivel de transaccion
|
ReasonText | Informa el texto del motivo que generó el descuento a nivel de transaccion
|
EJEMPLO:
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction>
<RetailStoreID>SUC.02</RetailStoreID>
<WorkstationID>1</WorkstationID>
<SequenceNumber>12</SequenceNumber>
<BusinessDayDate>2007-03-21</BusinessDayDate>
<BeginDateTime>2007-03-21 07:10:17</BeginDateTime>
<EndDateTime>2007-03-21 07:10:391</EndDateTime>
<OperatorID>LUIS</OperatorID>
<RetailTransaction Version="2.2">
<!— - Factura B -->
<OfficialBill>
<BillNumber>FC B 0012-00001292</BillNumber>
<AmountOfBill>121.00</AmountOfBill>
</OfficialBill>
<POSEODSequenceNumber>43</POSEODSequenceNumber>
<FiscalControllerNumber>HHX1234567</FiscalControllerNumber>
<FiscalPOSNumber>0012</FiscalPOSNumber>
<!—Venta del producto 11001 -->
<LineItem>
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>11001</ItemID>
<ExtendedAmount>420.00</ExtendedAmount>
</Sale>
</LineItem>
<!—Venta del producto 11002 -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Sale>
<ItemID>11002</ItemID>
<ExtendedAmount>260.00</ExtendedAmount>
</Sale>
</LineItem>
<!—Descuento 10% sobre el total -->
<LineItem>
<SequenceNumber>3</SequenceNumber>
<Discount>
<Amount>68.00</ItemID>
<Percentage>10</Percentage>
<ReasonCode>OS</ReasonCode>
<ReasonText/>
</Discount>
</LineItem>
</RetailTransaction>
</Transaction>
</POSLog>
Detalle: Cliente (Customer)
Registra los datos del cliente a través de un lineItem. Los datos del cliente, se encontrarán detallados como LineItemModifier.
A continuación se detalla el cliente asociado a la venta/devolución/preventa en curso. En el caso de crearse un nuevo cliente, el registro se hará en un TLOG independiente a la transacción en curso siendo este una ControlTransaction (ver Registro de un nuevo cliente )
<LineItem>
<SequenceNumber>9</SequenceNumber>
<CustomerInformation TypeCode="NA">
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>RegistrationName</Id>
<Value>Rossi, Emilia</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
<LineItem>
<SequenceNumber>10</SequenceNumber>
<CustomerInformation TypeCode="NA">
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>CustomerStore</Id>
<Value/>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
<LineItem>
<SequenceNumber>11</SequenceNumber>
<CustomerInformation TypeCode="NA">
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>PartyTypeCode</Id>
<Value>J</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
<LineItem>
<SequenceNumber>12</SequenceNumber>
<CustomerInformation TypeCode="FI">
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>RegistrationNumber</Id>
<Value>27298660224</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
<LineItem>
<SequenceNumber>13</SequenceNumber>
<CustomerInformation TypeCode="AD">
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>CALLE</Id>
<Value>Tucumଠ2692 Piso 2</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
<LineModifier>
<SequenceNumber>2</SequenceNumber>
<Id>CIUDAD</Id>
<Value>Kilometro 376</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
<LineModifier>
<SequenceNumber>3</SequenceNumber>
<Id>PROVINCIA</Id>
<Value>SANTA FE</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
<LineModifier>
<SequenceNumber>4</SequenceNumber>
<Id>CODIGO POSTAL</Id>
<Value>3000</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
<LineModifier>
<SequenceNumber>5</SequenceNumber>
<Id>PAIS</Id>
<Value>Argentina</Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
CustomerInformation
| Informa el cliente que realizó la transacción
|
LineModifier
| Informa un valor del tipo de dato definido para el cliente.
|
Detalle: Medio de Pago (Tender)
Informa un pago realizado.
Elemento
| Descripción |
Tender
| Informa un medio de pago aceptado
|
Amount
| Informa el importe del medio de pago.
|
TenderChange | Informa el vuelto
|
Amount
| Informa el importe del vuelto.
|
CustomerAccount | Informa el Nro de cuenta del cliente asociado al pago
|
CustomerIDNumber | Informa el Nro de documento del cliente asociado al pago:
|
PaymentCondition | Informa la condición o plan de pagos
|
EJEMPLO:
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction>
<RetailStoreID>SUC.02</RetailStoreID>
<WorkstationID>1</WorkstationID>
<SequenceNumber>13</SequenceNumber>
<BusinessDayDate>2007-03-21</BusinessDayDate>
<BeginDateTime>2007-03-21 07:15:19</BeginDateTime>
<EndDateTime>2007-03-21 07:17:31</EndDateTime>
<OperatorID>LUIS</OperatorID>
<RetailTransaction Version="2.2">
<!— - Factura B -->
<OfficialBill>
< BillNumber>FC B 0012-00001293</BillNumber>
<AmountOfBill>500.00</AmountOfBill>
</OfficialBill>
<POSEODSequenceNumber>43</POSEODSequenceNumber>
<FiscalControllerNumber>HHX1234567</FiscalControllerNumber>
<FiscalPOSNumber>0012</FiscalPOSNumber>
<!—Venta del producto 11004 -->
<LineItem>
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>11004</ItemID>
<ExtendedAmount>500.00</ExtendedAmount>
</Sale>
</LineItem>
<!— Pago con un vale de 200 -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender>
<TenderID>"VALE"</TenderID>
<Amount>200.00</Amount>
</Tender>
</LineItem>
<!— Anulación vale de 200 -->
<LineItem CancelFlag="true">
<SequenceNumber>3</SequenceNumber>
<Tender>
<TenderID>"VALE"</TenderID>
<Amount>200.00</Amount>
</Tender>
</LineItem>
<!— Pago con 200 dolares -->
<LineItem>
<SequenceNumber>4</SequenceNumber>
<Tender>
<TenderID>"Dolar"</TenderID>
<Amount Currency="USS" ForeignAmount="200">620.00</Amount>
<TenderChange>
<Amount Currency="USS" ForeignAmount="30">93.00</Amount>
</TenderChange>
<TenderChange>
<TenderID>"Efectivo"</TenderID>
<Amount>27.00</Amount>
</TenderChange>
</Tender>
</LineItem>
</RetailTransaction>
</Transaction>
</POSLog>
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction>
<RetailStoreID>SUC.02</RetailStoreID>
<WorkstationID>1</WorkstationID>
<SequenceNumber>14</SequenceNumber>
<BusinessDayDate>2007-03-21</BusinessDayDate>
<BeginDateTime>2007-03-21 07:19:11</BeginDateTime>
<EndDateTime>2007-03-21 07:22:02</EndDateTime>
<OperatorID>LUIS</OperatorID>
<RetailTransaction Version="2.2">
<!— - Nota de Crédito B -->
<OfficialBill>
<BillNumber>NC B 0012-00000093</BillNumber>
<AmountOfBill>120.00</AmountOfBill>
</OfficialBill>
<POSEODSequenceNumber>43</POSEODSequenceNumber>
<FiscalControllerNumber>HHX1234567</FiscalControllerNumber>
<FiscalPOSNumber>0012</FiscalPOSNumber>
<!—Devolución -->
<LineItem>
<SequenceNumber>1</SequenceNumber>
<Return>
<ItemID>23214323</ItemID>
<ExtendedAmount>120.00</ExtendedAmount>
</Return>
</LineItem>
<!— Devolución pago con Tarjeta -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender TypeCode="Refund">
<TenderID>"Visa"</TenderID>
<Amount>120.00</Amount>
</Tender>
</LineItem>
</RetailTransaction>
</Transaction>
</POSLog>
Detalle: efectivo
<!— Pago con efectivo y vuelto o cambio -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender TenderType="Peso" TypeCode="Sale">
<Amount>300.00</Amount>
<CustomerIDNumber> </CustomerIDNumber>
<ForeignCurrencyID>ARS</ForeignCurrencyID>
</Tender>
</LineItem>
<LineItem> <!— Vuelto o cambio -->
<SequenceNumber>3</SequenceNumber>
<TenderChange TenderType="Peso" TypeCode="Sale">
<Amount>10.00</Amount>
</TenderChange>
</LineItem>
Elemento
| Descripción |
Tender
| Informa un medio de pago aceptado
|
Amount
| Informa el importe del medio de pago.
|
TenderChange | Informa el vuelto
|
Amount
| Informa el importe del vuelto.
|
CustomerIDNumber | Informa el Nro de documento del cliente asociado al pago:
|
Detalle: efectivo moneda extranjera con cotización
<!— Pago con dolar (moneda extranjera) con vuelto combinado en moneda original y base -->
<LineItem>
<SequenceNumber>3</SequenceNumber>
<Tender TenderType="Dllr" TypeCode="Sale">
<Amount>805.50</Amount>
<ForeignCurrencyAmount>50.00</ForeignCurrencyAmount>
<CustomerIDNumber> </CustomerIDNumber>
<ForeignCurrencyID>USD</ForeignCurrencyID> <!— codigo ISO de moneda -->
<ExchangeRate>16.11</ExchangeRate> <!— cotización -->
</Tender>
</LineItem>
<LineItem>
<SequenceNumber>4</SequenceNumber>
<TenderChange TenderType="Dllr" TypeCode="Sale"> <!— Vuelto o cambio en moneda original -->
<Amount>644.40</Amount>
<ForeignCurrencyAmount>40.00</ForeignCurrencyAmount>
<ForeignCurrencyID>USD</ForeignCurrencyID> <!— codigo ISO de moneda -->
<ExchangeRate>16.11</ExchangeRate> <!— cotización -->
</TenderChange>
</LineItem>
<LineItem>
<SequenceNumber>5</SequenceNumber>
<TenderChange TenderType="Peso" TypeCode="Sale"> <!— Vuelto o cambio en moneda base -->
<Amount>53.10</Amount>
</TenderChange>
</LineItem>
Detalle: cheque
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender TenderType="Chck" TypeCode="Sale">
<Amount>110.00</Amount>
<CustomerIDNumber> </CustomerIDNumber>
<EntryMethod>Keyed</EntryMethod>
<Bankcode>1111111111</Bankcode>
<CheckNumber>111111111</CheckNumber>
<CheckEmissionDate>2015-04-10 24:00:00</CheckEmissionDate>
<Account>1111111111</Account>
</Tender>
</LineItem>
Elemento
| Descripción |
EntryMethod | Indica el método de ingreso del cheque (manual o por lectura desde la printer)
|
BankCode | Informa el banco emisor del cheque
|
CheckNumber | Informa el nro de cheque
|
CheckEmissionDate | Informa la fecha de emisión del cheque
|
Account | Informa el Nro de cuenta asociado al cheque
|
Detalle: Cobro de créditos propios
Informa los cobros de un crédito propio con número de cuenta o tarjeta asociada al crédito.
<LineItem>
<SequenceNumber>2</SequenceNumber>
< PaymentOnAccountLineItem>
< AccountCardNumber>22</ AccountCardNumber>
< AccountNumber>22</ AccountCardNumber>
<Amount>6.58</Amount>
</ PaymentOnAccountLineItem >
</LineItem>
Elemento
| Descripción |
PaymentOnAccountLineItem | Informa un medio de cobro aceptado
|
AccountCardNumber | Informa el Nro de cuenta del cliente asociado al pago o número de tarjeta
|
Amount | Informa el importe del cobro.
|
Pago con tarjeta bancaria
Para pago con tarjeta bancaria, se requiere registrar datos adicionales propios del pago y su autorización.
Se enumeran y se adjunta un ejemplo.
<LineItem>
<SequenceNumber>9</SequenceNumber>
<Tender TenderType="Visa" TypeCode="Sale">
<Amount>102.85</Amount>
<CustomerIDNumber> </CustomerIDNumber>
<EntryMethod>MSR</EntryMethod>
<Authorization ElectronicSignature="true" ForceOnline="true" HostAuthorized="true">
<RequestedAmount>102.85</RequestedAmount>
<AuthorizationCode>123456</AuthorizationCode>
<ReferenceNumber>123456789012</ReferenceNumber>
<MerchantNumber>11111111</MerchantNumber>
<ProviderID>Visa</ProviderID>
<AuthorizationDateTime>20150617174209 </AuthorizationDateTime>
<AuthorizingTermID>4</AuthorizingTermID>
</Authorization>
<CreditDebit CardType="Credit">
<PrimaryAccountNumber>************9994 </PrimaryAccountNumber>
<PlanID>1</PlanID>
<NumberOfInstallments>2</NumberOfInstallments>
</CreditDebit>
<PaymentCondition>2</PaymentCondition>
<Association TypeCode="Surcharge">
<SequenceNumber>2</SequenceNumber>
</Association>
</Tender>
</LineItem>
Elemento
| XML de ejemplo | Descripción |
| <Tender TenderType="Visa" TypeCode="Sale"> | Informa un pago con tarjeta bancaria |
Pago con recargo
Un medio de pago puede encontrarse configurado con un porcentaje de recargo. Este recargo se calcula en base al monto del pago y se deja registro dentro de la transacción con el balanceo de un ítem del tipo misceláneo para compensar este recargo del pago.
En el lineItem del pago se dejará registro del lineItem correspondiente al ítem misceláneo del recargo con un tag association del tipo "recargo".
El medio de pago pudiera tener un recargo y además si el plan de pagos tuviera su recargo, se dejará registro de ambos recargos cada uno de ellos asociado al lineItem del misceláneo correspondiente.
<LineItem>
<SequenceNumber>5</SequenceNumber>
<Tender TenderType="Cash" TypeCode="Sale">
<Amount>42.50</Amount>
</Tender>
<Association TypeCode="Surcharge">
<SequenceNumber>2</SequenceNumber>
</Association>
<Association TypeCode="Surcharge">
<SequenceNumber>3</SequenceNumber>
</Association>
</LineItem>
Pago con nota de crédito
Se detallan aquellos datos requeridos para el registro de un pago con una nota de crédito
Una devolución que queda como crédito en tienda en lugar de devolver dinero al cliente. Puede ser utilizada como próximo medio de pago para una venta.
<!— Pago con nota de crédito dentro de una venta -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender TenderType="NCC" TypeCode="Sale">
<Amount>108.00</Amount>
<CustomerIDNumber> </CustomerIDNumber>
<ERP_NCCNumber>243</ERP_NCCNumber>
<BillNumber>1</BillNumber>
<NCCRetailStore/>
<NCCBalance>0.00</NCCBalance>
<ExpirationDate/>
<AmountOfBill>108.00</AmountOfBill>
</Tender>
</LineItem>
Elemento
| XML de referencia | Descripción |
TenderType="NCC"
| <Tender TenderType="NCC" TypeCode="Sale"> | Informa un medio de pago del tipo nota de crédito
|
Pago con tarjeta monedero o GiftCard
Se detallan aquellos datos requeridos para el registro de un pago con una tarjeta monedero o giftCard.
- Nro. de tarjeta monedero o GiftCard o tipo < GiftCertificateID>
- Monto del pago <Amount>
- Saldo disponible <UnspentAmount> (este campo indica el saldo de la tarjeta monedero o GiftCard respondido por el sistema de validación externo)
- Nro de tarjeta monedero o GiftCard <CardNumber> (nro legible de la tarjeta monedero o giftCard, pudiera coincidir con el ID)
<LineItem>
<SequenceNumber>1</SequenceNumber>
<Tender TenderType="GiftCard" TypeCode="Sale">
<GiftCertificateID>GiftCard</GiftCertificateID>
<Amount>100.00</Amount>
<UnspentAmount>50.00</UnspentAmount>
<CardNumber>1234321</CardNumber>
</Tender>
</LineItem>
GiftCertificateTenderLineItem
Tag | Type | Definition |
---|---|---|
GiftCertificateTenderLineItem | structure | A type of TENDER LINE ITEM that records the specifics about a GIFT CERTIFICATE redeemed as part of settling a transaction. Alternate Names
|
GiftCertificateSerialNumber | string | The serial number that uniquely identifies a GIFT CERTIFICATE. Alternate Names
|
IssuingStoreNumber (optional) | string | A unique store number reference to identify the RETAIL STORE that issued the GIFT CERTIFICATE. |
RetailTransactionLineItemSequenceNumber(PK) (FK) | string | The sequence number of line item within the context of this RetailTransaction. |
TransactionID(PK) (FK) | string | A universally unique identifier (UUID) for the Transaction. This may be assembled from BusinessUnitID, WorkstationID, BusinessDayDate and SequenceNumber. Alternate Names
|
UnspentAmount | decimal | The monetary value of the GiftCertificate / Voucher that has not been spent |
CardNumber | string | The human readable number on the gift card being tendered. |
Detalle: Recarga en monedero electrónico
Informa la recarga de una tarjeta monedero.
- Tipo de tarjeta o giftCard <GiftCertificateID>
- Nro de tarjeta/GiftCard <CardNumber>
- Monto: importe correspondiente al pago con tarjeta monedero/giftCard <Amount>
- Saldo: monto correspondiente al saldo disponible de la tarjeta luego de realizada la recarga <UnspentAmount>
<LineItem>
<SequenceNumber>2</SequenceNumber>
< PaymentOnAccountLineItem>
<GiftCertificateID>GiftCard</GiftCertificateID>
<Amount>100.00</Amount>
<UnspentAmount>150.00</UnspentAmount>
<CardNumber>1234321</CardNumber>
</PaymentOnAccountLineItem>
</LineItem>
Detalle: Recarga en monedero electrónico por aplicación de promoción
Informa la recarga de una tarjeta monedero pero con el escenario particular de haber sido aplicado por una promoción y no una recarga pagada con un determinado medio de pago.
Es por eso que se registra con un LineItem que no requerirá de una compensación de un TenderLineItem como la recarga normal. Se manejará como un tipo de LineItem: GiftCertificateLineItem.
- Tipo de tarjeta o giftCard <GiftCertificateID>
- Nro de tarjeta/GiftCard <CardNumber>
- Promoción <PromotionID>
- Monto: importe correspondiente a la recarga a la tarjeta monedero/giftCard <Amount>
- Saldo: monto correspondiente al saldo disponible de la tarjeta luego de realizada la recarga <UnspentAmount>
<LineItem>
<SequenceNumber>2</SequenceNumber>
< GiftCertificate>
<GiftCertificateID>GiftCard</GiftCertificateID>
<CardNumber>1234321</CardNumber>
<PromotionID>PromoMonedero</PromotionID>
<Amount>100.00</Amount>
<UnspentAmount>150.00</UnspentAmount>
</GiftCertificate>
</LineItem>
Detalle: Impuestos (Tax a nivel producto)
A nivel producto dentro de un elemento <Sale> o <Return> se informan los impuestos propios de cada producto.
<!— Impuestos internos -->
<Tax TaxType="TAX" TypeCode="Sale">
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>2</TaxAuthority>
<Amount>3.25</Amount><!— monto del impuesto interno -->
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">162.60</TaxableAmount><!— monto neto gravado -->
<Percent>2.00</Percent><!— porcentaje del impuesto interno-->
</Tax>
<!— Impuestos del item, IVA -->
<Tax TaxType="VAT" TypeCode="Sale">
<SequenceNumber>2</SequenceNumber>
<TaxAuthority>2</TaxAuthority>
<Amount>34.15</Amount><!— monto IVA -->
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">162.60</TaxableAmount><!— monto neto gravado -->
<Percent>21.00</Percent><!— porcentaje de IVA -->
</Tax>
Detalle: Impuestos (Tax a nivel ticket)
Informa los impuestos a nivel del ticket
<LineItem>
<SequenceNumber>9</SequenceNumber>
<Tax TaxType="IIBB" TaxSubType="IIBBSL">
<SequenceNumber>1</SequenceNumber>
<Amount>88.80</Amount><!— monto de percepción -->
<TaxableAmount>1776.00</TaxableAmount><!— monto neto gravado -->
<Percent>5.00</Percent><!— porcentaje de percepción -->
</Tax>
</LineItem>
Exención de un impuesto por certificado de liberación
Este caso específico se da para los certificados de exención que puede tener asociado un cliente para Ingresos Brutos (caso puntual de Argentina)
<!— Exención de percepción por certificado de eximición -->
<LineItem>
<SequenceNumber>12</SequenceNumber>
<Tax TaxType="IIBB" TaxSubType="1" TypeCode="Sale">
<Amount>3.29</Amount><!— monto de percepción con porcentaje de eximición aplicado del 50% para este cliente -->
<TaxableAmount>131.65</TaxableAmount>
<Percent>5.00</Percent>
<TaxOverride>
<OriginalTaxAmount>6.58</OriginalTaxAmount> <!— monto de percepción original -->
</TaxOverride>
</Tax>
</LineItem>
Elemento
| Descripción |
Tax
| Informa un impuesto
|
TaxAuthority | Identifica cual es el impuesto
|
Amount | Informa el importe del impuesto
|
TaxableAmount
| Informa la base de cálculo del impuesto
|
TaxablePercentage | Informa el porcentaje del impuesto
|
<TaxOverride> | Informa monto original del impuesto en aquellos casos en los cuales se ha aplicado una exención sobre el impuesto que aplica según condición del cliente (taxCertificate)
|
EJEMPLO:
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction>
<RetailStoreID>SUC.02</RetailStoreID>
<WorkstationID>1</WorkstationID>
<SequenceNumber>15</SequenceNumber>
<BusinessDayDate>2007-03-21</BusinessDayDate>
<BeginDateTime>2007-03-21 07:25:59</BeginDateTime>
<EndDateTime>2007-03-21 07:27:13</EndDateTime>
<OperatorID>LUIS</OperatorID>
<RetailTransaction Version="2.2">
<!— - Factura A -->
<OfficialBill>
<BillNumber>FC A 0012-00000004</BillNumber>
<AmountOfBill>1896.00</AmountOfBill>
</OfficialBill>
<POSEODSequenceNumber>43</POSEODSequenceNumber>
<FiscalControllerNumber>HHX1234567</FiscalControllerNumber>
<FiscalPOSNumber>0012</FiscalPOSNumber>
<!—Venta del producto 11017 -->
<LineItem>
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>11017</ItemID>
<ExtendedAmount>1310.00</ExtendedAmount>
<!— Impuestos internos ( impuesto a nivel producto ( -->
<Tax TaxType="VAT">
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>Internos</TaxAuthority>
<Amount>100.00</Amount>
</Tax>
<!— IVA ( impuesto a nivel producto ) -->
<Tax TaxType="VAT">
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>IVA</TaxAuthority>
<TaxableAmount TaxIncludeInTaxableAmount="true">1210.00</TaxableAmount>
<TaxablePercentage>21</TaxablePercentage>
<Amount>200.00</Amount>
</Tax>
</Sale>
</LineItem>
<!—Venta del producto 11019 -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Sale>
<ItemID>11019</ItemID>
<ExtendedAmount>500.00</ExtendedAmount>
<!— IVA ( impuesto a nivel producto ) -->
<Tax TaxType="VAT">
<TaxAuthority>IVA</TaxAuthority>
<TaxablePercentage>0</TaxablePercentage>
</Tax>
</Sale>
</LineItem>
<!— Ingresos Brutos ( impuesto a nivel ticket ) -->
<LineItem>
<SequenceNumber>3</SequenceNumber>
<Tax>
<TaxAuthority>IngresosBrutos</TaxAuthority>
<TaxableAmount TaxIncludeInTaxableAmount="false">1500</TaxableAmount>
<TaxablePercentage>2.4</TaxablePercentage>
<Amount>36.00</Amount>
</Tax>
</LineItem>
<!— Percepción de IVA ( impuesto a nivel ticket) -->
<LineItem>
<SequenceNumber>4</SequenceNumber>
<Tax>
<TaxAuthority>Percpectión</TaxAuthority>
<TaxableAmount TaxIncludeInTaxableAmount="false">1000</TaxableAmount>
<TaxablePercentage>5</TaxablePercentage>
<Amount>50.00</Amount>
</Tax>
</LineItem>
</RetailTransaction>
</Transaction>
</POSLog>
Transacción de Presupuesto
Se basa en el modelo de CustomerOrderTransaction
<!— presupuesto o apartado -->
<CustomerOrderControlTransaction Version="2.2">
<TypeCode>Budget</TypeCode>
<SubTypeCode/>
<TypeID>3</TypeID>
<CurrencyCode>$</CurrencyCode>
<Recovered>false</Recovered>
<CustomerOrderVersion/>
<CustomerOrderStateCode>rpck</CustomerOrderStateCode>
<CustomerOrderTypeCode>ofp</CustomerOrderTypeCode>
<CustomerOrderPromoMapVersion/>
<CustomerOrderActualAvailabilityDate>2017-09-11 14:07:12</CustomerOrderActualAvailabilityDate>
<CustomerOrderPaymentPlanConfigCode/><!— presupuesto o apartado -->
<CustomerOrderInternalNumber>0001000001000257</CustomerOrderInternalNumber>
<!— datos de entrega del presupuesto -->
<Address/>
<ContactPerson Id="1" Code="0100012345678100">Perez, Juan </ContactPerson>
<AdditionalDeliveryData/>
<ShipmentPrice/>
<DeliveryShift/>
<BaseCurrency>$</BaseCurrency>
<CreationDate>2017-09-11 14:07:12</CreationDate>
<UpdateDate/>
<EstimatedAvailabilityDate>2017-09-18 14:07:20</EstimatedAvailabilityDate>
<RetirementStoreCode>100</RetirementStoreCode>
<!— Line items de productos -->
<LineItem EntryMethod="Keyed">
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>78</ItemID>
<KitIndicator>true</KitIndicator>
<ComponentIndicator>false</ComponentIndicator>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>96.89</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy>VGCo-PS3G</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>58.00</RegularSaleUnitPrice>
<ActualUnitPrice>58.00</ActualUnitPrice>
<ExtendedAmount>58.00</ExtendedAmount>
<IDLocation>DEP1_OS</IDLocation>
<GiftReceiptFlag/>
<RetailTransactionDiscount>
<Amount>0.00</Amount>
<Percent>0.00</Percent>
</RetailTransactionDiscount>
<Tax TaxType="TAX" TypeCode="Sale"><!— impuestos internos del producto ->
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>4</TaxAuthority>
<Amount>3.35</Amount>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">58.00</TaxableAmount>
<Percent>5.78</Percent>
</Tax>
<Tax TaxType="VAT" TypeCode="Sale"> <!— iva del producto -->
<SequenceNumber>2</SequenceNumber>
<TaxAuthority>2 </TaxAuthority>
<Amount>9.48</Amount>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">45.17</TaxableAmount>
<Percent>21.00</Percent>
</Tax>
<Reserved>false</Reserved> <!— si el producto fue reservado o no -->
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>2</SequenceNumber>
<TotalLine>
<GrossPositiveAmount>58.00</GrossPositiveAmount>
<GrossNegativeAmount>0.00</GrossNegativeAmount>
<PaidAmount>0.00</PaidAmount>
<PendingAmount>58.00</PendingAmount>
</TotalLine>
</LineItem>
<LineItem>
<SequenceNumber>3</SequenceNumber> <!— Datos del cliente -->
<CustomerInformation TypeCode="NA">
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>RegistrationName</Id>
<Value>Perez, Juan </Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
… <!— datos del cliente -->
</CustomerInformation>
</LineItem>
<!— totales del presupuesto-->
<Total TotalType="TransactionGrossPositiveAmount" CancelFlag="false">58.00</Total>
<Total TotalType="TransactionGrossNegativeAmount" CancelFlag="false">0.00</Total>
<Total TotalType="TransactionTaxAmount" CancelFlag="false">12.83</Total>
<Total TotalType="TransactionManualDiscount" CancelFlag="false">0.00</Total>
<Total TotalType="TransactionAutomaticDiscount" CancelFlag="false">0.00</Total>
<Total TotalType="TransactionTotalDiscount" CancelFlag="false">0.00</Total>
<Total TotalType="TransactionPercentageDiscount" CancelFlag="false">0.00</Total>
<Total TotalType="TransactionNetAmount" CancelFlag="false">58.00</Total>
<Total TotalType="TransactionGrossAmount" CancelFlag="false">58.00</Total>
<Total TotalType="TransactionPurchaseAmount" CancelFlag="false">58.00</Total>
<Total TotalType="CustomerOrderTotal">58.00</Total>
<RingElapsedTime>0</RingElapsedTime>
<TenderElapsedTime>0</TenderElapsedTime>
<LockElapsedTime>0</LockElapsedTime>
</CustomerOrderControlTransaction>
Elemento
| Descripción |
POSLog | Informa que es un registro del Transaccional
|
Transaction | Informa que se está registrando una transacción
|
RetailStoreID | Informa la identificación del local
|
WorkstationID | informa la identificación de la Terminal
|
SequenceNumber | informa el número de transacción
|
BusinessDayDate | informa la fecha contable en la cual se registra esta transacción
|
BeginDateTime | informa la fecha y hora de inicio en que se realizó la transacción
|
EndDateTime | informa la fecha y hora de finalización de la transacción
|
OperatorID | informa la identificación del operador que realizó la transacción
|
OriginalTransaction | Informa la transacción original serializada
|
CustomerOrderControlTransaction
| Informa que la transacción es un presupuesto o apartado
|
TypeCode | Informa el tipo de transacción
|
Subtype | Subtipo de transacción
|
TypeID | ID del tipo de transacción
|
<CurrencyCode>$</CurrencyCode> | Moneda del presupuesto |
<Recovered>false</Recovered> | Si fue recuperado el presupuesto |
<CustomerOrderVersion/> | Datos del presupuesto
|
<Address/> | Datos de entrega (se utiliza en pedidos no en presupuestos)
|
Reserved | Informa si existe una reserva en la transacción
|
LineItem
| Informa una línea de detalle de la transacción
|
SequenceNumber | Identifica cada línea de detalle de la transacción
|
Detalle | Cada elemento LineItem contiene uno y solo un elemento de detalle que depende del tipo de detalle. Vamos a considerar los siguientes:
|
TotalLine | Informa totales de la transacción de presupuesto en cuanto a pagos o pendientes. |
Total
| Informa un total de la transacción
|
Tiempo ingreso de articulos
| Informa:
|
Tiempo ingreso de medios de pago
| Informa:
|
Tiempo de POS bloqueado
| Informa:
|
EJ | Datos guardados para el Electronic Journal. Ver Anexo auditoria y EJ |
Audit | Datos guardados para Auditoria. Ver Anexo auditoria y EJ |
Ejemplo:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Transaction CancelFlag="false" VoidedFlag="false" SuspendedFlag="false" TrainingModeFlag="False" OfflineFlag="false" >
<RetailStoreID>1</RetailStoreID>
<WorkstationID>4</WorkstationID>
<TillID>22</TillID> (Nota: SALE01)
<SequenceNumber>44</SequenceNumber>
<BusinessDayDate>2010-02-23 15:00</BusinessDayDate>
<Period>1</Period
<Subperiod>1</ Subperiod>
<BeginDateTime>2010-02-23 15:00</BeginDateTime>
<EndDateTime>2010-02-23 15:22</EndDateTime>
<OperatorID>111</OperatorID>
<CustomerOrder Version="2.2"><OfficialBill/>
<LineItem>
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>7798108348911</ItemID>
<POSItemID>1111</ POSItemID>
< ItemType>Stock</ ItemType>
<MerchandiseHierarchy Level="Department">27</MerchandiseHierarchy>
<Quantity UnitOfMeasumereCode="GRM">1.0</Quantity>
<RegularSaleUnitPrice UnitOfMeasumerentCode="GRM">2500.00</RegularSaleUnitPrice>
<SellUnitPriceEntryMethodCode>PriceLookup</SellUnitPriceEntryMethodCode>
<RetailPriceModifier MethodCode="PriceOverride">
<SequenceNumber>1</SequenceNumber>
<Amount Action="Substract">150.00</Amount>
<Percent Action="Substract">20.00</ Percent >
<ReasonCode>DM</ReasonCode>
</RetailPriceModifier>
<ExtendedAmount>2500.00</ExtendedAmount>
<EntryMethodCode>Keyed</EntryMethodCode>
</Sale>
<Tax TaxType="TAX" TypeCode="Sale">
<SequenceNumber>1</SequenceNumber>
<TaxAuthority>Internos</TaxAuthority>
<Amount>0.25</Amount>
<SequenceNumber>1</SequenceNumber>
</Tax>
<Tax TaxType="TAX" TypeCode="Sale">
<TaxAuthority>Internos</TaxAuthority>
<Amount>0.11</Amount>
</Tax>
<Tax taxType="VAT" TypeCode="Sale">
<SequenceNumber>2</SequenceNumber>
<TaxAuthority>IVA 21%</TaxAuthority>
<TaxableAmount TaxIncludedInTaxableAmountFlag="true">4.25</TaxableAmount>
<Amount>0.89</Amount>
<Percent>21.00</ Percent>
</Tax>
</LineItem>
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Sale>
<ItemID>1796</ItemID>
<Quantity UnitOfMeasumereCode="GRM">2.0</Quantity>
<RegularSaleUnitPrice UnitOfMeasumerentCode="GRM">4.50</RegularSaleUnitPrice>
<RetailPriceModifier MethodCode="PriceOverride">
<SequenceNumber>1</SequenceNumber>
<Percent Action="Substract">10.00</Percent>
<ReasonCode>DM</ReasonCode>
</RetailPriceModifier>
<ExtendedAmount>4.50</ExtendedAmount>
<EntryMethodCode>Scanned</EntryMethodCode>
</Sale>
</LineItem>
<LineItem VoidFlag="true">
<SequenceNumber>3</SequenceNumber>
<Sale>
<ItemID>1796</ItemID>
<Quantity UnitOfMeasumereCode="GRM">1.0</Quantity>
<ItemLink>2</ItemLink>
<RegularSaleUnitPrice UnitOfMeasumerentCode="GRM">4.50</RegularSaleUnitPrice>
<RetailPriceModifier MethodCode="PriceOverride">
<SequenceNumber>1</SequenceNumber>
<Percent Action="Substract">10.00</Percent>
<ReasonCode>DM</ReasonCode>
</RetailPriceModifier>
<ExtendedAmount>4.50</ExtendedAmount>
<EntryMethodCode>Scanned</EntryMethodCode>
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>4</SequenceNumber>
<Tender>(Opcional)
<Tender TenderType="Visa" TypeCode="Sale">
<TenderAccountNumber>123456******7890</ TenderAccountNumber>
<Date>2010-02-23 15:22</Date>
<Amount>40.00</Amount>
< ForeignCurrencyID>5< ForeignCurrencyID/>
ForeignCurrencyAmount>10.00<ForeignCurrencyAmount/>
<ExchangeRate>4.0000<ExchangeRate/> <!—Base Currency / ForeignCurrency>
</Tender>(Opcional)
</LineItem>
<LineItem>
<SequenceNumber>5</SequenceNumber>
<Tender> (Opcional)
<Tender TenderType="Cash" TypeCode="Sale">
<Date>2010-02-23 15:22</Date>
<Amount>200.00</Amount>
< ForeignCurrencyID>5< ForeignCurrencyID/>
ForeignCurrencyAmount>50.00<ForeignCurrencyAmount/>
<ExchangeRate>4.0000<ExchangeRate/> <!—Base Currency / ForeignCurrency>
<TenderChange TenderType="Cash">
<Amount>8.00</Amount>
< ForeignCurrencyID>5< ForeignCurrencyID/>
ForeignCurrencyAmount>2.00<ForeignCurrencyAmount/>
<ExchangeRate>4.0000<ExchangeRate/>
</TenderChange>
</Tender> (Opcional)
</LineItem>
<LineItem>
<SequenceNumber>6</SequenceNumber>
<Tender>
<Tender TenderType="Cash" TypeCode="Sale">
<Date>2010-02-23 15:22</Date>
<Amount>200.00</Amount>
<TenderChange TenderType="Cash">
<Amount>5.11</Amount>
</TenderChange>
</Tender>
</LineItem>
<LineItem>
<SequenceNumber>7</SequenceNumber>
<Tax TaxType="Gross Income" TaxSubType="Multipart Agreement">
<TaxableAmount TaxIncludedInTaxableAmountFlag="false">2354.05</TaxableAmount>
<Amount>70.62</Amount>
<Percent>3.00</Percent>
</Tax>
</LineItem>
<LineItem>
<SequenceNumber>8</SequenceNumber>
<Discount>
<BaseAmount>2500.00</BaseAmount>
<Amount>10.00</Amount>
</Discount>
</LineItem>
<LineItem>
<SequenceNumber>9</SequenceNumber>
<Discount>
<BaseAmount>2490.00</BaseAmount>
<Percentage>15.00</Percentage>
<Amount>373.50</Amount>
</Discount>
</LineItem>
<Total>2354.05</Total>
</CustomerOrder>
</Transaction>
Transacciones de no venta
Informa los tipos de transacciones de no venta, como son el retiro, la dotación, arqueo, informe de medios de pago, apertura del cajón de dinero y cambio de valores.
EJEMPLO:
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction>
<RetailStoreID>145</RetailStoreID>
<WorkstationID>5</WorkstationID>
<SequenceNumber>295</SequenceNumber>
<BusinessDayDate>2006-12-05</BusinessDayDate>
<BeginDateTime>2006-12-05 09:56:17</BeginDateTime>
<EndDateTime>2006-12-05 09:56:30</EndDateTime>
<OperatorID>102</OperatorID>
<PeriodID>2104</PerioID>
<Shift>1</Shift>
<LockElapsedTime>00.30</ LockElapsedTime>
<TenderControlTransaction Version="2.2">
<!— - Dotación -->
<TenderLoan TenderType="Cash">
<Totals>
<Amount>1000.00</Amount>
</Totals>
</Tender Loan>
</TenderLoan>
ó
<!— - Retiro -->
<TenderPickup >
<!-- this is the total by tender type -->
<Tender TenderType="Cash" > 300.00 </Tender>
<Tender TenderType="Visa" > 1400.00 </Tender>
<!-- this is the total of all tenders for this pickup -->
<Totals>
<Amount>1700.00</Amount>
</Totals>
</TenderPickup>
ó
<!— - Arqueo -->
<TenderCount >
<!-- this is the total by tender type -->
<Tender TenderType="Cash" > 300.00 </Tender>
<Tender TenderType="Visa" > 1400.00 </Tender>
<!-- this is the total of all tenders for this pickup -->
<Totals>
<Amount>1700.00</Amount>
</Totals>
</TenderCount>
ó
<!— - Cambio de valores -->
<TenderCorrection>
<Tender TypeCode="Refund">
<TenderID>Cash</TenderID>
<Amount>120.00</Amount>
</Tender>
<Tender>
<TenderID>Visa</TenderID>
<Amount>120.00</Amount>
</Tender>
</TenderCorrection>
</TenderControlTransaction>
</Transaction>
<POSLog>
<?xml version="1.0" encoding="UTF-8"?>
<POSLog>
<Transaction>
<RetailStoreID>145</RetailStoreID>
<WorkstationID>5</WorkstationID>
<SequenceNumber>296</SequenceNumber>
<BusinessDayDate>2006-12-05</BusinessDayDate>
<BeginDateTime>2006-12-05 09:56:17</BeginDateTime>
<EndDateTime>2006-12-05 09:56:30</EndDateTime>
<OperatorID>102</OperatorID>
<PeriodID>2104</PerioID>
<Shift>1</Shift>
<ControlTransaction Version="2.2">
<OpenCashDrawer/>
ó
<TenderListReport/>
</ControlTransaction>
</Transaction>
<POSLog>
Elemento
| Descripción |
TenderControlTransaction
| Informa que la transacción es de no Venta
|
Dotación | |
TenderLoan | Informa que es una transacción de dotación
|
Amount
| Informa el monto correspondiente al medio de pago de la dotación.
|
Totals | Informa el total correspondiente a la operación de dotación.
|
Retiro | |
TenderPickup | Informa que es una transacción de retiro
|
Tender
| Informa un medio de pago que se ha retirado
|
Amount
| Informa el monto correspondiente a la transacción de retiro.
|
Totals | Informa el total correspondiente a la transacción de retiro.
|
Arqueo | |
TenderCount | Informa que es una transacción de arqueo
|
Tender
| Informa un medio de pago que se ha arqueado
|
Totals | Informa el total correspondiente a la transacción de arqueo.
|
Amount
| Informa el monto correspondiente a la transacción de arqueo.
|
Cambio de valores | |
TenderCorrection | Informa que es una transacción de cambio de valores
|
Tender
| Indica pago entregado o recibido
|
ControlTransaction
| Informa que la transacción es de control
|
OpenCashDrawer | Informa que el operador abrió el cajón
|
TenderListReport | Informa que el operador requirió un listado de pagos
|
SignOn, SignOff
<!— Inicio de sesión/SignOn -->
<PosLog xmlns:lxslt="http://xml.apache.org/xslt">
<Transaction CancelFlag="false" TrainingModeFlag="false" SuspendedFlag="false" VoidedFlag="false" OfflineFlag="false" ContigencyFlag="false">
<RetailStoreID>100</RetailStoreID>
<WorkstationID>1</WorkstationID>
<TillID>4</TillID>
<TillType>Operator</TillType>
<SequenceNumber>237</SequenceNumber>
<BusinessDayDate>2017-09-07</BusinessDayDate>
<Period>11</Period>
<Subperiod>12</Subperiod>
<BeginDateTime>2017-09-11 10:28:49</BeginDateTime>
<EndDateTime>2017-09-11 10:28:49</EndDateTime>
<OperatorID>andrea</OperatorID>
<ControlTransaction Version="2.2">
<TypeCode>SignOn</TypeCode>
<SubTypeCode/>
<TypeID>15</TypeID>
<SignOn>
<LastUserLogin>2017-09-11 10:28:49</LastUserLogin>
</SignOn>
</ControlTransaction>
<LockElapsedTime>0</LockElapsedTime>
</Transaction>
<EJ/>
<Audit/>
</PosLog>
<!— Fin de sesión/SignOff -->
<ControlTransaction Version="2.2">
<TypeCode>SignOff</TypeCode>
<SubTypeCode/>
<TypeID>16</TypeID>
<SignOff>
<BeginDateTime>2017-09-11 10:28:50</BeginDateTime>
<EndDateTime>2017-09-11 10:44:03</EndDateTime>
</SignOff>
</ControlTransaction>
Elemento
| Descripción |
POSLog | Informa que es un registro del Transaccional
|
Transaction | Informa que se está registrando una transacción
|
RetailStoreID | Informa la identificación del local
|
WorkstationID | informa la identificación de la Terminal
|
SequenceNumber | informa el número de transacción
|
BusinessDayDate | informa la fecha contable en la cual se registra esta transacción
|
BeginDateTime | informa la fecha y hora de inicio en que se realizó la transacción
|
EndDateTime | informa la fecha y hora de finalización de la transacción
|
OperatorID | informa la identificación del operador que realizó la transacción
|
ControlTransaction
| Informa que la transacción es de control
|
TypeCode | Informa el tipo de transacción
|
Subtype | Subtipo de transacción
|
TypeID | ID del tipo de transacción
|
OperatorSignOff / OperatorSignOn | Informa que se ha realizado una operación de Sign off / on del operador
|
Tiempo de Operador de una Terminal
| Informa el tiempo transcurrido desde el inicio de sesión hasta el cierre de sesión
|
LastUserLogin | Fecha y hora del ultimo login, utilizado para validaciones de bloqueos o cambios de clave (solo en SignOn) |
Inicio de terminal (período)
<!— Inicio de período / POSSOD : POS start of date -->
<ControlTransaction Version="2.2">
<TypeCode>POSSOD</TypeCode>
<SubTypeCode/>
<TypeID>28</TypeID>
<POSSOD>2017-09-11 11:48:55</POSSOD>
<FiscalPOSNumber>0001</FiscalPOSNumber>
</ControlTransaction>
</Transaction>
<EJ/>
<Audit/>
</PosLog>
Elemento
| Descripción |
POSSOD | Informa que se ha realizado una operación de Inicio de período en la terminal
|
FiscalPOSNumber | Informa el nro de punto de venta o centro emisor
|
Nota: Se mantendrá la misma estructura que el cierre de terminal (periodo) cambiándose el TAG POSEOD por POSSOD (POS start of day)
Cierre de terminal (período)
<!— Fin del período / POSEOD : POS end of date -->
<ControlTransaction Version="2.2">
<TypeCode>BusinessEOD</TypeCode>
<TypeID>47</TypeID>
<POSEOD>2017-09-07 18:22:47</POSEOD>
</ControlTransaction>
</Transaction>
Elemento
| Descripción |
ControlTransaction
| Informa que la transacción es de control
|
POSEOD | Informa que se ha realizado una operación de Cierre de período en la terminal
|
Nota: el operador no será un dato requerido ya que este tipo de control transaction será ejecutada automáticamente por el POS al detectar que el BridgeManager se encuentra en proceso de cierre de período.
Cierre Z
En el caso de Argentina se requiere registrar una serie de datos para el cierre diario Z (ver Cierre Z para legislación tributaria de Argentina)
-<POSLog>
<Transaction>
<RetailStoreID>1</RetailStoreID>
<WorkstationID>4</WorkstationID>
<SequenceNumber>34</SequenceNumber>
<BusinessDayDate>2010-03-31 12:56</BusinessDayDate>
<BeginDateTime>2010-03-31 12:56</BeginDateTime>
<EndDateTime>2010-03-31 12:56</EndDateTime>
<OperatorID>111</OperatorID>
<CancelFlag>false</CancelFlag>
<FiscalControllerNumber>20938494859493</FiscalControllerNumber>
<FiscalPOSNumber>0012</FiscalPOSNumber>
- <ControlTransaction Version="2.2">
<POSEOD>
<POSEODSequenceNumber>98765</POSEODSeguenceNumber>
<LastTransactionSequenceNumber DocumentType="Ticket">123456</LastTransactionSequenceNumber>
<LastTransactionSequenceNumber DocumentType="Invoice" Serie = "B">552233</LastTransactionSequenceNumber>
<LastTransactionSequenceNumber DocumentType="Invoice" Serie = "A">112233</LastTransactionSequenceNumber>
<LastTransactionSequenceNumber DocumentType="CreditNote" Serie "B">002233</LastTransactionSequenceNumber>
<TransactionCount DocumentType="CancelledFiscalDocument">5</TransactionCount>
<TransactionCount DocumentType="NonFiscalDocument">30</TransactionCount>
<TransactionCount DocumentType="Ticket">300</TransactionCount>
<Total TotalType="GrossPositiveAmount">35500.00</Total>
<Total TotalType="TaxAmount">5500.00</Total>
<Total TotalType="SpecialTaxAmount">690.00</Total>
<Total TotalType="WithHoldingTaxAmount">350.00</Total>
<Total TotalType="CreditNoteTotalAmount">1000.00</Total>
<Total TotalType="CreditNoteVATAmount">174.00</Total>
<Total TotalType="CreditNoteSpecialTaxAmount">15.00</Total>
<Total TotalType="CreditNoteWithHoldingTaxAmount">35.00</Total>
</POSEOD>
</ControlTransaction>
</Transaction>
</POSLog>
Elemento
| Descripción |
POSLog | Informa que es un registro del Transaccional
|
Transaction | Informa que se está registrando una transacción
|
RetailStoreID | Informa la identificación del local
|
WorkstationID | informa la identificación de la Terminal
|
SequenceNumber | informa el número de transacción
|
BusinessDayDate | informa la fecha contable en la cual se registra esta transacción
|
BeginDateTime | informa la fecha y hora de inicio en que se realizó la transacción
|
EndDateTime | informa la fecha y hora de finalización de la transacción
|
OperatorID | informa la identificación del operador que realizó la transacción
|
ControlTransaction
| Informa que la transacción es de control
|
FiscalControllerNumber | Informa el número de serie de la impresora fiscal
|
FiscalPOSNumber | Informa el centro emisor
|
POSEOD | Informa que se ha realizado una operación de cierre Z en la terminal(POS end of date)
|
POSEODSequenceNumber | Nro de cierre Z |
LastTransactionSequenceNumber
| Informa el último nro del ticket que se ha realizado previo al cierre Z en la terminal(POS end of date)
|
TransactionCount
| Indica la cantidad de transacciones emitidas
|
Totals
| Informa el total de acumulado de ventas e impuestos
|
Autorización del supervisor
Las autorizaciones del supervisor son aquellas intervenciones en las que un usuario con permisos de supervisor autoriza alguna operación o procedimiento.
El registro en TLOG a nivel de LineItem puede tener 0 a N elementos OperatorBypassApproval
Este elemento es del tipo RetailTransactionApproval
<xs:complexType name="RetailTransactionApproval">
<xs:sequence>
<xs:element name="SequenceNumber" type="POSLogSequenceNumber"/>
<xs:element name="ApproverID" type="POSLogOperatorID"/>
<xs:element name="LineApprovalCode" type="xs:string" minOccurs="0"/>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
<xs:element name="EntryMethod" type="POSLogEntryMethod" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
Los elementos obligatorios son SequenceNumber, es para relacionarlo con otro LineItem, pudiendo dejar el mismo valor que el LineItem y AppoverID que es del tipo POSLogOperatorID
<xs:complexType name="POSLogOperatorID">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="OperatorName" type="xs:string" use="optional"/>
<xs:attribute name="EmployeeID" type="xs:string" use="optional"/>
<xs:attribute name="OperatorType" type="OperatorTypeType" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
Por ejemplo:
<OperatorBypassApproval>
<SequenceNumber>1</SequenceNumber>
<ApproverID>Juan</ApproverID>
<Description>applyDiscount</Description>
<EntryMethod>KYD</EntryMethod>
<LineApprovalCode/>
</OperatorBypassApproval>
</LineItem>
Según el procedimiento, se irá informando la descripción.
<Sale/Discount/Tax/Tender....>
Registro de un nuevo cliente
Registro en TLOG de un nuevo cliente o una modificación en sus datos.
El registro de un nuevo cliente o la modificación en los datos de un cliente ya existente puede darse dentro de una transacción en curso como fuera de la misma (desde selección de operaciones)
Con el alta de cliente se generará un TLOG independiente del tipo ControlTransaction.
Los datos a grabar del cliente dependerán del tipo de cliente que se cree (persona física u organización)
Para mayor referencia, utilizar el doc POSLogLibraryRetailTransaction.xsd (PosLog 2.2 de IXRetail)
Ejemplo de TLOG de un new customer – persona física
<ControlTransaction Version="2.2">
<TypeCode>NewCustomer</TypeCode>
<Customer>
<CustomerID>010000111111101</CustomerID>
<CustomerType>PRS</CustomerType>
<CustomerName>
<FirstName>Juan</FirstName>
<LastName>Lopez</LastName>
</CustomerName>
<ContactMethod>
<Address>
<ContactMethodType>Particular1</ContactMethodType>
<AddressLineFirst>Echeverria 1122</AddressLineFirst>
<AddressLineSecond/>
<AddressLineThird/>
<AddressLineFourth/>
<City>1081</City>
<Territory>AR-B</Territory>
<CountryCode>ARG</CountryCode>
</Address>
<TelephoneNumber>
<CountryCode/>
<AreaCode/>
<TelephoneNumber/>
<ExtensionNumber/>
</TelephoneNumber>
<eMail/>
</ContactMethod>
<Birthdate>--</Birthdate>
<YearOfBirth/>
<Gender>M</Gender>
<PartyIdentificationType>
<Type>1</Type>
<Identifier>1111111</Identifier>
<IssueDate/>
<ExpirationDate/>
</PartyIdentificationType>
</Customer>
<Action/>
</ControlTransaction>
Persona física
<!-- Customer Name & Address-->
<xs:complexType name="RetailTransactionCustomer">
<xs:sequence>
<xs:element name="CustomerID" type="xs:string"/> Nro o código de cliente
<xs:element name="CustomerName"> Nombre del cliente
Atributos: FirstName, LastName; type= string (nombre y apellido)
<xs:element name="Address" type="RetailTransactionAddress" minOccurs="0" maxOccurs="unbounded"/>
Atributos o tags:
"ContactMethodType", "AddressLine", "City", "Territory", "CountryCode" type=string (tipo de método de contacto, Lineas de dirección, Ciudad, provincial y país)
<xs:element name="TelephoneNumber" type="xs:string">
Atributos o tags:
"CountryCode", "AreaCode", "TelephoneNumber", "ExtensionNumber" type= string (código de país, código de area, nro de teléfono, interno) Opcional
<xs:element name="eMail" type="xs:string"> (dirección de mail) Opcional
<!-- Customer personal information, sólo aplica para personas físicas -->
<xs:element name="Birthdate" type="xs:date" minOccurs="0"/> (fecha de nacimiento)
<xs:element name="YearOfBirth" type="xs:gYear" minOccurs="0"/> (año de nacimiento)
<xs:element name="Gender" type="xs:string" minOccurs="0"/> (sexo)
<xs:element name="PartyIdentificationType" type="xs:string" minOccurs="0"/ > (tipo de identificación)
Atributos o tags:
"IssueDate", "ExpirationDate" type: date (fechas de vigencia del documento)
<xs:element name="Identifier" type="xs:string" minOccurs="0"/> (Nro de documento)
<xs:element name="Nationality" type="xs:string" minOccurs="0"/> (nacionalidad)
<!-- Customer Action Types-->
<xs:attribute name="Action" type="CustomerActionType" use="optional" default="Read"/>
<xs:simpleType name="CustomerActionType"> (tipo de acción sobre el cliente)
<xs:union memberTypes="CustomerActionTypeEnumeration TypeCodeExtension"/>
</xs:simpleType>
<xs:simpleType name="CustomerActionTypeEnumeration">
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Create"/>
<xs:enumeration value="Update"/>
<xs:enumeration value="Read"/>
<xs:enumeration value="Delete"/>
<xs:enumeration value="Report"/>
</xs:restriction>
</xs:simpleType>
Organizaciones
<!-- Customer Name & Address-->
<xs:complexType name="RetailTransactionCustomer">
<xs:sequence>
<xs:element name="CustomerID" type="xs:string"/> Nro o código de cliente
<xs:element name="CustomerName"> Nombre de la organización
Atributo o tag: OrganizationName; type= string
<xs:element name="Address" type="RetailTransactionAddress" minOccurs="0" maxOccurs="unbounded"/>
Atributos o tags:
"ContactMethodType", "AddressLine", "City", "Territory", "CountryCode" type=string (tipo de método de contacto, Linea de dirección, ciudad, provincial, país)
<xs:element name="TelephoneNumber" type="xs:string"> (Teléfono, opcional)
Atributos o tags:
"CountryCode", "AreaCode", "TelephoneNumber", "ExtensionNumber" type= string (código de país, código de area, nro de teléfono e interno)
<xs:element name="eMail" type="xs:string"> (mail, opcional)
<!-- Customer VAT tax information -->
"TaxRegistrationTaxType" type= VAT (o el código que corresponda al tipo de impuesto)
<xs:element name="CustomerTaxTypeCategory " type="xs:string" minOccurs="1"/> (categoría ante el impuesto)
<xs:element name="CustomerFiscalID" type="xs:string" minOccurs="1"/>
Atributos o tags:
"RegistrationNumber" type= string; (nro de CUIT)
"IssueDate", "ExpirationDate" type= date (fecha de vigencia)
<!-- Customer IIBB tax information -->
"TaxRegistrationTaxType" type= IIBB (o el código que corresponda al tipo de impuesto)
<xs:element name=" CustomerTaxTypeCategory " type="xs:string" minOccurs="0"/> (categoría ante el impuesto)
<xs:element name=" CustomerFiscalID " type="xs:string" minOccurs="0"/>
Atributos o tags:
"RegistrationNumber" type= string; (nro de registro de IIBB)
"IssueDate", "ExpirationDate" type= date (fecha de vigencia)
<!-- Customer IIBB tax information -->
<xs:element name="TaxCertificate" type="xs:string" minOccurs="0"/> (lista de certificados de eximición, opcional)
Atributos o tags:
"Jurisdiction" type= string (jurisdicción en la cual se encuentra registrado el cliente)
"UnifiedFactor", "TaxExemptionPercentage" type=decimal, (coeficiente unificado y porcentaje de eximición del impuesto)
"IssueDate", "ExpirationDate" type=date (fecha de vigencia de la eximición del impuesto)
<!-- Customer Action Types -->
<xs:attribute name="Action" type="CustomerActionType" use="optional" default="Read"/>
<xs:simpleType name="CustomerActionType">
<xs:union memberTypes="CustomerActionTypeEnumeration TypeCodeExtension"/>
</xs:simpleType>
<xs:simpleType name="CustomerActionTypeEnumeration"> (tipo de acción sobre el cliente)
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Create"/>
<xs:enumeration value="Update"/>
<xs:enumeration value="Read"/>
<xs:enumeration value="Delete"/>
<xs:enumeration value="Report"/>
</xs:restriction>
</xs:simpleType>
Apertura de período en Bridge Manager Tienda
Dentro del directorio de instalación de Bridge Manager se encontrará una carpeta donde se guardarán los TLOGs que se generen para Bridge Manager tienda.
Ej: C:\synthesis\BMT_Ago30\tlog\processed
El TLOG tendrá el nombre de la tienda, el nro de período y subperíodo, SOD (que indica que es un inicio de período)
Ej: 100-9-10-SOD_1504816988727.xml
<!— Inicio de período en tienda -->
<PosLog xmlns:lxslt="http://xml.apache.org/xslt">
<Transaction CancelFlag="false" TrainingModeFlag="false" SuspendedFlag="false" VoidedFlag="false" OfflineFlag="false" ContigencyFlag="false">
<RetailStoreID>100</RetailStoreID>
<WorkstationID>0</WorkstationID>
<SequenceNumber>9</SequenceNumber>
<BusinessDayDate>2017-09-07</BusinessDayDate>
<Period>9</Period>
<Subperiod>10</Subperiod>
<BeginDateTime>2017-09-07 17:43:08</BeginDateTime>
<EndDateTime>2017-09-07 17:43:08</EndDateTime>
<OriginalTransaction><!-NO SE UTILIZA-></OriginalTransaction>
<ControlTransaction Version="2.2">
<TypeCode>BusinessSOD</TypeCode> <!— Inicio de período en tienda -->
<TypeID>46</TypeID>
<BusinessSOD>2017-09-07 17:43:08</BusinessSOD>
</ControlTransaction>
</Transaction>
</PosLog>
Cierre de período en Bridge Manager Tienda
Dentro del directorio de instalación de Bridge Manager se encontrará una carpeta donde se guardarán los TLOGs que se generen para Bridge Manager tienda.
Ej: C:\synthesis\BMT_Ago30\tlog\processed
El TLOG tendrá el nombre de la tienda, el nro de período y subperíodo, SOD (que indica que es un inicio de período)
Ej: 100-11-12-EOD_1505141231135.xml
<!— Cierre de período en tienda -->
<PosLog xmlns:lxslt="http://xml.apache.org/xslt">
<Transaction CancelFlag="false" TrainingModeFlag="false" SuspendedFlag="false" VoidedFlag="false" OfflineFlag="false" ContigencyFlag="false">
<RetailStoreID>100</RetailStoreID>
<WorkstationID>0</WorkstationID>
<SequenceNumber>12</SequenceNumber>
<BusinessDayDate>2017-09-07</BusinessDayDate>
<Period>11</Period>
<Subperiod>12</Subperiod>
<BeginDateTime>2017-09-11 11:47:11</BeginDateTime>
<EndDateTime>2017-09-11 11:47:11</EndDateTime>
<OriginalTransaction><!-NO SE UTILIZA-></OriginalTransaction>
<ControlTransaction Version="2.2">
<TypeCode>BusinessEOD</TypeCode>
<TypeID>47</TypeID>
<BusinessEOD>2017-09-11 11:47:11</BusinessEOD> <!— Cierre de período en tienda -->
</ControlTransaction>
</Transaction>
</PosLog>
Anexo
Cierre Z para legislación tributaria de Argentina
CAPITULO II.COMPROBANTE DIARIO DE CIERRE (informe Z):
1. Será el último Documento emitido en la Jornada Fiscal. En cada uno de ellos se deberá consignar obligatoriamente:
- a. Domicilio comercial.
- b. Clave Única de Identificación Tributaria.
- c. Número de registro del C.F.
- d. Código identificatorio del punto de venta.
- e. Fecha y hora.
- f. Número Progresivo del Comprobante Diario de Cierre (Z).
- g. Importe total de las operaciones de la Jornada Fiscal.
- h. Importe total diario del IVA y los parciales correspondientes a cada tasa conforme a lo establecido en el último párrafo del artículo 7°.
- i. Número progresivo del último Comprobante Fiscal emitido según se trate de "ticket" o factura "C", "ticket" o factura "B" o de factura "A".
- j. Cantidad de Comprobantes Fiscales emitidos en la Jornada Fiscal.
- k. Cantidad de D.N.F.H. emitidos en la Jornada Fiscal
.
- l. Cantidad de D.N.F. emitidos en la Jornada Fiscal
.
- m. Cantidad de Comprobantes Cancelados. (Solo para los Controladores Fiscales que admitan esta opción).
- n. Logotipo fiscal.
Los contadores se inicializan en (0) después de emitir este informe.
2. Los datos de los ítems "b" a "n deberán ser impresos, en el momento de la emisión del Comprobante de Cierre Diario, por intermedio de la impresora del Controlador Fiscal.
3. La registración unitaria de facturas debe realizarse en el caso que se traten de facturas "A". Las facturas "B" o "C" podrán ser asimiladas a los "tickets".
Anexo tipo de transacciones
Tabla CO_TRX_SUB_TYP, campos NM_TRX_SUB_TYP y DS_TRX_SUB_TYP
Nombre del subtipo de transaccion | Descripción | Observaciones |
Venta Regular | Venta | |
Devolucion Venta Regular | Devolución | |
Budget | Presupuesto | Presupuesto |
BillBudget | Facturación Presupuesto | |
Recibido a Cuenta | Recibido a Cuenta | |
Prestamo | Préstamo | Dotaciones |
Retiro | Retiro | |
Arqueo | Arqueo | |
Cambio de Valores | Cambio de Valores | |
ReceivedPaymentsReport | Reporte Pagos | |
CashOpening | Apertura de Cajón | |
TransferTerminal | Transferencia de Terminal | |
Inicio Modo Entrenamiento | Inicio Modo Entrenamiento | |
RecoverTrx | Recuperación de Transacción | |
SignOn | Inicio Sesión | |
SignOff | Cierre Sesión | |
Exchange | Cambio | Operación de cambio (artículos devueltos y artículos comprados) con devolución a partir de una compra original |
ManualExchange | Cambio Manual | Operación de cambio con devolución sin referencia |
TenderDeposit | Depósito | Operación de egreso del SAFE (desde BM) |
TenderReceipt | Recibo | Operación de ingreso del SAFE (desde BM) |
UpdateCustomerOrder | Actualización de Orden de Compra | |
Cierre Z | Cierre Z | |
Cierre X | Cierre X | |
FiscalReport | Reporte Fiscal | |
FiscalParameters | Parámetros Fiscales | |
POSEOD | POSEOD | Cierre de terminal |
POSSOD | POSSOD | Inicio de la terminal |
ContingencyLoad | Carga de Contingencia | |
AUDIT | Auditoría | |
NewCustomer | Nuevo cliente | |
RechargeMonedero | Recarga Monedero | |
RefundRechargeMonedero | Reembolso Recarga Monedero | |
ActiveMonedero | Activar Monedero | |
TransferMonedero | Transferencia Monedero | |
RefundRedemptionMonedero | Reembolso Redención Monedero | |
RedemptionMonedero | Utilización Monedero | Redención del monedero |
BalanceMonedero | Balance Monedero | Saldo del monedero |
EditCustomer | Editar Cliente | |
Order | Orden | |
Apartado | Apartado | |
Facturacion Apartado | Facturación Apartado | |
Cancelacion Apartado | Cancelación Apartado | |
Pago Apartado | Pago Apartado | |
Devolucion Pago Apartado | Devolución Pago Apartado | |
BusinessSOD | BusinessSOD | Inicio de período |
BusinessEOD | BusinessEOD | Cierre de período |
Anexo loyalty con Promo
Asignación de cupón por aplicación de una promoción
Se genera un LineItem del tipo LoyaltyReward por cada promo que genere cupones como beneficio. Puede haber más de un cupon por promoción.
<!— Una promo otorga un cupón -->
<LineItem>
<SequenceNumber>2</SequenceNumber>
<LoyaltyReward>
<Voucher TypeCode="Coupon">
<SerialNumber>1050010107021</SerialNumber>
<Type>95</Type>
</Voucher>
</LoyaltyReward>
<PromotionID>58dea21f65bb760ba44232d2</PromotionID>
<BenefitID>58dea21f65bb760ba44232d0</BenefitID>
</LineItem>
Elemento
| Descripción |
| Informa los cupones otorgados por Promo como beneficio.
|
| Informa la promoción y beneficio que otorgó el cupón.
|
Redención de cupón para aplicar con promoción
Se genera un LineItem del tipo LoyaltyRedemption por cada cupón que se redima para que aplique alguna promoción. Puede haber más de un cupon por promoción.
<!— Se ingresa un cupón y se redime -->
<LineItem>
<SequenceNumber>5</SequenceNumber>
<LoyaltyRedemption>
<Voucher TypeCode="Coupon">
<SerialNumber>1040013005288</SerialNumber>
<Type>97</Type>
</Voucher>
</LoyaltyRedemption>
</LineItem>
Elemento
| Descripción |
| Informa los cupones redimidos en la venta.
|
Venta/recarga de una tarjeta gift Card con Promo
Pendiente
Traspaso de saldo
<ControlTransaction Version="2.2">
<TypeCode>TransferMonedero</TypeCode>
<SubTypeCode/>
<TypeID>35</TypeID>
</ControlTransaction>
<LockElapsedTime>0</LockElapsedTime>
</Transaction>
<EJ/>
<Audit/>
</PosLog>
Consulta de saldo
<ControlTransaction Version="2.2">
<TypeCode>BalanceMonedero</TypeCode>
<SubTypeCode/>
<TypeID>38</TypeID>
</ControlTransaction>
<LockElapsedTime>0</LockElapsedTime>
</Transaction>
Anexo apartados
Creación de apartado
Los apartados se basan en CustomerOrderControlTransaction. Para mayor detalle, ver los elementos de Transacci ón de Presupuesto
<CustomerOrderControlTransaction Version="2.2">
<TypeCode>Layaway</TypeCode> <!— Tipo de customerOrder, layaway para apartados -->
<SubTypeCode/>
<TypeID>41</TypeID>
<CurrencyCode>$</CurrencyCode>
<Recovered>false</Recovered>
<CustomerOrderVersion/>
<CustomerOrderStateCode>open</CustomerOrderStateCode> <!— estado OPEN -->
<CustomerOrderTypeCode>1</CustomerOrderTypeCode>
<CustomerOrderPromoMapVersion>9</CustomerOrderPromoMapVersion> <!— version de mapa -->
<CustomerOrderActualAvailabilityDate>2017-09-13 23:44:20</CustomerOrderActualAvailabilityDate>
<CustomerOrderPaymentPlanConfigCode>2</CustomerOrderPaymentPlanConfigCode> <!— plan de pagos -->
<CustomerOrderInternalNumber>0001000001000264</CustomerOrderInternalNumber>
<Address/>
<ContactPerson Id="1" Code="0100012345678100">Perez, Juan </ContactPerson>
<AdditionalDeliveryData/>
<ShipmentPrice/>
<DeliveryShift/>
<BaseCurrency>$</BaseCurrency>
<CreationDate>2017-09-13 23:44:20</CreationDate>
<UpdateDate/>
<EstimatedAvailabilityDate>2017-09-20 23:44:54</EstimatedAvailabilityDate>
<RetirementStoreCode>100</RetirementStoreCode> <!— Tienda de creación y retiro de items -->
<LineItem EntryMethod="Keyed"> <!— Producto apartado -->
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>5016</ItemID>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>140.00</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy>JgtsNes-JgtsFiAc</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>15.00</RegularSaleUnitPrice>
<ActualUnitPrice>15.00</ActualUnitPrice>
<ExtendedAmount>15.00</ExtendedAmount>
<IDLocation>DEP1_OS</IDLocation>
…
</LineItem>
<LineItem EntryMethod="Keyed"> <!— Producto apartado -->
<SequenceNumber>2</SequenceNumber>
<Sale>
<ItemID>5013</ItemID>
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>NORM</ItemType>
<UnitCost>80.00</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy>JgtsJue-JgtsHob</MerchandiseHierarchy>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>10.00</RegularSaleUnitPrice>
<ActualUnitPrice>10.00</ActualUnitPrice>
<ExtendedAmount>10.00</ExtendedAmount>
<IDLocation>DEP1_OS</IDLocation>
….
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>3</SequenceNumber>
<Tender TenderType="Peso" TypeCode="Sale"> <!— Pago del anticipo -->
<Amount>2.50</Amount>
<CustomerIDNumber> </CustomerIDNumber>
<ForeignCurrencyID>ARS</ForeignCurrencyID>
<PaymentDate>2017-09-13 23:44:53</PaymentDate>
</Tender>
</LineItem>
<LineItem>
<SequenceNumber>4</SequenceNumber> <!— Plan de pagos -->
<PaymentPlan TypeCode="Sale">
<PlanCode>2</PlanCode>
<InstallmentNumber>1</InstallmentNumber>
<PaymentDueDate>2017-09-13 23:59:59</PaymentDueDate>
<PaymentDate>2017-09-13 23:44:54</PaymentDate>
<Amount>2.50</Amount> <!— Anticipo -->
<PaymentState>conf</PaymentState>
</PaymentPlan>
</LineItem>
<LineItem>
<SequenceNumber>5</SequenceNumber>
<PaymentPlan TypeCode="Sale">
<PlanCode>2</PlanCode>
<InstallmentNumber>2</InstallmentNumber>
<PaymentDueDate>2017-09-28 23:59:59</PaymentDueDate>
<PaymentDate/>
<Amount>4.50</Amount> <!— Cuota 2 -->
<PaymentState>pend</PaymentState>
</PaymentPlan>
</LineItem>
… <!— Cuotas -->
<LineItem>
<SequenceNumber>10</SequenceNumber>
<TotalLine>
<GrossPositiveAmount>25.00</GrossPositiveAmount><!— Total del apartado positivo -->
<GrossNegativeAmount>0.00</GrossNegativeAmount><!— Total del apartado negativo, si hubo anulaciones de items -->
<PaidAmount>2.50</PaidAmount><!— Monto pagado por anticipo -->
<PendingAmount>22.50</PendingAmount><!— Saldo a pagar del apartado -->
</TotalLine>
</LineItem>
<LineItem>
<SequenceNumber>11</SequenceNumber>
<CustomerInformation TypeCode="NA"><!— Datos del cliente -->
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>RegistrationName</Id>
<Value>Perez, Juan </Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
…
</CustomerInformation>
</LineItem>
…
</CustomerOrderControlTransaction>
</Transaction>
<EJ/>
<Audit/>
</PosLog>
Elemento
| Descripción |
POSLog | Informa que es un registro del Transaccional
|
Transaction | Informa que se está registrando una transacción
|
RetailStoreID | Informa la identificación del local
|
WorkstationID | informa la identificación de la Terminal
|
SequenceNumber | informa el número de transacción
|
BusinessDayDate | informa la fecha contable en la cual se registra esta transacción
|
BeginDateTime | informa la fecha y hora de inicio en que se realizó la transacción
|
EndDateTime | informa la fecha y hora de finalización de la transacción
|
OperatorID | informa la identificación del operador que realizó la transacción
|
OriginalTransaction | Informa la transacción original serializada
|
CustomerOrderControlTransaction
| Informa que la transacción es un presupuesto o apartado
|
TypeCode | Informa el tipo de transacción
|
Subtype | Subtipo de transacción
|
TypeID | ID del subtipo de transacción CustomerOrder.
|
42 | Facturacion Apartado |
43 | Cancelacion Apartado |
44 | Pago Apartado |
45 | Devolucion Pago Apartado |
<CurrencyCode>$</CurrencyCode> | Moneda del apartado |
<Recovered>false</Recovered> | Si fue recuperado el apartado |
| Datos del apartado
|
<Address/> | Datos de entrega (se utiliza en pedidos no en presupuestos)
|
LineItem
| Informa una línea de detalle de la transacción
|
SequenceNumber | Identifica cada línea de detalle de la transacción
|
Detalle | Cada elemento LineItem contiene uno y solo un elemento de detalle que depende del tipo de detalle. Vamos a considerar los siguientes:
|
| Plan de pagos, cuotas, monto de cada cuota y estado de la cuota.
|
<TotalLine> | Totales
|
Pago de apartado
<CustomerOrderControlTransaction Version="2.2">
<TypeCode>PayLayaway</TypeCode> <!— Pago de un apartado -->
<SubTypeCode/>
<TypeID>44</TypeID>
<CurrencyCode>$</CurrencyCode>
<Recovered>false</Recovered>
<CustomerOrderVersion/>
<CustomerOrderStateCode>open</CustomerOrderStateCode>
<CustomerOrderTypeCode>1</CustomerOrderTypeCode>
<CustomerOrderPromoMapVersion>9</CustomerOrderPromoMapVersion>
<CustomerOrderActualAvailabilityDate>2017-09-14 24:29:54</CustomerOrderActualAvailabilityDate>
<CustomerOrderPaymentPlanConfigCode>2</CustomerOrderPaymentPlanConfigCode>
<CustomerOrderInternalNumber>0001000001000264</CustomerOrderInternalNumber>
<Address/>
<ContactPerson Id="1" Code="0100012345678100">Perez, Juan </ContactPerson>
<AdditionalDeliveryData/>
<ShipmentPrice/>
<DeliveryShift/>
<BaseCurrency>$</BaseCurrency>
<CreationDate>2017-09-14 24:29:54</CreationDate>
<UpdateDate/>
<EstimatedAvailabilityDate>2017-09-21 24:29:59</EstimatedAvailabilityDate>
<RetirementStoreCode>100</RetirementStoreCode>
<LineItem EntryMethod="SYS">
<SequenceNumber>1</SequenceNumber>
<Sale>
<ItemID>LWPY</ItemID> <!— Artículo de PAGO APARTADO -->
<POSItemID/>
<Associate>
<AssociateID>andrea</AssociateID>
</Associate>
<ItemType>SERV</ItemType>
<UnitCost>0.00</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy/>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>0.00</RegularSaleUnitPrice>
<ActualUnitPrice>4.50</ActualUnitPrice> <!— MONTO DEL PAGO -->
<ExtendedAmount>4.50</ExtendedAmount>
<IDLocation/>
…
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender TenderType="Peso" TypeCode="Sale">
<Amount>4.50</Amount> <!— PAGO EN EFECTIVO -->
<CustomerIDNumber> </CustomerIDNumber>
<ForeignCurrencyID>ARS</ForeignCurrencyID>
<PaymentDate>2017-09-15 24:29:59</PaymentDate>
</Tender>
</LineItem>
<LineItem>
<SequenceNumber>3</SequenceNumber>
<PaymentPlan TypeCode="Sale">
<PlanCode>2</PlanCode>
<InstallmentNumber>1</InstallmentNumber>
<PaymentDueDate/>
<PaymentDate>2017-09-13 23:44:54</PaymentDate>
<Amount>2.50</Amount>
<PaymentState>conf</PaymentState> <!— CUOTA 1, ANTICIPO CONFIRMADA -->
</PaymentPlan>
</LineItem>
<LineItem>
<SequenceNumber>4</SequenceNumber>
<PaymentPlan TypeCode="Sale">
<PlanCode>2</PlanCode>
<InstallmentNumber>2</InstallmentNumber>
<PaymentDueDate/>
<PaymentDate>2017-09-15 24:29:59</PaymentDate>
<Amount>4.50</Amount> <!— CUOTA 2, CONFIRMADA -->
<PaymentState>conf</PaymentState>
</PaymentPlan>
</LineItem>
<LineItem>
<SequenceNumber>5</SequenceNumber>
<PaymentPlan TypeCode="Sale">
<PlanCode>2</PlanCode>
<InstallmentNumber>3</InstallmentNumber>
<PaymentDueDate/>
<PaymentDate/>
<Amount>4.50</Amount>
<PaymentState>pend</PaymentState> <!— CUOTA 3, PENDIENTE -->
</PaymentPlan>
</LineItem>
<LineItem>
…
<TotalLine>
<GrossPositiveAmount>4.50</GrossPositiveAmount>
<GrossNegativeAmount>0.00</GrossNegativeAmount>
<PaidAmount>7.00</PaidAmount> <!— PAGADO ANTICIPO + CUOTA -->
<PendingAmount>18.00</PendingAmount> <!— SALDO PENDIENTE DEL APARTADO -->
</TotalLine>
</LineItem>
<LineItem>
<SequenceNumber>10</SequenceNumber>
<CustomerInformation TypeCode="NA"> <!— Datos del cliente -->
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>RegistrationName</Id>
<Value>Perez, Juan </Value>
<FormatCode>TX</FormatCode>
</LineModifier>
</CustomerInformation>
</LineItem>
…
</LineModifier>
</CustomerInformation>
</LineItem>
</CustomerOrderControlTransaction>
</Transaction>
<EJ/>
<Audit/>
</PosLog>
Devolución de un pago de apartado
<CustomerOrderControlTransaction Version="2.2">
<TypeCode>ReturnPaymentLayaway</TypeCode> <!— DEVOLUCION DE PAGO DE CUOTA -->
<SubTypeCode/>
<TypeID>45</TypeID>
<CurrencyCode>$</CurrencyCode>
<Recovered>false</Recovered>
<CustomerOrderVersion/>
<CustomerOrderStateCode>open</CustomerOrderStateCode>
<CustomerOrderTypeCode>1</CustomerOrderTypeCode>
<CustomerOrderPromoMapVersion>9</CustomerOrderPromoMapVersion>
<CustomerOrderActualAvailabilityDate>2017-09-14 24:38:57</CustomerOrderActualAvailabilityDate>
<CustomerOrderPaymentPlanConfigCode>2</CustomerOrderPaymentPlanConfigCode>
<CustomerOrderInternalNumber>0001000001000264</CustomerOrderInternalNumber>
<Address/>
<ContactPerson Id="1" Code="0100012345678100">Perez, Juan </ContactPerson>
<AdditionalDeliveryData/>
<ShipmentPrice/>
<DeliveryShift/>
<BaseCurrency>$</BaseCurrency>
<CreationDate>2017-09-14 24:38:57</CreationDate>
<UpdateDate/>
<EstimatedAvailabilityDate>2017-09-21 24:39:01</EstimatedAvailabilityDate>
<RetirementStoreCode>100</RetirementStoreCode>
<LineItem EntryMethod="SYS">
<SequenceNumber>1</SequenceNumber>
<Return>
<ItemID>LWPY</ItemID><!— ARTICULO DE DEVOLUCION DE PAGO DE CUOTA -->
<POSItemID/>
<Associate>
<AssociateID/>
</Associate>
<ItemType>SERV</ItemType>
<UnitCost>0.00</UnitCost>
<SerialNumber/>
<MerchandiseHierarchy/>
<Quantity Units="1" UnitOfMeasureCode="u">1</Quantity>
<RegularSaleUnitPrice>0.00</RegularSaleUnitPrice>
<ActualUnitPrice>4.50</ActualUnitPrice>
<ExtendedAmount>4.50</ExtendedAmount> <!— MONTO DE CUOTA DEVUELTA -->
<IDLocation/>
<GiftReceiptFlag/>
…
</Return>
</LineItem>
<LineItem>
<SequenceNumber>2</SequenceNumber>
<Tender TenderType="Peso" TypeCode="Return">
<Amount>4.50</Amount> <!— MONTO DEVUELTO EN EFECTIVO -->
<CustomerIDNumber> </CustomerIDNumber>
<ForeignCurrencyID>ARS</ForeignCurrencyID>
<PaymentDate>2017-09-15 24:39:00</PaymentDate>
</Tender>
</LineItem>
<LineItem>
<SequenceNumber>3</SequenceNumber>
<PaymentPlan TypeCode="Return">
<PlanCode>2</PlanCode>
<InstallmentNumber>1</InstallmentNumber>
<PaymentDueDate/>
<PaymentDate>2017-09-13 23:44:54</PaymentDate>
<Amount>2.50</Amount> <!— CUOTA CONFIRMADA, ANTICIPO -->
<PaymentState>conf</PaymentState>
</PaymentPlan>
</LineItem>
<LineItem>
<SequenceNumber>4</SequenceNumber>
<PaymentPlan TypeCode="Return">
<PlanCode>2</PlanCode>
<InstallmentNumber>2</InstallmentNumber>
<PaymentDueDate/>
<PaymentDate>2017-09-15 24:39:01</PaymentDate>
<Amount>4.50</Amount>
<PaymentState>canc</PaymentState> <!— CUOTA 2 CANCELADA -->
</PaymentPlan>
</LineItem>
<LineItem>
<SequenceNumber>5</SequenceNumber>
<PaymentPlan TypeCode="Return">
<PlanCode>2</PlanCode>
<InstallmentNumber>3</InstallmentNumber>
<PaymentDueDate/>
<PaymentDate/>
<Amount>4.50</Amount>
<PaymentState>pend</PaymentState> <!— CUOTAS PENDIENTES -->
</PaymentPlan>
</LineItem>
<LineItem>
…
</PaymentPlan>
</LineItem>
<LineItem>
<SequenceNumber>9</SequenceNumber>
<TotalLine>
<GrossPositiveAmount>0.00</GrossPositiveAmount>
<GrossNegativeAmount>4.50</GrossNegativeAmount>
<PaidAmount>2.50</PaidAmount> <!— MONTO PAGADO DEL APARTADO -->
<PendingAmount>22.50</PendingAmount> <!— SALDO PENDIENTE DEL APARTADO -->
</TotalLine>
</LineItem>
<LineItem>
<SequenceNumber>10</SequenceNumber>
<CustomerInformation TypeCode="NA"> <!— Datos del cliente -->
<LineModifier>
<SequenceNumber>1</SequenceNumber>
<Id>RegistrationName</Id>
<Value>Perez, Juan </Value>
<FormatCode>TX</FormatCode>
</LineModifier>
…
</CustomerOrderControlTransaction>
</Transaction>
<EJ/>
<Audit/>
</PosLog>
Anexo auditoria y EJ
Auditoría
Se generan TLOGs que permiten dejar registro de procedimientos realizados en el POS o errores de dispositivos. Estos se guardan como auditoria y luego son distribuidos en Bridge Manager tienda para ser informados desde los reportes de auditoria.
Ej: 1-00-1504195240182.xml (el TLOG se genera con el nro de terminal – 00)
<!— Ej : Auditoria de un error con un dispositivo -->
<Audit>
<AuditLine>
<Date>2017-08-31 12:37:14</Date>
<Code/>
<User/>
<Description>INFO</Description>
<Detailed>DEVICE INITIALIZATION SCANNER EMULATOR DEVICE</Detailed>
<Line> CONTEXT END: Properties:: auditException:null _operationId_:auditLogOperation auditData:DEVICE connectionId:7cf428cb-4cc7-4a1c-b566-6c52a8e32a68 auditAddData:DEVICE INITIALIZATION SCANNER EMULATOR DEVICE auditType:INFO terminalCode:1 userName:null auditCode: transactionId:00 storeCode:100 Additional Data:: </Line>
<Terminal>1</Terminal>
<NumberTransaction>0</NumberTransaction>
<Process> </Process>
<SubProcess> </SubProcess>
</AuditLine>
<!— Ej : Auditoria de un procedimiento de error dentro de una venta -->
<Audit>
<AuditLine>
<Date>2017-08-31 13:00:37</Date>
<Code>10145</Code>
<User>andrea</User>
<Description>ERROR OCCURRED</Description>
<Detailed>La fecha original es inv૩da. El formato es DD/MM/AAAA.</Detailed>
<Line> CONTEXT END: Properties:: auditAddData:La fecha original es inv૩da. El formato es DD/MM/AAAA. auditType:ERROR OCCURRED userName:andrea transactionId:00 auditProcess:com.synthesis.bridge.bcore.business.services.impl.RecoverServiceImpl@3201fc14 auditException:com.synthesis.bridge.bcore.operations.exceptions.BcBusinessException: La fecha original es inv૩da. El formato es DD/MM/AAAA. _operationId_:auditLogOperation auditData:EXCEPTION auditSubProcess:findTrxWithoutReference connectionId:7cf428cb-4cc7-4a1c-b566-6c52a8e32a68 terminalCode:1 auditCode:10145 storeCode:100 Additional Data:: </Line>
<Terminal>1</Terminal>
<NumberTransaction>0</NumberTransaction>
<Process>com.synthesis.bridge.bcore.business.services.impl.RecoverServiceImpl@3201fc14</Process>
<SubProcess>findTrxWithoutReference</SubProcess>
</AuditLine>
Electronic Journal (EJ)
El POS va generando TLOGs donde se va registrando lo que se imprimiría en la cinta testigo de la printer, denominado Electronic Journal. Al distribuirse esta información en el Bridge Manager de Tienda, se podrá consultar por dia/terminal desde el menú Monitoreo/Journal electrónico.
Ej: 1-00-1504194000200.xml (el TLOG se genera con el nro de terminal – 00)
<!— Ej : copia de parte de la impresión de una venta -->
<EJ>
<EJLine>
<Date>2017/08/31 12:53:50.113</Date>
<Terminal>1</Terminal>
<Line>SYNTHESIS R.S.
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.116</Date>
<Terminal>1</Terminal>
<Line>31/08/2017 12:53
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.119</Date>
<Terminal>1</Terminal>
<Line>Tienda: 100
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.122</Date>
<Terminal>1</Terminal>
<Line>Vendedor: Andrea
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.125</Date>
<Terminal>1</Terminal>
<Line>Terminal/Trx.: 1/9
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.128</Date>
<Terminal>1</Terminal>
<Line>TICKET DE VENTA
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.153</Date>
<Terminal>1</Terminal>
<Line>Descripcion Cantidad Precio
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:50.17</Date>
<Terminal>1</Terminal>
<Line>Sony Home Theater 1 200.00
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:54.374</Date>
<Terminal>1</Terminal>
<Line>Desc.(%20): 40.00
</Line>
</EJLine>
<EJLine>
<Date>2017/08/31 12:53:58.334</Date>
<Terminal>1</Terminal>
<Line>Game FIFA 14 for PS3 1 50.00
</Line>
</EJLine>
</EJ>
<Audit/>
</PosLog>