Factura.com API

La documentación de la API de Factura.com ofrece una descripción de los métodos y endpoints disponibles, ejemplos de las posibles respuestas obtenidas e información general para facilitar el uso de nuestra API.

Documentación

Crear cliente

A continuación se explica como dar de alta un nuevo cliente.

Podemos crear un nuevo cliente haciendo uso de los siguientes parámetros:

Parámetro
Tipo
Requerido
Detalles

nombre

string

Opcional

Indica el nombre del cliente.

apellidos

string

Opcional

Indica los apellidos del cliente.

email

string

Requerido

Indica el email del cliente.

email2

string

Opcional

Indica otro email del cliente.

email3

string

Opcional

Indica otro email del cliente.

telefono

string

Opcional

Indica el numero de teléfono

razons

string

Opcional

Indica la razón social del cliente.

rfc

string

Requerido

Indica el RFC del cliente, éste debe tener min:12 y max:13 caracteres.

calle

string

Opcional

Indica la calle del domicilio fiscal.

numero_exterior

string

Opcional

Indica el número del domicilio fiscal.

numero_interior

string

Opcional

Indica el número interior del domicilio fiscal, en caso de contar con él.

codpos

string

Requerido

Indica el código postal, éste debe tener min:5 caracteres.

colonia

string

Opcional

Indica la colonia.

estado

string

Opcional

Indica la estado.

ciudad

string

Opcional

Indica la ciudad.

pais

string

Opcional

delegacion

string

Opcional

Indica la delegación, en caso de contar con ella.

numregidtrib

string

Opcional

Indica el número de registro de identidad fiscal del receptor del comprobante fiscal cuando éste sea residente en el extranjero.

usocfdi

string

Opcional

Indica la clave que corresponda al uso que le dará al comprobante fiscal el receptor.

Consulta el catálogo de claves de Uso de CFDI.

Construcción de la URL

Host: https://factura.com (producción) / http://devfactura.in (sandbox)
Endpoint: /api/v1/clients/create

Ejemplo: https://factura.com/api/v1/clients/create

Ejemplo:

<?php
$ch = curl_init();
$fields = [
 "nombre" => "Cliente prueba ",
 "apellidos" => "Pérez López",
 "email" => "correo@email.com",
 "email2" => "otroemail2@email.com",
 "email3" => "otroemail3@email.com",
 "telefono" => "33 3877 7741",
 "razons" => "Cliente prueba ",
 "rfc" => "XAXX010101000",
 "calle" => "Av. Juarez",
 "numero_exterior" => 1234,
 "numero_interior" => "",
 "codpos" => 44640,
 "colonia" => "Centro",
 "estado" => "Jalisco",
 "ciudad" => "Guadalajara",
 "delegacion" => ""
];

$jsonfield = json_encode($fields);

curl_setopt($ch, CURLOPT_URL, "http://devfactura.in/api/v1/clients/create");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonfield);

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: application/json",
    "F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
    "F-Api-Key: ". 'Ingresa API KEY',
    "F-Secret-Key: " . 'Ingresa SECRET KEY'
));

$response = curl_exec($ch);

return die($response);

curl_close($ch);

?>

Recuerda

Para probar el código de ejemplo es necesario que reemplaces el texto Ingresa API KEY por el API KEY de tu cuenta, e Ingresa SECRET KEY por el SECRET KEY correspondiente.

Respuesta:

{
  "status": "success",
  "Data": {
    "RazonSocial": "Venta Al P\u00fablico en General",
    "RFC": "XAXX010101000",
    "Calle": "pedro loza",
    "Numero": "12349506",
    "Interior": "No Aplica",
    "Colonia": "Centro",
    "CodigoPostal": "00000",
    "Ciudad": "Guadalajara",
    "Delegacion": "Guadalajara",
    "Estado": "Jalisco",
    "Pais": "MEX",
    "Contacto": {
      "Nombre": "Publico",
      "Apellidos": "General (M\u00e9xico)",
      "Email": "paco@lightcone.com",
      "Email2": null,
      "Email3": null,
      "Telefono": "0000000000"
    },
    "UID": "55c0fdc67593d",
    "cfdis": 477,
    "cuentas_banco": [
      {
        "banco": "AMERICAN EXPRESS",
        "cuenta": "3323"
      },
      {
        "banco": "ABC CAPITAL",
        "cuenta": "8888"
      }
    ]
  }
}
{
  "status": "error",
  "message": {
    "rfc": [
      "El campo rfc es requerido"
    ]
  }
}

Sobre errores

El mensaje de error puede variar dependiendo el nodo en el que haya información incorrecta.

Te sugerimos leer cuidadosamente el mensaje del error ya que en el mismo se indica donde es necesario corregir la información.

Crear cliente


A continuación se explica como dar de alta un nuevo cliente.

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.