---
title: "Create a settlement invoice for an advance invoice"
method: POST
path: "/fiscal-document/v1/fiscal-documents/{advance_invoice_id}/settlement"
tags: ["Fiscal Documents"]
---

# Create a settlement invoice for an advance invoice

`POST /fiscal-document/v1/fiscal-documents/{advance_invoice_id}/settlement`

## Request

- Base URL: `https://api.cloudbeds.com`
- URL: `https://api.cloudbeds.com/fiscal-document/v1/fiscal-documents/{advance_invoice_id}/settlement`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://api.cloudbeds.com/auth/oauth/authorize`
    - Token URL: `https://api.cloudbeds.com/auth/oauth/token` scopes: `write:reservation`

Create a settlement invoice linked to an existing advance invoice.

A settlement invoice finalizes the billing cycle started by an advance invoice.
It references the advance invoice and may include additional transactions
that were not part of the original advance.

**Validation Rules:**
- The parent document must be an ADVANCE_INVOICE
- The parent document must be in an active status
- There must not already be an active settlement invoice for this advance

## Path parameters

- `advance_invoice_id` integer, required

## Headers

- `X-Property-ID` integer, required

## Request body

- CreateSettlementInvoiceRequest
  - `userId` integer, nullable: Ignored. The document is attributed to the authenticated user.
  - `transactionIds` integer[]: Include transactions with the specified IDs (deprecated, use `includeTransactionIds` instead)
  - `folioIds` integer[]: Include all transactions from the specified folio IDs
  - `excludeTransactionIds` integer[]: Exclude transactions with the specified IDs
  - `includeTransactionIds` integer[]: Include transactions with the specified IDs
  - `transactionIdToAmount` object, nullable: Map of transaction ID to amount (in major currency units, e.g., 10.50 for $10.50) for partial transaction inclusion
  - `recipient` RecipientRequest
    - `type` 'GUEST' | 'CONTACT' | 'GROUP' | 'COMPANY' | 'GROUP_PROFILE' | 'GROUP_PROFILE_CONTACT', required: Type of the recipient.
    - `id` integer, required: ID of the recipient, references guestId, contactId, groupId, etc. depending on type.
    - `taxDocumentSource` 'GUEST_TAX_ID' | 'GUEST_DOCUMENT_NUMBER': Source of the tax document number.
  - `manualRecipient` ManualRecipientRequest
    - `type` 'PERSON' | 'COMPANY', required: Type of recipient (person or company)
    - `name` string, required: Name of the recipient
    - `gender` 'M' | 'F' | 'N/A': Gender of the guest
    - `email` string, email, nullable: Email address of the recipient
    - `birthday` string, date, nullable: Birthday of the recipient
    - `phone` string, nullable: Phone number
    - `cellPhone` string, nullable: Cell phone number
    - `taxId` string, required: Tax ID / VAT number
    - `address` object, nullable
      - `country` string, nullable: Country code
      - `state` string, nullable: State or province
      - `city` string, nullable: City
      - `address1` string, nullable: Primary street address
      - `address2` string, nullable: Secondary street address
      - `zip` string, nullable: Zip/postal code
    - `document` object, nullable
      - `type` 'na' | 'driver_licence' | 'student_id' | 'passport' | 'dni' | 'nie': Type of guest identification document
      - `number` string, nullable: Document number
      - `issueDate` string, date, nullable: Document issue date
      - `issuingCountry` string, nullable: Country that issued the document
      - `expirationDate` string, date, nullable: Document expiration date
    - `countryData` object, nullable: Country-specific recipient fields collected from country requirements (e.g. Argentina "ar_iva_condition"), stored on the recipient's countryData.
  - `sequenceId` integer, nullable
  - `dueDatePropertyTimezone` string, date
  - `note` string, nullable
  - `packageBreakdown` boolean, nullable: Per-document override for package breakdown. Null means use property default.

## Response `200`

OK

