Saltearse al contenido

Guía de remisión remitente

La API de Facturación de Tandia te permite enviar guías de remisión remitente electrónicas.

Configuración de la Compañía

Antes de poder enviar guías de remisión se necesita configurar las credenciales tributarias necesarias para este nuevo flujo. A continuación, se muestra un ejemplo de cómo hacerlo:

Ejemplo de Solicitud

PUT /api/company/{companyTaxId}
Host: invoice.test.tandia.io
Content-Type: application/json
Authorization: Bearer token-de-api

{
  "metadata": {
        "client_id" : "client_id_sunat",
        "client_secret": "client_secret_sunat"
    }
}

Ejemplo de Respuesta

{
  "id": "com_b2ad4cfce3be408fb100062b06f8dc0b",
  "business_name": "Corp Demo S.A.C.",
  "trade_name": "Corp Demo",
  "tax_id": "20750022128",
  "country": "PE",
  "phone": "+51 987654321",
  "email": "user@corp.com",
  "address": {
    "postal_zone": "150131",
    "country": "PE",
    "country_subentity": "LIMA",
    "city": "LIMA",
    "district": "LIMA",
    "city_subdivision": null,
    "address": "CALLE MANUEL A. FUENTES NRO. 683 INT. 101",
    "type_code": null
  },
  "metadata": {
    "client_id" : "client_id_sunat",
    "client_secret": "client_secret_sunat"
  },
  "logo": null,
  "web_hook": "https://www.dominio.com/webhook/"
}

Objeto Guía remisión remitente


numberstringrequired

Número correlativo de la guía en formato T###-########. Por ejemplo podría ser T001-00004625 o TT01-429062


datestringrequired

Fecha de la guía en formato ISO 8601. Por ejemplo 2024-12-25T11:22:33-05:00


external_idstringoptional

ID que puede usarse como referencia para temas de integración


companyobjectrequired

Compañía que emite la guía


mode_transferstringrequired

Código de modalidad de transporte. Para transporte público es 01 y para privado es 02


receiverobjectrequired

Receptor al que va dirigida la guía


reasonstringrequired

Código de motivo de traslado según el Catálogo Nº 20 del Anexo V de Sunat


weightnumberrequired

Peso total del traslado


weight_measurestringrequired

Unidad de medida del peso total del traslado según el Catálogo Nº 65 del Anexo V de Sunat


departure_datestringrequired

Fecha de partida del traslado en formato ISO 8601. Por ejemplo 2024-12-25T11:22:33-05:00


departure_addressobjectrequired

Dirección de partida del traslado


arrival_datestringrequired

Fecha de llegada del traslado en formato ISO 8601. Por ejemplo 2024-12-25T11:22:33-05:00


arrival_addressobjectrequired

Dirección de llegada del traslado


indicatorbooleanoptional

Indicador de categoría de vehículo M1 o L


supplierobjectoptional

Proveedor - Para motivo de GRM 02 Compra


carrierobjectoptional

Transportista a cargo del traslado


platestringoptional

Placa del vehículo para la modalidad de transporte privado


observationstringoptional

Observaciones adicionales del traslado


itemsarrayrequired

Lista de ítems del traslado


Enviar una Guía de remisión remitente

Para enviar una guía de remisión remitente, realiza una solicitud POST a la siguiente URL:

POST /api/despatch
Host: invoice.test.tandia.io
Content-Type: application/json
Authorization: Bearer token-de-api

Debes proporcionar un cuerpo de solicitud en formato JSON con la información de la guía de remisión remitente que deseas enviar.

Guía de remisión remitente modalidad Transporte Público

{
  "number": "T035-501096",
  "date": "2023-11-09T16:46:00-05:00",
  "external_id": null,
  "company": {
    "tax_id": "ruc-registrado-en-api"
  },
  "mode_transfer": "01",
  "receiver": {
    "document_type": "1",
    "document_number": "71080767",
    "registration_name": "Juan Perez",
    "email": null
  },
  "reason": "01",
  "weight": 12.6,
  "weight_measure": "KGM",
  "departure_date": "2023-11-10T20:46:00-05:00",
  "departure_address": {
    "postal_zone": "150116",
    "address": "LIMA - LIMA - LINCE - Dirección..."
  },
  "arrival_date": "2023-11-17T08:46:00-05:00",
  "arrival_address": {
    "postal_zone": "220101",
    "address": "SAN MARTIN - MOYOBAMBA - MOYOBAMBA - Dirección..."
  },
  "indicator": null,
  "carrier": {
    "document_type": "6",
    "document_number": "20512528458",
    "registration_name": "Nombre Empresa Courier",
    "document_extra": "123456"
  },
  "plate": null,
  "observation": null,
  "items": [
    {
      "quantity": 1.00,
      "measure": "KGM",
      "description": "Producto 1",
      "code": "P001"
    },
    {
      "quantity": 2.00,
      "measure": "KGM",
      "description": "Producto 2",
      "code": "P002"
    }
  ]
}

