...
Informações | ||
---|---|---|
| ||
|
JSON
...
ejemplo con cliente persona
Bloco de código | ||
---|---|---|
| ||
{ "externalNumber": "00001", "notes": "", "creationDate": "2020-07-01 08:51:00", "channelCode": "web", "currencyCode": "peso", "netAmount": 3000, "manualDiscountAmount": 0, "orderTypeCode": "web", "isPaid": false, "party": { "code": "0243145377", "firstName": "Martin", "lastName": "Malievac", "email": "[email protected]", "typeCode": "Person", "identificationType": 1, "identifier": "24314537", "birthYearNumber": 1975, "birthMonthNumber": 1, "birthDayNumber": 3, "partyContactMethods": [ { "name": "Personal", "address": { "firstLine": "Almafuerte 4430", "secondLine": "Puerta 10, Piso 2", "cityCode": "MUN", "stateCode": "BsAs", "countryCode": "AR", "postalCode": "1605" }, "emailAddress": "[email protected]", "telephone": { "countryCode": "54", "areaCode": "11", "telephoneNumber": "36637487", "extensionNumber": "-" }, "principalForDelivery": true, "principalForBilling": true }, { "name": "Trabajo", "address": { "firstLine": "Venezuela 3158", "secondLine": "Piso 6. Interno 066", "cityCode": "VMA", "stateCode": "BsAs", "countryCode": "AR", "postalCode": "1603" }, "emailAddress": "[email protected]", "telephone": { "countryCode": "54", "areaCode": "11", "telephoneNumber": "41100000", "extensionNumber": "066" }, "principalForDelivery": false, "principalForBilling": false } ] }, "detail": [ { "itemCode": "ABC001", "description": "SAMSUNG S10", "storeCode": "UNICENTER", "locationCode": "ventas2", "orderedQty": 1, "unitPrice": 1000, "netAmount": 1000, "deliveryOrPickup": "delivery", "deliveryCompany": "Andreani", "packageId": "12345670A", "pickupLocationCode": "-", "requiredDate": "2020-07-10 00:00:00", "partyContactMethodName": "Personal", "serializedUnits": [ { "serialNumber": "123456789", "importDocNumber": "12345", "customsNumber": "123455", "customsDate": "2020-07-10 00:00:00", "unitCount": 1 }, { "serialNumber": "22222222", "importDocNumber": "33333", "customsNumber": "44444", "customsDate": "2020-07-10 00:00:00", "unitCount": 1 }, ], "priceModifiers": [ { "percent": 5, "amount": 50, "reasonText": "Segunda Unidad" } ] }, { "itemCode": "S20", "description": "SAMSUNG S20", "storeCode": "WEB", "locationCode": "ventas2", "orderedQty": 2, "unitPrice": 2000, "netAmount": 2000, "deliveryOrPickup": "pickup", "deliveryCompany": "-", "pickupLocationCode": "Unicenter", "requiredDate": "2020-07-10 00:00:00", "pickupInformation": "Retira por la tarde, luego de las 6." } ], "transaction": { "id": "5f19d8989eefbe5418406887", "storeCode": "unicenter", "terminalCode": "20", "operatorCode": "martinm", "trxNumber": 4, "trxDate": "2020-07-10 00:00:00" }, "payments": [ { "tender": "peso", "amount": 2000 }, { "tender": "VI", "amount": 2950, "planDescriptor": "9 meses sin intereses", "sellerName": "MIRGOR", "authorizationCode": "1", "couponNumber": "1", "lotNumber": "1", "installments": "9", "referenceNumber": "1" } ] } |
...
Importante: los campos que poseen este ícono (ver BRIDGE API - REST - Consulta de Maestros: https://share.linx.com.br/x/D5d8Cg)
, son valores tipificados que deben respetar los valores expuestos por BRIDGE en sus serviciosCampo | Tipo | Descripción | Requerido | Ejemplos | Validación (código) | |
---|---|---|---|---|---|---|
externalNumber | String | Código de la orden del originante | SI | 000001 | 991: el código de orden es requerido. 996: Ya existe el código de orden originante [Código] para el canal [Código de Canal] | |
notes | String | Comentarios sobre la orden | NO | Enviar |
por la tarde | ||||||
creationDate | String | Fecha de creación | SI | 2020-07-01 08:51:00 Formato: yyyy-MM-dd HH:mm:ss | 992: la fecha de creación es requerida. | |
channelCode | String | Canal de Origen | NO | magento: este código será asignado por Napse de acuerdo al canal. ver servicio channel/all | 993: el canal de origen es requerido. | |
currencyCode | String | Moneda | SI | peso ver servicio currency/all | 994: la moneda es requerida. | |
netAmount: | Number | Monto final del pedido, incluyendo el costo de entrega, menos los descuentos. | SI | 1000 | 995: el monto final del pedido es requerido. | |
manualDiscountAmount | Number | Importe de descuentos a la transacción | NO | Informar 0 si no existe ninguno | ||
orderTypeCode | String |
Código del tipo de orden | NO | Por default: 'web' |
Tipos posibles: |
|
ver servicio orderType/all | ||||||
isPaid | Boolean | Indicador de cobrado | NO | |||
orderReference (orden de referencia). Sólo si la orden es de devolución (orderTypeCode == "return") |
internalNumberOriginal | String | Código Interno de la |
Orden |
NO |
bridge0000000299 |
997: Debe informar la orden de referencia
999: Número de orden original no válido (si viene informado y no existe en la collection Order) | ||||||
processStock | Boolean | Indica si un pedido de devolución mueve stock o no | No (por defecto es true) | true o false | ||
party (cliente asociado a la transacción). Requerido | ||||||
code | String | Código del cliente (BRIDGE genera el código con el tipo de documento concantenado con el nro de documento como una de las opciones) Ej: "code" : "0330505817423", (para un cliente CUIT=03, nro 30505817423) | SI | 024314537 | 997: el código del cliente es requerido. | |
firstName | String | Nombre del Cliente | SI (solo si es typeCode = 'Person') | Martin | 997: el nombre de la persona o empresa, es requerido. | |
lastName | String | Apellido del cliente | SI (solo si es typeCode = 'Person') | Malievac | 997: el apellido es requerido para clientes de tipo "Person" | |
name | String | Razón social | SI (sólo si es typeCode = 'Organization') | IBM | ||
String | Correo del cliente | SI | [email protected] | 997: el correo electrónico es requerido. | ||
typeCode | String | Tipo de cliente (persona física o jurídica/empresa) | NO (default: 'Person') | Valores posibles:
| Error: “El campo party.typeCode debe coincidir con Person u Organization” | |
identificationType | Number | Tipo de documento | SI |
Valores posibles: 1: DNI |
CUIT (sólo para Organization) |
CUIL ver servicio partyIdentificationType/all | 997: el tipo de identificación es requerido. | |||||
identifier | String | Número de documento o identificación NOTA: en el caso de CUIT o CUIL informar sin guiones (ej: 30505817423) | SI | 24314537 | 997: el número de identificación es requerido. | |
birthYearNumber | Number | Año de nacimiento | NO | 1975 | ||
birthMonthNumber | Number | Mes de nacimiento | NO | 3 | ||
birthDayNumber | Number | Día de nacimiento | NO | 1 | ||
partyContactMethods (direcciones del cliente). Requerido | ||||||
name | String | Nombre del método de contacto | SI | Personal, Trabajo, etc. Este dato debe ser único, en caso de encontrarse repetido dentro de la lista, se informará: "No puede realizar un pedido con dos métodos de contacto con el mismo nombre" | 1002: el nombre del método de contacto es requerido. | |
address.firstLine | String | Calle y número | SI | Almafuerte 1000 | 1003: la dirección es requerida. | |
address.secondLine | String | Otra info | NO | Piso 10, Puerta 12 | ||
address.cityCode | String | Ciudad | SI | MUN. Importante: código del listado de ciudades existentes, ver servicio city/all | 1004: la ciudad es requerida. | |
address.stateCode | String | Provincia | SI | BsAs. Importante: código del listado de provincias existentes, ver servicio state/all | 1005: la provincia es requerida. | |
address.countryCode | String | Pais | SI | ARG. Importante: código del listado de países existentes, ver servicio country/all | 1006: el país es requerido. | |
emailAddress | String | Email asociado a ese método de contacto | SI | Se puede poner el principal si no es diferente | 1007: el correo electrónico en el método de contacto, es requerido. | |
telephone.countryCode | String | código de País | NO | 54 | 1008: el código de país del teléfono es requerido. | |
telephone.areaCode | String | código de |
área | NO | 11 | 1009: el código de área del teléfono es requerido. | |||
telephone.telephoneNumber | String | número de teléfono | SI | 36637777 | 1010: el número de teléfono es requerido. | |
extensionNumber | String | extensión | NO | 066 | ||
principalForDelivery | Boolean | NO | Opcional: true/false. En caso de enviar más de una dirección 'marcada' para delivery se va a tomar una sola. Idem para la dirección de facturación. | |||
principalForBilling | Boolean | NO | Opcional: true/false. En caso de enviar más de una dirección 'marcada' para delivery se va a tomar una sola. Idem para la dirección de facturación. |
Requerido sólo si se envía lista de series
trxDate
- En el caso de MercadoPago, aqui se informa el id de pago.
Respuesta del servicio:
Bloco de código |
---|
{
"ack": 0,
"message": "-",
"internalNumber": "0000001"
} |
- ack es el código de respuesta, en caso de ser un error, mirar tabla a continuación.
- message: descripción del error en caso de existir.
- internalNumber: en caso de haberse creado con éxito, el número de orden asignado por Bridge.
...
EJEMPLO de JSON: COMPRA EN LINEA Y RETIRO EN TIENDA (buyOnlinePickupInStore)
Expandir |
---|
Escenario de un pedido para: COMPRA EN LINEA Y RETIRO EN TIENDA (buyOnlinePickupInStore) { |
EJEMPLO de JSON: COMPRA EN LINEA Y ENVIO A DOMICILIO (buyOnlineDeliveryFromDigital)
...
Escenario de un pedido para: COMPRA EN LINEA Y ENVIO A DOMICILIO (buyOnlineDeliveryFromDigital)
...
taxRegistrations (Datos fiscales, sólo requerido para un cliente del tipo "Organization". En el caso de Argentina se espera que se informen uno para la condición ante el IVA y de aplicar el de Ingresos Brutos, caso contrario no se podrá calcular percepciones) En el caso de otros países se debe encontrar configurado como Cliente impuestos - impuestos Ibb son requeridos = no (Configuración/sistema/tienda/clientes) cuando se integra con Bridge | ||||||
aliqEffectiveDate | Date | Fecha de vigencia desde para la alícuota de IB de la jurisdicción informada (esto es lo que se considera como información de padrón del IB) Sino no informar | NO | 2020-07-01 08:51:00 Formato: yyyy-MM-dd HH:mm:ss | ||
aliqExpirationDate | Date | Fecha de vigencia desde para la alícuota de IB de la jurisdicción informada (esto es lo que se considera como información de padrón del IB) Sino no informar | NO | 2020-07-31 08:51:00 Formato: yyyy-MM-dd HH:mm:ss | ||
aliquot | Number | Alícuota de IB de la jurisdicción informada (esto es lo que se considera como información de padrón del IB) Sino no informar | NO | 4.00 | ||
inscEffectiveDate | Date | Fecha de inicio de vigencia de la condición fiscal informada NOTA: considerar que BRIDGE valida la vigencia en la facturación | SI | 2020-07-01 08:51:00 Formato: yyyy-MM-dd HH:mm:ss | ||
inscExpirationDate | Date | Fecha de fin de vigencia de la condición fiscal informada NOTA: considerar que BRIDGE valida la vigencia en la facturación | SI | 2030-07-01 08:51:00 Formato: yyyy-MM-dd HH:mm:ss | ||
taxJurisdictionCode | String | Código de la jurisdicción | SI | ver servicio taxJurisdiction/all | ||
taxTypeCode | String | Código del tipo de impuesto | SI | Valores posibles:
| ||
taxCategoryCode | String | Código de la categoría impositiva (de IVA o de IB) | SI | ver servicio taxJurisdictionTaxType/all | ||
name | String | Nombre de la razón social y tipo de impuesto (es descriptivo del registro) | SI | IBM - IVA | ||
number | String | Número de la condición fiscal informada (CUIT o Nro de Ingresos Brutos para ARG) | SI | 30663205621 | ||
detail (Detalle del pedido). Debe haber al menos | ||||||
itemCode | String | SKU del producto | SI | SAM01 ver servicio item/all o /item/[código] | 1011: el código del producto es requerido. | |
storeCode | String | Código de tienda desde donde saldrá el stock. | SI | UNICENTER ver servicio store/all | 1012: el código de tienda del stock es requerido. | |
locationCode | String | Código de depósito desde donde saldrá el stock | NO | VENTAS2. Se toma el código erp. ver servicio location/all | Si no se informa, toma el default del ítem. | |
description | String | Descripción del producto | SI | Samsung Galaxy S2 | 1013: la descripción del producto es requerida. | |
orderedQty | Number | Cantidad pedida | SI | 1 | 1014: la cantidad pedida es obligatoria. | |
unitPrice | Number | Precio unitario | SI | 1000 | 1015: el precio unitario es requerido. | |
deliveryOrPickup | String | Si la linea será con retiro en tienda o envío | SI | delivery o pickup | 1016: es requerido informar si la línea es para delivery o retiro. | |
deliveryCompany | String | Codigo de la compañía que realizará el envío | SI (si el método es delivery) | oca ver servicio orderDeliveryCompany/all | ||
packageId | String | Código del paquete de delivery (este código es el que se utilizará para asociar los datos del shipping) | SI (si el método es delivery) | 01 | ||
pickupLocationCode | String | Código de la locación en donde retirará | SI (si eligió la opción pickup) | UNICENTER. El código debe estar estipulado. ver servicio orderPickupLocation/all | 1017: el código del punto de retiro es requerido. | |
pickupInformation | String | Descripción de quien hará el retiro | Si, si eligió la opción pickup | Juan Perez retirará, teléfono: XXXXX | 1018: si eligió la opción de retiro, indicar los datos de la persona que hará el retiro. | |
requiredDate | String | Fecha de envío requerida o de retiro en tienda | NO | Formato: yyyy-MM-dd HH:mm:ss | ||
partyContactMethodName | String | Dirección de envío del cliente | SI (si eligió como opción delivery) | Personal, debe existir entre una de las direcciones informadas para el cliente | 1019: el nombre de la dirección de envío al cliente es inválido. | |
serializedUnits: en caso de que BRIDGE no realice el surtido del pedido (ej: MELI Fulfillment), se detallan los números de serie ó si se realizó una venta en tienda física (POS) con envío a domicilio y ya fueron indicados los nro de series | ||||||
SerialNumber | String | Nro de serie del item | SI | Requerido sólo si se envía lista de series | ||
importDocNumber | String | Nro de despacho | NO | |||
customsNumber | String | Aduana | NO | |||
customsDate | String | Fecha de despacho | NO | |||
unitCount | Number | Cantidad (para informar items con nro de serie es cantidad = 1) | SI | Requerido sólo si se envía lista de series | ||
transaction: este campo se usa en el caso de que la transacción haya sido facturada en bridge, no se usa en caso de que la orden venga de canales externos. | ||||||
id | String | El ID de mongodb de la transacción | SI | |||
storeCode | String | El código de tienda BRIDGE | SI | |||
terminalCode | String | El código de terminal BRIDGE | SI | |||
operatorCode | String | El código de operador BRIDGE | SI | |||
trxNumber | Number | El número de transacción BRIDGE | SI | |||
trxDate | Date | La fecha de la transacción BRIDGE | SI | Formato: yyyy-MM-dd HH:mm:ss | ||
retail.priceModifiers : descuentos otorgados a los productos, esto se encuentra dentro de la colección detail | ||||||
percent | Number | Porcentaje de descuento | SI (si es informada la línea) | 5 | 1020: si informa un descuento, debe informar el porcentaje. | |
amount | Number | Monto de descuento | SI (si es informada la línea) | 1000 | 1021: si informa un descuento, debe informar el monto. | |
reasonText | String | Razón del descuento | SI | Oferta del día | 1022: si informa descuento, debe informar la razón. | |
payments (pagos asociados al pedido) | ||||||
tender | String | Código del medio de pago | SI | peso. Importante: ver servicio tender/all para los códigos de pago permitidos. | 1022: debe informar un medio de pago válido. | |
amount: | Number | Monto del pago | SI | 1000 | 1022: debe informar el monto del pago. | |
planDescriptor | String | Descripción del plan de pagos elegido | SI (para pagos con tarjeta) | 9 meses sin intereses | 1023: debe informar el plan de pagos. | |
sellerName | String | Nombre de la entidad | SI (para pagos con tarjeta) | Mirgor | 1024: debe informar el nombre del merchant. | |
authorizationCode | String | Codigo de autorización de la tarjeta | SI (para pagos con tarjeta) |
| 1025: debe informar el código de autorización de la tarjeta. | |
couponNumber | String | Número de cupón | SI (para pagos con tarjeta) | 1 | 1026: debe informar el número de cupón | |
lotNumber | String | Número de Lote | SI (para pagos con tarjeta) | 1 | 1027: debe informar número de lote. | |
installments | String | Cuotas | SI (para pagos con tarjeta) | 9 | 1028: debe informar la cantidad de cuotas. | |
referenceNumber | String | Referencia de la tarjeta | SI (para pagos con tarjeta) | 44444444, en el caso de MercadoPago, allí va el id de la cuenta. | 1029: debe informar código de referencia de la tarjeta. |
Respuesta del servicio:
Bloco de código |
---|
{
"ack": 0,
"message": "-",
"internalNumber": "0000001"
} |
- ack es el código de respuesta, en caso de ser un error, mirar tabla a continuación.
- message: descripción del error en caso de existir.
- internalNumber: en caso de haberse creado con éxito, el número de orden asignado por Bridge.
Código de Error | Descripción |
---|---|
0 | El pedido ha ingresado con éxito. |
900 | El pedido no posee stock suficiente en la/s tienda/s para ser surtido. |
901 | Debe informar un cliente. |
902 | Debe informar para el cliente, al menos una dirección de envío. |
903 | Debe informar al menos un producto en el pedido. |
904 | La sumatoria de los pagos, debe ser igual al monto del pedido. |
905 | No puede realizar un pedido que sea surtido de diferentes tiendas. |
9999 | Error desconocido |
EJEMPLO de JSON: CLIENTE ORGANIZACION/EMPRESA
Para poder recibir un pedido con un cliente organización o empresa se debe considerar el envío del party con sus datos fiscales. Se adjunta un ejemplo
Expandir |
---|
{ |
EJEMPLO de JSON: COMPRA EN LINEA Y RETIRO EN TIENDA (buyOnlinePickupInStore)
Expandir |
---|
Escenario de un pedido para: COMPRA EN LINEA Y RETIRO EN TIENDA (buyOnlinePickupInStore) { |
EJEMPLO de JSON: COMPRA EN LINEA Y ENVIO A DOMICILIO (buyOnlineDeliveryFromDigital)
Expandir |
---|
Escenario de un pedido para: COMPRA EN LINEA Y ENVIO A DOMICILIO (buyOnlineDeliveryFromDigital) { |
EJEMPLO de JSON: DEVOLUCION (orderType: return, con referencia a Order original y sin movimiento de stock)
Expandir |
---|
{ "externalNumber":"11082021_18", "notes":"Pedido de Devolución", "creationDate":"2020-07-01 08:51:00", "currencyCode":"ARS", "netAmount":6000, "orderTypeCode":"return", "orderReference":{ "internalNumberOriginal":"bridge0000000299", "processStock":false }, "channelCode":"0003", "isPaid":true, "party":{ "code":"0123456783", "firstName":"Pipi3", "lastName":"Romagnoli2", "email":"[email protected]", "typeCode":"Person", "identificationType":1, "identifier":"25135491", "birthYearNumber":1976, "birthMonthNumber":2, "birthDayNumber":4, "partyContactMethods":[ { "name":"Personal", "address":{ "firstLine":"Pico 21303", "secondLine":"Puerta 1, Piso 4", "cityCode":"BSAS_194", "stateCode":"BSAS", "countryCode":"ARG", "postalCode":"1629" }, "emailAddress":"[email protected]", "telephone":{ "countryCode":"54", "areaCode":"11", "telephoneNumber":"47911132", "extensionNumber":"-" }, "principalForDelivery":true, "principalForBilling":true }, { "name":"Trabajo", "address":{ "firstLine":"Venezuela 3158", "secondLine":"Piso 6. Interno 066", "cityCode":"BSAS_194", "stateCode":"BSAS", "countryCode":"ARG", "postalCode":"1603" }, "emailAddress":"[email protected]", "telephone":{ "countryCode":"54", "areaCode":"11", "telephoneNumber":"41100000", "extensionNumber":"067" }, "principalForDelivery":true, "principalForBilling":true } ] }, "detail":[ { "itemCode":"FUNDAGUS4", "storeCode":"1", "location":"7391", "description":"FUNDA GUS 4", "orderedQty":1, "unitPrice":3000, "deliveryOrPickup":"pickup", "deliveryCompany":"", "pickupLocationCode":"1", "pickupInformation":"informacion", "requiredDate":"2020-07-10 00:00:00", "partyContactMethodName":"Personal", "packageId":"22", "priceModifiers":[ { "percent":5, "amount":0, "reasonText":"Segunda Unidad" } ] }, { "itemCode":"FUNDAGUS4", "storeCode":"1", "location":"7391", "description":"FUNDA GUS 4", "orderedQty":1, "unitPrice":3000, "deliveryOrPickup":"pickup", "deliveryCompany":"Andreani", "pickupLocationCode":"1", "pickupInformation":"informacion", "requiredDate":"2020-07-10 00:00:00", "partyContactMethodName":"Personal", "packageId":"23" } ], "payments":[ { "tender":"VI", "amount":6000, "planDescriptor":"9 meses sin intereses", "sellerName":"MIRGOR", "authorizationCode":"1", "couponNumber":"1", "lotNumber":"1", "installments":"9", "referenceNumber":"1" } ] } |