BRIDGE API - Rabbit - Exportación de una transacción de customer



© 2024 Napse. Todos los derechos reservados.

REVISIONES
FechaVersiónDescripciónAutor

 

1.1Se agrega detalle de campos

 

1.2Se agregan las registraciones fiscales del cliente (cuando es empresa/organización)

 

1.3Se agrega el campo deliveryCode en el partyContactMethod

 

1.4Se agregan notas sobre validaciones realizadas por las cuales pudiera no exportarse un cliente editado en BM



CONTENIDO




Introducción

Cliente - NewCustomer

Este servicio posee la descripción de la transacción que es generada ante la creación o actualización de un cliente.

Se exporta a colas RabbitMQ y lo que se postea, posee formato JSON.


Configuración 

  • La habilitación del envío de este tipo de transacción se podrán configurar desde Configuración/colas de exportación


Monitor de exportaciones


Se adjuntan al post, con un ejemplo de transacciones en formato JSON a modo de referencia

#Descripción

JSON ejemplo

1
  • Cliente persona física
    • Datos de contacto

JSON de ejemplo

JSON ejemplo de cliente persona
{
    "_id": "650b2be9ee90c60f161b2fab",
    "lastName": "Molina",
    "creditDayTotalAmount": {
        "$numberDecimal": "0"
    },
    "code": "98653212",
    "telephoneNumber": "",
    "billExpirationDays": 0,
    "creditShipNotBilledAmount": {
        "$numberDecimal": "0"
    },
    "origin": "BRIDGE",
    "creditDayLimitAmount": {
        "$numberDecimal": "0"
    },
    "identificationType": "5ea556595604c8593c607f18",
    "disabled": false,
    "creditAllowed": false,
    "genderType": "F",
    "accumulatedFinalConsumer": {
        "$numberDecimal": "0"
    },
    "identifier": "98653212",
    "isPrePaidParty": false,
    "prepaidDisabled": false,
    "isCreditParty": false,
    "birthCountryCode": "ARG",
    "store": "1",
    "version": 1,
    "creditBillAvailable": false,
    "prepaidBalanceAmount": {
        "$numberDecimal": "0"
    },
    "typeCode": "PRS",
    "creditBilledNotPaidAmount": {
        "$numberDecimal": "0"
    },
    "creditLimitAmount": {
        "$numberDecimal": "0"
    },
    "habeasDataOk": false,
    "firstName": "Juana ",
    "creditBalanceAmount": {
        "$numberDecimal": "0"
    },
    "creditTransactionLimitAmount": {
        "$numberDecimal": "0"
    },
    "creditDisabled": false,
    "_class": "Person",
    "affiliate": false,
    "billPeriod": "7",
    "partyRoleAssignments": [
        {
            "_id": "5ea556595604c8593c607f11",
            "code": "1",
            "name": "Cliente",
            "description": "Denota un cliente de la empresa",
            "id": "5ea556595604c8593c607f11"
        }
    ],
    "apiProcessed": true,
    "createdAt": "2023-09-20T14:35:04",
    "exemptFlag": false,
    "fleetSalesAllowed": false,
    "reBAAllowed": false,
    "updatedAt": "2023-09-20T14:35:04",
    "docTypeCode": 1,
    "contactMethods": [
        {
            "_id": "650b2be9ee90c60f161b2fac",
            "code": "98653212_Telefonico",
            "address": {
                "country": "5ea556565604c8593c602e7a",
                "secondLine": "",
                "thirdLine": "",
                "betweenStreets": "",
                "postalCode": "",
                "firstLine": "Argentina 111",
                "city": "5eda80976826f278af2e0e43",
                "state": "5ea556565604c8593c602e8c",
                "fourthLine": ""
            },
            "erpCode": "",
            "disabled": false,
            "principalForDelivery": false,
             "deliveryCode": "2233",
             "expirationDate": "9999-12-31T14:21:12",
            "version": 1,
            "partyCode": "98653212",
            "name": "Telefonico",
            "effectiveDate": "2023-09-20T14:29:12",
            "party": "650b2be9ee90c60f161b2fab",
            "principalForBilling": false,
            "erpStatus": "ok",
            "updatedAt": "2023-09-20T14:36:58",
            "cityCode": "ENT_0136",
            "stateCode": "ENT",
            "countryCode": "ARG"
        }
    ],
    "partyIdentificationTypeCode": "1",
    "partyRoleAssigmentsCodes": [
        "1"
    ]
}


