Facta API

Direct HTTP: C#

No Facta library required

Call the public Supabase function URL directly. Keep API keys and signing keys on your server.

Prerequisite

.NET HttpClient

Example

using System.Net.Http.Json;
using var http = new HttpClient { BaseAddress = new Uri(Environment.GetEnvironmentVariable("FACTA_API_BASE_URL")!.TrimEnd('/') + "/v1/") };
using var request = new HttpRequestMessage(HttpMethod.Post, "dte") { Content = JsonContent.Create(new { tipoDte = "01", items = new[] { new { descripcion = "Servicio", cantidad = 1, precioUni = 10.0 } } }) };
request.Headers.Add("X-Facta-Key", Environment.GetEnvironmentVariable("FACTA_API_KEY")!); request.Headers.Add("X-Facta-Sign-Key", Environment.GetEnvironmentVariable("FACTA_SIGN_KEY")!); request.Headers.Add("Idempotency-Key", "order-123");
using var response = await http.SendAsync(request); response.EnsureSuccessStatusCode(); Console.WriteLine(await response.Content.ReadAsStringAsync());

See the HTTP reference for headers, responses and recovery rules.