Guía de remisión remitente modalidad Transporte Privado

{
  "number": "T036-7800010",
  "date": "2023-11-09T16:48:00-05:00",
  "external_id": null,
  "company": {
    "tax_id": "ruc-registrado-en-api"
  },
  "mode_transfer": "02",
  "receiver": {
    "document_type": "1",
    "document_number": "71080767",
    "registration_name": "Juan Perez",
    "email": null
  },
  "reason": "01",
  "weight": 12.6,
  "weight_measure": "KGM",
  "departure_date": "2023-11-10T20:46:00-05:00",
  "departure_address": {
    "postal_zone": "150116",
    "address": "LIMA - LIMA - LINCE - Dirección..."
  },
  "arrival_date": "2023-11-17T20:46:00-05:00",
  "arrival_address": {
    "postal_zone": "220101",
    "address": "SAN MARTIN - MOYOBAMBA - MOYOBAMBA - Dirección..."
  },
  "indicator": false,
  "carrier": {
    "document_type": "1",
    "document_number": "76589765",
    "registration_name": "Nombres del Conductor",
    "family_name": "Apellidos del Conductor",
    "document_extra": "P76589765"
  },
  "plate": "ABC123",
  "observation": null,
  "items": [
    {
      "quantity": 1.00,
      "measure": "KGM",
      "description": "Producto 1",
      "code": "P001"
    },
    {
      "quantity": 2.00,
      "measure": "KGM",
      "description": "Producto 2",
      "code": "P002"
    }
  ]
}

Guía de remisión remitente modalidad Transporte Privado - Vehículo de categoría M1 o L

{
  "number": "T037-5010033",
  "date": "2023-11-09T16:50:00-05:00",
  "external_id": null,
  "company": {
    "tax_id": "ruc-registrado-en-api"
  },
  "mode_transfer": "02",
  "receiver": {
    "document_type": "1",
    "document_number": "71080767",
    "registration_name": "Juan Perez",
    "email": null
  },
  "reason": "01",
  "weight": 12.6,
  "weight_measure": "KGM",
  "departure_date": "2023-11-10T20:46:00-05:00",
  "departure_address": {
    "postal_zone": "150116",
    "address": "LIMA - LIMA - LINCE - Dirección..."
  },
  "arrival_date": "2023-11-17T08:46:00-05:00",
  "arrival_address": {
    "postal_zone": "220101",
    "address": "SAN MARTIN - MOYOBAMBA - MOYOBAMBA - Dirección..."
  },
  "indicator": true,
  "carrier": null,
  "plate": null,
  "observation": null,
  "items": [
    {
      "quantity": 1.00,
      "measure": "KGM",
      "description": "Producto 1",
      "code": "P001"
    },
    {
      "quantity": 2.00,
      "measure": "KGM",
      "description": "Producto 2",
      "code": "P002"
    }
  ]
}

Respuesta

Cuando envías una guía de remisión remitente a través de la API de Facturación de Tandia, recibirás una respuesta que contiene información sobre el estado del comprobante. A continuación, se detalla la estructura de la respuesta:

{
  "id": "doc_0f7c726cea9f4e2ab2b8d11641d5067a",
  "type": "despatch",
  "currency": null,
  "external_id": null,
  "number": "T037-5010033",
  "date": "2023-11-09T16:46:00-05:00",
  "company": {
    "tax_id": "20750022128",
    "business_name": "Corp Demo S.A.C.",
    "trade_name": "Corp Demo",
    "email": "user@corp.com",
    "phone": "+51 987654321",
    "country": "PE",
    "address": {
      "postal_zone": "150131",
      "country": "PE",
      "country_subentity": "LIMA",
      "city": "LIMA",
      "district": "LIMA",
      "city_subdivision": null,
      "address": "CALLE MANUEL A. FUENTES NRO. 683 INT. 101",
      "type_code": null
    },
    "logo": null
  },
  "total": null,
  "observation": null,
  "status": "created",
  "success": false,
  "metadata": [],
  "failure_code": null,
  "failure_message": null,
  "document_pdf": null,
  "document_file": null,
  "qr_code": null,
  "result": null,
  "logs": []
}

Objeto Guía remisión transportista


numberstringrequired

Número correlativo de la guía en formato V###-########. Por ejemplo podría ser V001-00004625 o VV01-429062


datestringrequired

Fecha de la guía en formato ISO 8601. Por ejemplo 2024-12-25T11:22:33-05:00


external_idstringoptional

ID que puede usarse como referencia para temas de integración


companyobjectrequired