NO se exportará el cliente en los siguientes escenarios:

  • Si es un cliente del tipo persona y no tiene métodos de contacto asociados
  • Si es un cliente del tipo organización o empresa y no tiene asociado método de contacto y/o datos completos de registración fiscal (taxRegistrationTaxTypes) 
  • En estos casos, en el log se deja el motivo registrado
    • Ejemplo:





Detalle de los campos de un newCustomer

Campo

Tipo

Descripción

Ejemplo

_id

string

Código interno de bridge para identificar la transacción


    _class

lista

Datos personales, class PERSON


apiProcessed

boolean

Indica si el cliente fue procesado por api


birthCountryCode

string

País de Nacimiento


birthDayNumber

number

Día de Nacimiento


birthMonthNumber

Number

Mes de Nacimiento


birthYearNumber

Number

Año de Nacimiento


code

string

Código interno generado por Bridge


disabled

Boolean

Indica el estado del cliente, las opciones son habilitado o deshabilitado


email

string

Correo electrónico


exemptFlag

boolean

si es o no exento


firstName

string

Nombre


genderType

string

Tipo de genero


id

string

Identificador interno de bridge


identificationIssueDate

date

Indica la fecha en que se dio de alta el cliente o la Fecha de emisión de la identificación


identificationType

string

Indica el tipo de identificación “RUT”


identifier

string

Número de identificación


lastName

String

Indica el apellido del cliente


maritalStatusCode

string

Indica el estado civil del cliente


partyActivity

string

No sé utilizan


partyCrParty

string

No sé utilizan


partyCrProfile

string

No sé utilizan


partyCrSegment

String

No sé utilizan


partyCrWorkActivity

String

No sé utilizan


partyRoleAssignments

list

Asignación del tipo de cliente (cliente, empleado, etc.)


_id

string

Uso interno de Bridge


code

string

código del tipo de cliente asociado


name

string

Nombre del tipo de cliente asociado


description

string

Descripción del tipo de cliente asociado


typeCode

string

Define el tipo de cliente (persona PRS o comercial OGN)


version

number

Uso interno de Bridge


createdAt

Date

Fecha de alta del cliente


updatedAt

Date

Fecha de actualización del cliente


contactMethods

Lista

Indica en detalle los datos de contacto del cliente


Address {

Lista

Detalle de la dirección de residencia


firstLine

string

Primera línea de la dirección


postalCode

string

Código postal


state

string

Estado o Provincia


secondLine

string

Segunda línea que permite adicionar datos a la dirección


thirdLine

string

Tercera línea que permite adicionar datos a la dirección


betweenStreets

string

Permite agregar datos adicionales de ubicación como entre calles.


city

string

Ciudad


Country

}

string

País


code

string

Código interno compuesto por código interno generado por Bridge (Code_Name)


disabled

boolean

Indica el estado del cliente, las opciones son habilitado o deshabilitado


emailAddress

string

Dirección de correo electrónico


id

string

Identificador interno de bridge


name

string

Nombre y apellido del cliente concatenados (firstName lastName)


party

string

Tipo de cliente


partyCode

string

código tipo de cliente


principalForBilling

boolean

Marca la dirección como opción principal para facturación


principalForDelivery

boolean

Define la dirección como opción principal para envío


deliveryCode

string

Código de reparto o entrega