- FiscalDocumentSummaryResponse
  - `id` string
  - `kind` 'INVOICE' | 'CREDIT_NOTE' | 'RECEIPT' | 'RECTIFY_INVOICE' | 'PRO_FORMA_INVOICE' | 'REFUND_RECEIPT' | 'INVOICE_RECEIPT' | 'ADVANCE_INVOICE' | 'SETTLEMENT_INVOICE' | 'TAX_WITHHOLDING': Kind of fiscal document
  - `status` 'COMPLETED' | 'VOIDED' | 'PAID' | 'PENDING_INTEGRATION' | 'PARTIALLY_PAID' | 'COMPLETED_INTEGRATION' | 'FAILED_INTEGRATION' | 'CORRECTION_NEEDED' | 'CANCELED' | 'CANCEL_REQUESTED' | 'OPEN' | 'REQUESTED' | 'VOID_REQUESTED' | 'FAILED' | 'MANUALLY_RECONCILED' | 'REJECTED' | 'ACCEPTED' | 'PENDING_TRANSACTION' | 'ALLOCATED' | 'APPLIED': Status of the fiscal document
  - `governmentIntegration` GovernmentIntegration
    - `number` string
    - `series` string
    - `invoiceType` string, nullable: AR ARCA invoice class (A/B/C/T) for this document, used to disambiguate documents that share series + number across classes. Null for non-AR documents.
    - `status` string
    - `qr` object
      - `url` string, uri
      - `string` string
    - `url` string, uri
    - `officialId` string
    - `externalId` string
    - `rectifyingInvoiceType` string
    - `cancellationFailedFallbackStatus` 'COMPLETED' | 'VOIDED' | 'PAID' | 'PENDING_INTEGRATION' | 'PARTIALLY_PAID' | 'COMPLETED_INTEGRATION' | 'FAILED_INTEGRATION' | 'CORRECTION_NEEDED' | 'CANCELED' | 'CANCEL_REQUESTED' | 'OPEN' | 'REQUESTED' | 'VOID_REQUESTED' | 'FAILED' | 'MANUALLY_RECONCILED' | 'REJECTED' | 'ACCEPTED' | 'PENDING_TRANSACTION' | 'ALLOCATED' | 'APPLIED': Status of the fiscal document
    - `cancellationStatus` 'PENDING' | 'CANCELLED' | 'FAILED': Outcome of the latest cancellation request sent to the tax authority.
    - `pdfFileBase64` string, byte: Base64-encoded PDF file content. Only allowed when status is COMPLETED_INTEGRATION.
    - `handwritten` boolean: Indicates this is a handwritten receipt created during POS unavailability.
    - `signatures` IntegrationSignature[]: Array of semantic signatures/response data from the government integration.
      - `type` string: Semantic type (JWT_TOKEN, QR_CODE_DATA, TRANSACTION_ID, COMPLIANCE_CHECK, etc.)
      - `label` string: Human-readable display label.
      - `value` string: The actual signature data/value.
      - `format` 'TEXT' | 'BASE64' | 'HEX' | 'URL' | 'UNKNOWN': Format of the value.
      - `source` string: Source integration (FISKALTRUST_FR, FISKALTRUST_IT, etc.)
      - `rawMetadata` object: Original integration-specific codes for debugging/auditing.
    - `folioFiscal` string: MX SAT UUID (Folio Fiscal) — populated after CFDI acceptance by Fonoa.
    - `satQrCode` string: MX SAT validation URL used to verify a CFDI at verificacfdi.facturaelectronica.sat.gob.mx.
    - `ext` object: Provider-returned extension values for the document, keyed by extension or stamp code (e.g. AR "ar-arca-doc-type", and "arca-cae-expiry" for the CAE expiry date as YYYY-MM-DD; the CAE itself is in officialId). Read-only.
    - `connectionId` integer: The fiscalization connection this document was dispatched through; its provider and channel are those of the connection. Read-only — a partner reporting an outcome cannot change where the document was routed, and uses this to confirm the document was addressed to it before acting on it.
  - `linkedTo` string

---

[API](https://skmtc.dev/cloudbeds/apis/fiscal-document-service-api.md) - [All operations](https://skmtc.dev/cloudbeds/apis/fiscal-document-service-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cloudbeds/apis/fiscal-document-service-api/revisions/9c2a47775e5e?raw)
