curl --request POST \
--url https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice} \
--header 'Content-Type: application/json' \
--cookie connect.sid= \
--data '
{
"111": [
{
"clientEmissionId": "pedido-2026-000123",
"IdDoc": {
"MntBruto": "1",
"FmaPago": "1"
},
"Receptor": {
"TipoDocRecep": "2",
"CodPaisRecep": "UY",
"DocRecep": "211234567005",
"RznSocRecep": "EMPRESA DE EJEMPLO SA",
"DirRecep": "Calle Falsa 1234",
"CiudadRecep": "Montevideo",
"DeptoRecep": "Montevideo"
},
"Totales": {
"TpoMoneda": "UYU"
},
"Items": [
{
"NroLinDet": "1",
"IndFact": "1",
"NomItem": "Servicio de ejemplo",
"Cantidad": 1,
"UniMed": "N/A",
"PrecioUnitario": 1000,
"MontoItem": 1000
}
],
"adenda": "Texto libre opcional"
}
],
"emailsToNotify": []
}
'import requests
url = "https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}"
payload = {
"111": [
{
"clientEmissionId": "pedido-2026-000123",
"IdDoc": {
"MntBruto": "1",
"FmaPago": "1"
},
"Receptor": {
"TipoDocRecep": "2",
"CodPaisRecep": "UY",
"DocRecep": "211234567005",
"RznSocRecep": "EMPRESA DE EJEMPLO SA",
"DirRecep": "Calle Falsa 1234",
"CiudadRecep": "Montevideo",
"DeptoRecep": "Montevideo"
},
"Totales": { "TpoMoneda": "UYU" },
"Items": [
{
"NroLinDet": "1",
"IndFact": "1",
"NomItem": "Servicio de ejemplo",
"Cantidad": 1,
"UniMed": "N/A",
"PrecioUnitario": 1000,
"MontoItem": 1000
}
],
"adenda": "Texto libre opcional"
}
],
"emailsToNotify": []
}
headers = {
"cookie": "connect.sid=",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {cookie: 'connect.sid=', 'Content-Type': 'application/json'},
body: JSON.stringify({
'111': [
{
clientEmissionId: 'pedido-2026-000123',
IdDoc: {MntBruto: '1', FmaPago: '1'},
Receptor: {
TipoDocRecep: '2',
CodPaisRecep: 'UY',
DocRecep: '211234567005',
RznSocRecep: 'EMPRESA DE EJEMPLO SA',
DirRecep: 'Calle Falsa 1234',
CiudadRecep: 'Montevideo',
DeptoRecep: 'Montevideo'
},
Totales: {TpoMoneda: 'UYU'},
Items: [
{
NroLinDet: '1',
IndFact: '1',
NomItem: 'Servicio de ejemplo',
Cantidad: 1,
UniMed: 'N/A',
PrecioUnitario: 1000,
MontoItem: 1000
}
],
adenda: 'Texto libre opcional'
}
],
emailsToNotify: []
})
};
fetch('https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'111' => [
[
'clientEmissionId' => 'pedido-2026-000123',
'IdDoc' => [
'MntBruto' => '1',
'FmaPago' => '1'
],
'Receptor' => [
'TipoDocRecep' => '2',
'CodPaisRecep' => 'UY',
'DocRecep' => '211234567005',
'RznSocRecep' => 'EMPRESA DE EJEMPLO SA',
'DirRecep' => 'Calle Falsa 1234',
'CiudadRecep' => 'Montevideo',
'DeptoRecep' => 'Montevideo'
],
'Totales' => [
'TpoMoneda' => 'UYU'
],
'Items' => [
[
'NroLinDet' => '1',
'IndFact' => '1',
'NomItem' => 'Servicio de ejemplo',
'Cantidad' => 1,
'UniMed' => 'N/A',
'PrecioUnitario' => 1000,
'MontoItem' => 1000
]
],
'adenda' => 'Texto libre opcional'
]
],
'emailsToNotify' => [
]
]),
CURLOPT_COOKIE => "connect.sid=",
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}"
payload := strings.NewReader("{\n \"111\": [\n {\n \"clientEmissionId\": \"pedido-2026-000123\",\n \"IdDoc\": {\n \"MntBruto\": \"1\",\n \"FmaPago\": \"1\"\n },\n \"Receptor\": {\n \"TipoDocRecep\": \"2\",\n \"CodPaisRecep\": \"UY\",\n \"DocRecep\": \"211234567005\",\n \"RznSocRecep\": \"EMPRESA DE EJEMPLO SA\",\n \"DirRecep\": \"Calle Falsa 1234\",\n \"CiudadRecep\": \"Montevideo\",\n \"DeptoRecep\": \"Montevideo\"\n },\n \"Totales\": {\n \"TpoMoneda\": \"UYU\"\n },\n \"Items\": [\n {\n \"NroLinDet\": \"1\",\n \"IndFact\": \"1\",\n \"NomItem\": \"Servicio de ejemplo\",\n \"Cantidad\": 1,\n \"UniMed\": \"N/A\",\n \"PrecioUnitario\": 1000,\n \"MontoItem\": 1000\n }\n ],\n \"adenda\": \"Texto libre opcional\"\n }\n ],\n \"emailsToNotify\": []\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("cookie", "connect.sid=")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}")
.header("cookie", "connect.sid=")
.header("Content-Type", "application/json")
.body("{\n \"111\": [\n {\n \"clientEmissionId\": \"pedido-2026-000123\",\n \"IdDoc\": {\n \"MntBruto\": \"1\",\n \"FmaPago\": \"1\"\n },\n \"Receptor\": {\n \"TipoDocRecep\": \"2\",\n \"CodPaisRecep\": \"UY\",\n \"DocRecep\": \"211234567005\",\n \"RznSocRecep\": \"EMPRESA DE EJEMPLO SA\",\n \"DirRecep\": \"Calle Falsa 1234\",\n \"CiudadRecep\": \"Montevideo\",\n \"DeptoRecep\": \"Montevideo\"\n },\n \"Totales\": {\n \"TpoMoneda\": \"UYU\"\n },\n \"Items\": [\n {\n \"NroLinDet\": \"1\",\n \"IndFact\": \"1\",\n \"NomItem\": \"Servicio de ejemplo\",\n \"Cantidad\": 1,\n \"UniMed\": \"N/A\",\n \"PrecioUnitario\": 1000,\n \"MontoItem\": 1000\n }\n ],\n \"adenda\": \"Texto libre opcional\"\n }\n ],\n \"emailsToNotify\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["cookie"] = 'connect.sid='
request["Content-Type"] = 'application/json'
request.body = "{\n \"111\": [\n {\n \"clientEmissionId\": \"pedido-2026-000123\",\n \"IdDoc\": {\n \"MntBruto\": \"1\",\n \"FmaPago\": \"1\"\n },\n \"Receptor\": {\n \"TipoDocRecep\": \"2\",\n \"CodPaisRecep\": \"UY\",\n \"DocRecep\": \"211234567005\",\n \"RznSocRecep\": \"EMPRESA DE EJEMPLO SA\",\n \"DirRecep\": \"Calle Falsa 1234\",\n \"CiudadRecep\": \"Montevideo\",\n \"DeptoRecep\": \"Montevideo\"\n },\n \"Totales\": {\n \"TpoMoneda\": \"UYU\"\n },\n \"Items\": [\n {\n \"NroLinDet\": \"1\",\n \"IndFact\": \"1\",\n \"NomItem\": \"Servicio de ejemplo\",\n \"Cantidad\": 1,\n \"UniMed\": \"N/A\",\n \"PrecioUnitario\": 1000,\n \"MontoItem\": 1000\n }\n ],\n \"adenda\": \"Texto libre opcional\"\n }\n ],\n \"emailsToNotify\": []\n}"
response = http.request(request)
puts response.read_body{
"payload": {
"cfesIds": [
{
"id": "6a7121a37698d7c0ab3f1b51",
"clientEmissionId": "pedido-2026-000123",
"serie": "A",
"nro": 3503,
"type": "111",
"caeNumber": 90120000538,
"caeSerie": "A",
"caeRange": {
"first": 1,
"last": 999999
},
"caeExpirationDate": "2030-01-01T00:00:00.000Z",
"total": "3050.00",
"emitionDate": "2026-08-03T20:17:46.000-03:00",
"sentXmlHash": "mghK5nJZkGskjJUkRv8EnG+U8xa1vs1tROJsIqDXBMk=",
"securityCode": "mghK5n",
"qrUrl": "https://gatewaytest.pymo.uy/consultaQR/cfe?...",
"CAEEspecial": null,
"CausalCAEEsp": null
}
]
},
"message": {
"code": "DGI_CFES_RECEIVE_SUCCESS",
"value": "Cfes recibidos correctamente."
},
"status": "SUCCESS"
}{
"payload": {},
"message": {
"code": "UNAUTHORIZED",
"value": "Debe iniciar sesión."
},
"status": "FAIL"
}{
"payload": {},
"message": {
"code": "FORBIDDEN",
"value": "No tiene permisos para realizar esta acción."
},
"status": "FAIL"
}Emitir CFEs
Emite cualquier CFE (el tipo va en el body). Es asíncrono: devuelve un id y NO confirma la aceptación, después hay que consultar el estado. Requiere certificado y CAE del tipo de documento.
Acceso: restringida. Requiere sesión, y sólo opera sobre el RUT de tu propia empresa: pedir otro RUT responde 403 FORBIDDEN.
curl --request POST \
--url https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice} \
--header 'Content-Type: application/json' \
--cookie connect.sid= \
--data '
{
"111": [
{
"clientEmissionId": "pedido-2026-000123",
"IdDoc": {
"MntBruto": "1",
"FmaPago": "1"
},
"Receptor": {
"TipoDocRecep": "2",
"CodPaisRecep": "UY",
"DocRecep": "211234567005",
"RznSocRecep": "EMPRESA DE EJEMPLO SA",
"DirRecep": "Calle Falsa 1234",
"CiudadRecep": "Montevideo",
"DeptoRecep": "Montevideo"
},
"Totales": {
"TpoMoneda": "UYU"
},
"Items": [
{
"NroLinDet": "1",
"IndFact": "1",
"NomItem": "Servicio de ejemplo",
"Cantidad": 1,
"UniMed": "N/A",
"PrecioUnitario": 1000,
"MontoItem": 1000
}
],
"adenda": "Texto libre opcional"
}
],
"emailsToNotify": []
}
'import requests
url = "https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}"
payload = {
"111": [
{
"clientEmissionId": "pedido-2026-000123",
"IdDoc": {
"MntBruto": "1",
"FmaPago": "1"
},
"Receptor": {
"TipoDocRecep": "2",
"CodPaisRecep": "UY",
"DocRecep": "211234567005",
"RznSocRecep": "EMPRESA DE EJEMPLO SA",
"DirRecep": "Calle Falsa 1234",
"CiudadRecep": "Montevideo",
"DeptoRecep": "Montevideo"
},
"Totales": { "TpoMoneda": "UYU" },
"Items": [
{
"NroLinDet": "1",
"IndFact": "1",
"NomItem": "Servicio de ejemplo",
"Cantidad": 1,
"UniMed": "N/A",
"PrecioUnitario": 1000,
"MontoItem": 1000
}
],
"adenda": "Texto libre opcional"
}
],
"emailsToNotify": []
}
headers = {
"cookie": "connect.sid=",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {cookie: 'connect.sid=', 'Content-Type': 'application/json'},
body: JSON.stringify({
'111': [
{
clientEmissionId: 'pedido-2026-000123',
IdDoc: {MntBruto: '1', FmaPago: '1'},
Receptor: {
TipoDocRecep: '2',
CodPaisRecep: 'UY',
DocRecep: '211234567005',
RznSocRecep: 'EMPRESA DE EJEMPLO SA',
DirRecep: 'Calle Falsa 1234',
CiudadRecep: 'Montevideo',
DeptoRecep: 'Montevideo'
},
Totales: {TpoMoneda: 'UYU'},
Items: [
{
NroLinDet: '1',
IndFact: '1',
NomItem: 'Servicio de ejemplo',
Cantidad: 1,
UniMed: 'N/A',
PrecioUnitario: 1000,
MontoItem: 1000
}
],
adenda: 'Texto libre opcional'
}
],
emailsToNotify: []
})
};
fetch('https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'111' => [
[
'clientEmissionId' => 'pedido-2026-000123',
'IdDoc' => [
'MntBruto' => '1',
'FmaPago' => '1'
],
'Receptor' => [
'TipoDocRecep' => '2',
'CodPaisRecep' => 'UY',
'DocRecep' => '211234567005',
'RznSocRecep' => 'EMPRESA DE EJEMPLO SA',
'DirRecep' => 'Calle Falsa 1234',
'CiudadRecep' => 'Montevideo',
'DeptoRecep' => 'Montevideo'
],
'Totales' => [
'TpoMoneda' => 'UYU'
],
'Items' => [
[
'NroLinDet' => '1',
'IndFact' => '1',
'NomItem' => 'Servicio de ejemplo',
'Cantidad' => 1,
'UniMed' => 'N/A',
'PrecioUnitario' => 1000,
'MontoItem' => 1000
]
],
'adenda' => 'Texto libre opcional'
]
],
'emailsToNotify' => [
]
]),
CURLOPT_COOKIE => "connect.sid=",
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}"
payload := strings.NewReader("{\n \"111\": [\n {\n \"clientEmissionId\": \"pedido-2026-000123\",\n \"IdDoc\": {\n \"MntBruto\": \"1\",\n \"FmaPago\": \"1\"\n },\n \"Receptor\": {\n \"TipoDocRecep\": \"2\",\n \"CodPaisRecep\": \"UY\",\n \"DocRecep\": \"211234567005\",\n \"RznSocRecep\": \"EMPRESA DE EJEMPLO SA\",\n \"DirRecep\": \"Calle Falsa 1234\",\n \"CiudadRecep\": \"Montevideo\",\n \"DeptoRecep\": \"Montevideo\"\n },\n \"Totales\": {\n \"TpoMoneda\": \"UYU\"\n },\n \"Items\": [\n {\n \"NroLinDet\": \"1\",\n \"IndFact\": \"1\",\n \"NomItem\": \"Servicio de ejemplo\",\n \"Cantidad\": 1,\n \"UniMed\": \"N/A\",\n \"PrecioUnitario\": 1000,\n \"MontoItem\": 1000\n }\n ],\n \"adenda\": \"Texto libre opcional\"\n }\n ],\n \"emailsToNotify\": []\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("cookie", "connect.sid=")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}")
.header("cookie", "connect.sid=")
.header("Content-Type", "application/json")
.body("{\n \"111\": [\n {\n \"clientEmissionId\": \"pedido-2026-000123\",\n \"IdDoc\": {\n \"MntBruto\": \"1\",\n \"FmaPago\": \"1\"\n },\n \"Receptor\": {\n \"TipoDocRecep\": \"2\",\n \"CodPaisRecep\": \"UY\",\n \"DocRecep\": \"211234567005\",\n \"RznSocRecep\": \"EMPRESA DE EJEMPLO SA\",\n \"DirRecep\": \"Calle Falsa 1234\",\n \"CiudadRecep\": \"Montevideo\",\n \"DeptoRecep\": \"Montevideo\"\n },\n \"Totales\": {\n \"TpoMoneda\": \"UYU\"\n },\n \"Items\": [\n {\n \"NroLinDet\": \"1\",\n \"IndFact\": \"1\",\n \"NomItem\": \"Servicio de ejemplo\",\n \"Cantidad\": 1,\n \"UniMed\": \"N/A\",\n \"PrecioUnitario\": 1000,\n \"MontoItem\": 1000\n }\n ],\n \"adenda\": \"Texto libre opcional\"\n }\n ],\n \"emailsToNotify\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://docs.pymo.uy/v1/companies/{companyRut}/sendCfes/{branchOffice}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["cookie"] = 'connect.sid='
request["Content-Type"] = 'application/json'
request.body = "{\n \"111\": [\n {\n \"clientEmissionId\": \"pedido-2026-000123\",\n \"IdDoc\": {\n \"MntBruto\": \"1\",\n \"FmaPago\": \"1\"\n },\n \"Receptor\": {\n \"TipoDocRecep\": \"2\",\n \"CodPaisRecep\": \"UY\",\n \"DocRecep\": \"211234567005\",\n \"RznSocRecep\": \"EMPRESA DE EJEMPLO SA\",\n \"DirRecep\": \"Calle Falsa 1234\",\n \"CiudadRecep\": \"Montevideo\",\n \"DeptoRecep\": \"Montevideo\"\n },\n \"Totales\": {\n \"TpoMoneda\": \"UYU\"\n },\n \"Items\": [\n {\n \"NroLinDet\": \"1\",\n \"IndFact\": \"1\",\n \"NomItem\": \"Servicio de ejemplo\",\n \"Cantidad\": 1,\n \"UniMed\": \"N/A\",\n \"PrecioUnitario\": 1000,\n \"MontoItem\": 1000\n }\n ],\n \"adenda\": \"Texto libre opcional\"\n }\n ],\n \"emailsToNotify\": []\n}"
response = http.request(request)
puts response.read_body{
"payload": {
"cfesIds": [
{
"id": "6a7121a37698d7c0ab3f1b51",
"clientEmissionId": "pedido-2026-000123",
"serie": "A",
"nro": 3503,
"type": "111",
"caeNumber": 90120000538,
"caeSerie": "A",
"caeRange": {
"first": 1,
"last": 999999
},
"caeExpirationDate": "2030-01-01T00:00:00.000Z",
"total": "3050.00",
"emitionDate": "2026-08-03T20:17:46.000-03:00",
"sentXmlHash": "mghK5nJZkGskjJUkRv8EnG+U8xa1vs1tROJsIqDXBMk=",
"securityCode": "mghK5n",
"qrUrl": "https://gatewaytest.pymo.uy/consultaQR/cfe?...",
"CAEEspecial": null,
"CausalCAEEsp": null
}
]
},
"message": {
"code": "DGI_CFES_RECEIVE_SUCCESS",
"value": "Cfes recibidos correctamente."
},
"status": "SUCCESS"
}{
"payload": {},
"message": {
"code": "UNAUTHORIZED",
"value": "Debe iniciar sesión."
},
"status": "FAIL"
}{
"payload": {},
"message": {
"code": "FORBIDDEN",
"value": "No tiene permisos para realizar esta acción."
},
"status": "FAIL"
}Autorizaciones
Sesión por cookie de POST /v1/login, válida 1 hora. Ver Autenticación.
Parámetros de ruta
"219999990008"
"1"
Cuerpo
Cuerpo de la emisión. No hay una clave cfes: cada clave del objeto es el código de tipo de CFE, y su valor es la lista de comprobantes de ese tipo. Un mismo request puede llevar varios tipos. Las únicas claves que no son un código son emailsToNotify y phonesToNotify.
Las claves están enumeradas, no son libres. El gateway ignora en silencio cualquier clave que no sea un código válido, así que un tipo mal escrito no da error: se emite nada y la respuesta dice SUCCESS. Acá el esquema las lista todas para que esa clase de error se detecte antes de mandar el request.
eTicket. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eTicket. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eTicket. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eFactura. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eFactura. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eFactura. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eFactura Expo. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eFactura Expo. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eFactura Expo. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eRemito Expo. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eTicket Cuenta A.. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eTicket Cuenta A.. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eTicket Cuenta A.. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eFactura Cuenta A.. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eFactura Cuenta A.. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eFactura Cuenta A.. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eBoleta. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eBoleta. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eBoleta. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eRemito. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eResguardo. Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eTicket Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eTicket Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eTicket Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eFactura Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eFactura Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eFactura Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eFactura Expo Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eFactura Expo Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eFactura Expo Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eRemito Expo Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eTicket Cuenta A. Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eTicket Cuenta A. Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eTicket Cuenta A. Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eFactura Cuenta A. Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eFactura Cuenta A. Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eFactura Cuenta A. Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eBoleta Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
NC eBoleta Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
ND eBoleta Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eRemito Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
eResguardo Cont. (contingencia). Los tipos de contingencia llevan serie y número propios en IdDoc.
1Show child attributes
Show child attributes
Direcciones a las que notificar el resultado. Opcional; [] es válido.
Teléfonos a los que notificar. Opcional.
Respuesta
Éxito
status es siempre SUCCESS, aunque no se haya emitido ningún comprobante. No hay conteo ni bandera de éxito parcial: hay que recorrer payload.cfesIds y mirar cada entrada.
Los datos de la respuesta. {} cuando el endpoint no devuelve nada.
Show child attributes
Show child attributes
De las 82 claves de mensaje del gateway, 29 son SUCCESS y 53 FAIL. Es lo que hay que mirar para saber si la llamada funcionó.
SUCCESS, FAIL Presente cuando la operación tiene algo que decir. Las lecturas simples responden sólo payload y status.
Show child attributes
Show child attributes