APITMS Logo

APITMS

Cargando Plataforma...

SUNAT TIPO DE CAMBIO OFICIAL
COMPRA S/ 3.356
VENTA S/ 3.362
EN VIVO

APIs de Alta Velocidad para
RUC & DNI

La solución definitiva en Perú para Facturación Electrónica, ERPs, E-commerce y Sistemas Web. Integración instantánea con respuestas JSON ultra ligeras.

Latencia < 50ms

Consultas optimizadas al instante

+300 Clientes

Empresas confían en nuestra API

99.9% Uptime

Infraestructura de alta disponibilidad

S/ 30 Anual

Un solo pago por año

API BUSCAR RUC

CONSULTA RUC EN TIEMPO REAL

Consulta el padrón completo de SUNAT desde cualquier lenguaje de programación (PHP, C#, JS, Python, C++, Java).

Token Anual S/ 30.00 / año

API BUSCAR DNI

CONSULTA DNI INSTANTÁNEA

Obtén Nombres y Apellidos de cualquier ciudadano peruano para agilizar ventas y registros en tu sistema.

Token Anual S/ 30.00 / año
DEMO EN VIVO // PLAYGROUND API
EN LÍNEA

PHP cURL
<?php
$token = "TU_TOKEN_AQUI";
$ruc = "20525426778";

$curl = curl_init();
curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.apifacturacion.com/ruc/'.$ruc,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => array('token' => $token),
  CURLOPT_CUSTOMREQUEST => 'POST'
));

$response = curl_exec($curl);
curl_close($curl);

$empresa = json_decode($response, true);
print_r($empresa);
?>
JavaScript (Fetch / Async)
const token = "TU_TOKEN_AQUI";
const ruc = "20525426778";

const formData = new FormData();
formData.append("token", token);

fetch(`https://api.apifacturacion.com/ruc/${ruc}`, {
  method: "POST",
  body: formData
})
  .then(response => response.json())
  .then(data => {
    console.log("Razón Social:", data.razon_social);
    console.log("Estado:", data.estado);
  })
  .catch(error => console.error("Error:", error));
Python (requests)
import requests

token = "TU_TOKEN_AQUI"
ruc = "20525426778"
url = f"https://api.apifacturacion.com/ruc/{ruc}"

payload = {"token": token}
response = requests.post(url, data=payload)

if response.status_code == 200:
    data = response.json()
    print("Razón Social:", data.get("razon_social"))
    print("Estado:", data.get("estado"))
else:
    print("Error:", response.status_code)
C# HttpClient
using System;
using System.Net.Http;
using System.Collections.Generic;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        string token = "TU_TOKEN_AQUI";
        string ruc = "20525426778";
        string url = $"https://api.apifacturacion.com/ruc/{ruc}";

        using (var client = new HttpClient()) {
            var values = new Dictionary<string, string> { { "token", token } };
            var content = new FormUrlEncodedContent(values);

            HttpResponseMessage response = await client.PostAsync(url, content);
            string jsonResult = await response.ContentAsStringAsync();
            Console.WriteLine(jsonResult);
        }
    }
}
C++ (libcurl)
#include <iostream>
#include <string>
#include <curl/curl.h>

int main() {
    CURL* curl = curl_easy_init();
    if(curl) {
        std::string token = "TU_TOKEN_AQUI";
        std::string ruc = "20525426778";
        std::string url = "https://api.apifacturacion.com/ruc/" + ruc;
        std::string fields = "token=" + token;

        curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, fields.c_str());

        CURLcode res = curl_easy_perform(curl);
        if(res != CURLE_OK) {
            std::cerr << "Error libcurl: " << curl_easy_strerror(res) << std::endl;
        }
        curl_easy_cleanup(curl);
    }
    return 0;
}
Java HttpClient
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Main {
    public static void main(String[] args) throws Exception {
        String token = "TU_TOKEN_AQUI";
        String ruc = "20525426778";
        String url = "https://api.apifacturacion.com/ruc/" + ruc;

        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(url))
                .header("Content-Type", "application/x-www-form-urlencoded")
                .POST(HttpRequest.BodyPublishers.ofString("token=" + token))
                .build();

        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
Go (net/http)
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "net/url"
)

func main() {
    token := "TU_TOKEN_AQUI"
    ruc := "20525426778"
    apiURL := "https://api.apifacturacion.com/ruc/" + ruc

    formData := url.Values{}
    formData.Set("token", token)

    resp, err := http.PostForm(apiURL, formData)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}

PHP cURL
<?php
$token = "TU_TOKEN_AQUI";
$dni = "42116577";

$curl = curl_init();
curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.apifacturacion.com/dni/'.$dni,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => array('token' => $token),
  CURLOPT_CUSTOMREQUEST => 'POST'
));

$response = curl_exec($curl);
curl_close($curl);

$persona = json_decode($response, true);
print_r($persona);
?>
JavaScript (Fetch / Async)
const token = "TU_TOKEN_AQUI";
const dni = "42116577";

const formData = new FormData();
formData.append("token", token);

fetch(`https://api.apifacturacion.com/dni/${dni}`, {
  method: "POST",
  body: formData
})
  .then(response => response.json())
  .then(data => {
    console.log("Nombre Completo:", data.cliente);
  })
  .catch(error => console.error("Error:", error));
Python (requests)
import requests

token = "TU_TOKEN_AQUI"
dni = "42116577"
url = f"https://api.apifacturacion.com/dni/{dni}"

payload = {"token": token}
response = requests.post(url, data=payload)

if response.status_code == 200:
    data = response.json()
    print("Nombre Completo:", data.get("cliente"))
else:
    print("Error:", response.status_code)
C# HttpClient
using System;
using System.Net.Http;
using System.Collections.Generic;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        string token = "TU_TOKEN_AQUI";
        string dni = "42116577";
        string url = $"https://api.apifacturacion.com/dni/{dni}";

        using (var client = new HttpClient()) {
            var values = new Dictionary<string, string> { { "token", token } };
            var content = new FormUrlEncodedContent(values);

            HttpResponseMessage response = await client.PostAsync(url, content);
            string jsonResult = await response.ContentAsStringAsync();
            Console.WriteLine(jsonResult);
        }
    }
}
C++ (libcurl)
#include <iostream>
#include <string>
#include <curl/curl.h>

int main() {
    CURL* curl = curl_easy_init();
    if(curl) {
        std::string token = "TU_TOKEN_AQUI";
        std::string dni = "42116577";
        std::string url = "https://api.apifacturacion.com/dni/" + dni;
        std::string fields = "token=" + token;

        curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, fields.c_str());

        CURLcode res = curl_easy_perform(curl);
        if(res != CURLE_OK) {
            std::cerr << "Error libcurl: " << curl_easy_strerror(res) << std::endl;
        }
        curl_easy_cleanup(curl);
    }
    return 0;
}
Java HttpClient
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Main {
    public static void main(String[] args) throws Exception {
        String token = "TU_TOKEN_AQUI";
        String dni = "42116577";
        String url = "https://api.apifacturacion.com/dni/" + dni;

        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(url))
                .header("Content-Type", "application/x-www-form-urlencoded")
                .POST(HttpRequest.BodyPublishers.ofString("token=" + token))
                .build();

        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
Go (net/http)
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "net/url"
)

func main() {
    token := "TU_TOKEN_AQUI"
    dni := "42116577"
    apiURL := "https://api.apifacturacion.com/dni/" + dni

    formData := url.Values{}
    formData.Set("token", token)

    resp, err := http.PostForm(apiURL, formData)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}