Factuarea API
Stripe

Update Stripe autoinvoicing config

Enable or disable auto-invoicing of Stripe Connect charges and choose the series used by the auto-created invoices. You can also tune the fiscal policy: `simplified_threshold_cents` (optional, range [0, 300000] = 0–3,000 €), `require_nif` (optional boolean), `refunds_enabled` (optional boolean — whether a Stripe refund generates an automatic corrective invoice) and `subscription_autoinvoicing_enabled` (optional boolean — whether Stripe subscription cycles are auto-invoiced; requires `enabled` to also be on). All optional fields keep the current values when omitted. This company-wide endpoint proxies to the single connected account when exactly one is connected; with multiple connected accounts it returns 422 (`per_account_config_required`) — configure each account via `PUT /v1/connected-accounts/{account}`. Returns 403 (`feature_not_available_in_plan`) when enabling without a sufficient plan, 422 (`validation_error`) when the threshold is out of range, and 422 (`stripe_not_connected`) when Stripe is not connected.

PUT
/stripe-autoinvoicing/config
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

import { Factuarea } from "@factuarea/sdk";const factuarea = new Factuarea({ apiKey: process.env.FACTUAREA_API_KEY! });const result = await factuarea.stripeAutoinvoicing.config.update({    // request body — see the schema below  });
{
  "data": {
    "object": "stripe_autoinvoicing_config",
    "connected": true,
    "enabled": false,
    "series_id": "0192e7b1-3c4d-7e2a-9f01-2b3c4d5e6f70",
    "available_for_current_plan": true,
    "current_plan": "empresario",
    "required_plans": [
      "empresario",
      "enterprise"
    ],
    "simplified_threshold_cents": 40000,
    "require_nif": false,
    "refunds_enabled": true,
    "subscription_autoinvoicing_enabled": false
  }
}

{
  "error": {
    "type": "authentication_error",
    "code": "missing_api_key",
    "message": "No se ha proporcionado una API key válida en el header Authorization.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
    "request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
  }
}

{
  "error": {
    "type": "authorization_error",
    "code": "insufficient_scope",
    "message": "Esta API key no tiene el scope requerido para esta operación.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
    "request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
  }
}

{
  "error": {
    "type": "idempotency_error",
    "code": "idempotency_key_reused",
    "message": "La cabecera `Idempotency-Key` ya se usó con un body distinto. Usa una clave nueva o reenvía exactamente el mismo body.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#idempotency_key_reused",
    "request_id": "req_01HKQS5NHT9A4U7R2E3F8GZWTJ"
  }
}

{
  "error": {
    "type": "invalid_request_error",
    "code": "parameter_invalid",
    "message": "El campo `name` es obligatorio y no puede estar vacío.",
    "param": "name",
    "doc_url": "https://docs.factuarea.com/guides/errors#parameter_invalid",
    "request_id": "req_01HKQS5NGS8Z3T6Q1D2E7FYVSI"
  }
}

{
  "error": {
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded",
    "message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
    "request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
  }
}

{
  "error": {
    "type": "api_error",
    "code": "internal_error",
    "message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
    "request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
  }
}
GET

Retrieve Stripe autoinvoicing config

Returns the Stripe Connect integration status and auto-invoicing configuration for your company: whether Stripe is connected, whether auto-invoicing is enabled, the series used (`series_id`), the effective plan gating (`available_for_current_plan`, `required_plans`), the fiscal policy: `simplified_threshold_cents` (the threshold in cents below which charges without a tax ID are auto-issued as simplified invoices), `require_nif` (whether a tax ID is required, vetoing automatic simplified invoices), `refunds_enabled` (whether a Stripe refund automatically generates a linked corrective invoice), and `subscription_autoinvoicing_enabled` (whether Stripe subscription cycles are auto-invoiced). This company-wide endpoint reflects the single connected account when exactly one is connected; with multiple connected accounts it returns 422 (`per_account_config_required`) — read each account via `GET /v1/connected-accounts`.

GET

List connected Stripe accounts

List the connected Stripe accounts (Stripe Connect, multi-store) for your company. Each account exposes its `id` (UUID v7), `name`, `external_account_id` (`acct_xxx`), the assigned auto-invoicing `series_id` (UUID v7 or null), the effective per-account configuration (`autoinvoicing_enabled`, `simplified_threshold_cents`, `require_nif`, `refunds_enabled`, `subscription_autoinvoicing_enabled`), `status` and `connected_at`. Charges on each account are auto-invoiced with that account series and configuration.