Pedidos Web

Generación y obtención de pedidos web para la tienda en línea de Bsale (Checkout).

Estructura JSON

Al realizar una petición HTTP, el servicio retornara un JSON con la siguiente estructura:

{

"code": "200",

"data": {

"id": 1,

"token": "1c659e3ee5ba6ad93b8b5eadb9921ae4b0e76e76",

"clientName": "Horacio",

"clientLastName": "Hernandez",

"clientEmail": "hh@gmail.com",

"clientPhone": "+8890000001",

"cartId": 1,

"cartDetails": [

"https://api.bsale.io/v1/cart/1/detail.json"

],

"ptId": 1,

"createAt": 1482924586,

"shippingCost": 0.0,

"isMafs": 1,

"active": 1,

"totalCart": 2990.0,

"pickStoreId": 1,

"pickName": "Amelia Hernandez",

"pickCode": "16000666-0",

"id_venta_documento_tributario": 0,

"documentNumber": 0,

"marketId": 1,

"isService": 0,

"withdrawStore": 1,

"payProcess": "pending",

"url": "https://api.bsale.io/v1/checkout/1.json"

}

}

  • id, identificador único del checkout (Integer).

  • token, Hash identificador único del checkout (String).

  • clientName, Nombre del cliente (String).

  • clientLastName, Apellido del cliente (String).

  • clientEmail, Email del cliente (String).

  • clientPhone, Telefono del cliente (String).

  • id_tipo_documento_tributario, Id del tipo documento tributario (Integer).

  • clientCountry, Pais del cliente (String).

  • clientState, Región del cliente (String).

  • extrasUserData, Datos extras del documento tributario (hash).

  • clientStreet, Calle del cliente (Integer).

  • clientCityZone, Comuna del cliente (Integer).

  • clientPostcode, Código postal del cliente (Integer).

  • clientBuildingNumber, Numero de dirección del cliente (Integer).

  • cartId, Id del carro (Integer).

  • cartDetails, Detalle del carro (Hash).

  • spcId, Id del costo del shipping (Integer).

  • ptId, Id del medio de pago (Integer).

  • createAt, Fecha de creación (UNIX EPOCH).

  • isMafs, El despacho es gratuito (bool).

  • active, Activo (bool).

  • shippingComment, Comentario del despacho (Integer).

  • totalCart, Total bruto del carro (Integer).

  • pickName, Nombre del que retira el pedido (Integer).

  • pickCode, Rut del que retira el pedido (Integer).

  • pickStoreId, Oficina donde se retira el pedido (Integer).

  • id_venta_documento_tributario, Id del documento tributario (Integer).

  • documentNumber, Numero de documento (Integer).

  • documentToken, Token del documento (Integer).

  • storeId, Oficina que se genera el documento tributario(Integer).

  • marketId, Id del market (Integer).

  • isService, Indica si todos los producto del checkout son servicios (Integer).

  • payProcess, Proceso del pedido (Integer).

  • payError, Código de error (Integer).

  • payResponse, Mensaje de error del medio de pago (Integer).

  • integrationDetail, Url de integración del sistema (String)

  • url, Url del checkout (String).


GET un checkout

  • GET /v2/token/checkout/:token.json retornara un checkout específico.

Respuesta

{

"code": 200,

"data": {

"id": 34046,

"token": "858f2181f14632a521d519683370a4242a64defb4",

"clientCode": "07506009",

"clientName": "Wilfredo",

"clientLastName": "Sadueño Lazuth",

"clientEmail": "wsd@gmail.com",

"clientPhone": "997842410",

"id_tipo_documento_tributario": 10,

"clientCountry": "Perú",

"clientState": "Lima",

"clientCity": "Lima ",

"clientStreet": "Av. Micaela Bastidas 4433",

"clientCityZone": "Comas",

"clientPostcode": "51",

"clientBuildingNumber": "Block F21 Dep. 876",

"cartId": 49679,

"cartDetails": [

"https://api.bsale.io/v1/cart/49679/detail.json"

],

"spcId": 32,

"ptId": 14,

"payUrl": "https://bcash.bsalemarket.com/bank/v1",

"createAt": 1593796047,

"shippingCost": 5.000014,

"isMafs": 0,

"discountCost": 0,

"active": 1,

"shippingComment": "Cruce de av. Micaela bastidas con av. Retablo \nA 3 cuadras.",

"totalCart": 125.3,

"pickStoreId": 0,

"id_venta_documento_tributario": 22805,

"documentNumber": 22794,

"documentToken": "b1e2163ce2af6",

"storeId": 1,

"marketId": 1,

"isService": 0,

"withdrawStore": 0,

"payProcess": "for_validate",

"ptName": "Pago con tarjeta al repartidor",

"stName": "Despacho",

"total": 130.300014,

"userId": 10916,

"url": "https://api.bsale.io/v1/checkout/34046.json"

}

}

POST un checkout

  • POST /v1/checkout.json

Se debe enviar un Json con la siguiente estructura.

