Soporte
Mesa de ayuda de EJJ Consultores SAC - PERU777. Ejemplos de API REST / web service por lenguaje para consulta de RUC, anexos y tipo de cambio.
PHP — API REST con file_get_contents
Web service GET. El JSON se asigna a variables.
Consulta RUC y anexos
<?php
$ruc = "";
$url = "http://apisunatruc.peru777.com/api.php?action=cliente&ruc=" . urlencode($ruc);
$json = file_get_contents($url);
$data = json_decode($json, true);
$ruc = $data["ruc"];
$razon = $data["razon"];
$estado = $data["estado"];
$condicion = $data["condicion"];
$direc = $data["direc"];
$ubigeo = $data["ubigeo"];
$departamento = $data["departamento"];
$provincia = $data["provincia"];
$distrito = $data["distrito"];
$anexos = $data["anexos"]; // arreglo de sucursales
Tipo de cambio
<?php
$fecha = "2026-09-15";
$url = "http://apisunatruc.peru777.com/api.php?action=tipo-cambio&fecha=" . urlencode($fecha);
$json = file_get_contents($url);
$data = json_decode($json, true);
$fecha = $data["fecha"];
$monori = $data["monori"];
$mondes = $data["mondes"];
$compra = $data["compra"];
$venta = $data["venta"];
Visual FoxPro — API REST con MSXML2.ServerXMLHTTP
Compatible con consultar_cliente.prg y consultar_tipocambio.prg.
Consulta RUC y anexos
lcRuc = ""
lcUrl = "http://apisunatruc.peru777.com/api.php?action=cliente&ruc=" + lcRuc
oHttp = CREATEOBJECT("MSXML2.ServerXMLHTTP.6.0")
oHttp.Open("GET", lcUrl, .F.)
oHttp.Send()
lcJson = oHttp.ResponseText
lcRazon = ExtractJsonValue(lcJson, "razon")
lcEstado = ExtractJsonValue(lcJson, "estado")
lcCondicion = ExtractJsonValue(lcJson, "condicion")
lcDirec = ExtractJsonValue(lcJson, "direc")
lcUbigeo = ExtractJsonValue(lcJson, "ubigeo")
lcDepartamento = ExtractJsonValue(lcJson, "departamento")
lcProvincia = ExtractJsonValue(lcJson, "provincia")
lcDistrito = ExtractJsonValue(lcJson, "distrito")
lcAnexos = ExtractJsonBlock(lcJson, "anexos")
Tipo de cambio
lcFecha = "2026-09-15"
lcUrl = "http://apisunatruc.peru777.com/api.php?action=tipo-cambio&fecha=" + lcFecha
oHttp = CREATEOBJECT("MSXML2.ServerXMLHTTP.6.0")
oHttp.Open("GET", lcUrl, .F.)
oHttp.Send()
lcJson = oHttp.ResponseText
lcFechaTc = ExtractJsonValue(lcJson, "fecha")
lnCompra = VAL(ExtractJsonValue(lcJson, "compra"))
lnVenta = VAL(ExtractJsonValue(lcJson, "venta"))
lcMonOri = ExtractJsonValue(lcJson, "monori")
lcMonDes = ExtractJsonValue(lcJson, "mondes")
JavaScript — API REST con fetch
Navegador o Node 18+.
Consulta RUC y anexos
const ruc = "";
const res = await fetch("http://apisunatruc.peru777.com/api.php?action=cliente&ruc=" + encodeURIComponent(ruc));
const data = await res.json();
const razon = data.razon;
const estado = data.estado;
const condicion = data.condicion;
const direc = data.direc;
const anexos = data.anexos;
Tipo de cambio
const fecha = "2026-09-15";
const res = await fetch("http://apisunatruc.peru777.com/api.php?action=tipo-cambio&fecha=" + encodeURIComponent(fecha));
const data = await res.json();
const compra = data.compra;
const venta = data.venta;
const monori = data.monori;
const mondes = data.mondes;
Python — API REST con urllib
Sin librerías externas.
Consulta RUC y anexos
import json, urllib.request
ruc = ""
url = "http://apisunatruc.peru777.com/api.php?action=cliente&ruc=" + ruc
with urllib.request.urlopen(url) as resp:
data = json.loads(resp.read().decode("utf-8"))
razon = data["razon"]
estado = data["estado"]
condicion = data["condicion"]
direc = data["direc"]
anexos = data["anexos"]
Tipo de cambio
import json, urllib.request
fecha = "2026-09-15"
url = "http://apisunatruc.peru777.com/api.php?action=tipo-cambio&fecha=" + fecha
with urllib.request.urlopen(url) as resp:
data = json.loads(resp.read().decode("utf-8"))
compra = data["compra"]
venta = data["venta"]
C# — API REST con HttpClient
Web service GET para .NET.
Consulta RUC y anexos
using var client = new HttpClient();
var ruc = "";
var json = await client.GetStringAsync("http://apisunatruc.peru777.com/api.php?action=cliente&ruc=" + ruc);
// Asigne ruc, razon, estado, condicion, direc y anexos desde el JSON
Tipo de cambio
using var client = new HttpClient();
var fecha = "2026-09-15";
var json = await client.GetStringAsync("http://apisunatruc.peru777.com/api.php?action=tipo-cambio&fecha=" + fecha);
// Asigne compra, venta, monori y mondes desde el JSON