Telephone {


Define todos los campos que componen el número de teléfono


countryCode

number

Código del país


areaCode

number

Código de área de la ciudad


telephoneNumber 

number

Numero de teléfono


version

number

Uso interno de Bridge


cityCode

Number

Código de la ciudad


stateCode

Number

Código del estado o provincia


countryCode

string

Código del país


partyIdentificationTypeCode

sting

Código de tipo de identificación


partyRoleAssignmentsCodes

List

Indicia el o los códigos del tipo de cliente (ya informado dentro de partyRoleAssignments.code)


taxRegistrationTaxTypes (por cada registro de condición impositiva se informarán los siguientes campos, en el caso de Argentina será uno por el IVA y uno o más por Ingresos Brutos o tasas municipales de corresponder)


_id

string

Código interno de bridge para identificar el registro de la condición impositiva 


partyCodestringCódigo del cliente
codestringCódigo interno generado por BRIDGE para identificar la registración fiscal con el cliente
"flagInhibited"booleanIndicador de que el cliente se encuentra inhibido o no
"inscExpirationDate"
           
dateFecha de vencimiento ó expiración de la registración fiscal o condición impositiva
"inscEffectiveDate"
        
dateFecha de inicio de vigencia de la registración fiscal o condición impositiva
 "number"stringNro de identificación fiscal (CUIT, Ingresos Brutos, RUT, etc)
 "jurisdictionAndType"Lista

 "jurisdictionAndType", contiene el detalle de la combinación de categoría impositiva + jurisdicción sobre la que aplica + el tipo de impuesto

  • taxCategory (ver detalle debajo)
  • jurisdiction (ver detalle debajo)
  • type (ver detalle debajo)
  • versión: Uso interno de BRIDGE (versión asignada por la base de datos al registro) 
  • id: Uso interno de BRIDGE (id del registro en la base de datos) 

 "taxCategory"

Categoría impositiva

  • id: Uso interno de BRIDGE (id del registro en la base de datos)
  • ref: Uso interno de BRIDGE 
  • version: Uso interno de BRIDGE (versión asignada por la base de datos al registro) 
  • taxCategoryCode: código de la categoría impositiva (ej: RI: responsable inscripto, CF: consumidor final, CM: convenio multilateral, etc)
  • taxCategoryName: nombre de la categoría impositiva (ej: IVA Responsable inscripto, Consumidor final, etc)
  • code: código de categoría impositiva (opcional) 
  • name: nombre de la categoría impositiva (opcional) 
 "taxCategory": {
                    "_id": "5ea556595604c8593c607ec8",
                    "ref": 9,
                    "taxCategoryCode": "CM",
                    "taxCategoryName": "Conv. Multilateral",
                    "version": 1,
                    "code": "IBBCM",
                    "id": "5ea556595604c8593c607ec8",
                    "name": "Conv. Multilateral"
                },
  "jurisdiction"

Jurisdicción de la condición impositiva (país, estado/provincia, ciudad/municipio)

  • id: Uso interno de BRIDGE (id del registro en la base de datos)
  • version: Uso interno de BRIDGE (versión asignada por la base de datos al registro) 
  • registerAllowed: indica si la jurisdicción utiliza o no padrones (caso de Argentina para las alícuotas de Ingresos Brutos) 
  • taxJurisdictionCode: código de la jurisdicción 
  • idRsJurisdiction: Uso interno de BRIDGE
  • name: nombre de la jurisdicción
  • authority: Uso interno de BRIDGE
  • type: Uso interno de BRIDGE
  • registerHeaderIncluded
  "jurisdiction": {
                    "_id": "5eeb9c234ea081c8c0dc3f89",
                    "registerAllowed": false,
                    "taxJurisdictionCode": "ARG",
                    "idRsJurisdiction": "5ea556565604c8593c602e7a",
                    "name": "Argentina",
                    "authority": "5ea5565c5604c8593c608396",
                    "type": "5ea5565a5604c8593c607f3a",
                    "version": 0,
                    "id": "5eeb9c234ea081c8c0dc3f89",
                    "registerHeaderIncluded": false
                },
  "type"

Tipo de impuesto (MNC: tasa municipal, IVA: impuesto al valor agregado, IB: ingresos brutos)

  • id: Uso interno de BRIDGE (id del registro en la base de datos)
  • version: Uso interno de BRIDGE (versión asignada por la base de datos al registro) 
  • code: código del tipo de impuesto
  • name: nombre del tipo de impuesto (TASA, PERIVA, IIBB)    
 "type": {
                    "_id": "5ea5565c5604c8593c6081e2",
                    "ref": 3,
                    "code": "MNC",
                    "name": "TASA",
                    "version": 0
                },
"party"          stringUso interno de BRIDGE: Id del registro de la base de datos
"name"stringUso interno de BRIDGE: Nombre que le asigna internamente BRIDGE al registro para identificar la categoría fiscal con el cliente 
"unifiedFactor"numberFactor unificado de la condición fiscal (en Argentina se utiliza para Ingresos Brutos y la posibilidad de eximición del impuesto según definición de reglas impositivas) 
"version"       stringUso interno de BRIDGE: nro de versión que asigna la base de datos al registro
"id"stringUso interno de BRIDGE: id de la base de datos


  • Sem rótulos