{

"clientName": "Esteban",

"clientLastName": "Pruebas",

"clientEmail": "ebahamonde@imaginex.cl",

"clientPhone": "+90000001",

"id_tipo_documento_tributario": 1,

"clientCountry": "Chile",

"clientState": "Región Metropolitana",

"extrasUserData": {

"user_rut": "11111111-9",

"razon_social": "Rzon Social",

"giro_cliente": "Gro Clien",

"direccion": "Direccn",

"ciudad": "Ciudd",

"comuna": "Cmna"

},

"clientStreet": "las condes",

"clientCityZone": "Las Condes",

"clientPostcode": "ss",

"clientBuildingNumber": "123",

"cartDetails": [

{

"quantity": 1,

"unitValue": 29990,

"name": "ALIAS NOMBRE",

"image": "https://d09.cloudfront.net/1680/product/home223.jpg",

"idVarianteProducto": 171,

"productWebId": 8

}

]

}

Donde

  • token, Si no viene lo crea.

  • id_tipo_documento_tributario, Si viene valida que exista.

  • cartId, Si no viene lo crea, Si viene valida que exista .

  • cartDetails, Utiliza las reglas del carro.

  • spcId, Si viene valida que exista .

  • ptId, Si viene valida que exista .

  • createAt, Es del sistema siempre se crea en el post.

  • totalCart, Si no viene se calcula .

  • pickStoreId, Si viene valida que exista .

  • id_venta_documento_tributario, Si viene valida que exista .

  • documentNumber, Si viene valida que exista .

  • documentToken, Si viene valida que exista .

  • storeId, Si viene valida que exista.

  • marketId, Si viene valida que exista .

  • isService, Si no viene se calcula .

Respuesta

{

"code": "200",

"data": {

"id": 270,

"token": "509202b04403be34a122cd1e5010b7e30593bb0c",

"clientName": "Esteban",

"clientLastName": "Pruebas",

"clientEmail": "ebahamonde@imaginex.cl",

"clientPhone": "+90000001",

"id_tipo_documento_tributario": 1,

"clientCountry": "Chile",

"clientState": "Región Metropolitana",

"extrasUserData": {

"user_rut": "11111111-9",

"razon_social": "Rzon Social",

"giro_cliente": "Gro Clien",

"direccion": "Direccn",

"ciudad": "Ciudd",

"comuna": "Cmna"

},

"clientStreet": "las condes",

"clientCityZone": "Las Condes",

"clientPostcode": "ss",

"clientBuildingNumber": "123",

"cartId": 1062,

"cartDetails": [

{

"id": 3293,

"quantity": 1,

"unitValue": 29990,

"netUnitValue": 25201.6806722689,

"discount": 0,

"total": 29990,

"image": "https://dv09.cloudfront.net/1680/product/hom9963.jpg",

"idVarianteProducto": 171,

"sku": "HUA1259",

"link": "/product/",

"productWebId": 8,

"cartId": 1062,

"taxList": [

1

],

"value": 29990,

"cd_q": 1,

"cd_unit_value": 29990,

"cd_discount": 0,

"cd_sub_total": 29990,

"cd_id": 3293,

"cd_id_discount": 0,

"cd_image": "https://do9.cloudfront.net/1680/product/h-05963.jpg",

"id_variante_producto": 171,

"codigo_variante_producto": "HUA1259",

"href": "https://api.bsale.io/v1/cart/1062/detail/3293.json"

}

],

"createAt": 1578338363,

"shippingCost": 0,

"isMafs": 0,

"active": 1,

"totalCart": 29990,

"pickStoreId": 0,

"isService": 0,

"withdrawStore": 0,

"payProcess": "pending",

"url": "https://api.bsale.io/v1/checkout/270.json"

}

}

DELETE un checkout

  • DELETE /v1/checkout/5358.json desactiva un checkout.

{

"code": "200",

"data": {

"id": 5358,

"token": "c401b6d0b6e4a10884fe0909b83f249e9a03dffa",

"clientName": "adsa",

"clientLastName": "asdasd",

"clientEmail": "benjamind@imaginex.cl",

"clientPhone": "123123",

"id_tipo_documento_tributario": 1,

"clientCountry": "Chile",

"clientState": "Región Metropolitana",

"extrasUserData": {

"user_rut": "19",

"razon_social": "asdas",

"giro_cliente": "asd",

"direccion": "asd",

"ciudad": "asd",

"comuna": "asd"

},

"clientStreet": "las condes",

"clientCityZone": "Las Condes",

"clientPostcode": "ss",

"clientBuildingNumber": "123",

"cartId": 6804,

"cartDetails": [

"https://bsale-ecommerce-benjamin007.c9users.io:8081/v1/cart/6804/detail.json"

],

"spcId": 342,

"ptId": 1,

"createAt": 1506425440,

"shippingCost": 0,

"isMafs": 1,

"active": 0,

"shippingComment": "",

"totalCart": 147949,

"pickStoreId": 0,

"pickName": "",

"pickCode": "",

"id_venta_documento_tributario": 0,

"documentNumber": 0,

"storeId": 2,

"marketId": 1,

"isService": 0,

"withdrawStore": 0,

"payProcess": "pending",

"integrationDetail": "https://dojiw2m9tvv09.cloudfront.net/1680/product/home-productos-059963.jpg",

"url": "https://bsale-ecommerce-benjamin007.c9users.io:8081/v1/checkout/5358.json"

}

}