Compañía que emite la guía



receiverobjectrequired

Receptor al que va dirigida la guía


senderobjectrequired

Remitente que envía la guía


weightnumberrequired

Peso total del traslado


weight_measurestringrequired

Unidad de medida del peso total del traslado según el Catálogo Nº 65 del Anexo V de Sunat


departure_datestringrequired

Fecha de partida del traslado en formato ISO 8601. Por ejemplo 2024-12-25T11:22:33-05:00


departure_addressobjectrequired

Dirección de partida del traslado


arrival_datestringrequired

Fecha de llegada del traslado en formato ISO 8601. Por ejemplo 2024-12-25T11:22:33-05:00


arrival_addressobjectrequired

Dirección de llegada del traslado


stopsarrayoptional

Paradas intermedias del traslado


carrierobjectoptional

Vehículo a cargo del traslado


driversarrayrequired

Conductores a cargo del traslado


platestringoptional

Placa del vehículo para la modalidad de transporte privado


observationstringoptional

Observaciones adicionales del traslado


itemsarrayrequired

Lista de ítems del traslado


Enviar una Guía de remisión transportista

Para enviar una guía de remisión transportista, realiza una solicitud POST a la siguiente URL:

POST /api/carrier-despatch
Host: invoice.test.tandia.io
Content-Type: application/json
Authorization: Bearer token-de-api

Debes proporcionar un cuerpo de solicitud en formato JSON con la información de la guía de remisión transportista que deseas enviar.

Guía de remisión transportista

{
  "number": "V001-501096",
  "date": "2026-01-12T16:46:00-05:00",
  "company": {
    "tax_id": "ruc-registrado-en-api"
  },
  "document_related": {
        "document_type": "09",
        "number": "FF01-5"
  },
  "receiver": {
    "document_type": "1",
    "document_number": "71080767",
    "registration_name": "Juan Perez",
    "email": null
  },
  "sender": {
    "document_type": "1",
    "document_number": "71080767",
    "registration_name": "Juan Perez"
  },
  "weight": 12.6,
  "weight_measure": "KGM",
  "departure_date": "2026-01-13T20:46:00-05:00",
  "departure_address": {
    "postal_zone": "150116",
    "address": "LIMA - LIMA - LINCE - Dirección...",
    "reference": "Referencia"
  },
  "arrival_date": "2026-01-14T08:46:00-05:00",
  "arrival_address": {
    "postal_zone": "220101",
    "address": "SAN MARTIN - MOYOBAMBA - MOYOBAMBA - Dirección...",
    "reference": "Referencia"
  },
  "stops": [
    {
    "address": "Parada 1",
    "reference": "Referencia 1"
    },
    {
    "address": "Parada 2",
    "reference": "Referencia 2"
    }
  ],
  "carrier": {
    "mtc_number": "254225"
  },
  "drivers": [
    {
        "document_type": "1",
        "document_number": "99999999",
        "registration_name": "Juan",
        "family_name": "Perez",
        "document_extra": "783783789",
        "type": 1
    }
  ],
  "plate": "428378",
  "observation": null,
  "items": [
    {
      "quantity": 1.00,
      "measure": "KGM",
      "description": "Producto 1",
      "code": "P001"
    },
    {
      "quantity": 2.00,
      "measure": "KGM",
      "description": "Producto 2",
      "code": "P002"
    }
  ]
}

Respuesta

Cuando envías una guía de remisión transportista a través de la API de Facturación de Tandia, recibirás una respuesta que contiene información sobre el estado del comprobante. A continuación, se detalla la estructura de la respuesta:

{
  "id": "doc_0f7c726cea9f4e2ab2b8d11641d5067a",
  "type": "carrier-despatch",
  "currency": null,
  "external_id": null,
  "number": "V037-5010033",
  "date": "2023-11-09T16:46:00-05:00",
  "company": {
    "tax_id": "20750022128",
    "business_name": "Corp Demo S.A.C.",
    "trade_name": "Corp Demo",
    "email": "user@corp.com",
    "phone": "+51 987654321",
    "country": "PE",
    "address": {
      "postal_zone": "150131",
      "country": "PE",
      "country_subentity": "LIMA",
      "city": "LIMA",
      "district": "LIMA",
      "city_subdivision": null,
      "address": "CALLE MANUEL A. FUENTES NRO. 683 INT. 101",
      "type_code": null
    },
    "logo": null
  },
  "total": null,
  "observation": null,
  "status": "created",
  "success": false,
  "metadata": [],
  "failure_code": null,
  "failure_message": null,
  "document_pdf": null,
  "document_file": null,
  "qr_code": null,
  "result": null,
  "logs": [],
	"document_related": {
		"type": null,
		"document_type": "09",
		"number": "FF01-5"
  }
}