---
title: "SUNAT Taxpayer by RUC"
method: POST
path: "/pe/sunat/ruc/v1"
tags: ["Peru", "SUNAT"]
---

# SUNAT Taxpayer by RUC

`POST /pe/sunat/ruc/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/pe/sunat/ruc/v1`
- Auth: HTTP bearer

Look up a Peruvian taxpayer's full record by RUC (11 digits). `found: false` when the RUC is not registered.

Supports async delivery: set `Prefer: wait=N` for an inline result, pass `callback_url` to receive a POST when ready, or poll `GET /jobs/{id}`.

## Headers

- `Idempotency-Key` string
- `Prefer` string

## Request body

- object
  - `ruc` string, required: 11-digit RUC.
  - `callback_url` string, uri: POST the job result here when it finishes.

## Response `200`

Successful response

- RucResponse
  - `data` RucData, required
    - `found` boolean, required
    - `ruc` string, nullable, required
    - `name` string, nullable, required
    - `type` string, nullable, required
    - `document_type` string, nullable, required
    - `document_number` string, nullable, required
    - `trade_name` string, nullable, required
    - `registration_date` string, nullable, required
    - `activities_start_date` string, nullable, required
    - `status` string, nullable, required
    - `condition` string, nullable, required
    - `fiscal_address` string, nullable, required
    - `emission_system` string, nullable, required
    - `foreign_trade_activity` string, nullable, required
    - `accounting_system` string, nullable, required
    - `economic_activities` string[], required
    - `payment_vouchers` string[], required
    - `electronic_emission_systems` string[], required
    - `electronic_emitter_since` string, nullable, required
    - `electronic_vouchers` string, nullable, required
    - `ple_affiliated_since` string, nullable, required
    - `registries` string[], required

## Other responses

- `202`: Accepted — the result is being computed asynchronously. Poll `job.status_url` (GET /jobs/{id}) or supply `callback_url` to have the result POSTed to you. Returned when `Prefer: wait` elapses before completion, or immediately when `callback_url` is set.
- `400`: Invalid request body
- `401`: Missing or invalid API key
- `429`: Rate limit exceeded
- `500`: Internal error
- `502`: Upstream source returned an error

---

[API](https://skmtc.dev/usecroma/apis/croma-marketplace-api.md) · [All operations](https://skmtc.dev/usecroma/apis/croma-marketplace-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usecroma/apis/croma-marketplace-api/revisions/df016cdb29d7?raw)
