Factura Electrónica con Swift
Generar Facturas Electrónicas en Swift nunca fue tan sencillo.
Usa nuestra API REST para poder emitir documentos electrónicos usando Swift. Sólo debes enviarnos una TRAMA o un ARCHIVO en TXT o JSON y nosotros generamos el PDF, XML, lo enviamos a la SUNAT como PSE autorizado, y almacenamos el CDR de forma segura.
Formatos de Integración Compatibles
Elige el método que mejor se adapte a tu arquitectura de software en Swift.
Opción 1: API REST en JSON
Envía peticiones HTTP POST estándar estructuradas en formato JSON. Ideal para aplicaciones web, APIs modernas y microservicios en Swift.
- Cálculo automático de impuestos e IGV
- Generación de códigos Hash y Digest
- Respuestas síncronas con URL de PDF y XML
Opción 2: Archivo Plano TXT
Genera un archivo de texto con campos delimitados por pipes (|). Especialmente recomendado para software de escritorio legado y ERPs tradicionales.
- Compatible con sistemas DOS, POS y Windows nativos
- Sin necesidad de parsers JSON complejos
- Procesamiento automático en segundo plano
Emisión de Factura Electrónica en Swift
.package(url: "https://github.com/nubofact/swift-sdk.git", from: "1.0.0")import Foundation
let url = URL(string: "https://api.nubofact.com/api/v1/fae10170-demo")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.setValue("Token token=\"demo-token-12345\"", forHTTPHeaderField: "Authorization")
let body: [String: Any] = [
"operacion": "generar_comprobante",
"tipo_de_comprobante": 1,
"serie": "FFF1",
"numero": 1,
"cliente_numero_de_documento": "00000000000",
"total": 118.00
]
request.httpBody = try? JSONSerialization.data(withJSONObject: body)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else { return }
print(String(data: data, encoding: .utf8) ?? "")
}
task.resume()
Parámetros Principales del Comprobante
Estructura estándar de campos obligatorios requeridos por la API de Nubofact y validados ante SUNAT.
| Campo | Tipo | Descripción | Ejemplo |
|---|---|---|---|
| operacion | string | Acción a realizar en la API | "generar_comprobante" |
| tipo_de_comprobante | integer | 1 = Factura, 2 = Boleta, 3 = Nota de Crédito | 1 |
| serie | string | Serie correlativa de 4 caracteres | "FFF1" |
| numero | integer | Número correlativo consecutivo | 1 |
| cliente_numero_de_documento | string | RUC (11 dígitos) o DNI (8 dígitos) del receptor | "00000000000" |
| total | decimal | Importe total a pagar (incluye IGV) | 118.00 |
Solicita Cotización para Integración en Swift
Ingresa el RUC de tu empresa para recibir una propuesta a medida según tu volumen estimado de comprobantes.