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
WhatsApp Ventas 2 Telegram