# API Caja

# 1. Introducción

Bienvenido a la API de caja de Mybooking. Este API permite extraer información de los cobros y sus documentos vinculados.

# 1.1 Credenciales

Consulta el funcionamiento de las credenciales con API Key y Secret Key para ver cómo funciona la autenticación en el acceso a las APIs.

# 1.2 URL base

Cada una de las cuentas de Mybooking son accesible a través de un subdominio único id de cliente. Si el id de cliente es rentpepe la URL base para realizar las peticiones será:

https://rentpepe.mybooking.es

# 2. Modelo de datos

# Objecto ChargeDocument

# Atributos


id number

Identificador del cobro.

Cuando source_doc es "deposit_received" o "deposit_returned" se trata de un cobro virtual que se incluye para cuadrar la caja pero no para contabilidad.


object string

Tipo de objeto, "charge_document" representa la información del cobro y el documento vinculado


amount string

Importe cobrado. Formato NN.NN


date string

Fecha del cobro en formato YYYY-MM-DDTHH:mm:SS.MSN.+NN:NN


payment_type string

Tipo de pago. Los valores posibles son:

  • charge Cobro
  • payment Devolución

payment_method_id string

Código de la forma de pago. Los valores posibles son:

  • credit_card Tarjeta de crédito
  • cash Efectivo
  • bank_transfer Transferencia bancaria
  • paypal_standard Paypal
  • redsys_256 TPV Virtual - Redsys
  • addon_payments TPV Virtual - Addon Payments
  • cecabank TPV Virtual - Cecabank
  • webpay TPV Virtual - Webpay transbank
  • tpv_online TPV Online
  • check Cheque
  • promissory_note Pagaré
  • booking_portal Portal / Agencia online

rental_location_code string

Identificador de la sucursal. Sólo se informa cuando hay múltiples sucursales.


sales_channel_code string

Identificador del canal de venta. Sólo se informa cuando hay múltiples canales de venta.


external_operation_number string

Código externo de la operación. En el caso de tarjeta de crédito


offline_physical_device_id string

Indica el código del dispositivo físico, datáfono, con el que se ha realizado el cobro.


source_doc string

Indica el tipo de documento vinculado con el cobro.

Los valores posibles son:

  • booking Reserva/Contrato de alquiler
  • order Reserva de actividades
  • customer_invoice Factura
  • customer_simplified_invoice Ticket
  • internal_bond_invoice Bono interno
  • deposit_received Fianza/Franquicia recibida como cobro (no preautorización)
  • deposit_returned Fianza/Franquicia recibida como cobro (no preautorización)

serie string

Numero de serie. Sólo se informa cuando el cobro está vinculado a una factura


document_number string

Numero de documento.


customer_fullname string

Nombre completo del cliente


customer_document_id string

NIF/Pasaporte del cliente


charge_accounting_processed boolean

El cobro ha sido procesado por contabilidad.


accounting_processed boolean

El documento vinculado ha sido procesado por contabilidad


virtual boolean

Cuando source_doc es "deposit_received" o "deposit_returned" se trata de un cobro virtual que se incluye para cuadrar la caja pero no para contabilidad.

{
  "data": [
        {    
          "id": 2854,
          "object": "charge_document",
          "amount": "44.0",
          "date": "2023-05-31T02:29:00.000+00:00",
          "payment_type": "charge",
          "payment_method_id": "cash",
          "sales_channel_code": null,
          "rental_location_code": "MAHON",
          "external_operation_number": "",
          "offline_physical_device_id": null,
          "source_doc": "booking",
          "source_id": "2384",
          "document_serie": null,
          "document_number": null,
          "customer_fullname": "Brad Stark",
          "customer_document_id": "55555555R",
          "charge_accounting_processed": false,
          "accounting_processed": false,
          "virtual": false
        }
  ],
  "total": 29
}

# 3. API

# 3.1 Obtener cobros/documentos

GET /api/v1/integration/charges

Obtiene cobros y su documento.

El volumen de datos que puede llegar a devolver este end-point puede ser demasiado grande para obtenerlos en una única petición. Por esto, se ha implementado con un sistema de paginación que permite ir obtiendo los datos en grupos más reducidos. De forma predeterminada obtiene 20 elementos y retorna el número total de forma que permite implementar un sistema de navegación.

# Petición

# Respuesta de la petición

Obtiene un Array de objetos tipo ChargeDocument