--- paths: "/sales": get: summary: Consultar vendas x-badges: - name: Beta color: "#f5803e" tags: - Vendas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna uma lista paginada de vendas. Por padrão, retorna apenas vendas abertas e fechadas; para incluir vendas excluídas (canceladas), utilize o parâmetro status." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: date_field required: false schema: type: string enum: - sale_date - departure_date - return_date description: 'Campo de data usado no filtro. Valores aceitos: sale_date (data da venda), departure_date (início da viagem) e return_date (fim da viagem). Obrigatório quando date_from ou date_to é informado.' example: sale_date - in: query name: date_from required: false schema: type: string format: date description: Filtrar vendas cujo campo escolhido em date_field seja igual ou posterior a esta data, no formato ISO 8601 (AAAA-MM-DD). example: '2024-01-01' - in: query name: date_to required: false schema: type: string format: date description: Filtrar vendas cujo campo escolhido em date_field seja igual ou anterior a esta data, no formato ISO 8601 (AAAA-MM-DD). example: '2024-12-31' - in: query name: status required: false schema: type: array items: type: string enum: - opened - closed - canceled style: form explode: false description: 'Filtrar vendas por situação. Para múltiplas situações, separe os valores por vírgula (ex.: opened,closed,canceled). Valores aceitos: opened (aberta), closed (fechada) e canceled (excluída). Quando o parâmetro não é informado, a API retorna apenas vendas abertas e fechadas; vendas excluídas só são retornadas quando solicitadas explicitamente.' example: - opened - closed examples: single_status: summary: Filtrar por uma situação value: - canceled multiple_statuses: summary: Filtrar por múltiplas situações value: - opened - closed - canceled - in: query name: people_id required: false schema: type: array items: type: string format: uuid style: form explode: false description: 'Filtrar vendas pela pessoa participante, informando o identificador (UUID) dela. A venda é retornada quando a pessoa aparece em qualquer papel: pagante, vendedor, intermediário, solicitante, aprovador, promotor, passageiro, fornecedor, representante ou quem cadastrou a venda. Para vários identificadores, separe-os por vírgula — a venda é retornada quando qualquer uma das pessoas participa dela.' example: - b2a6d7da-ff94-40e3-b069-812b2fd45b91 examples: single_person: summary: Filtrar por uma pessoa value: - b2a6d7da-ff94-40e3-b069-812b2fd45b91 multiple_people: summary: Filtrar por várias pessoas value: - b2a6d7da-ff94-40e3-b069-812b2fd45b91 - 3f1c9e20-5d7a-4b6c-9e2f-1a2b3c4d5e6f - in: query name: number required: false schema: type: integer description: 'Filtrar vendas pelo número exibido no aplicativo (ex.: 1024). Um número por requisição.' example: 1024 - in: query name: updated_since required: false schema: type: string format: date-time description: Filtrar vendas atualizadas neste instante ou depois dele, no formato ISO 8601. Aceita data (AAAA-MM-DD, cai no início do dia) ou data-hora (AAAA-MM-DDTHH:MM:SS). Sem fuso no valor, considera o horário de Brasília. Útil para reprocessar apenas o que mudou desde a última consulta, inclusive no mesmo dia. example: '2026-08-01T14:30:00' - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/sales" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" post: summary: Inserir venda x-badges: - name: Beta color: "#f5803e" tags: - Vendas description: |- ⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/idempotency_key_header" responses: '200': description: 'Retorno de uma requisição que já foi processada anteriormente com sucesso. A resposta é idêntica à original, mas com status 200 ao invés de 201, e inclui o cabeçalho X-Idempotent-Replay: true.' headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Indica que esta resposta é um replay de uma requisição anterior processada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/sale_detail" examples: all_products_sale: summary: Venda com todos os produtos "$ref": "#/components/examples/all_products_sale_single" '201': description: Venda criada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/sale_detail" examples: all_products_sale: summary: Venda com todos os produtos "$ref": "#/components/examples/all_products_sale_single" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '409': "$ref": "#/components/responses/conflict" '415': "$ref": "#/components/responses/unsupported_media_type" '422': "$ref": "#/components/responses/unprocessable_content" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" requestBody: required: true content: application/json: schema: "$ref": "#/components/schemas/sale" examples: all_products_sale: summary: Venda com todos os produtos "$ref": "#/components/examples/all_products_sale" sale_with_custom_fields: summary: Venda com campos personalizados "$ref": "#/components/examples/sale_with_custom_fields" required_fields_sale: summary: Venda com campos obrigatórios "$ref": "#/components/examples/required_fields_sale" multiple_products_of_same_kind_sale: summary: Venda com múltiplos produtos do mesmo tipo "$ref": "#/components/examples/multiple_products_of_same_kind_sale" insurance_only_sale: summary: Venda de seguro viagem "$ref": "#/components/examples/insurance_only_sale" cruise_only_sale: summary: Venda de cruzeiro "$ref": "#/components/examples/cruise_only_sale" hotel_only_sale: summary: Venda de diárias de hospedagem "$ref": "#/components/examples/hotel_only_sale" airline_ticket_only_sale: x-ignore-on-postman: true summary: Venda de passagem aérea "$ref": "#/components/examples/airline_ticket_only_sale" train_ticket_only_sale: x-ignore-on-postman: true summary: Venda de bilhete de trem "$ref": "#/components/examples/train_ticket_only_sale" ground_transportation_only_sale: x-ignore-on-postman: true summary: Venda de transporte terrestre "$ref": "#/components/examples/ground_transportation_only_sale" car_rental_only_sale: x-ignore-on-postman: true summary: Venda de locação de veículo "$ref": "#/components/examples/car_rental_only_sale" travel_package_only_sale: x-ignore-on-postman: true summary: Venda de pacote turístico "$ref": "#/components/examples/travel_package_only_sale" company_payer_sale: summary: Venda com payer pessoa jurídica "$ref": "#/components/examples/company_payer_sale" foreigner_payer_sale: summary: Venda com payer estrangeiro "$ref": "#/components/examples/foreigner_payer_sale" datetime_products_sale: summary: Venda com datas e horários nos produtos "$ref": "#/components/examples/datetime_products_sale" foreign_sale: summary: Venda com currency e supplier estrangeiro "$ref": "#/components/examples/foreign_sale" foreign_passenger_sale: summary: Venda com passageiro estrangeiro "$ref": "#/components/examples/foreign_passenger_sale" multiple_passengers_sale: summary: Venda com múltiplos passageiros "$ref": "#/components/examples/multiple_passengers_sale" multiple_passengers_one_amount_sale: summary: Venda com múltiplos passageiros mas apenas um com amount "$ref": "#/components/examples/multiple_passengers_one_amount_sale" partial_payment_sale: summary: Venda com pagamento parcial "$ref": "#/components/examples/partial_payment_sale" operation_only_sale: summary: Venda de operação própria com passageiros "$ref": "#/components/examples/operation_only_sale" operation_no_passengers_sale: summary: Venda de operação própria sem passageiros "$ref": "#/components/examples/operation_no_passengers_sale" own_operation_sale: summary: Venda de operação própria com todos os produtos "$ref": "#/components/examples/own_operation_sale" closed_sale_with_commissions: summary: Venda fechada com comissões "$ref": "#/components/examples/closed_sale_with_commissions" "/sales/{id}": get: summary: Consultar venda por ID x-badges: - name: Beta color: "#f5803e" tags: - Vendas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna os dados de uma venda específica." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da venda (formato UUID). example: 212b54b8-27df-4859-80a9-79ad855bcd09 responses: '200': "$ref": "#/components/responses/sale" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/attachments": post: summary: Enviar anexo x-badges: - name: Beta tags: - Anexos description: |- ⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_multipart" - "$ref": "#/components/parameters/idempotency_key_header" requestBody: required: true content: multipart/form-data: schema: "$ref": "#/components/schemas/attachment" examples: upload_attachments: summary: Exemplo de envio de anexo. "$ref": "#/components/examples/upload_attachments" responses: '200': description: 'Resposta de uma requisição que já foi processada com sucesso anteriormente. A resposta é idêntica à original, mas com status 200 ao invés de 201, e inclui o cabeçalho X-Idempotent-Replay: true.' headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Indica que esta resposta é uma repetição de uma requisição processada com sucesso anteriormente. content: application/json: schema: "$ref": "#/components/schemas/attachments_response" '201': description: Anexo enviado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/attachments_response" examples: upload_attachments: summary: Exemplo de resposta do envio de anexo. "$ref": "#/components/examples/upload_attachments_response" '400': description: Não foi possível processar a requisição devido a um erro de sintaxe ou formatação. Verifique se os campos do form-data estão presentes e válidos. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - Não foi possível processar a requisição devido a um erro de sintaxe ou formatação. Certifique-se de que todos os campos, como resource_type, resource_id e file, estão corretos antes de tentar novamente. '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '409': "$ref": "#/components/responses/conflict" '415': description: O cabeçalho Content-Type da requisição especificou um tipo de mídia que não é suportado pela API. Certifique-se de que a requisição esteja utilizando multipart/form-data. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - O cabeçalho Content-Type da requisição especificou um tipo de mídia que não é suportado pela API. Certifique-se de que a requisição esteja utilizando multipart/form-data. '422': description: Ocorreu um erro de validação. Verifique as mensagens de erro retornadas para mais detalhes. content: application/json: schema: type: object properties: errors: type: array items: type: string description: 'Lista de mensagens de erro. Exemplo: `[Formato inválido para anexo, Arquivo ''voucher.exe'' com extensão ''.exe'' não é permitida. Extensões permitidas: ''.pdf, .doc, .docx, .odt, .xls, .xlsx, .ods, .ppt, .pptx, .jpg, .jpeg, .png, .webp, .heic, .heif, .txt, .csv'', Arquivo ''voucher.pdf'' (5.2 MB) excede o tamanho máximo permitido de 12 MB]`' examples: - - Formato inválido para anexo - 'Arquivo ''voucher.exe'' com extensão ''.exe'' não é permitida. Extensões permitidas: ''.pdf, .doc, .docx, .odt, .xls, .xlsx, .ods, .ppt, .pptx, .jpg, .jpeg, .png, .webp, .heic, .heif, .txt, .csv''' - Arquivo 'voucher.pdf' (5.2 MB) excede o tamanho máximo permitido de 12 MB '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/products": get: summary: Consultar produtos x-badges: - name: Beta color: "#f5803e" tags: - Produtos description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de produtos disponíveis no sistema, com possibilidade de filtrar por tipo de produto." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: kind required: false schema: type: array items: type: string enum: - insurance - cruise - hotel - airline_ticket - train_ticket - ground_transportation - excursion - car_rental - travel_package - cvc_package - operation - others style: form explode: false description: " Filtra produtos por tipo. Para múltiplos tipos, separe os valores por vírgula (ex: insurance,cruise,hotel). " example: - insurance - cruise examples: single_kind: summary: Filtro por um único tipo value: - insurance multiple_kinds: summary: Filtro por múltiplos tipos value: - insurance - cruise - hotel - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/products" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/products/{id}": get: summary: Consultar produto por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Produtos description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna os dados completos de um produto específico, incluindo seus fornecimentos com o fornecedor, os dados de comissão e os representantes." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único do produto (formato UUID). example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/product" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cabins": get: summary: Consultar cabines x-badges: - name: Beta color: "#f5803e" tags: - Cabines description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de tipos de cabine cadastrados no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/cabins" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/ships": get: summary: Consultar navios x-badges: - name: Beta color: "#f5803e" tags: - Navios description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de navios cadastrados no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/ships" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cost_centers": get: summary: Consultar centros de custo x-badges: - name: Beta color: "#f5803e" tags: - Centros de Custo description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de centros de custo cadastrados no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/cost_centers" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cost_centers/{id}": get: summary: Consultar centro de custo por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Centros de Custo description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna um centro de custo específico pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único do centro de custo example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/cost_center" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/currencies": get: summary: Consultar moedas x-badges: - name: Beta color: "#f5803e" tags: - Moedas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de moedas cadastradas no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/currencies" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/currencies/{code}": get: summary: Consultar moeda por código x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Moedas description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma moeda específica pelo seu código ISO 4217." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: code required: true schema: type: string description: Código da moeda no padrão ISO 4217 example: BRL responses: '200': "$ref": "#/components/responses/currency" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/categories": get: summary: Consultar categorias x-badges: - name: Beta color: "#f5803e" tags: - Categorias description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de categorias financeiras cadastradas no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/categories" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/categories/{id}": get: summary: Consultar categoria por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Categorias description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma categoria financeira específica pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da categoria example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/category" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cities": get: summary: Consultar cidades x-badges: - name: Beta color: "#f5803e" tags: - Cidades description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de cidades cadastradas no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: name required: false schema: type: string description: Filtra por nome, sem diferenciar maiúsculas, acentos ou posição (busca por trecho). example: sao paulo - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/cities" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cities/{id}": get: summary: Consultar cidade por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Cidades description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma cidade específica pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da cidade example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/city" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/sellers": get: summary: Consultar vendedores x-badges: - name: Beta color: "#f5803e" tags: - Vendedores description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de vendedores cadastrados no sistema (ativos e inativos)." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/sellers" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/sellers/{id}": get: summary: Consultar vendedor por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Vendedores description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna um vendedor específico pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único do vendedor example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/seller" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/payment_methods": get: summary: Consultar formas de pagamento x-badges: - name: Beta color: "#f5803e" tags: - Formas de Pagamento description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de formas de pagamento cadastradas no sistema. Formas de uso interno do sistema não são retornadas." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/payment_methods" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/payment_methods/{id}": get: summary: Consultar forma de pagamento por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Formas de Pagamento description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma forma de pagamento específica pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da forma de pagamento example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/payment_method" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/accounts": get: summary: Consultar contas e cartões x-badges: - name: Beta color: "#f5803e" tags: - Contas e Cartões description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de contas e cartões disponíveis nas empresas em que a credencial tem permissão. Contas ativas e inativas são retornadas." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/accounts" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/accounts/{id}": get: summary: Consultar conta ou cartão por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Contas e Cartões description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma conta ou cartão específico pelo seu identificador, desde que disponível em uma empresa em que a credencial tem permissão." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da conta example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/account" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/nf_rules": get: summary: Consultar regras da nota fiscal x-badges: - name: Beta color: "#f5803e" tags: - Regras da Nota Fiscal description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de regras da nota fiscal cadastradas no sistema. Produto, fornecedor e pagante nulos indicam que a regra vale para todos." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/nf_rules" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/nf_rules/{id}": get: summary: Consultar regra da nota fiscal por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Regras da Nota Fiscal description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma regra da nota fiscal específica pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da regra da nota fiscal example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/nf_rule" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/tasks": get: summary: Consultar tarefas x-badges: - name: Beta color: "#f5803e" tags: - Tarefas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de tarefas das empresas em que a credencial tem permissão (tarefas sem empresa são visíveis em todas). Tarefas excluídas não são retornadas." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/tasks" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" post: summary: Criar tarefa x-badges: - name: Beta color: "#f5803e" tags: - Tarefas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Cria uma tarefa na empresa informada em `company_identifier`, com responsável, categoria e vencimento. Aceita, em `history`, os comentários com que a tarefa nasce. O responsável é avisado por e-mail, e a tarefa nasce pendente." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/idempotency_key_header" responses: '200': description: 'Requisição repetida com a mesma `Idempotency-Key`: devolve a resposta da criação original, sem criar outra tarefa.' headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Presente quando a resposta é a repetição de uma criação anterior. content: application/json: schema: "$ref": "#/components/schemas/task" examples: task_detail: summary: Tarefa com histórico e campos personalizados "$ref": "#/components/examples/task_detail" '201': description: Tarefa criada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/task" examples: task_detail: summary: Tarefa com histórico e campos personalizados "$ref": "#/components/examples/task_detail" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '409': "$ref": "#/components/responses/conflict" '415': "$ref": "#/components/responses/unsupported_media_type" '422': "$ref": "#/components/responses/unprocessable_content" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" requestBody: required: true content: application/json: schema: "$ref": "#/components/schemas/task_create" examples: create_task: summary: Tarefa com todos os campos "$ref": "#/components/examples/create_task" create_required_fields_task: summary: Tarefa só com os campos obrigatórios "$ref": "#/components/examples/create_required_fields_task" "/tasks/{id}": get: summary: Consultar tarefa por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Tarefas description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna os dados de uma tarefa específica, incluindo o histórico e os campos personalizados." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da tarefa (formato UUID). example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/task" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" patch: summary: Alterar tarefa x-badges: - name: Beta color: "#f5803e" tags: - Tarefas description: '⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Altera uma tarefa já cadastrada. Informe apenas os campos que devem mudar: o campo omitido, ou enviado como nulo ou como texto vazio, permanece como está, então um campo não é esvaziado por esta operação. O `title` é exceção: a tarefa precisa ter título, e enviá-lo como texto vazio é recusado. Para concluir a tarefa envie `completed` como `true`, e para reabri-la, como `false`. O `company_identifier` leva a tarefa para outra empresa e exige a permissão de criar/editar tarefas também nela; a tarefa não fica sem empresa por esta operação. Os campos personalizados não substituem: cada um enviado é gravado por cima do atual, e os demais permanecem. Comentários são enviados em [Comentar na tarefa](#tag/Tarefas/paths/~1tasks~1{task_id}~1history/post). Exige a permissão de criar/editar tarefas. Tarefa excluída não pode ser alterada: a resposta é 409. Quem participa da tarefa é avisado por e-mail da alteração, como na alteração feita no Monde. A resposta traz a tarefa alterada no mesmo formato da consulta por ID quando a credencial também tem a permissão "Ler todas as tarefas" na empresa da tarefa; sem ela, a alteração é gravada do mesmo jeito e a resposta traz apenas o `id` da tarefa.' security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/idempotency_key_header" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da tarefa (formato UUID). example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': description: Tarefa alterada com sucesso. headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Presente quando a resposta é a repetição de uma alteração anterior. content: application/json: schema: anyOf: - "$ref": "#/components/schemas/task" - "$ref": "#/components/schemas/entity_reference" examples: task_detail: summary: Tarefa com histórico e campos personalizados "$ref": "#/components/examples/task_detail" written_task_reference: summary: Tarefa gravada, sem permissão de leitura "$ref": "#/components/examples/written_task_reference" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '409': description: 'Requisição em conflito: uma requisição com a mesma chave de idempotência já está sendo processada, ou a tarefa está excluída e não pode ser alterada.' content: application/json: schema: type: object properties: errors: type: array items: type: string examples: - Uma requisição com esta chave de idempotência já está sendo processada. Aguarde a conclusão antes de tentar novamente. - A tarefa está excluída e não pode ser alterada. '415': "$ref": "#/components/responses/unsupported_media_type" '422': "$ref": "#/components/responses/unprocessable_content" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" requestBody: required: true content: application/json: schema: "$ref": "#/components/schemas/task_update" examples: update_task: summary: Alteração de tarefa "$ref": "#/components/examples/update_task" complete_task: summary: Conclusão de tarefa "$ref": "#/components/examples/complete_task" delete: summary: Excluir tarefa x-badges: - name: Beta color: "#f5803e" tags: - Tarefas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Exclui a tarefa. A tarefa excluída deixa de aparecer em [Consultar tarefas](#tag/Tarefas/paths/~1tasks/get), mas continua disponível na consulta por ID, com `deleted` igual a `true`, e não pode mais ser alterada nem receber comentário. Tarefa concluída não pode ser excluída: reabra-a antes, enviando `completed` como `false` em [Alterar tarefa](#tag/Tarefas/paths/~1tasks~1{id}/patch). Exige a permissão de excluir tarefas na empresa da tarefa. Quem participa da tarefa é avisado por e-mail da exclusão, como na exclusão feita no Monde. Não exige `Idempotency-Key`: repetir a requisição depois de excluída responde 409." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da tarefa (formato UUID). example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '204': description: Tarefa excluída com sucesso. A resposta não tem corpo. '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '409': description: 'A tarefa não pode ser excluída: está concluída ou já foi excluída. Nada foi alterado.' content: application/json: schema: type: object properties: errors: type: array items: type: string examples: - A tarefa está concluída e não pode ser excluída. Reabra a tarefa antes de excluí-la. - A tarefa já está excluída. '415': "$ref": "#/components/responses/unsupported_media_type" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/tasks/{task_id}/history": post: summary: Comentar na tarefa x-badges: - name: Beta color: "#f5803e" tags: - Tarefas description: '⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Acrescenta um comentário ao histórico da tarefa e devolve a tarefa com o histórico atualizado — ou apenas o `id` da tarefa, quando a credencial não tem a permissão "Ler todas as tarefas" na empresa da tarefa. Quem participa da tarefa é avisado do comentário por e-mail, como no comentário feito no Monde. Exige a permissão de criar/editar tarefas. Tarefa excluída não recebe comentário: a resposta é 409. O histórico é só acréscimo: comentário registrado não se altera nem se exclui, e as linhas de alteração que o Monde gera não são enviadas por aqui.' security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/idempotency_key_header" - in: path name: task_id required: true schema: type: string format: uuid description: Identificador único da tarefa (formato UUID). example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': description: 'Requisição repetida com a mesma `Idempotency-Key`: devolve a resposta do registro original, sem registrar outro comentário.' headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Presente quando a resposta é a repetição de um registro anterior. content: application/json: schema: "$ref": "#/components/schemas/task" examples: task_detail: summary: Tarefa com histórico e campos personalizados "$ref": "#/components/examples/task_detail" '201': description: Comentário registrado com sucesso. content: application/json: schema: anyOf: - "$ref": "#/components/schemas/task" - "$ref": "#/components/schemas/entity_reference" examples: task_detail: summary: Tarefa com histórico e campos personalizados "$ref": "#/components/examples/task_detail" written_task_reference: summary: Tarefa gravada, sem permissão de leitura "$ref": "#/components/examples/written_task_reference" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '409': description: 'Requisição em conflito: uma requisição com a mesma chave de idempotência já está sendo processada, ou a tarefa está excluída e não recebe comentário.' content: application/json: schema: type: object properties: errors: type: array items: type: string examples: - Uma requisição com esta chave de idempotência já está sendo processada. Aguarde a conclusão antes de tentar novamente. - A tarefa está excluída e não pode ser alterada. '415': "$ref": "#/components/responses/unsupported_media_type" '422': "$ref": "#/components/responses/unprocessable_content" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" requestBody: required: true content: application/json: schema: "$ref": "#/components/schemas/task_historic_create" examples: create_task_historic: summary: Comentário na tarefa "$ref": "#/components/examples/create_task_historic" "/task_categories": get: summary: Consultar categorias de tarefas x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Categorias de Tarefas description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna a lista de categorias de tarefas cadastradas no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/task_categories" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/task_categories/{id}": get: summary: Consultar categoria de tarefa por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Categorias de Tarefas description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna os dados de uma categoria de tarefa específica." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: integer description: Identificador único da categoria de tarefa. example: 42 responses: '200': "$ref": "#/components/responses/task_category" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/travels": get: summary: Consultar viagens x-badges: - name: Beta color: "#f5803e" tags: - Viagens description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de viagens das empresas em que a credencial tem permissão. As datas e a situação são calculadas a partir dos produtos ativos das vendas vinculadas não canceladas. Aceita filtro por data pelo início ou fim da viagem com os parâmetros date_field, date_from e date_to." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: date_field required: false schema: type: string enum: - start_date - end_date description: 'Campo de data usado no filtro. Valores aceitos: start_date (início da viagem) e end_date (fim da viagem), ambos calculados a partir das vendas vinculadas. Obrigatório quando date_from ou date_to é informado.' example: start_date - in: query name: date_from required: false schema: type: string format: date description: Filtrar viagens cujo campo escolhido em date_field seja igual ou posterior a esta data, no formato ISO 8601 (AAAA-MM-DD). example: '2024-01-01' - in: query name: date_to required: false schema: type: string format: date description: Filtrar viagens cujo campo escolhido em date_field seja igual ou anterior a esta data, no formato ISO 8601 (AAAA-MM-DD). example: '2024-12-31' - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/travels" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/travels/{id}": get: summary: Consultar viagem por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Viagens description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma viagem específica com seus campos escalares e as referências às vendas e aos passageiros vinculados. Os valores por passageiro pertencem a cada venda, obtidos pelo endpoint da venda." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da viagem a ser obtida example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/travel" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/quotes": get: summary: Consultar orçamentos x-badges: - name: Beta color: "#f5803e" tags: - Orçamentos description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de orçamentos das empresas em que a credencial tem permissão." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/quotes" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/quotes/{id}": get: summary: Consultar orçamento por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Orçamentos description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna um orçamento específico pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: integer description: Identificador único do orçamento example: 42 responses: '200': "$ref": "#/components/responses/quote" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/invoice_rules": get: summary: Consultar regras de faturamento x-badges: - name: Beta color: "#f5803e" tags: - Regras de Faturamento description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de regras de faturamento cadastradas no sistema. Cada regra pertence a uma pessoa (ou a todas, quando nula) de um dos tipos cliente, fornecedor ou representante." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/invoice_rules" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/invoice_rules/{id}": get: summary: Consultar regra de faturamento por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Regras de Faturamento description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma regra de faturamento específica pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da regra de faturamento example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/invoice_rule" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/integrations": get: summary: Consultar integrações x-badges: - name: Beta color: "#f5803e" tags: - Integrações description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de integrações das empresas em que a credencial tem permissão (integrações sem empresa valem para todas). Os dados de acesso da integração (usuários, senhas e tokens) nunca são retornados." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/integrations" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/integrations/{id}": get: summary: Consultar integração por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Integrações description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna uma integração específica pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da integração example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/integration" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/people": get: summary: Consultar pessoas x-badges: - name: Beta color: "#f5803e" tags: - Pessoas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de pessoas cadastradas. É uma consulta enxuta: traz apenas os escalares próprios e as referências ({id, name}) das entidades fortes (naturalidade, vendedor, promotor, quem cadastrou e a cidade do endereço). As entidades fracas (contatos, marcadores, campos personalizados, anexos, cartões e retenção da Lei Kandir) só aparecem na consulta por ID (GET /people/{id})." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: name required: false schema: type: string description: Filtra por nome, sem diferenciar maiúsculas, acentos ou posição (busca por trecho). example: Maria da Silva - in: query name: cpf_cnpj required: false schema: type: string description: Filtra por CPF ou CNPJ (casa contra qualquer um dos dois). Informe só os dígitos, sem pontos, barras, traços ou espaços. example: '38107867807' - in: query name: passport_number required: false schema: type: string description: Filtra por número do passaporte, sem diferenciar maiúsculas ou acentos (busca por trecho). example: FG225776 - in: query name: phone required: false schema: type: string description: Filtra por qualquer um dos telefones (fixo, comercial ou celular). Informe só os dígitos; casa contra qualquer trecho do número gravado, independente da máscara. example: '11934567890' - in: query name: kind required: false schema: type: string enum: - individual - company description: 'Filtra pelo tipo da pessoa: individual (pessoa física) ou company (pessoa jurídica).' example: individual - in: query name: code required: false schema: type: integer description: Filtra pelo código sequencial da pessoa (valor exato). example: 1024 - in: query name: email required: false schema: type: string description: Filtra por e-mail, sem diferenciar maiúsculas ou acentos (busca por trecho). example: contato@exemplo.com - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/people" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" post: summary: Inserir pessoa x-badges: - name: Beta color: "#f5803e" tags: - Pessoas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Insere uma pessoa física ou jurídica. Cada requisição cria um cadastro novo: o `external_id`, quando informado, precisa estar livre, e o CPF/CNPJ não pode pertencer a nenhuma pessoa já cadastrada. A resposta traz a pessoa criada no mesmo formato da consulta por ID." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/idempotency_key_header" responses: '200': description: 'Requisição repetida com a mesma Idempotency-Key: devolve a resposta da primeira chamada, sem criar outra pessoa.' headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Presente quando a resposta repete uma requisição já processada. content: application/json: schema: "$ref": "#/components/schemas/person_detail" examples: person_detail: summary: Consulta de pessoa por ID "$ref": "#/components/examples/person_detail" '201': description: Pessoa criada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/person_detail" examples: person_detail: summary: Consulta de pessoa por ID "$ref": "#/components/examples/person_detail" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '409': "$ref": "#/components/responses/conflict" '415': "$ref": "#/components/responses/unsupported_media_type" '422': "$ref": "#/components/responses/unprocessable_content" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" requestBody: required: true content: application/json: schema: "$ref": "#/components/schemas/person_registration" examples: create_individual_person: summary: Cadastro de pessoa física "$ref": "#/components/examples/create_individual_person" create_company_person: summary: Cadastro de pessoa jurídica "$ref": "#/components/examples/create_company_person" "/people/{id}": get: summary: Consultar pessoa por ID x-badges: - name: Beta color: "#f5803e" tags: - Pessoas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna os dados completos de uma pessoa pelo seu identificador, incluindo os blocos agrupados (dados adicionais, últimos contatos, retenções e companhia aérea) e as entidades fracas (contatos, marcadores, campos personalizados, anexos, cartões de crédito (sempre mascarados), e retenção da Lei Kandir)." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - name: id in: path required: true schema: type: string format: uuid description: Identificador único (UUID) da pessoa. example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/person" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" patch: summary: Alterar pessoa x-badges: - name: Beta color: "#f5803e" tags: - Pessoas description: '⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Altera uma pessoa já cadastrada. Informe apenas os campos que devem mudar: o campo omitido, ou enviado como nulo ou como texto vazio, permanece como está — um campo de texto não é esvaziado por esta operação. O `name` é exceção: a pessoa precisa ter nome, então enviá-lo como texto vazio é recusado. O tipo da pessoa não muda: `person_kind`, quando informado, precisa ser o mesmo que a pessoa já é. O `external_id` passa a identificar a pessoa, desde que não esteja identificando outra; o CPF/CNPJ e o código de companhia aérea não podem pertencer a outra pessoa. As listas `labels` e `contacts` funcionam por substituição: a lista enviada passa a ser a da pessoa, a lista vazia retira todos os itens e o campo omitido mantém os atuais. Os campos personalizados não substituem: cada um enviado é gravado por cima do atual, e os demais permanecem. A resposta traz a pessoa alterada no mesmo formato da consulta por ID quando a credencial também tem a permissão "Ler todas as pessoas"; sem ela, a alteração é gravada do mesmo jeito e a resposta traz apenas o `id` da pessoa.' security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/idempotency_key_header" - name: id in: path required: true schema: type: string format: uuid description: Identificador único (UUID) da pessoa. example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': description: Pessoa alterada com sucesso. headers: X-Idempotent-Replay: schema: type: string enum: - 'true' description: Presente quando a resposta repete uma requisição já processada. content: application/json: schema: anyOf: - "$ref": "#/components/schemas/person_detail" - "$ref": "#/components/schemas/entity_reference" examples: person_detail: summary: Consulta de pessoa por ID "$ref": "#/components/examples/person_detail" updated_person_reference: summary: Pessoa alterada, sem permissão de leitura "$ref": "#/components/examples/updated_person_reference" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '409': "$ref": "#/components/responses/conflict" '415': "$ref": "#/components/responses/unsupported_media_type" '422': "$ref": "#/components/responses/unprocessable_content" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" requestBody: required: true content: application/json: schema: "$ref": "#/components/schemas/person_update" examples: update_person: summary: Alteração de pessoa "$ref": "#/components/examples/update_person" delete: summary: Excluir pessoa x-badges: - name: Beta color: "#f5803e" tags: - Pessoas description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Exclui a pessoa em definitivo. Só pode ser excluída a pessoa que não tem registros vinculados — vendas (como cliente, passageiro, intermediário ou fornecedor), lançamentos financeiros, notas fiscais, orçamentos, tarefas, comissões, cartões, contas, anexos (inclusive os já removidos), entre outros — e que não é usuário do sistema nem empresa do sistema. Nesses casos a resposta é 409 e nada é alterado. Junto com a pessoa são removidos os seus contatos, marcadores e `external_id`, e os vínculos em que ela aparece como contato de outra pessoa; ela também deixa as regras de faturamento e os centros de custo em que estava, deixa de ser o vendedor ou o promotor de outras pessoas e deixa de estar informada nas integrações em que aparecia. A exclusão fica registrada no histórico da pessoa. Não exige `Idempotency-Key`: repetir a requisição depois de excluída responde 404." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - name: id in: path required: true schema: type: string format: uuid description: Identificador único (UUID) da pessoa. example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '204': description: Pessoa excluída com sucesso. A resposta não tem corpo. '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '409': description: 'A pessoa não pode ser excluída: tem registros vinculados, tem anexos ou é usuário do sistema. Nada foi alterado.' content: application/json: schema: type: object properties: errors: type: array items: type: string examples: - A pessoa não pode ser excluída porque possui registros vinculados, como vendas, lançamentos financeiros, notas fiscais ou tarefas. - A pessoa não pode ser excluída porque possui anexos, inclusive os já removidos. - A pessoa é usuário do sistema e não pode ser excluída pela API. '415': "$ref": "#/components/responses/unsupported_media_type" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/labels": get: summary: Consultar marcadores x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Marcadores description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna a lista de marcadores cadastrados no sistema." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/labels" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/labels/{id}": get: summary: Consultar marcador por ID x-badges: - name: Em desenvolvimento color: "#6c757d" tags: - Marcadores description: "⚠️ Esse endpoint ainda não está disponível — está documentado apenas como referência do que temos planejado.

Retorna um marcador específico pelo seu identificador." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único do marcador example: f9d961b8-ea88-4346-8e52-afe94267417a responses: '200': "$ref": "#/components/responses/label" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/bills": get: summary: Consultar contas a pagar e receber x-badges: - name: Beta color: "#f5803e" tags: - Contas a Pagar e Receber description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a lista de contas a pagar e a receber das empresas em que a credencial tem permissão. Por padrão, retorna só as contas em aberto e vencidas (não liquidadas e não canceladas); para incluir liquidadas ou canceladas, use o parâmetro status. Use os filtros para restringir por data (date_field com date_from/date_to), natureza (transaction_kind), tipo (kind) e situação (status). Cada lançamento vem resumido; o detalhe completo vem em GET /bills/{id}." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: date_field required: false schema: type: string enum: - issue_date - due_date - settlement_date description: 'Campo de data usado no filtro. Valores aceitos: issue_date (emissão), due_date (vencimento) e settlement_date (liquidação). Obrigatório quando date_from ou date_to é informado. Para filtrar por settlement_date, inclua settled no parâmetro status, já que o padrão (open, overdue) não traz contas liquidadas.' example: due_date - in: query name: date_from required: false schema: type: string format: date description: Filtrar contas cujo campo escolhido em date_field seja igual ou posterior a esta data, no formato ISO 8601 (AAAA-MM-DD). example: '2024-01-01' - in: query name: date_to required: false schema: type: string format: date description: Filtrar contas cujo campo escolhido em date_field seja igual ou anterior a esta data, no formato ISO 8601 (AAAA-MM-DD). example: '2024-12-31' - in: query name: transaction_kind required: false schema: type: string enum: - credit - debit description: 'Filtra pela natureza do lançamento: credit (contas a receber) ou debit (contas a pagar). Quando ausente, retorna ambas.' example: credit - in: query name: kind required: false schema: type: string enum: - normal - sale_payment - sale_standalone - vendor_standalone - vendor_invoice - customer_invoice - credit_card_invoice - commission description: 'Origem do lançamento. ' example: customer_invoice - in: query name: status required: false schema: type: array items: type: string enum: - open - overdue - settled - canceled style: form explode: false description: 'Filtra pela situação. Aceita um ou mais valores separados por vírgula: Quando ausente, a API retorna só as contas open e overdue; liquidadas e canceladas só voltam quando pedidas explicitamente.' example: - open - overdue - in: query name: number required: false schema: type: string description: 'Filtra pelo número do lançamento exibido no aplicativo (um por requisição). Lançamentos parcelados têm sufixo de parcela (ex.: 362-1), então informe o número exatamente como aparece.' example: '362' - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/bills" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/bills/{id}": get: summary: Consultar conta a pagar ou receber por ID x-badges: - name: Beta color: "#f5803e" tags: - Contas a Pagar e Receber description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna o detalhe completo de uma conta a pagar ou receber: boleto, categorias, rateio entre empresas, rateio de centro de custo, movimentações de liquidação, itens, cobranças da fatura de cartão, comissões, anexos e campos personalizados." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador único da conta a pagar ou receber. example: 212b54b8-27df-4859-80a9-79ad855bcd09 responses: '200': "$ref": "#/components/responses/bill" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/account_movements": get: summary: Consultar movimentações x-badges: - name: Beta color: "#f5803e" tags: - Movimentações description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna as movimentações das contas das empresas em que a credencial tem permissão. Cada movimentação vem resumida, só com os dados do próprio movimento; as referências para conta, forma de pagamento, conta a pagar ou receber liquidada, fatura de cartão e conta do outro lado da transferência vêm em GET /account_movements/{id}." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: account_id required: false schema: type: string format: uuid description: Filtra as movimentações de uma conta específica. example: f9d961b8-ea88-4346-8e52-afe94267417a - in: query name: payment_method_id required: false schema: type: string format: uuid description: Filtra as movimentações de uma forma de pagamento específica. example: c3b7e8eb-1199-4457-9170-923c3fe56c92 - in: query name: transaction_kind required: false schema: type: string enum: - credit - debit description: |- ' Filtra pelo sentido do movimento. ' example: debit - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/account_movements" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/account_movements/{id}": get: summary: Consultar movimentação por ID x-badges: - name: Beta color: "#f5803e" tags: - Movimentações description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna o detalhe completo de uma movimentação pelo identificador, com as referências para conta, forma de pagamento, conta a pagar ou receber liquidada, fatura de cartão e conta do outro lado da transferência. É o endpoint que resolve as referências a movimentações devolvidas por outros recursos, como as liquidações de uma conta a pagar ou a receber." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador da movimentação. example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 responses: '200': "$ref": "#/components/responses/account_movement" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/refunds": get: summary: Consultar reembolsos x-badges: - name: Beta color: "#f5803e" tags: - Reembolsos description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna os reembolsos das empresas em que a credencial tem permissão." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: refund_type required: false schema: type: string enum: - customer - vendor description: |- ' Filtra pelo lado do reembolso. ' example: customer - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/refunds" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/refunds/{id}": get: summary: Consultar reembolso por ID x-badges: - name: Beta color: "#f5803e" tags: - Reembolsos description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna um reembolso pelo identificador. É o endpoint que resolve as referências a reembolsos devolvidas por outros recursos." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador do reembolso. example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 responses: '200': "$ref": "#/components/responses/refund" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cvc_statements": get: summary: Consultar extrato CVC x-badges: - name: Beta color: "#f5803e" tags: - Extrato CVC description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna os recibos das empresas em que a credencial tem permissão. Recibo excluído não é retornado." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/cvc_statements" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/cvc_statements/{id}": get: summary: Consultar extrato CVC por ID x-badges: - name: Beta color: "#f5803e" tags: - Extrato CVC description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna um recibo pelo identificador, incluindo o recibo já excluído, que vem com o campo deleted verdadeiro. É o endpoint que resolve as referências a recibos do extrato CVC devolvidas por outros recursos." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador do recibo do extrato CVC. example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 responses: '200': "$ref": "#/components/responses/cvc_statement" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/nfs": get: summary: Consultar notas fiscais x-badges: - name: Beta color: "#f5803e" tags: - Notas Fiscais description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna as notas fiscais das empresas em que a credencial tem permissão. Notas canceladas também são retornadas: o cancelamento aparece na situação. A consulta traz apenas os campos da própria nota; para os itens e as referências, use a consulta por ID." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: status required: false schema: type: string enum: - unissued - issued - processing - processing_cancellation - awaiting_processing - canceled - awaiting_issue - awaiting_cancellation description: |- ' Filtra pela situação da nota fiscal. ' example: issued - in: query name: period_start required: false schema: type: string format: date description: Filtra as notas fiscais emitidas a partir desta data, no formato ISO 8601 (YYYY-MM-DD). example: '2023-01-01' - in: query name: period_end required: false schema: type: string format: date description: Filtra as notas fiscais emitidas até esta data, no formato ISO 8601 (YYYY-MM-DD). example: '2023-12-31' - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/nfs" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/nfs/{id}": get: summary: Consultar nota fiscal por ID x-badges: - name: Beta color: "#f5803e" tags: - Notas Fiscais description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna uma nota fiscal pelo identificador, com os itens e as referências para as entidades relacionadas. É o endpoint que resolve as referências a notas fiscais devolvidas por outros recursos." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador da nota fiscal. example: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 responses: '200': "$ref": "#/components/responses/nf" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/logs": get: summary: Consultar logs x-badges: - name: Beta color: "#f5803e" tags: - Logs description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna o histórico de alterações do sistema, com filtros por autor, registro auditado, ação e origem. A consulta traz apenas os campos da própria linha; para o autor e o registro auditado, use a consulta por ID. O histórico não é recortado por empresa: a credencial que tem a permissão lê todas as linhas." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: person_id required: false schema: type: string format: uuid description: Filtra pelo identificador do autor da alteração. example: b2a6d7da-ff94-40e3-b069-812b2fd45b91 - in: query name: resource_id required: false schema: type: string format: uuid description: Filtra pelo identificador do registro auditado. example: 9a1f7c30-1d55-4e0a-9a3b-77b0c2e4f118 - in: query name: kind required: false schema: type: string enum: - insertion - edition - deletion - custom - export description: |- ' Filtra pela ação registrada. ' example: edition - in: query name: origin required: false schema: type: string description: Filtra pela origem da alteração, com o valor exato gravado no log. Um valor por chamada. example: financeiro_categoria - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/logs" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/logs/{id}": get: summary: Consultar logs por ID x-badges: - name: Beta color: "#f5803e" tags: - Logs description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna uma linha do histórico pelo identificador, com as referências para o autor da alteração e para o registro auditado." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: string format: uuid description: Identificador da linha do histórico. example: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 responses: '200': "$ref": "#/components/responses/log" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/custom_fields": get: summary: Consultar campos personalizados x-badges: - name: Beta color: "#f5803e" tags: - Campos Personalizados description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna as definições dos campos personalizados, opcionalmente filtradas pelo recurso. Cada linha traz o identificador, o recurso, o nome, o tipo, se é obrigatório, se está ativo e, nos campos do tipo lista, as opções cadastradas. As definições não são recortadas por empresa: a credencial que tem a permissão lê todas." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: query name: resource required: false schema: type: string enum: - sales - travels - people - bills - tasks description: |- ' Filtra pelo recurso (origem) do campo personalizado. Um valor por chamada; ausente lista todos os recursos. ' example: sales - "$ref": "#/components/parameters/cursor" - "$ref": "#/components/parameters/size" responses: '200': "$ref": "#/components/responses/custom_fields" '400': "$ref": "#/components/responses/bad_request" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" "/custom_fields/{id}": get: summary: Consultar campo personalizado por ID x-badges: - name: Beta color: "#f5803e" tags: - Campos Personalizados description: "⚠️ Esse endpoint já pode ser utilizado, mas, por estar em fase de testes (beta), ainda pode sofrer alterações.

Retorna a definição de um único campo personalizado pelo seu identificador. Use para resolver o nome, o tipo e as opções de um campo a partir do id retornado nas demais consultas da API." security: - bearerAuthentication: [] parameters: - "$ref": "#/components/parameters/authorization_header" - "$ref": "#/components/parameters/content_type_json" - in: path name: id required: true schema: type: integer description: Identificador do campo personalizado a consultar. example: 123 responses: '200': "$ref": "#/components/responses/custom_field" '401': "$ref": "#/components/responses/unauthorized" '403': "$ref": "#/components/responses/forbidden" '404': "$ref": "#/components/responses/not_found" '429': "$ref": "#/components/responses/too_many_requests" '500': "$ref": "#/components/responses/internal_server_error" tags: - name: Disponibilidade dos endpoints description: " Cada endpoint tem uma etiqueta que indica se você já pode utilizá-lo: " - name: Autenticação description: " Para acessar os endpoints, é necessário enviar uma credencial válida no cabeçalho Authorization da requisição, com o esquema Bearer.

Exemplo de cabeçalho de autenticação:
Authorization: Bearer bW9uZGV8dXNlcjpwYXNzMTIz

Sobre a autenticação:

" - name: Idempotência description: " Alguns endpoints desta API utilizam uma chave de idempotência (Idempotency-Key) para garantir que requisições duplicadas (por exemplo, por timeout ou tentativas automáticas) não sejam processadas mais de uma vez.

Como usar

Comportamento

" - name: Limites de requisição description: " Para manter o serviço estável para todos, esta API limita quantas requisições cada cliente pode fazer em um curto intervalo de tempo.

Limite

Quando o limite é excedido

Recomendação

" - name: Paginação description: " As consultas de lista devolvem uma página de registros por vez. O nó pagination da resposta diz o tamanho da página, se existe uma próxima e qual cursor pedir para chegar nela.

Percorrer a consulta inteira

  1. Faça a primeira requisição sem cursor.
  2. Enquanto has_next_page for true, repita a requisição enviando cursor com o valor de next_cursor da resposta anterior.
  3. Quando has_next_page for false, next_cursor vem nulo e a varredura terminou.

Tamanho da página

O cursor

" - name: Anexos description: Operações de envio de anexos associados a recursos. - name: Vendas description: 'Uma venda é um objeto que representa a comercialização de um ou mais produtos entre uma agência de viagens e seus clientes. Para vender o produto ao cliente, a agência pode adquiri-lo diretamente de um fornecedor ou através de um representante. ' - name: Produtos description: Consulte os produtos de viagem disponíveis (seguros, cruzeiros, hotéis, passagens aéreas, operações próprias e outros) para utilizar em suas vendas. - name: Cabines description: Consulte os tipos de cabine cadastrados no sistema para utilizar em produtos de cruzeiro. - name: Navios description: Consulte os navios cadastrados no sistema para utilizar em produtos de cruzeiro. - name: Centros de Custo description: Consulte os centros de custo cadastrados no sistema para utilizar em lançamentos financeiros. - name: Moedas description: Consulte as moedas cadastradas no sistema para utilizar em produtos de venda e lançamentos financeiros. - name: Categorias description: Consulte as categorias financeiras cadastradas no sistema, agrupadas por tipo (receita ou despesa) e grupo. - name: Cidades description: Consulte as cidades cadastradas no sistema, com estado, país e códigos oficiais (IBGE, SIAFI e SETEC). - name: Vendedores description: Consulte os vendedores cadastrados no sistema para utilizar em suas vendas. - name: Formas de Pagamento description: Consulte as formas de pagamento cadastradas no sistema para utilizar em lançamentos financeiros. - name: Contas e Cartões description: Consulte as contas e cartões cadastrados no sistema, com os dados bancários e de cartão de crédito e as empresas em que cada conta está disponível. - name: Regras da Nota Fiscal description: Consulte as regras de emissão de nota fiscal cadastradas no sistema, com os campos da venda que compõem cada emissão. - name: Tarefas description: Consulte, crie, altere e exclua tarefas, com responsável, pessoa vinculada, categoria e vencimento, e comente no histórico delas. - name: Categorias de Tarefas description: Consulte as categorias de tarefas cadastradas no sistema. - name: Viagens description: Consulte as viagens cadastradas no sistema, com cliente, vendedor, situação e o período calculado a partir das vendas vinculadas. - name: Orçamentos description: Consulte os orçamentos cadastrados no sistema, com validade, situação e o link público de visualização. - name: Regras de Faturamento description: Consulte as regras de faturamento cadastradas no sistema, com a pessoa dona da regra, o período de fechamento e as condições de vencimento. - name: Integrações description: Consulte as integrações com fornecedores cadastradas no sistema. As credenciais das integrações nunca são retornadas. - name: Pessoas description: Consulte as pessoas cadastradas no sistema, com dados de contato, documentos e informações adicionais. - name: Marcadores description: Consulte os marcadores cadastrados no sistema para classificar pessoas. - name: Contas a Pagar e Receber description: 'Consulte as contas a pagar e a receber (lançamentos financeiros) das empresas em que a credencial tem permissão. O mesmo recurso cobre os dois casos: contas a receber (transaction_kind = credit) e contas a pagar (transaction_kind = debit). Traz identificação, valores, situação, categorias, rateios, movimentações de liquidação, itens, comissões, anexos e campos personalizados.' - name: Movimentações description: 'Consulte as movimentações das contas e caixas: data, valor, sentido, dados de cheque e de cartão, e as referências para a conta, a forma de pagamento e o lançamento liquidado.' - name: Reembolsos description: 'Consulte os reembolsos das vendas: lado do reembolso, valor, datas e as referências para a venda, o produto da venda, a pessoa, a empresa e a conta a pagar ou a receber.' - name: Extrato CVC description: 'Consulte os recibos e movimentos do extrato CVC: valores, comissões, saldos, datas e as referências para a empresa, o contratante, o vendedor, o intermediário, a venda, o produto da venda, a nota fiscal e quem cadastrou.' - name: Notas Fiscais description: 'Consulte as notas fiscais de serviço: numeração, situação, datas, valores, retenções e tributos, os dados do tomador gravados na nota (com a referência para a cidade dele), os dados da NFS-e e, na consulta por ID, os itens e as referências para pessoa, empresa, produto da venda e venda.' - name: Logs description: 'Consulte o histórico de alterações do sistema: a ação registrada, a origem, a descrição da alteração, o momento em que ela foi gravada e, na consulta por ID, as referências para o autor e para o registro auditado.' - name: Campos Personalizados description: 'Consulte as definições dos campos personalizados do sistema por recurso (vendas, viagens, pessoas, contas a pagar/receber e tarefas): o identificador, o nome, o tipo, se é obrigatório e as opções cadastradas.' - name: Changelog description: | A API v3 está em fase **beta**: já disponível para uso, mas ainda em fase de testes e ajustes — campos e endpoints podem sofrer alterações. Acompanhe esta seção para as mudanças. ## 2026-09-28 ### Conexão automática - A seção [Conexão automática](#tag/Conexao-automatica) passou a trazer os exemplos completos de requisição e resposta da homologação, da troca do code pelo token e da revogação, o que chega na `redirect_uri` quando a agência aprova ou recusa (com o `state`), e os erros de cada etapa. - A revogação pelo parceiro, em `POST /oauth/revoke`, passou a estar documentada: ela exclui a conexão com a agência na hora. ### Pessoas, Vendas, Tarefas e Cidades - Em [Inserir pessoa](#tag/Pessoas/paths/~1people/post), [Alterar pessoa](#tag/Pessoas/paths/~1people~1{id}/patch), [Inserir venda](#tag/Vendas/paths/~1sales/post), [Criar tarefa](#tag/Tarefas/paths/~1tasks/post), [Alterar tarefa](#tag/Tarefas/paths/~1tasks~1{id}/patch) e [Comentar na tarefa](#tag/Tarefas/paths/~1tasks~1{task_id}~1history/post), o campo enviado num formato diferente do documentado passa a responder 422, com o nome do campo, e nada é gravado. Antes o campo era ignorado e a resposta era de sucesso, sem aquele dado. Vale para a lista ou o objeto enviado como texto, número ou booleano (como `"labels": "..."`), para o item de lista que não é objeto (como `"labels": [""]` no lugar de `"labels": [{ "id": "" }]`) e para o valor simples enviado como lista ou objeto. O campo nulo ou com texto vazio continua valendo como não enviado. - Em [Consultar pessoas](#tag/Pessoas/paths/~1people/get) e [Consultar cidades](#tag/Cidades/paths/~1cities/get), o filtro enviado como lista ou valor aninhado (como `?name[]=Ana`) passa a responder 400, com o nome do parâmetro. Antes o filtro era ignorado e a consulta devolvia a lista sem ele. ## 2026-09-25 ### Cidades - [Consultar cidades](#tag/Cidades/paths/~1cities/get) passou a aceitar o filtro `name`, que busca pelo nome da cidade por trecho, sem diferenciar maiúsculas, acentos nem a posição do trecho no nome (ex.: `?name=sao paulo`). O filtro combina com a paginação e a ordenação por nome. ### Tarefas - [Alterar tarefa](#tag/Tarefas/paths/~1tasks~1{id}/patch) passou a estar disponível: altera `title`, `description`, `due`, `category_id`, `assignee_id`, `person_id` e `custom_fields` de uma tarefa já cadastrada. Informe apenas o que deve mudar — o campo omitido, ou enviado como nulo ou como texto vazio, permanece como está. A exceção é o `title`: a tarefa precisa ter título, e enviá-lo como texto vazio é recusado. Os campos personalizados enviados são gravados por cima dos atuais, e os demais permanecem. - `completed` conclui a tarefa (`true`) ou a reabre (`false`), e `company_identifier` leva a tarefa para outra empresa, o que exige a permissão **Criar e editar** em Tarefas também na empresa de destino. - A alteração exige a permissão **Criar e editar** em Tarefas e o cabeçalho `Idempotency-Key`. Quem participa da tarefa é avisado por e-mail, como na alteração feita no Monde. - [Excluir tarefa](#tag/Tarefas/paths/~1tasks~1{id}/delete) passou a estar disponível: exclui a tarefa, que deixa de aparecer em [Consultar tarefas](#tag/Tarefas/paths/~1tasks/get) e continua disponível na consulta por ID, com `deleted` igual a `true`. Tarefa concluída ou já excluída responde 409, e nada é alterado. Responde 204 sem corpo e não exige `Idempotency-Key`. Exige a permissão **Excluir** em Tarefas, que passou a ser oferecida na credencial da API, concedida na empresa da tarefa com licença de API que grave. Quem participa da tarefa é avisado por e-mail. - Tarefa excluída não pode ser alterada nem receber comentário: [Alterar tarefa](#tag/Tarefas/paths/~1tasks~1{id}/patch) e [Comentar na tarefa](#tag/Tarefas/paths/~1tasks~1{task_id}~1history/post) respondem 409. - [Alterar tarefa](#tag/Tarefas/paths/~1tasks~1{id}/patch) e [Comentar na tarefa](#tag/Tarefas/paths/~1tasks~1{task_id}~1history/post) respondem apenas com o `id` da tarefa quando a credencial não tem a permissão **Ler todas as tarefas** na empresa da tarefa. A gravação acontece do mesmo jeito, com o mesmo status. Quem tem a permissão de ler continua recebendo a tarefa completa, no mesmo formato da consulta por ID. ### Pessoas - [Alterar pessoa](#tag/Pessoas/paths/~1people~1{id}/patch) passa a responder apenas com o `id` da pessoa quando a credencial não tem a permissão "Ler todas as pessoas". A alteração é gravada do mesmo jeito, com o mesmo status 200. Quem tem a permissão de ler continua recebendo a pessoa completa, no mesmo formato da consulta por ID. ## 2026-09-24 ### Tarefas - [Criar tarefa](#tag/Tarefas/paths/~1tasks/post) passou a estar disponível: informe `company_identifier`, `title`, `due`, `category_id` e `assignee_id`, e opcionalmente `description`, `person_id` e `custom_fields`. O responsável precisa ser um usuário ativo do Monde e é avisado por e-mail. A tarefa nasce pendente. Aceita `Idempotency-Key` para reenvio seguro. - A tarefa pode nascer com os primeiros comentários: envie `history`, uma lista de `{ "text": "..." }`, no mesmo corpo da criação. - [Comentar na tarefa](#tag/Tarefas/paths/~1tasks~1{task_id}~1history/post) acrescenta um comentário ao histórico de uma tarefa existente e devolve a tarefa com o histórico atualizado. Quem participa da tarefa é avisado por e-mail. O histórico é só acréscimo: não há como alterar nem excluir um comentário já registrado. - As duas escritas exigem a permissão **Criar e editar** em Tarefas, que passou a ser oferecida na credencial. - Na consulta de tarefas, `due` e `completed_at` passaram a sair sem o fuso horário, no mesmo formato de `created_at` e dos demais campos de data e hora da API: `2026-04-01T09:00:00` no lugar de `2026-04-01T09:00:00-03:00`. O horário é o mesmo. ### Pessoas - Na consulta de pessoas, `last_contacts.last_task_update_at` passou a sair sem o fuso horário, no mesmo formato das demais datas de `last_contacts` e dos outros campos de data e hora da API: `2026-07-01T15:12:00` no lugar de `2026-07-01T15:12:00-03:00`. O horário é o mesmo. ### Conexão automática - A seção Credenciamento de fornecedores passou a se chamar [Conexão automática](#tag/Conexao-automatica) e vale para qualquer parceiro, não só para quem cria vendas. - As permissões do parceiro passam a ser definidas na homologação, e a agência vê essa lista no consentimento antes de autorizar. O parceiro homologado antes disso continua com a criação de vendas. - Criar vendas pela integração não exige licença de API. Permissões fora de Vendas exigem licença de API na empresa escolhida. - O parceiro com a criação de vendas não lê vendas: a venda criada volta completa na resposta do `POST /sales`. Anexos só entram na venda que o próprio parceiro criou. ## 2026-09-22 ### Pessoas - [Excluir pessoa](#tag/Pessoas/paths/~1people~1{id}/delete) passou a estar disponível: exclui em definitivo a pessoa que não tem registros vinculados (vendas, lançamentos financeiros, notas fiscais, orçamentos, tarefas, anexos, entre outros) e que não é usuário nem empresa do sistema. Nesses casos a resposta é 409, com o motivo, e nada é alterado. Responde 204 sem corpo e não exige `Idempotency-Key`. Exige a permissão "Excluir" em Pessoas, que passou a ser oferecida na credencial da API, concedida numa empresa com licença de API que grave. ### Logs - A descrição de todo log gravado por uma requisição da API passa a começar com a ação e o rótulo da credencial que a fez: `Inserido via API pela credencial "..."`, `Editado via API pela credencial "..."` ou `Excluído via API pela credencial "..."`. As linhas seguintes, com os campos alterados, não mudaram. Vale para tudo o que a requisição grava: o registro, os vínculos gravados junto com ele (como os marcadores e os contatos da pessoa) e os lançamentos que a venda gera no financeiro, inclusive os da fatura do fornecedor. Em [Consultar logs](#tag/Logs/paths/~1logs/get) o `person` desses logs continua nulo, porque a credencial não é uma pessoa. - O log separado com a descrição `Registro cadastrado via API`, que a API gravava junto de cada cadastro, deixou de existir: quem cadastrou passou a ser a primeira linha do log do próprio registro. Em [Consultar logs](#tag/Logs/paths/~1logs/get) o cadastro feito pela API passa a trazer um log a menos. ## 2026-09-21 ### Pessoas - [Alterar pessoa](#tag/Pessoas/paths/~1people~1{id}/patch) passou a estar disponível: altera uma pessoa já cadastrada com os mesmos campos de [Inserir pessoa](#tag/Pessoas/paths/~1people/post). Informe apenas o que deve mudar — o campo omitido, ou enviado como nulo ou como texto vazio, permanece como está, e um campo de texto não é esvaziado por esta operação. O tipo da pessoa não muda, o `external_id` passa a identificá-la desde que não esteja identificando outra, e o CPF/CNPJ e o código de companhia aérea não podem pertencer a outra pessoa. Marcadores e contatos funcionam por substituição: a lista enviada passa a ser a da pessoa, a lista vazia retira todos os itens e o campo omitido mantém os atuais. Os campos personalizados não substituem: cada um enviado é gravado por cima do atual e os demais permanecem. Exige a permissão "Inserir e editar" em Pessoas e o cabeçalho `Idempotency-Key`. ### Vendas - Os totais da venda passaram a considerar o desconto da taxa RAV e a segunda taxa do passageiro (`other_fees`, `tip`). Antes, o desconto informado no passageiro era gravado mas não abatia total nenhum, e a segunda taxa não entrava no total de taxas. Com isso o valor do produto, o total de descontos, as receitas, o faturamento e o saldo da venda passam a bater com o que o Monde calcula na tela. - `rav_fee_discount` só é aceito quando `rav_fee` for maior que zero. Enviar o desconto sem a taxa passa a responder 422, como o Monde já recusa na tela. ### Anexos - [Enviar anexo](#tag/Anexos/paths/~1attachments/post) recusado com 422 passa a liberar a `Idempotency-Key`: reenviar o mesmo anexo com a mesma chave volta a ser processado, em vez de responder 409 indefinidamente. ## 2026-09-18 ### Licença e permissão - As respostas 403 passaram a apontar a causa certa em toda a API. A licença de API é cobrada na empresa em que a credencial trabalha — a empresa do registro consultado, ou a empresa em que a permissão foi concedida —, e não em qualquer empresa da base. Quem tem a permissão numa empresa sem licença de API passa a receber "Você não possui licença de API", no lugar de "Você não tem permissão para executar essa ação". A falta de licença é sempre relatada antes da falta de permissão. ### Anexos - [Enviar anexo](#tag/Anexos/paths/~1attachments/post) passou a aceitar `person` em `resource_type`: informe o `resource_id` da pessoa de destino e o anexo entra no cadastro dela, aparecendo na consulta da pessoa por ID e no download. Exige, em **Pessoas**, a permissão **Adicionar anexos**, que passou a ser oferecida na credencial da API, concedida numa empresa com licença de API que grave. O restante do envio não muda: um arquivo por requisição, as mesmas extensões, o mesmo limite de 12 MB e o mesmo `Idempotency-Key`. - [Enviar anexo](#tag/Anexos/paths/~1attachments/post) deixou de exigir a permissão de consultar o recurso de destino: anexar numa venda pede apenas a permissão de anexo em vendas. A resposta muda junto: a venda em que a credencial não pode anexar passa a responder 403, no lugar do 422 "Recurso não encontrado" que saía quando faltava a permissão de consultar vendas. O 422 fica para o `resource_id` que não existe. - O limite de 10 requisições a cada 3 segundos do envio de anexo passa a contar toda tentativa, inclusive a que é recusada por autenticação, por permissão, por licença, por arquivo grande ou por requisição malformada. Uma sequência de tentativas recusadas agora chega ao 429. ### Pessoas - [Inserir pessoa](#tag/Pessoas/paths/~1people/post) passou a estar disponível: insere pessoa física ou jurídica com endereço, naturalidade, documentos e filiação, inscrição municipal, identificação fiscal, observações, cobrança de taxa de boleto, retenção de impostos, dados de companhia aérea, vendedor, promotor, marcadores, contatos e campos personalizados. O `external_id` é opcional e, quando informado, precisa estar livre; o CPF/CNPJ não pode pertencer a nenhuma pessoa já cadastrada. Exige a permissão "Inserir e editar" em Pessoas e o cabeçalho `Idempotency-Key`. - Em [Consultar pessoa por ID](#tag/Pessoas/paths/~1people~1{id}/get), cada item de `custom_fields` passou a trazer o `id` da definição e deixou de trazer o `name`, como já acontecia na venda e no lançamento financeiro. O nome, o tipo e as opções vêm de [Consultar campo personalizado por ID](#tag/Campos-Personalizados/paths/~1custom_fields~1{id}/get). ### Vendas - Os campos `installments` (cartão de crédito e boleto) e `installment_period` (boleto) saíram dos pagamentos destinados à **agência** em [Criar venda](#tag/Vendas/paths/~1sales/post). Eles não parcelavam nada: a venda sempre nasceu com um lançamento só, no vencimento informado. Seguem sendo aceitos no corpo da requisição e ignorados, então quem já os envia continua criando vendas do mesmo jeito. - Para parcelar um pagamento à agência, envie **um pagamento por parcela** no array `payments`, todos com a mesma forma de pagamento, conta bancária e pagante, cada um com o seu `due_date` e a sua parte do valor em `products[].payment_amount`. Cada pagamento vira um lançamento financeiro. - Em `vendor.credit_card` o `installments` não mudou: segue sendo informado na criação e devolvido na consulta da venda. - Os nós de pessoa da criação de venda (`payer`, `intermediary`, `approver`, `requester`, `supplier`, `representative`, o `person` de cada passageiro e o `payer` de cada pagamento) passaram a aceitar os mesmos campos do cadastro de pessoas: `business_phone`, `website`, `city_inscription`, `tax_identification_number`, `observations`, `charge_billet_fee`, `birthplace`, `additional_data`, `tax_withholding` e `airline`. Cada campo é aceito no tipo de pessoa a que pertence, e o payload que já era enviado não muda. O `charge_billet_fee` descreve o cadastro inteiro e só vale quando a venda cria a pessoa: quando o `external_id` ou o documento já identifica alguém, ele é ignorado. Vendedor, promotor, marcadores, contatos e campos personalizados da pessoa são aceitos apenas em [Inserir pessoa](#tag/Pessoas/paths/~1people/post). ## 2026-09-15 ### Vendas - O campo que traz o documento do produto passou a se chamar `document` nos produtos em que o Monde escreve "Documento" na tela de cadastro: **locação de veículo** e **pacote de viagem** (antes `booking_number`), **seguro viagem** (antes `voucher_code`), **bilhete de trem**, **transporte terrestre** e **excursão** (antes `locator`). Em **pacote CVC** o mesmo campo passou a se chamar `receipt_number`, o "Recibo Nº" da tela. - Os produtos cujo rótulo na tela já era outro não mudaram: **bilhete aéreo** segue com `locator` ("Localizador"), **hospedagem** segue com `booking_number` ("Reserva"), **cruzeiro** segue com `booking_number` ("Booking"), e **outros** e **operação própria** já usavam `document`. - Na criação de vendas, o documento do passageiro passou a ser informado em `document`, no lugar de `ticket_number`, nos produtos em que o Monde tem esse campo: **seguro viagem**, **transporte terrestre**, **bilhete de trem**, **pacote de viagem** e **operação própria**. O `ticket_number` continua sendo o número do bilhete do passageiro do **aéreo**, na leitura e na criação, e o `ticket_number` de cada assento em `ground_transportations[].segments[].seats[]` não mudou. - O `document` do produto passou a aceitar 40 caracteres em todos os produtos, o mesmo tamanho que o Monde grava. Em **transporte terrestre** e **bilhete de trem** o limite era de 20. - Os nomes antigos seguem aceitos na criação de vendas e seguem saindo na leitura, mas saíram da documentação, que passa a descrever só o nome novo. Eles serão removidos em uma etapa seguinte, com tempo para as integrações existentes se ajustarem. ## 2026-09-14 ### Vendas - Em [Criar venda](#tag/Vendas/paths/~1sales/post), o campo `travel_agent` passou a se chamar `seller`, o mesmo nome que a consulta da venda já usa e o mesmo termo do Monde. - Na consulta de vendas, o passageiro de **Outros**, **Excursão** e **Operação Própria** passou a trazer o `document`, que já é preenchido no Monde mas não era devolvido. Nesses mesmos três produtos, o `other_fees` saiu da resposta, porque eles não têm uma segunda taxa por passageiro. Em **Operação Própria** também saíram `rav_fee`, `rav_fee_discount` e `agency_fee`, que o produto não cobra do passageiro. **Locação de Veículo** não mudou. ## 2026-09-11 ### Produtos - O `kind` dos produtos passou a trazer `excursion` (excursão) e `cvc_package` (pacote CVC). Os pacotes CVC vinham sem tipo na resposta. - O filtro `?kind=` passou a aceitar `cvc_package` e `excursion`, e é descrito como lista de valores: vários tipos separados por vírgula, como em `?kind=insurance,cruise`. A chamada não muda. - Em [Consultar produto por ID](#tag/Produtos/paths/~1products~1{id}/get), o campo `restitutes_lei_kandir` de cada fornecimento passou a se chamar `restitutes_kandir_law`. O valor não muda. - Os produtos de sistema passaram a aparecer nos exemplos com `system: true`, e a descrição do campo foi corrigida: produto de sistema não pode ser excluído, mas pode ser editado. ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post): o cargo da comissão no array `commissions` passou a ser informado pelo campo `kind` (`seller`, `intermediary` ou `person`), em vez de `job_title_id` (UUID). `seller` e `intermediary` gravam o cargo de sistema correspondente; `person` grava sem cargo. O `external_id` do destinatário continua obrigatório. - Na criação de vendas, o campo `ticket_number` do passageiro passou a ser aceito em operação própria, bilhete de trem e pacote de viagem, gravando o documento do passageiro — a mesma coluna que a consulta desses produtos devolve em `document`. - O filtro `?status=` passou a ser descrito como lista de valores: vários status separados por vírgula, como em `?status=opened,closed`. A chamada não muda. ### Contas a pagar e receber - O filtro `?status=` passou a ser descrito como lista de valores: vários status separados por vírgula, como em `?status=open,overdue`. A chamada não muda. ## 2026-09-10 ### Anexos - [Enviar anexo](#tag/Anexos/paths/~1attachments/post) passou a estar disponível: envie um arquivo por requisição em `multipart/form-data`, informando `resource_type` (por ora `sale`) e o `resource_id` da venda de destino, além de `file` e um `description` opcional. Valida a extensão (pdf, imagens, arquivos office, txt, csv), o tamanho máximo de 12 MB e o conteúdo real do arquivo. O anexo passa a aparecer na consulta da venda e no download. Aceita `Idempotency-Key` para reenvio seguro. ## 2026-09-09 ### Vendas - O campo `payer` de cada pagamento passou a aceitar um objeto de pessoa completo, o mesmo do pagante da venda, e cria a pessoa quando ela ainda não existe. Antes, só referenciava por `external_id` alguém já cadastrado. Repetir o `external_id` do pagante da venda resolve para a mesma pessoa. Quando omitido, o pagamento segue herdando o pagante da venda. ## 2026-09-08 ### Autenticação - A autenticação passou a usar o esquema `Bearer` no cabeçalho `Authorization`. A credencial é a mesma e não precisa ser reemitida, então as integrações em produção seguem funcionando. Use `Bearer` daqui em diante. ### Vendas - Em [Criar venda](#tag/Vendas/paths/~1sales/post), o `external_id` dos produtos passou a se chamar `local_id`, e o mesmo vale para cada item de `payments[].*.products[]`. O `local_id` é uma chave de correlação válida apenas dentro da requisição: precisa ser único entre os produtos daquela venda, não é armazenado e pode ser reutilizado em vendas seguintes. Ele aceita apenas texto. - Na leitura de [Listar vendas](#tag/Vendas/paths/~1sales/get) e [Obter venda por ID](#tag/Vendas/paths/~1sales~1{id}/get), os produtos deixaram de trazer o `external_id`. O identificador do produto na leitura é o `id`. ## 2026-09-03 ### Todas as consultas - As consultas de lista passaram a paginar por cursor. A resposta traz `next_cursor` no nó `pagination`, e para pedir a próxima página basta devolvê-lo no parâmetro `cursor`, enquanto `has_next_page` for verdadeiro. Veja a seção de [Paginação](#tag/Paginacao). O parâmetro `page` continua funcionando como antes para quem já integrou, mas não é mais a forma divulgada: pelo `page` o custo de cada página cresce com a profundidade da varredura, e pelo cursor não cresce. Quem pagina por cursor não recebe mais `page` no nó `pagination`. ## 2026-09-02 ### Credenciamento de fornecedores - O fornecedor passou a receber as credenciais numa página própria no Monde (o e-mail traz só o link para ela); o `client_secret` é exibido uma única vez e não é mais enviado por e-mail. A página também traz o snippet do botão "Conectar com o Monde". - O credenciamento ganhou um passo de homologação: confirme suas credenciais em `POST /oauth/homologation` (HTTP Basic com `client_id` e `client_secret`). Enquanto pendente, a autorização não funciona; ao responder `200`, passa a ativo. Veja a seção [Credenciamento de fornecedores](#tag/Conexao-automatica). ## 2026-09-01 ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar o campo `payer` em cada pagamento (cartão de crédito, boleto e depósito na agência; cartão, crédito e outros no fornecedor), referenciando por `external_id` a pessoa que efetivamente paga aquele pagamento — tipicamente o responsável financeiro informado na venda. Na agência, a Conta a Receber gerada usa esse pagante como Pessoa; no fornecedor, o pagante vai no lançamento da Conta a Pagar. Quando omitido, o pagamento herda o pagante da venda. Um `external_id` que não corresponde a nenhuma pessoa cadastrada devolve 422. ## 2026-08-31 ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar o `requester` (solicitante), para registrar quem pediu a venda junto da criação. É pessoa física, campo opcional, resolvido por `external_id` (find-or-create), como os demais papéis. ## 2026-08-28 ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar o array `commissions`, para gravar comissões manuais (vendedor, intermediário ou outra função) junto da venda. O destinatário é referenciado por `external_id`, o mesmo informado no vendedor/intermediário; o cargo vai em `job_title_id`. Só é aceito quando `status` é `closed`; comissão de cargo intermediário exige que a venda tenha intermediário. ## 2026-08-27 ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a devolver 422 quando o CPF/CNPJ de uma pessoa da venda (pagador, fornecedor, passageiro) já pertence a outra pessoa da base, com o erro no campo `cpf_cnpj`. Antes, o conflito de documento estourava erro interno (500). ## 2026-08-26 ### Credenciamento de fornecedores - Fornecedores homologados pelo Monde passaram a criar vendas na API v3 em nome da agência via OAuth 2.0 (Authorization Code + PKCE), sem a agência compartilhar senha de credencial. Veja o passo a passo (autorização na URL raiz, troca do code pelo token e uso do Bearer na URL fixa da v3) na seção [Credenciamento de fornecedores](#tag/Conexao-automatica). A agência revoga o acesso a qualquer momento e a revogação invalida o token na hora. ## 2026-08-24 ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a herdar os serviços inclusos cadastrados no produto. Quando o campo `included_services` do produto da venda não é enviado, o texto do cadastro do produto é gravado; quando é enviado, o texto informado é acrescentado ao do cadastro. Antes, o campo do produto da venda ficava com apenas o que a requisição enviava. ## 2026-08-21 ### Vendas - [Consultar vendas](#tag/Vendas/paths/~1sales/get) passou a filtrar por `number` (um por requisição): informe o número exibido no aplicativo e a consulta devolve a venda correspondente sem precisar traduzir número em UUID antes. Número não inteiro devolve 400. - [Consultar vendas](#tag/Vendas/paths/~1sales/get) passou a filtrar por `updated_since` (data ou data-hora ISO 8601, ex.: `2026-08-01` ou `2026-08-01T14:30:00`; sem fuso, considera Brasília): devolve as vendas atualizadas nesse instante ou depois, para reprocessar só o que mudou desde a última consulta, inclusive no mesmo dia. Um valor inválido devolve 400. ### Viagens - [Consultar viagens](#tag/Viagens/paths/~1travels/get) passou a filtrar por data com `date_field` + `date_from`/`date_to`: escolha a data em `date_field` (`start_date` ou `end_date`, o início e o fim da viagem calculados a partir das vendas vinculadas) e informe o intervalo fechado inclusivo em `date_from`/`date_to` (ISO `YYYY-MM-DD`, ambos opcionais). `date_field` é obrigatório quando há alguma data; data em formato inválido, intervalo invertido (`date_from` maior que `date_to`) ou `date_field` fora da lista devolvem 400. Viagem sem vendas vinculadas não tem datas calculadas e nunca aparece em um intervalo de datas. ### Contas a pagar e receber - [Consultar contas a pagar e receber](#tag/Contas-a-Pagar-e-Receber/paths/~1bills/get) passou a filtrar por `number` (um por requisição): informe o número do lançamento exibido no aplicativo. Lançamentos parcelados têm sufixo de parcela (ex.: `362-1`), então informe o número exatamente como aparece. - [Consultar contas a pagar e receber](#tag/Contas-a-Pagar-e-Receber/paths/~1bills/get) passou a filtrar por data com `date_field` + `date_from`/`date_to`: escolha a data em `date_field` (`issue_date` = emissão, `due_date` = vencimento, `settlement_date` = liquidação) e informe o intervalo fechado inclusivo em `date_from`/`date_to` (ISO `YYYY-MM-DD`, ambos opcionais). `date_field` é obrigatório quando há alguma data; data em formato inválido, intervalo invertido (`date_from` maior que `date_to`) ou `date_field` fora da lista devolvem 400. Filtrar por `settlement_date` traz só contas liquidadas (as não liquidadas não têm data de liquidação e ficam de fora do intervalo); como o status padrão (`open`, `overdue`) exclui liquidadas, inclua `settled` no parâmetro `status` ao usar `settlement_date`. ## 2026-08-20 ### Vendas - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar o campo `status`. O padrão continua `opened`; envie `closed` para já criar a venda fechada. O fechamento respeita todas as regras existentes (sem saldo pendente, e na base consolidadora o intermediário é obrigatório) e exige a permissão de fechar venda na credencial. Se a venda não puder ser fechada, a criação inteira é recusada com 422 e nada é gravado. ## 2026-08-17 ### Vendas - [Consultar vendas](#tag/Vendas/paths/~1sales/get) passou a filtrar por data com `date_field` + `date_from`/`date_to`: escolha a data em `date_field` (`sale_date`, `departure_date` ou `return_date`) e informe o intervalo fechado inclusivo em `date_from`/`date_to` (ISO `YYYY-MM-DD`, ambos opcionais). Substitui `period_start`/`period_end`, que foram removidos. `date_field` é obrigatório quando há alguma data; data em formato inválido, intervalo invertido (`date_from` maior que `date_to`) ou `date_field` fora da lista devolvem 400. - Na resposta da venda, `period_start` e `period_end` viraram `departure_date` e `return_date` — mesmos valores (início e fim da viagem, calculados pela menor e maior data dos produtos). ## 2026-08-14 ### Vendas - [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get) passou a trazer o array `excursions`. - Na criação de vendas, o campo de taxa do passageiro (`fees`) passou a ser aceito em todos os produtos com passageiros — seguro viagem, cruzeiro, hospedagem, transporte terrestre, aluguel de carro, trem, pacote de viagem e operação própria —, alinhado ao que a leitura já usa. `rav_fee`, `rav_fee_discount` e `agency_fee` passaram a ser aceitos nos mesmos produtos, exceto operação própria, cujo passageiro só tem valor e taxa; `other_fees` (hospedagem, aluguel de carro, pacote de viagem) e `tip` (cruzeiro) também passaram a ser aceitos. Nos produtos que tinham nome próprio para a taxa principal — `service_fee` (hospedagem e transporte terrestre) e `booking_fee` (trem) —, os nomes antigos continuam aceitos por enquanto, mas saem da documentação em favor de `fees`. - Corrigido `totals.balance`: vendas criadas pela [Criar venda](#tag/Vendas/paths/~1sales/post) vinham sempre com saldo `0` na leitura, mesmo tendo saldo em aberto real. Passa a refletir o saldo correto tanto na consulta em lista quanto na consulta por ID. ### Pessoas - [Consultar pessoa por ID](#tag/Pessoas/paths/~1people~1{id}/get) ganhou o nó `kandir_law`: a retenção de imposto por produto (valor, taxa de embarque, taxa DU/RAV e taxa de serviço, cada uma com o detalhamento por imposto — IR, CSLL, PIS e COFINS — e o total, nos regimes nacional e internacional), com a referência ao produto. Só existe para pessoa jurídica; vem `null` para pessoa física. - `city_inscription` e `tax_identification_number` voltaram para o nível raiz da pessoa. Estavam dentro de `additional_data`, que só existe para pessoa física, mas os dois são dados de pessoa jurídica. ### Regras de faturamento - Em `closing.period_kind`, o valor `separate` virou `standalone`. "Avulso" é o fechamento que deixa cada venda em uma fatura própria, e `standalone` é como a API já nomeia esse mesmo conceito no `kind` do lançamento financeiro. ### Contas a pagar e receber, e notas fiscais - Os dois campos que ainda vinham no formato antigo desde a entrada de 2026-08-13 acompanharam o código: em [Consultar nota fiscal por ID](#tag/Notas-Fiscais/paths/~1nfs~1{id}/get), os itens deixaram de trazer `id`; em [Consultar conta a pagar ou receber por ID](#tag/Contas-a-Pagar-e-Receber/paths/~1bills~1{id}/get), `credit_card_items[].id` deu lugar à referência `movement`. ### Nomenclatura - Os schemas de [Produtos](#tag/Produtos/paths/~1products/get) e de [Tarefas](#tag/Tarefas/paths/~1tasks/get) passaram a seguir a convenção do restante da API: o schema da consulta em lista ganhou o sufixo `_summary`, e o nome sem sufixo passou a ser o da consulta por ID. ### Nomenclatura - `registered_at` virou `created_at` em [vendas](#tag/Vendas/paths/~1sales/get), [contas a pagar e receber](#tag/Contas-a-Pagar-e-Receber/paths/~1bills/get), [notas fiscais](#tag/Notas-Fiscais/paths/~1nfs/get), [regras da nota fiscal](#tag/Regras-da-Nota-Fiscal/paths/~1nf_rules/get), [tarefas](#tag/Tarefas/paths/~1tasks/get), [viagens](#tag/Viagens/paths/~1travels/get), [vendedores](#tag/Vendedores/paths/~1sellers/get), [pessoas](#tag/Pessoas/paths/~1people/get), [extrato CVC](#tag/Extrato-CVC/paths/~1cvc_statements/get) e [logs](#tag/Logs/paths/~1logs/get) — o nome mais comum para esse conceito no restante das APIs REST. - `registered_by` virou `created_by`, pelo mesmo motivo, em [vendas](#tag/Vendas/paths/~1sales/get), [contas a pagar e receber](#tag/Contas-a-Pagar-e-Receber/paths/~1bills/get), [notas fiscais](#tag/Notas-Fiscais/paths/~1nfs/get), [regras da nota fiscal](#tag/Regras-da-Nota-Fiscal/paths/~1nf_rules/get), [tarefas](#tag/Tarefas/paths/~1tasks/get), [viagens](#tag/Viagens/paths/~1travels/get), [vendedores](#tag/Vendedores/paths/~1sellers/get), [pessoas](#tag/Pessoas/paths/~1people/get) e [extrato CVC](#tag/Extrato-CVC/paths/~1cvc_statements/get). ## 2026-08-13 Ajuste do padrão de leitura em vários endpoints, na mesma direção da entrada de 2026-08-11: a consulta em lista traz os campos do próprio registro, e as associações — referências e dados de outras entidades — ficam na consulta por ID. - O [limite de requisições](#tag/Limites-de-requisicao) mudou de 60 para **10 requisições a cada 3 segundos** por endereço IP de origem. ### Pessoas - [Consultar pessoas](#tag/Pessoas/paths/~1people/get) passou a trazer todos os campos da própria pessoa, que antes só existiam na consulta por ID: `rg_ie`, `passport_number`, `passport_expiration_date`, `foreigner`, `foreign_identity_document`, `business_phone`, `website`, `cvc_code`, `observations`, `charge_billet_fee`, `registered_at` e os nós `additional_data`, `last_contacts`, `tax_withholding` e `airline`. - Entraram `gender` e `birthdate`, nas duas leituras. - [Consultar pessoa por ID](#tag/Pessoas/paths/~1people~1{id}/get) ficou com o que é associação: `birthplace`, `seller`, `promoter`, `registered_by`, `contacts`, `labels`, `custom_fields`, `attachments` e `credit_cards`. - Os contatos e os cartões de crédito não trazem `id`: são dados que só existem dentro da pessoa. - Nos cartões de crédito, `masked_number` virou `last_digits` e passou a trazer só os quatro últimos dígitos, sem a máscara. ### Contas a pagar e receber - [Consultar contas a pagar e receber](#tag/Contas-a-Pagar-e-Receber/paths/~1bills/get) passou a trazer `billet`, `check` e `card`, que antes só existiam na consulta por ID. São dados do próprio lançamento. - Em `credit_card_items`, o `id` — que era o identificador da movimentação, não da linha — deu lugar à referência `movement`, resolvida em [Consultar movimentação por ID](#tag/Movimentacoes/paths/~1account_movements~1{id}/get). ### Notas fiscais - Os itens em [Consultar nota fiscal por ID](#tag/Notas-Fiscais/paths/~1nfs~1{id}/get) deixaram de trazer `id`. O item não tem consulta própria, e o identificador não resolvia nada. ### Cidades, categorias, contas e cartões - `state` e `country` saíram de [Consultar cidades](#tag/Cidades/paths/~1cities/get) e ficaram em [Consultar cidade por ID](#tag/Cidades/paths/~1cities~1{id}/get). - `group` saiu de [Consultar categorias](#tag/Categorias/paths/~1categories/get) e ficou em [Consultar categoria por ID](#tag/Categorias/paths/~1categories~1{id}/get). - `bank` saiu de [Consultar contas e cartões](#tag/Contas-e-Cartoes/paths/~1accounts/get) e ficou em [Consultar conta ou cartão por ID](#tag/Contas-e-Cartoes/paths/~1accounts~1{id}/get). ### Logs - `kind` passou a declarar os valores possíveis: `insertion`, `edition`, `deletion`, `custom` e `export`. Não há outros. - A descrição de `person` passou a indicar [Consultar pessoa por ID](#tag/Pessoas/paths/~1people~1{id}/get), o endpoint que resolve a referência. ### Vendas, produtos, tarefas e regras de nota fiscal - [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get) passou a trazer a referência `travel`, resolvida em [Consultar viagem por ID](#tag/Viagens/paths/~1travels~1{id}/get). O vínculo existia só no sentido inverso. - [Produtos](#tag/Produtos/paths/~1products/get) passou a trazer `active`, e [Tarefas](#tag/Tarefas/paths/~1tasks/get), `deleted`. - Nas regras de nota fiscal, dentro de `payer_rule`, `supplier_rule` e `representative_rule`, o `recipient` passou a vir antes de `revenues` e `discounts`. ## 2026-08-12 - [Consultar vendas](#tag/Vendas/paths/~1sales/get) ganhou o filtro `people_id`: retorna as vendas em que a pessoa informada participa em qualquer papel (pagante, vendedor, intermediário, solicitante, aprovador, promotor, passageiro, fornecedor, representante ou quem cadastrou a venda). Aceita vários identificadores separados por vírgula — a venda entra quando qualquer uma das pessoas participa. - Novos endpoints de leitura das definições de campos personalizados: [Consultar campos personalizados](#tag/Campos-Personalizados/paths/~1custom_fields/get) e [Consultar campo personalizado por ID](#tag/Campos-Personalizados/paths/~1custom_fields~1{id}/get). A consulta lista os campos personalizados por recurso (`sales`, `travels`, `people`, `bills` e `tasks`), com o identificador, o nome, o tipo, se é obrigatório, se está ativo e as opções cadastradas dos campos do tipo lista, e aceita o filtro `resource`; a consulta por ID resolve a definição de um campo a partir do id. As definições não são recortadas por empresa. O identificador de cada campo é numérico (não é um UUID como no resto da API). - O nó `pagination` deixou de trazer `total` e `total_pages`, e passou a trazer `has_next_page`. Para percorrer uma consulta inteira, peça a próxima página enquanto `has_next_page` for verdadeiro. O pedido não muda: `page` e `size` funcionam como antes. Contar o total exigia percorrer todos os registros que atendiam ao filtro a cada requisição, o que em bases grandes custava mais do que buscar a própria página. ## 2026-08-11 Toda leitura passou a ter duas formas: uma **consulta em lista**, enxuta, para extrair volume, e uma **consulta por ID**, com o registro completo. As associações não vêm mais embutidas: vêm como referência, só com o identificador. A descrição de cada referência indica o endpoint que a resolve, e referências e coleções aparecem apenas na consulta por ID. As mudanças estão agrupadas por endpoint. As consultas por ID novas estão documentadas antes de existirem: cada uma leva a etiqueta **Em desenvolvimento** até o código entrar. As consultas em lista que já existiam seguem em **Beta**, disponíveis para uso. ### Vendas - [Consultar vendas](#tag/Vendas/paths/~1sales/get) devolve só os campos escalares da venda e os totais. Os produtos, os pagamentos, as comissões, os anexos, os campos personalizados e o nó `financial` saíram da lista e continuam em [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get), que é também onde ficam as referências: pagante, vendedor, empresa, intermediário, solicitante, aprovador, promotor, operação e quem cadastrou. - `sale_id` virou `id`. `travel_agent` virou `seller`, e a referência aponta para [Consultar vendedor por ID](#tag/Vendedores/paths/~1sellers~1{id}/get) — o `id` é o mesmo de antes, porque o vendedor compartilha o identificador da pessoa; para os dados de pessoa, use o mesmo `id` em [Consultar pessoa por ID](#tag/Pessoas/paths/~1people~1{id}/get). - Saíram três campos: `company_identifier`, que era o CNPJ copiado da empresa e dá lugar à referência `company` (na criação continua obrigatório), `totals.payments` e o `role` das comissões. - Nas comissões, `value`, `retained_value` e `leftover` viraram `amount`, `retained_amount` e `balance`; nos totais, `final_value` virou `final_amount`; nos repasses ao fornecedor, `value` virou `amount`. - **Os pagamentos mudaram de forma.** `payments` deixou de ser lista e virou um objeto com `agency` e `vendor`. Em `agency`, `bills` e `refunds` são listas de referência, resolvidas em [Consultar conta a pagar ou receber por ID](#tag/Contas-a-Pagar-e-Receber/paths/~1bills~1{id}/get) e em [Consultar reembolso por ID](#tag/Reembolsos/paths/~1refunds~1{id}/get); `credit`, `retained_by_intermediary` e `legacy` vêm embutidos, porque não geram lançamento financeiro. Em `vendor`, há uma lista por forma: `credit_card`, `check`, `credit` e `others`. - Com isso saíram os nós por forma do lado da agência (`cash`, `check`, `credit_card`, `debit_card`, `bank_slip`, `bank_deposit`, `others`, `custom` e `invoice`). Todos eles geram um lançamento, e é o lançamento que traz a forma de pagamento, a conta, a liquidação, o boleto e os produtos cobertos. Um lançamento liquidado em várias formas aparece uma vez, e cada liquidação vem em `movements`, no próprio lançamento. - Cada item de `products` traz agora `amount` e a referência `sale_product`, no lugar de `external_id` e `payment_amount`. Todo pagamento embutido ganhou `payer`, que pode ser diferente do pagante da venda. - No nó `financial`, `vendor` virou `vendor_bills` e `bills` virou `standalone_bills` — as duas agora listas de referência aos lançamentos. Os itens e valores vêm do próprio lançamento. - O campo `operation` da venda é a referência à operação própria do cabeçalho, e o detalhe do produto de operação própria fica na coleção `operations`, junto dos demais produtos. Na entrada de 2026-08-07 esse campo passou a trazer o produto inteiro quando havia linha; agora ele é sempre referência. - Cada produto da venda passou a trazer o próprio `id`, o que torna resolvível a referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. Nos tipos `others`, `operation` e `cvc_package`, saíram `product_name` e `product_with_passengers` e entrou a referência `product`; nos outros oito tipos existe um único produto de sistema por tipo, e o nome do array já identifica qual é. - `currency` é um código ISO (texto) na criação e na consulta; o objeto `currency` completo ficou exclusivo de [Moedas](#tag/Moedas/paths/~1currencies/get). Nos produtos da venda, `currency` e `exchange_rate` são campos de criação: na consulta devolvem sempre BRL e 1, e os valores vêm convertidos para Real. - Em `custom_fields`, cada campo passou a trazer o `id` da definição e deixou de trazer o `name`. O nome, o tipo e as opções vêm da consulta de definições de campos personalizados. - A resposta de [Inserir venda](#tag/Vendas/paths/~1sales/post) passou a ser a mesma da consulta por ID. O corpo da requisição não muda. - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar o campo opcional `description` nos pagamentos de agência (cartão de crédito, boleto e depósito). Quando informado, o texto é gravado no lançamento financeiro; quando omitido, continua sendo usado "Pagamento venda". Máximo de 60 caracteres. ### Contas a pagar e receber - [Consultar conta a pagar ou receber por ID](#tag/Contas-a-Pagar-e-Receber/paths/~1bills~1{id}/get) ganhou os blocos `check` e `card`, com os dados de cheque e de cartão informados no cadastro. Antes eles só apareciam na venda, e ficavam inacessíveis enquanto o pagamento não fosse liquidado. - No `kind`, `sale_separate` e `vendor_separate` viraram `sale_standalone` e `vendor_standalone`. O filtro `kind` aceita os novos valores. - Em `custom_fields`, cada campo passou a trazer o `id` da definição e deixou de trazer o `name`, como na venda. ### Pessoas - Novo [Consultar pessoa por ID](#tag/Pessoas/paths/~1people~1{id}/get), com os contatos, os marcadores, os campos personalizados, os anexos e os cartões de crédito. [Consultar pessoas](#tag/Pessoas/paths/~1people/get) ficou enxuta. - A cidade do endereço, a naturalidade, o vendedor, o promotor e quem cadastrou vêm como referência. - `external_id` passou a constar na consulta: a resposta já trazia o identificador que você atribuiu à pessoa, mas ele não estava documentado. Vem nulo quando a credencial que consulta não tem identificador externo para aquela pessoa. - [Listar pessoas](#tag/Pessoas/paths/~1people/get) passou a aceitar filtros por `name`, `cpf_cnpj`, `passport_number`, `phone`, `kind` (`individual` ou `company`), `code` e `email`. Todos são opcionais e combináveis (E lógico entre eles): `name`, `passport_number` e `email` casam por trecho, ignorando maiúsculas e acentos; `cpf_cnpj` e `phone` aceitam só os dígitos (a máscara é ignorada) e `code` é valor exato. Sem nenhum filtro, o comportamento é o mesmo de antes. ### Produtos - Novo [Consultar produto por ID](#tag/Produtos/paths/~1products~1{id}/get), com os fornecimentos em `supplies`: cada um traz o fornecedor, os dados de comissão e os representantes. - Nos fornecimentos, `commission_value` virou `commission_amount`, e `commission_type` passou a aceitar `amount` em vez de `value`. ### Tarefas - Novo [Consultar tarefa por ID](#tag/Tarefas/paths/~1tasks~1{id}/get), com o histórico em `history` (comentários e alterações) e os campos personalizados. - `category` deixou de ser texto e virou referência, resolvida em [Consultar categoria de tarefa por ID](#tag/Categorias-de-Tarefas/paths/~1task_categories~1{id}/get). ### Viagens - Novo [Consultar viagem por ID](#tag/Viagens/paths/~1travels~1{id}/get), com as referências às vendas e aos passageiros vinculados. Os valores por passageiro pertencem a cada venda e saem pelo endpoint da venda. - `client` virou `customer`, e `seller` passou a apontar para o endpoint de vendedores. ### Extrato CVC - `seller` passou a apontar para [Consultar vendedor por ID](#tag/Vendedores/paths/~1sellers~1{id}/get). ### Orçamentos - Novo [Consultar orçamento por ID](#tag/Orcamentos/paths/~1quotes~1{id}/get). Saiu `status`, que é derivável de `active` e `valid_until`, ambos ainda na resposta. ### Anexos - `attachment_id` virou `id`. ### Demais cadastros - Passaram a ter consulta em lista enxuta e consulta por ID: [vendedores](#tag/Vendedores/paths/~1sellers~1{id}/get), [contas e cartões](#tag/Contas-e-Cartoes/paths/~1accounts~1{id}/get), [centros de custo](#tag/Centros-de-Custo/paths/~1cost_centers~1{id}/get), [cidades](#tag/Cidades/paths/~1cities~1{id}/get), [categorias](#tag/Categorias/paths/~1categories~1{id}/get), [formas de pagamento](#tag/Formas-de-Pagamento/paths/~1payment_methods~1{id}/get), [regras da nota fiscal](#tag/Regras-da-Nota-Fiscal/paths/~1nf_rules~1{id}/get), [regras de faturamento](#tag/Regras-de-Faturamento/paths/~1invoice_rules~1{id}/get), [integrações](#tag/Integracoes/paths/~1integrations~1{id}/get) e [moeda por código](#tag/Moedas/paths/~1currencies~1{code}/get). - Em vendedores, a pessoa correspondente passou a vir no campo `person`. - Continuam aninhados, com os dados completos, o estado e o país da cidade, o banco da conta e o grupo da categoria: não têm cadastro próprio na v3, então não há endpoint para resolvê-los. O estado ganhou `name`, e o país, `code` (ISO 3166-1 alfa-2) e `code_3` (alfa-3). ### Cadastros novos na leitura - [Marcadores](#tag/Marcadores/paths/~1labels/get) e [categorias de tarefas](#tag/Categorias-de-Tarefas/paths/~1task_categories/get), com consulta em lista e consulta por ID. São os alvos das referências `labels` da pessoa e `category` da tarefa. ## 2026-08-10 - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar **campos personalizados** no campo `custom_fields` (array de `{id, value}`). O `id` é o mesmo retornado por [Consultar campos personalizados](#tag/Campos-Personalizados/paths/~1custom_fields/get); o `value` deve corresponder ao tipo do campo (número inteiro para numérico, número para monetário, data ISO 8601, texto para os demais). ⚠️ Campos ativos e obrigatórios do módulo de vendas passam a ser exigidos: o create devolve **422** se um deles não vier com valor. - Na leitura de vendas e de lançamentos financeiros, cada item de `custom_fields` passou a ser `{id, value}`: traz o `id` do campo (a referência) e o `value`, e deixou de trazer o `name`. O nome, o tipo e o restante da definição são obtidos em [Consultar campo personalizado por ID](#tag/Campos-Personalizados/paths/~1custom_fields~1{id}/get) ou em [Consultar campos personalizados](#tag/Campos-Personalizados/paths/~1custom_fields/get), para o consumidor sempre ler a referência e não um dado projetado que pode desatualizar. ## 2026-08-07 - [Criar venda](#tag/Vendas/paths/~1sales/post) passou a aceitar o produto de **operação própria** no campo `operation` (objeto único; no máximo um por venda). O produto é informado por `product_id` e, conforme a configuração dele, os valores vão por `passengers` ou por `quantity` × `unit_price` (com `unit_fee` e a taxa de serviço oculta `agency_fee`, um valor único da linha); o fornecedor é a própria empresa da venda. - Na leitura ([Listar vendas](#tag/Vendas/paths/~1sales/get) e [Obter venda por ID](#tag/Vendas/paths/~1sales~1{id}/get)), o campo `operation` passou a trazer o detalhe completo do produto de operação própria; antes trazia só `id` e `name`. - Novos endpoints de leitura do histórico de alterações: [Consultar logs](#tag/Logs/paths/~1logs/get) e [Consultar logs por ID](#tag/Logs/paths/~1logs~1{id}/get). A consulta traz a ação registrada, a origem, a descrição da alteração e o momento em que ela foi gravada, com filtros por autor, registro auditado, ação e origem; a consulta por ID acrescenta as referências para o autor e para o registro auditado. O histórico não é recortado por empresa. ## 2026-08-04 - Os itens de [Obter conta a pagar ou receber por ID](#tag/Contas-a-Pagar-e-Receber/paths/~1bills~1{id}/get) mudaram: `customer_items` e `vendor_items` foram substituídos por um único `items`, que traz todos os itens do lançamento, inclusive os de pagamento de venda, que antes não saíam em array nenhum. O item passou a trazer só as próprias colunas (`description`, `cost_center`, `checked`, `amount`) mais as referências `sale`, `sale_product` e `cvc_statement`; os dados do produto da venda saíram, e a fonte deles é [Obter venda por ID](#tag/Vendas/paths/~1sales~1{id}/get). - Cada linha de `credit_card_items` passou a trazer `id` e a referência `bill`, e perdeu `description` e `person`. O `id` é o da movimentação, então dá para consultá-la em [Obter movimentação por ID](#tag/Movimentacoes/paths/~1account_movements~1{id}/get). - Cada linha de `commissions` ganhou a referência `person`, e o campo `leftover` passou a se chamar `balance`. - O lançamento perdeu `sale_number`, `balance`, `status`, `overdue_days` e `settled_late`, e ganhou `canceled`, `checked`, `invoice_closed`, `system_generated` e `recurrence_group_id`. A visualização por ID ganhou as referências `sale` e `invoice_rule`. No filtro `status`, o valor `paid` passou a `settled`. ## 2026-07-31 - Novos endpoints de leitura do extrato CVC: [Consultar extrato CVC](#tag/Extrato-CVC/paths/~1cvc_statements/get) e [Consultar extrato CVC por ID](#tag/Extrato-CVC/paths/~1cvc_statements~1{id}/get). A consulta traz o número do recibo, as datas de movimentação, venda, cancelamento, embarque e retorno, o nome do produto, o nome do pacote, os totais, as comissões, o depósito, os saldos e as marcas de importado, editado, conferido e excluído; a visualização por ID acrescenta o tipo do movimento e as referências para empresa, contratante, vendedor, intermediário, venda, produto da venda, nota fiscal e quem cadastrou. Recibo excluído fica fora da consulta, mas continua acessível por ID. Escopo por empresa. - Novos endpoints de leitura de notas fiscais: [Consultar notas fiscais](#tag/Notas-Fiscais/paths/~1nfs/get) e [Consultar notas fiscais por ID](#tag/Notas-Fiscais/paths/~1nfs~1{id}/get). A consulta traz numeração, situação, natureza da operação, datas, valores, os dados do tomador gravados na nota com a referência para a cidade dele, as retenções e tributos e os dados da NFS-e, com filtros de situação e de período de emissão; a visualização por ID acrescenta os itens da nota e as referências para pessoa, empresa, produto da venda, venda e quem cadastrou ou cancelou. Escopo por empresa. - Novos endpoints de leitura de reembolsos: [Consultar reembolsos](#tag/Reembolsos/paths/~1refunds/get) e [Consultar reembolsos por ID](#tag/Reembolsos/paths/~1refunds~1{id}/get). Trazem o lado do reembolso (cliente ou fornecedor), o valor, a descrição, a emissão e o vencimento, e a visualização acrescenta as referências para venda, produto da venda, pessoa, empresa e conta a pagar ou a receber, com escopo por empresa. ## 2026-07-29 - Novos endpoints de leitura de movimentações: [Consultar movimentações](#tag/Movimentacoes/paths/~1account_movements/get) e [Consultar movimentação por ID](#tag/Movimentacoes/paths/~1account_movements~1{id}/get). A consulta traz data, valor, sentido (crédito ou débito), observação e os dados de cheque e de cartão; a consulta por ID acrescenta as referências para conta, forma de pagamento, conta a pagar/receber, fatura de cartão e conta do outro lado da transferência. Escopo por empresa. ## 2026-07-28 - Novos endpoints de leitura de contas a pagar e receber: [Consultar contas a pagar e receber](#tag/Contas-a-Pagar-e-Receber/paths/~1bills/get) e [Consultar conta a pagar ou receber por ID](#tag/Contas-a-Pagar-e-Receber/paths/~1bills~1{id}/get). Trazem identificação, valores, situação, boleto, recorrência, categorias, rateios, movimentações de liquidação, itens de fatura (cliente, fornecedor ou cartão), comissões, anexos e campos personalizados, com escopo por empresa. ## 2026-07-17 - Os endpoints [Consultar vendas](#tag/Vendas/paths/~1sales/get) e [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get) passaram a incluir os anexos da venda no campo `attachments`: cada anexo traz `id`, `description`, `extension`, `content_type` e `download_url`, com o conteúdo acessível por um link de download temporário. ## 2026-07-16 - Os endpoints [Consultar vendas](#tag/Vendas/paths/~1sales/get) e [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get) passaram a retornar a operação no campo `operation` (objeto com `id` e `name`); antes o identificador vinha em `operation_id`. ## 2026-07-15 - Os endpoints [Consultar vendas](#tag/Vendas/paths/~1sales/get) e [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get) passaram a incluir as comissões da venda no campo `commissions`: o rateio por pessoa e função (vendedor, intermediário e outros), com valor da comissão, valor retido e saldo. ## 2026-07-14 - Os endpoints [Consultar vendas](#tag/Vendas/paths/~1sales/get) e [Consultar venda por ID](#tag/Vendas/paths/~1sales~1{id}/get) passaram a incluir os dados financeiros da venda no campo `financial`: observações financeiras, os repasses aos fornecedores e os lançamentos de contas a pagar e a receber vinculados à venda. ## 2026-07-10 - Novos endpoints de leitura para os cadastros do sistema: [cabines](#tag/Cabines/paths/~1cabins/get), [categorias](#tag/Categorias/paths/~1categories/get), [centros de custo](#tag/Centros-de-Custo/paths/~1cost_centers/get), [cidades](#tag/Cidades/paths/~1cities/get), [contas e cartões](#tag/Contas-e-Cartoes/paths/~1accounts/get), [formas de pagamento](#tag/Formas-de-Pagamento/paths/~1payment_methods/get), [integrações](#tag/Integracoes/paths/~1integrations/get), [moedas](#tag/Moedas/paths/~1currencies/get), [navios](#tag/Navios/paths/~1ships/get), [orçamentos](#tag/Orcamentos/paths/~1quotes/get), [pessoas](#tag/Pessoas/paths/~1people/get), [regras de nota fiscal](#tag/Regras-da-Nota-Fiscal/paths/~1nf_rules/get), [regras de faturamento](#tag/Regras-de-Faturamento/paths/~1invoice_rules/get), [tarefas](#tag/Tarefas/paths/~1tasks/get), [vendedores](#tag/Vendedores/paths/~1sellers/get) e [viagens](#tag/Viagens/paths/~1travels/get). - name: Conexão automática description: " Além do Basic Auth, um parceiro homologado pelo Monde pode acessar a API v3 em nome de uma agência de viagens, via OAuth 2.0 (Authorization Code + PKCE), sem que a agência compartilhe a senha de uma credencial. O que o parceiro pode fazer é definido na homologação, e a agência vê e aprova essa lista ao autorizar.

Todos os endpoints desta seção ficam em https://web.monde.com.br.

Credenciais de homologação

1. Ativar a conexão automática (homologação)

Antes de usar, confirme que suas credenciais funcionam batendo na rota de homologação com client_id e client_secret (HTTP Basic). Enquanto a homologação está pendente, a autorização não funciona.
curl -X POST https://web.monde.com.br/oauth/homologation
    -u "SEU_CLIENT_ID:SEU_CLIENT_SECRET"

2. Autorização

A cada tentativa de conexão, gere no backend um state e um code_verifier novos e guarde os dois na sessão do usuário. O code_verifier é um texto aleatório de 43 a 128 caracteres; o code_challenge é BASE64URL(SHA256(code_verifier)), sem o = no fim. PKCE é obrigatório e só aceita S256: ele é o que impede outro sistema de trocar um code interceptado.
code_verifier=$(openssl rand -base64 64 | tr -d '=+/\\n' | cut -c1-64) code_challenge=$(printf
    '%s' "$code_verifier" | openssl dgst -sha256 -binary | openssl base64
    | tr '+/' '-_' | tr -d '=\\n')
Redirecione o usuário da agência para a URL de autorização, com os valores codificados para URL:
GET https://web.monde.com.br/oauth/authorize?response_type=code&client_id=SEU_CLIENT_ID&redirect_uri=SUA_REDIRECT_URI&state=STATE&code_challenge=CODE_CHALLENGE&code_challenge_method=S256
A agência faz login, escolhe a empresa e consente. Só um administrador da agência pode autorizar.

3. Retorno na redirect_uri

Quando a agência aprova, o navegador volta para a redirect_uri com o code e o mesmo state que você enviou:
SUA_REDIRECT_URI?code=agencia%7CujES3JCJylJRoM3j_kGeavaD2hFqz2oqw1Lazq_u0rs&state=STATE
Quando a agência recusa:
SUA_REDIRECT_URI?error=access_denied&error_description=O+dono+do+recurso+ou+o+servidor+de+autoriza%C3%A7%C3%A3o+negou+a+requisi%C3%A7%C3%A3o.&state=STATE

Botão "Conectar com o Monde"

Coloque na sua plataforma um botão no padrão de "Entrar com o Google", com o texto "Conectar com o Monde". O href aponta para a URL de autorização que você monta no seu backend a cada acesso, com um code_challenge PKCE novo (passo 2 acima), nunca um link estático. O símbolo do Monde é hospedado por nós: https://web.monde.com.br/logo-monde-conectar.svg (colorido, para fundo claro) e https://web.monde.com.br/logo-monde-conectar-branco.svg (branco, para fundo azul). Três variações:

1. Negativo (fundo azul)

Monde Conectar com o Monde
<a href="URL_DE_AUTORIZACAO" style="display:inline-flex;align-items:center;gap:10px;height:40px;padding:0
    20px 0 14px;background:#2c7be5;color:#fff;border:1px solid #2c7be5;border-radius:6px;font:600
    14px 'Open Sans',Arial,sans-serif;text-decoration:none"><img src="https://web.monde.com.br/logo-monde-conectar-branco.svg"
    alt="Monde" style="height:22px"> Conectar com o Monde</a>

2. Colorido (fundo branco)

Monde Conectar com o Monde
<a href="URL_DE_AUTORIZACAO" style="display:inline-flex;align-items:center;gap:10px;height:40px;padding:0
    20px 0 14px;background:#fff;color:#344050;border:1px solid #d8e2ef;border-radius:6px;font:600
    14px 'Open Sans',Arial,sans-serif;text-decoration:none"><img src="https://web.monde.com.br/logo-monde-conectar.svg"
    alt="Monde" style="height:22px"> Conectar com o Monde</a>

3. Só texto

Conectar com o Monde
<a href="URL_DE_AUTORIZACAO" style="display:inline-flex;align-items:center;height:40px;padding:0
    20px;background:#2c7be5;color:#fff;border:1px solid #2c7be5;border-radius:6px;font:600
    14px 'Open Sans',Arial,sans-serif;text-decoration:none">Conectar com o
    Monde</a>

4. Troca do code pelo token

Faça a troca no backend, nunca no navegador. O corpo vai em application/x-www-form-urlencoded; o mesmo corpo em JSON (application/json) também é aceito.
curl
    -X POST https://web.monde.com.br/oauth/token -H "Content-Type: application/x-www-form-urlencoded"
    --data-urlencode "grant_type=authorization_code" --data-urlencode "code=CODE"
    --data-urlencode "redirect_uri=SUA_REDIRECT_URI" --data-urlencode "client_id=SEU_CLIENT_ID"
    --data-urlencode "client_secret=SEU_CLIENT_SECRET" --data-urlencode
    "code_verifier=CODE_VERIFIER"
Resposta 200:
{
    "access_token": "YWdlbmNpYXw2ZjFj...", "token_type":
    "Bearer", "scope": "full_access", "created_at":
    1790602784 }
O access_token não expira e não vem refresh_token. Guarde-o no backend, um por agência conectada, e trate-o como senha.

5. Uso na API v3

A URL da API v3 não muda: chame https://web.monde.com.br/api/v3 com o token no cabeçalho Authorization (o token já carrega a agência).
Authorization: Bearer SEU_ACCESS_TOKEN
Para confirmar que a conexão funciona sem criar dado, chame GET /api/v3/sales com o token:
curl
    https://web.monde.com.br/api/v3/sales -H "Authorization: Bearer SEU_ACCESS_TOKEN"
    -H "Content-Type: application/json"

6. Desconectar (revogação)

Quando o usuário desconectar na sua plataforma, ou se o token vazar, revogue o token no backend:
curl -X POST
    https://web.monde.com.br/oauth/revoke --data-urlencode "token=SEU_ACCESS_TOKEN"
    --data-urlencode "client_id=SEU_CLIENT_ID" --data-urlencode "client_secret=SEU_CLIENT_SECRET"
A resposta é 200 com {}. A conexão com a agência é excluída na hora e o token para de funcionar. Para conectar de novo, recomece pela autorização. " components: parameters: authorization_header: name: Authorization in: header required: true description: Credencial de acesso fornecida pela agência de viagens, no esquema Bearer. schema: type: string example: Bearer bW9uZGV8dXNlcjpwYXNzMTIz content_type_json: name: Content-Type in: header required: true description: Tipo de conteúdo da requisição. Deve ser application/json. schema: type: string enum: - application/json example: application/json content_type_multipart: name: Content-Type in: header required: true description: Tipo de conteúdo da requisição. Deve ser multipart/form-data. schema: type: string enum: - multipart/form-data example: multipart/form-data idempotency_key_header: name: Idempotency-Key in: header required: true description: Chave de idempotência (UUID v4) gerada pelo cliente. Veja a seção de [Idempotência](#tag/Idempotencia) para mais detalhes. schema: type: string format: uuid pattern: "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" example: 550e8400-e29b-41d4-a716-446655440000 cursor: name: cursor in: query required: false schema: type: string description: Cursor da próxima página, exatamente como veio em `next_cursor`. Sem ele, a consulta começa pela primeira página. example: eyJfcmFpbHMiOnsiZGF0YSI6WyIyMDI2LTAzLTEwIiwiNmIwZjdjMWUtMmQ0YS00ZjhiLTljMzEtNThhMGQ3ZTEzZjQyIl0sInB1ciI6ImFwaS92My9wcm9kdWN0cyNpbmRleCJ9fQ--3aa1d942d6240ca905038c019d661bc90af6836fc4a818cee3663829c75970e4 size: name: size in: query required: false schema: type: integer minimum: 1 maximum: 50 default: 20 description: Número de registros por página. example: 10 schemas: entity_reference: type: object description: Referência a um registro relacionado. properties: id: type: string format: uuid description: Identificador do registro referenciado. example: b2a6d7da-ff94-40e3-b069-812b2fd45b91 required: - id numeric_entity_reference: type: object description: Referência a um registro relacionado. properties: id: type: integer description: Identificador do registro referenciado. example: 42 required: - id person: type: object properties: email: type: - string - 'null' description: 'Endereço de e-mail.

Exemplo: "contato@exemplo.com".' maxLength: 200 phone_number: type: - string - 'null' description: 'Número de telefone, sem traço ou espaços. Para números internacionais, utilize + e o código do país.

Exemplos: "1134567890", "+33170180123".' maxLength: 20 mobile_number: type: - string - 'null' description: 'Número de telefone celular, sem traço ou espaços. Para números internacionais, utilize + e o código do país.

Exemplos: "11934567890", "+447911123456".' maxLength: 20 address: type: - object - 'null' description: Endereço. properties: postal_code: type: - string - 'null' description: 'CEP ou código postal, sem traços.

Exemplo: "04078011".' maxLength: 8 street: type: - string - 'null' description: 'Logradouro.

Exemplo: "Avenida Divino Salvador".' maxLength: 50 street_number: type: - string - 'null' description: 'Número.

Exemplo: "5000".' maxLength: 10 neighborhood: type: - string - 'null' description: 'Bairro.

Exemplo: "Planalto Paulista".' maxLength: 30 additional_info: type: - string - 'null' description: 'Complemento.

Exemplo: "Casa 2".' maxLength: 20 city_ibge: type: - string - 'null' description: 'Código IBGE da cidade.

Exemplo: "3550308".' minLength: 7 maxLength: 7 city_name: type: - string - 'null' description: 'Nome da cidade. Exemplo: "São Paulo". ' maxLength: 50 state_code: type: - string - 'null' description: ' Código ou sigla do estado (ou outra subdivisão do país, como província, distrito, região, etc.). Exemplos: "SP", "RJ", "NY", "CA", "FL", "BAV", "VIC". ' maxLength: 3 country_code: type: - string - 'null' description: ' Código do país no padrão ISO-3166-1 alpha-2. Exemplos: "BR", "US", "GE", "AU". ' minLength: 2 maxLength: 2 city_inscription: type: - string - 'null' description: Inscrição municipal maxLength: 15 observations: type: - string - 'null' description: Observações da pessoa charge_billet_fee: type: boolean description: Indica se a taxa de boleto é cobrada da pessoa default: false person_references: type: object properties: seller: description: Vendedor responsável pela pessoa "$ref": "#/components/schemas/entity_reference" promoter: description: Promotor da pessoa (planos operadora) "$ref": "#/components/schemas/entity_reference" labels: type: array description: Marcadores atribuídos à pessoa. items: "$ref": "#/components/schemas/entity_reference" contacts: type: array description: Pessoas ligadas a este cadastro como contato. Cada pessoa informada precisa já estar cadastrada e não pode se repetir na lista. items: "$ref": "#/components/schemas/person_contact" custom_fields: type: array description: Campos personalizados de pessoas, definidos pela agência. Envie cada campo por `id` e `value`. Os campos ativos marcados como obrigatórios precisam vir preenchidos. items: "$ref": "#/components/schemas/person_custom_field" person_birthplace: type: - object - 'null' description: "'Naturalidade: cidade em que a pessoa nasceu. Informe o código IBGE ou, na falta dele, o nome da cidade com estado e país. A cidade que ainda não estiver cadastrada é criada.'" properties: city_ibge: type: - string - 'null' description: '''Código IBGE da cidade de nascimento.

Exemplo: "3550308".''' minLength: 7 maxLength: 7 city_name: type: - string - 'null' description: |- 'Nome da cidade de nascimento. Exemplo: "São Paulo". ' maxLength: 50 state_code: type: - string - 'null' description: |- ' Código ou sigla do estado de nascimento (ou outra subdivisão do país). Exemplos: "SP", "RJ", "NY". ' maxLength: 3 country_code: type: - string - 'null' description: |- ' Código do país de nascimento no padrão ISO-3166-1 alpha-2. Exemplos: "BR", "US", "PT". ' minLength: 2 maxLength: 2 person_additional_data: type: - object - 'null' description: Dados adicionais da pessoa física. Ausente (null) para pessoa jurídica. properties: marital_status: type: - string - 'null' description: |- ' Estado civil (pessoa física). ' enum: - single - married - separated - divorced - widowed - civil_union - rg_emitter: type: - string - 'null' description: Órgão emissor do RG maxLength: 10 rg_issue_date: type: - string - 'null' format: date description: Data de emissão do RG birth_certificate: type: - string - 'null' description: Certidão de nascimento maxLength: 50 mother_name: type: - string - 'null' description: Filiação (mãe) maxLength: 50 person_tax_withholding: type: - object - 'null' description: Retenções de imposto da pessoa jurídica. Ausente (null) para pessoa física. properties: iss: type: boolean description: Indica retenção de ISS (pessoa jurídica) default: false ir: type: boolean description: Indica retenção de IR (pessoa jurídica) default: false pis_cofins_csll: type: boolean description: Indica retenção de PIS/COFINS/CSLL (pessoa jurídica) default: false person_airline: type: - object - 'null' description: Dados de companhia aérea da pessoa jurídica (fornecedores). Ausente (null) para pessoa física. properties: code: type: - string - 'null' description: Código da companhia aérea (fornecedores). É único entre as pessoas — no cadastro, um código já usado por outra pessoa é recusado. maxLength: 3 number: type: - string - 'null' description: Número da companhia aérea (fornecedores) maxLength: 3 person_contact: type: object required: - person properties: role: type: - string - 'null' description: Função registrada no vínculo, que descreve quem é o contato maxLength: 50 person: description: Pessoa que passa a ser contato deste cadastro. "$ref": "#/components/schemas/entity_reference" person_custom_field: type: object required: - id properties: id: type: integer description: Identificador da definição do campo personalizado. O nome, o tipo e as opções da definição saem da consulta de definições de campos personalizados. example: 123 value: type: - string - number - 'null' description: | Valor do campo personalizado. Deve corresponder ao kind do campo: - numeric: número inteiro. - currency: valor monetário (número). - text: texto livre. - date: data no formato ISO 8601 (AAAA-MM-DD). - choices: uma das opções cadastradas na definição. individual_person: allOf: - type: object required: - external_id - name properties: external_id: type: string description: 'Identificador **único** utilizado para identificar o registro no Monde. Você deve fornecer essa informação e utilizá-la em futuras referências ao mesmo registro. Permitido qualquer string única, como um documento ou UUID.

Exemplo: "09fbbf97-4ccb-4e5d-8fe4-2eacc38138b3".' maxLength: 50 name: type: string description: 'Nome.

Exemplo: "Maria da Silva".' maxLength: 100 gender: type: - string - 'null' description: Gênero enum: - female - male - birthdate: type: - string - 'null' description: 'Data de nascimento no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "1990-02-12".' format: date cpf: type: - string - 'null' description: 'CPF, sem pontos, traços ou espaços.

Exemplo: "38107867807".' maxLength: 11 minLength: 11 rg: type: - string - 'null' description: 'RG, sem pontos, traços ou espaços.

Exemplo: "461196037".' maxLength: 20 passport_number: type: - string - 'null' description: 'Número do passaporte, sem pontos, traços ou espaços.

Exemplo: "FG225776".' maxLength: 20 passport_expiration_date: type: - string - 'null' format: date description: 'Data de expiração do passaporte no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "2035-12-01".' foreigner: type: boolean description: Indica se a pessoa é estrangeira. Use `true` para pessoas que não têm nacionalidade brasileira. default: false foreign_identity_document: type: - string - 'null' description: ' Documento de identificação do estrangeiro, emitido em seu país de origem. Sem pontos, traços ou espaços.

Exemplo: "41234567". ' maxLength: 30 business_phone: type: - string - 'null' description: Telefone comercial maxLength: 20 birthplace: "$ref": "#/components/schemas/person_birthplace" additional_data: "$ref": "#/components/schemas/person_additional_data" - "$ref": "#/components/schemas/person" company_person: allOf: - type: object required: - external_id - name properties: external_id: type: string description: 'Identificador **único** utilizado para identificar o registro no Monde. Você deve fornecer essa informação e utilizá-la em futuras referências ao mesmo registro. Permitido qualquer string única, como um documento ou UUID.

Exemplo: "09fbbf97-4ccb-4e5d-8fe4-2eacc38138b3".' maxLength: 50 name: type: string description: 'Nome fantasia.

Exemplo: "Epic Journey".' maxLength: 100 legal_name: type: - string - 'null' description: 'Razão social.

Exemplo: "Epic Journey S.A.".' maxLength: 100 cnpj: type: - string - 'null' description: 'CNPJ, sem pontos, barras, traços ou espaços.

Exemplo: "50559280000140".' minLength: 14 maxLength: 14 ie: type: - string - 'null' description: 'Inscrição Estadual, sem pontos, traços ou espaços.

Exemplo: "123456789012".' maxLength: 20 foreigner: type: boolean description: Indica se a empresa é estrangeira. Use `true` para empresas que não estão sediadas no Brasil. default: false website: type: - string - 'null' description: Website (pessoa jurídica) maxLength: 50 tax_identification_number: type: - string - 'null' description: Identificação fiscal (pessoa jurídica estrangeira) maxLength: 20 tax_withholding: "$ref": "#/components/schemas/person_tax_withholding" airline: "$ref": "#/components/schemas/person_airline" - "$ref": "#/components/schemas/person" person_union_fields: type: object properties: person_kind: type: string description: Define se é uma pessoa física (individual) ou jurídica (company). enum: - individual - company external_id: type: string description: 'Identificador **único** utilizado para identificar o registro no Monde. Você deve fornecer essa informação e utilizá-la em futuras referências ao mesmo registro. Permitido qualquer string única, como um documento ou UUID.

Exemplo: "09fbbf97-4ccb-4e5d-8fe4-2eacc38138b3".' maxLength: 50 name: type: string description: 'Nome ou nome fantasia, de acordo com o tipo da pessoa.

Exemplo: "Maria da Silva" ou "Epic Journey".' maxLength: 100 legal_name: type: - string - 'null' description: 'Razão social.

Exemplo: "Epic Journey S.A.".' maxLength: 100 gender: type: - string - 'null' description: Gênero enum: - female - male - birthdate: type: - string - 'null' description: 'Data de nascimento no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "1990-02-12".' format: date cpf_cnpj: type: string description: 'CPF ou CNPJ, de acordo com o tipo da pessoa, sem pontos, barras, traços ou espaços.

Exemplo: "38107867807" ou "50559280000140".' minLength: 11 maxLength: 14 rg_ie: type: - string - 'null' description: 'RG ou Inscrição Estadual, de acordo com o tipo da pessoa, sem pontos, traços ou espaços.

Exemplo: "461196037" ou "123456789012".' maxLength: 20 passport_number: type: - string - 'null' description: 'Número do passaporte, sem pontos, traços ou espaços.

Exemplo: "FG225776".' maxLength: 20 passport_expiration_date: type: - string - 'null' format: date description: 'Data de expiração do passaporte no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "2035-12-01".' foreigner: type: boolean description: Indica se a pessoa ou empresa é estrangeira. Use `true` para pessoas que não têm nacionalidade brasileira ou empresas que não estão sediadas no Brasil. default: false foreign_identity_document: type: - string - 'null' description: ' Documento de identificação do estrangeiro, emitido em seu país de origem. Sem pontos, traços ou espaços.

Exemplo: "41234567". ' maxLength: 30 business_phone: type: - string - 'null' description: Telefone comercial maxLength: 20 birthplace: "$ref": "#/components/schemas/person_birthplace" additional_data: "$ref": "#/components/schemas/person_additional_data" website: type: - string - 'null' description: Website (pessoa jurídica) maxLength: 50 tax_identification_number: type: - string - 'null' description: Identificação fiscal (pessoa jurídica estrangeira) maxLength: 20 tax_withholding: "$ref": "#/components/schemas/person_tax_withholding" airline: "$ref": "#/components/schemas/person_airline" individual_or_company: allOf: - type: object required: - person_kind - external_id - name - "$ref": "#/components/schemas/person_union_fields" - "$ref": "#/components/schemas/person" person_registration: allOf: - type: object required: - person_kind - name - "$ref": "#/components/schemas/person_union_fields" - "$ref": "#/components/schemas/person" - "$ref": "#/components/schemas/person_references" person_update: allOf: - "$ref": "#/components/schemas/person_union_fields" - "$ref": "#/components/schemas/person" - "$ref": "#/components/schemas/person_update_references" person_update_references: type: object properties: seller: description: Vendedor responsável pela pessoa "$ref": "#/components/schemas/entity_reference" promoter: description: Promotor da pessoa (planos operadora) "$ref": "#/components/schemas/entity_reference" labels: type: array description: 'Marcadores da pessoa. A lista enviada substitui a atual: o marcador que não vier nela é retirado. Envie uma lista vazia para retirar todos os marcadores; omita o campo para manter os atuais. Cada marcador precisa já estar cadastrado.' items: "$ref": "#/components/schemas/entity_reference" contacts: type: array description: 'Pessoas ligadas a este cadastro como contato. A lista enviada substitui a atual: o contato que não vier nela é desfeito. A função de cada contato é a que vier na lista: omiti-la deixa o contato sem função. Envie uma lista vazia para desfazer todos os contatos; omita o campo para manter os atuais. Cada pessoa informada precisa já estar cadastrada e não pode se repetir na lista. Os vínculos em que esta pessoa é contato de outra não são afetados.' items: "$ref": "#/components/schemas/person_contact" custom_fields: type: array description: 'Campos personalizados de pessoas, definidos pela agência. Diferente das outras listas, não substitui: cada campo enviado é gravado por cima do valor atual e os que não vierem permanecem como estão, então a lista vazia não muda nada e não é possível esvaziar um campo por esta operação. Envie cada campo por `id` e `value`.' items: "$ref": "#/components/schemas/person_custom_field" representative: allOf: - "$ref": "#/components/schemas/company_person" description: Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. intermediary: allOf: - "$ref": "#/components/schemas/individual_or_company" description: Intermediário da venda. Pessoa ou empresa que conecta as partes envolvidas na venda do produto, facilitando a negociação e, geralmente, recebendo uma comissão pela intermediação. product_summary: type: object description: Representa um produto disponível no sistema. properties: id: type: string format: uuid description: Identificador único do produto example: f9d961b8-ea88-4346-8e52-afe94267417a name: type: string description: Nome do produto example: Seguro Viagem included_services: type: string nullable: true description: Serviços inclusos no produto example: Cobertura completa para viagens internacionais kind: type: string enum: - insurance - cruise - hotel - airline_ticket - train_ticket - ground_transportation - excursion - car_rental - travel_package - cvc_package - operation - others description: " Tipo do produto. " example: insurance passengers: type: boolean description: Indica se o produto tem passageiros example: true system: type: boolean description: Indica se o produto é do sistema (não pode ser excluído) example: false active: type: boolean description: Indica se o produto está ativo example: true nbs_code: type: string nullable: true description: Código NBS do produto (Nomenclatura Brasileira de Serviços) example: '115022000' required: - id - name - kind - passengers - system - active - included_services product: type: object description: Representa um produto com seus fornecimentos e representantes. allOf: - "$ref": "#/components/schemas/product_summary" - type: object properties: supplies: type: array description: Fornecimentos do produto. Cada fornecimento traz o fornecedor, as condições comerciais e os representantes. items: type: object description: Fornecimento do produto, com o fornecedor e as condições comerciais negociadas com ele. properties: &535 description: type: string nullable: true description: Descrição do fornecimento (campo opcional). example: Fornecimento padrão commission_type: &1 type: string enum: - percentage - amount description: Tipo da comissão — percentage (percentual) ou value (valor). example: percentage commission_percentage: &2 type: number format: double description: Percentual de comissão. example: 10.0 commission_amount: &3 type: number format: double description: Valor da comissão. example: 0.0 over_percentage: &4 type: number format: double description: Percentual de over. example: 0.0 over_value: &5 type: number format: double description: Percentual aplicado sobre o over. example: 100.0 du_percentage: &6 type: number format: double description: Percentual da taxa de cartão DU. example: 0.0 rav_percentage: &7 type: number format: double description: Percentual da taxa de cartão RAV. example: 0.0 restitutes_kandir_law: type: boolean description: Indica se o fornecimento restitui a Lei Kandir. example: true supplier: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Fornecedor do fornecimento. representations: type: array description: Representantes vinculados ao fornecimento. items: type: object description: Representante vinculado a um fornecimento, com as condições comerciais próprias. properties: &534 commission_type: *1 commission_percentage: *2 commission_amount: *3 over_percentage: *4 over_value: *5 du_percentage: *6 rav_percentage: *7 representative: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Representante do fornecimento. required: - supplies company_identifier: type: string description: 'CNPJ da agência de viagens emissora da venda. Deve conter somente dígitos.

Exemplo: "86452403000197".' pattern: "^[0-9]{14}$" minLength: 14 maxLength: 14 sale_date: type: string format: date description: 'Data da venda no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "2026-09-29".' operation_id: type: string writeOnly: true description: ID da operação própria associada a essa venda. seller_create: type: object description: Vendedor que fez a negociação do produto com o cliente e é responsável pela venda. required: - name - external_id properties: external_id: type: string description: 'Identificador **único** utilizado para identificar o registro no Monde. Você deve fornecer essa informação e utilizá-la em futuras referências ao mesmo registro. Permitido qualquer string única, como um documento ou UUID.

Exemplo: "09fbbf97-4ccb-4e5d-8fe4-2eacc38138b3".' maxLength: 50 name: type: string description: 'Nome.

Exemplo: "Maria da Silva".' maxLength: 100 cpf: type: string description: 'CPF, sem pontos, traços ou espaços.

Exemplo: "38107867807".' maxLength: 11 minLength: 11 custom_field: type: object required: - id properties: id: type: integer description: Identificador da definição do campo personalizado (o mesmo retornado em Consultar campos personalizados). É por ele que o valor é enviado na criação da venda. O nome, o tipo e as opções da definição saem da consulta de definições de campos personalizados ou de Consultar campo personalizado por ID. example: 123 value: type: - string - number - 'null' description: | Valor do campo personalizado. Deve corresponder ao kind do campo: - numeric: número inteiro. - currency: valor monetário (número). - text: texto livre. - date: data no formato ISO 8601 (YYYY-MM-DD). - choices: uma das opções cadastradas para o campo, enviada como texto. Envie sempre um valor simples (número, texto ou data), nunca um objeto ou lista; um valor não simples é ignorado. commission_create: type: object writeOnly: true required: - external_id - kind - value properties: external_id: type: string maxLength: 50 description: Identificador externo da pessoa que recebe a comissão, o mesmo informado no vendedor ou intermediário da venda. kind: type: string enum: - seller - intermediary - person description: Papel da comissão. `seller` e `intermediary` gravam o cargo de sistema correspondente; `person` grava sem cargo. `intermediary` exige que a venda tenha intermediário. value: type: number format: double multipleOf: 0.01 exclusiveMaximum: 100000000000 description: Valor da comissão. description: type: - string - 'null' description: 'Descrição da comissão: texto livre informado manualmente ou a frase do plano de comissão que a originou.' retained_value: type: number format: double multipleOf: 0.01 exclusiveMaximum: 100000000000 description: Valor retido da comissão. Opcional, assume 0 quando omitido. sale_totals: type: object readOnly: true properties: products: type: number format: double readOnly: true description: Total dos produtos. fees: type: number format: double readOnly: true description: Total de taxas. discount: type: number format: double readOnly: true description: Total de descontos. revenue: type: number format: double readOnly: true description: Receita total da venda. balance: type: number format: double readOnly: true description: Saldo a pagar da venda. final_amount: type: number format: double readOnly: true description: Valor final da venda. sale: type: object required: - company_identifier - sale_date - payer - seller - id - sale_number properties: company_identifier: "$ref": "#/components/schemas/company_identifier" id: type: string format: uuid readOnly: true description: Identificador único da venda (formato UUID). example: 212b54b8-27df-4859-80a9-79ad855bcd09 sale_number: type: integer readOnly: true description: Número sequencial da venda gerado automaticamente pelo sistema. example: 987 sale_date: "$ref": "#/components/schemas/sale_date" departure_date: type: string format: date readOnly: true description: 'Data de início da viagem no formato ISO 8601 (AAAA-MM-DD), calculada considerando a menor data de início entre todos os produtos da venda (check-in de hotéis, início de seguros, partida de cruzeiros, etc.).

Exemplo: "2024-03-15".' example: '2024-03-15' return_date: type: string format: date readOnly: true description: 'Data de fim da viagem no formato ISO 8601 (AAAA-MM-DD), calculada considerando a maior data de fim entre todos os produtos da venda (check-out de hotéis, fim de seguros, chegada de cruzeiros, etc.).

Exemplo: "2024-03-22".' example: '2024-03-22' status: type: string default: opened enum: - opened - closed description: Situação da venda na criação. Padrão `opened`. Envie `closed` para já criar a venda fechada. Isso exige que ela atenda a todas as regras de fechamento (sem saldo pendente) e a permissão de fechar venda. Se não puder fechar, a criação inteira é recusada com 422. observations: type: string readOnly: true description: Observações gerais da venda. printed_receipt: type: boolean readOnly: true description: Indica se o recibo da venda foi impresso. example: false created_at: type: string format: date-time readOnly: true description: Data e hora de cadastro da venda. example: '2024-03-15T10:30:00' created_by: type: object nullable: true readOnly: true description: Pessoa que cadastrou a venda. properties: id: type: string format: uuid description: Identificador único da pessoa que cadastrou a venda. example: c3b7e8eb-1199-4457-9170-923c3fe56c92 name: type: string description: Nome da pessoa que cadastrou a venda. example: Maria da Silva required: - id - name operation_id: "$ref": "#/components/schemas/operation_id" custom_fields: type: array description: Campos personalizados da venda, definidos pela agência. Na criação, envie cada campo por `id` e `value`; os campos ativos e obrigatórios do módulo de vendas passam a ser exigidos. items: "$ref": "#/components/schemas/custom_field" seller: "$ref": "#/components/schemas/seller_create" payer: allOf: - "$ref": "#/components/schemas/individual_or_company" description: Contratante do produto, responsável pelo pagamento. Pode ser uma pessoa física ou jurídica. Mesmo que a negociação envolva múltiplos pagantes, informe apenas o pagante principal ou a pessoa que fez a negociação do produto com o vendedor. intermediary: oneOf: - "$ref": "#/components/schemas/intermediary" - type: 'null' requester: description: Pessoa física que solicitou a venda. oneOf: - "$ref": "#/components/schemas/individual_person" - type: 'null' approver: description: Pessoa que aprovou a venda. oneOf: - "$ref": "#/components/schemas/individual_or_company" - type: 'null' promoter: readOnly: true description: Promotor da venda (planos operadora). oneOf: - "$ref": "#/components/schemas/individual_or_company" - type: 'null' insurances: type: array description: Seguro viagem. items: "$ref": "#/components/schemas/insurance" cruises: type: array description: Cruzeiro. items: "$ref": "#/components/schemas/cruise" hotels: type: array description: Diárias de hospedagem. items: "$ref": "#/components/schemas/hotel" airline_tickets: type: array description: |- ⚠️ Esse produto ainda não está disponível na criação — está documentado apenas como referência do que temos planejado.

' Passagem aérea.

É possível realizar a inserção de passagens aéreas de duas maneiras: Os bilhetes enviados individualmente serão agrupados internamente pelo nosso sistema na mesma venda, desde que possuam o mesmo localizador (`locator`) e data de venda (`sale_date`). Bilhetes com o mesmo localizador, mas com datas de venda diferentes, não serão agrupados e sim inseridos em vendas distintas. ' items: "$ref": "#/components/schemas/airline_ticket" train_tickets: type: array description: " Bilhete de trem. " items: "$ref": "#/components/schemas/train_ticket" ground_transportations: type: array description: " Transporte terrestre. " items: "$ref": "#/components/schemas/ground_transportation" car_rentals: type: array description: Locação de veículos. items: "$ref": "#/components/schemas/car_rental" travel_packages: type: array description: Pacotes turísticos. items: "$ref": "#/components/schemas/travel_package" operation: allOf: - "$ref": "#/components/schemas/operation" nullable: true description: Produto de operação própria da venda. No máximo um por venda, e o produto informado precisa ser o mesmo de `operation_id` quando os dois vierem. others: type: array readOnly: true description: Outros produtos da venda, que podem ou não ter passageiros. items: "$ref": "#/components/schemas/others" cvc_packages: type: array readOnly: true description: Pacotes CVC da venda. Sempre sem passageiros. items: "$ref": "#/components/schemas/cvc_package" payments: type: array description: " Lista de pagamentos realizados na venda. Cada pagamento pode ser distribuído entre um ou mais produtos através da correspondência do local_id, permitindo o controle detalhado de como os valores foram alocados por produto. " items: "$ref": "#/components/schemas/payment" commissions: type: array description: Comissões a gravar na venda. Só é aceito quando `status` é `closed`; o saldo de cada linha é o valor menos o valor retido. items: "$ref": "#/components/schemas/commission_create" attachments: type: array readOnly: true description: Lista de anexos do registro. items: "$ref": "#/components/schemas/attachment_summary" totals: allOf: - "$ref": "#/components/schemas/sale_totals" description: Totais consolidados da venda. financial: allOf: - "$ref": "#/components/schemas/financial" description: 'Financeiro da venda: observações financeiras, repasses a fornecedor e lançamentos avulsos de conta a pagar/receber.' sale_totals_read: type: object readOnly: true description: Agregado de totais da venda. properties: products: type: number format: double description: Soma do valor dos produtos da venda em BRL. fees: type: number format: double description: Soma das taxas da venda em BRL. discount: type: number format: double description: Soma dos descontos da venda em BRL. revenue: type: number format: double description: Receita apurada da venda em BRL. balance: type: number format: double description: Saldo remanescente da venda em BRL. final_amount: type: number format: double description: Valor final da venda em BRL. sale_summary: type: object readOnly: true description: Item da consulta de vendas. Traz os campos escalares da venda, as referências relacionadas no formato id/name e o agregado de totais, sem as entidades fracas (produtos, pagamentos, comissões, anexos, financeiro e campos personalizados), que ficam disponíveis apenas na consulta por ID. required: - id - sale_number properties: id: type: string format: uuid description: Identificador único da venda no formato UUID. example: 212b54b8-27df-4859-80a9-79ad855bcd09 sale_number: type: integer description: Número sequencial da venda gerado automaticamente pelo sistema. example: 987 sale_date: type: string format: date description: Data da venda no formato ISO 8601 (AAAA-MM-DD). departure_date: type: string format: date nullable: true description: Data de início da viagem no formato ISO 8601 (AAAA-MM-DD), calculada pela menor data de início entre os produtos da venda. return_date: type: string format: date nullable: true description: Data de fim da viagem no formato ISO 8601 (AAAA-MM-DD), calculada pela maior data de fim entre os produtos da venda. status: type: string enum: - opened - closed - canceled description: Situação atual da venda. observations: type: string nullable: true description: Observações gerais da venda. printed_receipt: type: boolean description: Indica se o recibo da venda foi impresso. created_at: type: string format: date-time nullable: true description: Data e hora de cadastro da venda. totals: allOf: - "$ref": "#/components/schemas/sale_totals_read" description: Agregado de totais da venda. sale_detail: readOnly: true description: Consulta completa de uma venda. Além dos campos da consulta em lista, embute as entidades fracas da venda (arrays de produto por tipo, pagamentos, comissões, anexos, financeiro e campos personalizados). allOf: - "$ref": "#/components/schemas/sale_summary" - type: object required: - company properties: company: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Empresa emissora da venda. created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência à pessoa que efetuou o cadastro da venda. operation: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Operação própria à qual a venda pertence. Vem preenchida mesmo quando nenhum produto de operação própria consta na venda. seller: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência ao vendedor responsável pela venda. payer: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência ao contratante responsável pelo pagamento da venda. intermediary: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência ao intermediário da venda. requester: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência à pessoa que solicitou a venda. approver: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência à pessoa que aprovou a venda. promoter: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência ao promotor da venda. travel: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Referência à viagem à qual a venda pertence. custom_fields: type: array description: Campos personalizados preenchidos na venda. items: "$ref": "#/components/schemas/custom_field" insurances: type: array description: Seguros viagem da venda. items: "$ref": "#/components/schemas/insurance_read" cruises: type: array description: Cruzeiros da venda. items: "$ref": "#/components/schemas/cruise_read" hotels: type: array description: Diárias de hospedagem da venda. items: "$ref": "#/components/schemas/hotel_read" airline_tickets: type: array description: Passagens aéreas da venda. items: "$ref": "#/components/schemas/airline_ticket_read" train_tickets: type: array description: Bilhetes de trem da venda. items: "$ref": "#/components/schemas/train_ticket_read" ground_transportations: type: array description: Transportes terrestres da venda. items: "$ref": "#/components/schemas/ground_transportation_read" car_rentals: type: array description: Locações de veículo da venda. items: "$ref": "#/components/schemas/car_rental_read" travel_packages: type: array description: Pacotes de viagem da venda. items: "$ref": "#/components/schemas/travel_package_read" others: type: array description: Outros produtos da venda. items: "$ref": "#/components/schemas/others_read" excursions: type: array description: Passeios (excursões) da venda. items: "$ref": "#/components/schemas/excursion_read" cvc_packages: type: array description: Pacotes CVC da venda. items: "$ref": "#/components/schemas/cvc_package_read" operations: type: array description: Produtos de operação própria vendidos na venda, cada um com documento, valores e passageiros próprios. Todos pertencem à operação do campo `operation`; vendas antigas podem trazer mais de um. items: "$ref": "#/components/schemas/operation_read" payments: allOf: - "$ref": "#/components/schemas/payment_read" description: Pagamentos da venda, separados entre os destinados à agência e os destinados ao fornecedor. commissions: type: array description: Comissões da venda. items: "$ref": "#/components/schemas/commission" attachments: type: array description: Anexos da venda. items: "$ref": "#/components/schemas/attachment_summary" financial: allOf: - "$ref": "#/components/schemas/financial" description: Financeiro da venda. sales_response: type: object description: Resposta contendo uma lista paginada de vendas na forma de consulta. properties: data: type: array description: Array contendo as vendas da página atual. items: "$ref": "#/components/schemas/sale_summary" pagination: "$ref": "#/components/schemas/pagination" financial: type: object readOnly: true description: 'Financeiro da venda: observações financeiras, repasses a fornecedor por produto e lançamentos avulsos de conta a pagar/receber vinculados à venda.' properties: observations: type: - string - 'null' description: Observações financeiras da venda. vendor_bills: type: array description: |- Lançamentos que contêm os repasses a fornecedor desta venda. Um lançamento pode agregar repasses de várias vendas; use o `sale` de cada item para filtrar os desta. items: "$ref": "#/components/schemas/entity_reference" standalone_bills: type: array description: |- Lançamentos avulsos de conta a pagar ou receber vinculados diretamente a esta venda. items: "$ref": "#/components/schemas/entity_reference" commission: type: object readOnly: true description: 'Comissão da venda: uma linha do rateio de comissão para uma pessoa (vendedor, intermediário ou outra função).' properties: description: type: - string - 'null' description: 'Descrição da comissão: texto livre informado manualmente ou a frase do plano de comissão que a originou.' amount: type: number format: double multipleOf: 0.01 description: Valor da comissão. Pode ser negativo quando se trata de um ajuste. retained_amount: type: number format: double multipleOf: 0.01 description: Valor retido da comissão. balance: type: number format: double multipleOf: 0.01 description: Saldo da comissão (valor menos valor retido). person: allOf: - "$ref": "#/components/schemas/entity_reference" readOnly: true description: |- Pessoa que recebe a comissão. required: - amount - retained_amount - balance - person attachment: type: object required: - resource_type - resource_id - file properties: resource_type: type: string enum: - sale - person description: 'Recurso que irá receber o anexo: "sale" para uma venda, "person" para uma pessoa.

Exemplo: "sale"' resource_id: type: string format: uuid description: 'ID do recurso que irá receber o anexo.

Exemplo: "cc36d5d7-b699-43f1-b081-24c15e2db5e8"' file: type: string format: binary description: 'Arquivo binário a ser anexado. ' description: type: string description: Descrição do anexo. maxLength: 255 attachment_summary: type: object readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador do anexo. description: type: string readOnly: true description: Descrição do anexo. extension: type: string readOnly: true description: 'Extensão do arquivo, em minúsculas e sem o ponto inicial.

Exemplo: "pdf"' content_type: type: string readOnly: true description: 'Tipo MIME derivado da extensão do arquivo. Quando a extensão for desconhecida, retorna "application/octet-stream".

Exemplo: "application/pdf"' download_url: type: string format: uri readOnly: true description: Endereço para baixar o conteúdo deste anexo. Basta segui-lo usando as mesmas credenciais da API; a resposta redireciona (302) para um link temporário do arquivo, que expira em poucos minutos. Um novo acesso a esta URL gera um novo link temporário.

O conteúdo é retornado compactado em gzip e sem o cabeçalho Content-Encoding, então deve ser descompactado explicitamente antes do uso. O tipo e a extensão reais do arquivo estão nos campos content_type e extension. attachments_response: type: object required: - id properties: id: type: string format: uuid description: Identificador do anexo. description: type: string description: Descrição do anexo. maxLength: 255 extension: type: string description: 'Extensão do arquivo, em minúsculas e sem o ponto inicial.

Exemplo: "pdf"' content_type: type: string description: 'Tipo MIME derivado da extensão do arquivo. Quando a extensão for desconhecida, retorna "application/octet-stream".

Exemplo: "application/pdf"' download_url: type: string format: uri description: Endereço para baixar o conteúdo deste anexo. Basta segui-lo usando as mesmas credenciais da API; a resposta redireciona (302) para um link temporário do arquivo, que expira em poucos minutos. Um novo acesso a esta URL gera um novo link temporário.

O conteúdo é retornado compactado em gzip e sem o cabeçalho Content-Encoding, então deve ser descompactado explicitamente antes do uso. O tipo e a extensão reais do arquivo estão nos campos content_type e extension. sale_product_id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. sale_product_local_id: type: string writeOnly: true description: Chave de correlação **obrigatória**, usada para referenciar este produto nos pagamentos da mesma requisição. Deve ser única entre os produtos da venda. Não é armazenada, então não volta na leitura da venda e pode ser reutilizada em outras vendas. Permitido qualquer string, como um documento ou UUID. maxLength: 50 product_status: type: string readOnly: true enum: - active - canceled - deleted description: Situação do produto na venda. product_issue_date: type: string format: date readOnly: true description: Data de emissão do produto. product_canceled_at: type: string format: date-time readOnly: true description: Data de cancelamento do produto. product_observations: type: string readOnly: true description: Observações do produto. vendor_reservation_url: type: string description: URL da reserva no sistema de origem. Utilize esse campo para informar um link para a reserva que está originando esta venda. O link será utilizado para criar um atalho de acesso do Monde ao seu sistema, permitindo que os usuários naveguem rapidamente de um sistema para o outro. format: uri currency_code: type: string description: ' Código da moeda em que o produto é originalmente comercializado, seguindo o padrão ISO 4217.

Exemplo: "BRL".

Na consulta, este campo devolve sempre BRL, e os valores do produto vêm convertidos para Real. ' minLength: 3 maxLength: 3 exchange_rate: type: number format: double exclusiveMinimum: 0 description: " Taxa de câmbio utilizada para converter os valores da moeda em que o produto é originalmente comercializado para Real. Na consulta, este campo devolve sempre 1, porque os valores já vêm em Real. " commission_amount: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Valor da comissão que o fornecedor ou representante paga para a agência de viagens sobre o valor da venda do produto. Utilize o valor monetário, não a porcentagem. " commission_percentage: type: number format: double readOnly: true minimum: 0 description: Percentual de comissão do fornecedor. over_amount: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Valor de over do fornecedor. " over_percentage: type: number format: double readOnly: true minimum: 0 description: Percentual de over do fornecedor. over: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Base sobre a qual o over é calculado. " intermediary_commission_amount: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Valor da comissão que a agência de viagens paga ao intermediário sobre o valor da venda do produto. Utilize o valor monetário, não a porcentagem. " intermediary_commission_percentage: type: number format: double readOnly: true minimum: 0 description: Percentual de comissão do intermediário. intermediary_over_amount: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Valor de over do intermediário. " intermediary_over_percentage: type: number format: double readOnly: true minimum: 0 description: Percentual de over do intermediário. intermediary_over: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Base sobre a qual o over do intermediário é calculado. " agency_service_fee: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Taxa de serviço cobrada diretamente pela agência de viagens, sem vínculo direto com o fornecedor ou representante. O valor é somado ao total do produto e aparece detalhado para o cliente final. " cc_rav_fee: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Taxa administrativa de cartão de crédito sobre a RAV. " cc_du_fee: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 description: " Taxa administrativa de cartão de crédito sobre a DU. " agency_card_rate: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Taxa da operadora do cartão usado pela agência. " deductions: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Abatimentos aplicados ao produto. " discount_amount: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Valor de desconto concedido sobre a receita total da agência de viagens no produto. Utilize o valor monetário, não a porcentagem. " product_totals: type: object readOnly: true properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto. " rav_fee: type: number format: double readOnly: true description: " Total da RAV dos passageiros do produto. " rav_fee_discount: type: number format: double readOnly: true description: " Total de desconto sobre a RAV dos passageiros do produto. " agency_fee: type: number format: double readOnly: true description: " Total da taxa de serviço oculta dos passageiros do produto. " discount: type: number format: double readOnly: true description: " Total de descontos do produto. " products: type: number format: double readOnly: true description: " Soma apenas dos valores dos produtos, sem taxas, descontos ou abatimentos. " customer_amount: type: number format: double readOnly: true description: " Valor total para o cliente. " amount: type: number format: double readOnly: true description: " Valor total do produto, somando os produtos, as taxas e as remunerações e subtraindo descontos e abatimentos. " product_name: type: string readOnly: true description: Nome do produto cadastrado. product_with_passengers: type: boolean readOnly: true description: Indica se o produto trabalha com passageiros. Quando verdadeiro, o detalhamento financeiro vem na lista de passageiros e os campos quantity, unit_price e unit_fee retornam nulos. Quando falso, a lista de passageiros retorna nula e os valores vêm dos campos unitários do produto. product_document: type: string readOnly: true description: Identificador geral do produto, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "localizador", "número da reserva", "código do voucher", "número do pedido", entre outros. maxLength: 40 quantity: type: integer readOnly: true minimum: 0 description: Quantidade de unidades do produto, em produtos sem passageiros. Em produtos com passageiros retorna nulo, pois a contagem corresponde à lista de passageiros. unit_price: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Valor unitário do produto, em produtos sem passageiros. O total corresponde ao valor unitário multiplicado pela quantidade. Em produtos com passageiros retorna nulo. " unit_fee: type: number format: double readOnly: true minimum: 0 multipleOf: 0.01 description: " Taxas unitárias do produto, em produtos sem passageiros. Em produtos com passageiros retorna nulo. " destination: type: string readOnly: true description: Destino do produto. departure_date: type: string readOnly: true description: 'Data e hora de início no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-04T10:56:27".' arrival_date: type: string readOnly: true description: 'Data e hora de término no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-07T10:56:27".' included_services: type: string readOnly: true description: 'Serviços inclusos no produto. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Guia local incluso\nTraslado".' insurance: type: object description: Seguro viagem. required: - local_id - document - begin_date - end_date - destination - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" document: &8 type: string description: Identificador geral do seguro, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "código do voucher", "número da apólice", "código da reserva", "código do pedido", entre outros. maxLength: 40 begin_date: &9 type: string description: 'Data e hora de início da cobertura do seguro no formato ISO 8601. Exemplos: "2026-10-04"; "2026-10-04T10:56:27"' end_date: &10 type: string description: 'Data e hora de término da cobertura do seguro no formato ISO 8601. Exemplos: "2026-10-19"; "2026-10-19T10:56:27"' destination: &11 type: string description: Tipo de destino da viagem. Utilize "national" para viagens dentro do Brasil, "international" para viagens para outros países, e "cruise" para seguros exclusivamente marítimos. enum: - national - international - cruise status: &12 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &13 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &14 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &15 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &16 type: string description: 'Informações adicionais sobre o que está incluso na contratação do seguro, como cobertura, nome do plano, etc. O caractere `\n` será interpretado como uma quebra de linha. Exemplo: "Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas\nCódigo: 1234"' vendor_reservation_url: &17 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &18 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &19 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &20 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &21 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &22 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &23 allOf: - "$ref": "#/components/schemas/over_percentage" over: &24 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &25 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &26 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &27 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &28 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &29 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &30 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &31 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &32 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &33 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &34 allOf: - "$ref": "#/components/schemas/cc_rav_fee" supplier: description: Fornecedor do seguro. Empresa proprietária direta do produto, como uma seguradora, por exemplo. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/insurance_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) de cada passageiro. " description: Totais consolidados do produto. insurance_read: type: object description: Seguro viagem. required: - document - begin_date - end_date - destination - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: *8 begin_date: *9 end_date: *10 destination: *11 status: *12 issue_date: *13 canceled_at: *14 observations: *15 included_services: *16 vendor_reservation_url: *17 currency: *18 exchange_rate: *19 commission_amount: *20 commission_percentage: *21 over_amount: *22 over_percentage: *23 over: *24 intermediary_commission_amount: *25 intermediary_commission_percentage: *26 intermediary_over_amount: *27 intermediary_over_percentage: *28 intermediary_over: *29 agency_service_fee: *30 agency_card_rate: *31 deductions: *32 discount_amount: *33 cc_rav_fee: *34 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor do seguro. Empresa proprietária direta do produto, como uma seguradora, por exemplo. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/insurance_passenger_read" cruise: type: object description: Cruzeiro. required: - local_id - booking_number - departure_date - arrival_date - ship_name - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" booking_number: &35 type: string description: Número da reserva. maxLength: 40 departure_date: &36 type: string description: 'Data e hora de partida do cruzeiro no formato ISO 8601. Exemplos: "2026-10-05"; "2026-10-05T10:56:27"' arrival_date: &37 type: string description: 'Data e hora de chegada do cruzeiro no formato ISO 8601. Exemplos: "2026-10-19"; "2026-10-19T10:56:27"' ship_name: &38 type: string description: Nome do navio. maxLength: 30 cruise_destination: &39 type: string description: 'Destino do cruzeiro. Exemplo: "Bahamas".' maxLength: 30 accommodation_kind: &40 type: string description: ' Tipo de acomodação contratada pelo cliente.

Exemplos: "Single", "Duplo Casal". ' maxLength: 20 cabin_number: &41 type: string description: 'Número da cabine. Exemplo: "8074".' maxLength: 10 cabin_kind: &42 type: string description: 'Tipo da cabine. Exemplos: "Suíte", "Interna", "Externa", etc.' maxLength: 30 cabin_category: &43 type: string description: 'Categoria da cabine. Código utilizado para identificar a qual categoria a cabine pertence. Exemplos: "STD", "7A".' maxLength: 3 meal_plan: &44 type: string readOnly: true description: 'Regime de alimentação do cruzeiro. Exemplos: "All inclusive", "Pensão completa".' maxLength: 20 status: &45 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &46 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &47 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &48 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &49 type: string description: 'Informações adicionais sobre o que está incluso na contratação do cruzeiro, como o nome do pacote, itinerário, etc. O caractere `\n` será interpretado como uma quebra de linha. Exemplo: "Pacote: All Inclusive\nCódigo: 1234".' vendor_reservation_url: &50 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &51 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &52 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &53 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &54 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &55 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &56 allOf: - "$ref": "#/components/schemas/over_percentage" over: &57 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &58 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &59 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &60 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &61 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &62 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &63 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &64 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &65 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &66 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &67 allOf: - "$ref": "#/components/schemas/cc_rav_fee" supplier: description: Fornecedor do cruzeiro. Empresa proprietária direta do produto, como uma companhia de cruzeiros marítimos, por exemplo. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/cruise_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e a gorjeta (tip) de cada passageiro. " description: Totais consolidados do produto. cruise_read: type: object description: Cruzeiro. required: - booking_number - departure_date - arrival_date - ship_name - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 booking_number: *35 departure_date: *36 arrival_date: *37 ship_name: *38 cruise_destination: *39 accommodation_kind: *40 cabin_number: *41 cabin_kind: *42 cabin_category: *43 meal_plan: *44 status: *45 issue_date: *46 canceled_at: *47 observations: *48 included_services: *49 vendor_reservation_url: *50 currency: *51 exchange_rate: *52 commission_amount: *53 commission_percentage: *54 over_amount: *55 over_percentage: *56 over: *57 intermediary_commission_amount: *58 intermediary_commission_percentage: *59 intermediary_over_amount: *60 intermediary_over_percentage: *61 intermediary_over: *62 agency_service_fee: *63 agency_card_rate: *64 deductions: *65 discount_amount: *66 cc_rav_fee: *67 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e a gorjeta (tip) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor do cruzeiro. Empresa proprietária direta do produto, como uma companhia de cruzeiros marítimos, por exemplo. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/cruise_passenger_read" hotel: type: object description: Diárias de hospedagem. required: - local_id - booking_number - check_in - check_out - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" booking_number: &68 type: string description: Número da reserva. maxLength: 40 check_in: &69 type: string description: 'Data e hora de check-in no formato ISO 8601. Exemplos: "2026-10-22"; "2026-10-22T10:56:27"' check_out: &70 type: string description: 'Data e hora de check-out no formato ISO 8601. Exemplos: "2026-10-29"; "2026-10-29T10:56:27"' destination: &71 type: string description: Tipo de destino da viagem. Utilize "national" para viagens dentro do Brasil e "international" para viagens para outros países. enum: - national - international accommodation_kind: &72 type: string description: ' Tipo de acomodação contratada pelo cliente.

Exemplos: "Single", "Duplo Casal". ' maxLength: 20 room_category: &73 type: string description: 'Categoria do quarto. Exemplos: "Suite", "Deluxe".' maxLength: 20 meal_plan: &74 type: string description: 'Regime de alimentação. Exemplos: "All inclusive", "Meia pensão".' maxLength: 20 nights: &75 type: integer readOnly: true minimum: 0 description: Quantidade de diárias (calculada entre check-in e check-out). status: &76 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &77 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &78 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &79 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &80 type: string description: 'Informações adicionais sobre o que está incluso na contratação da hospedagem, como endereço do hotel, detalhes do quarto, etc. O caractere `\n` será interpretado como uma quebra de linha. Exemplo: "Grand EX Hotel: 5th Ave, New York, NY, United States \nQuarto com vista para cidade".' vendor_reservation_url: &81 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &82 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &83 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &84 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &85 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &86 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &87 allOf: - "$ref": "#/components/schemas/over_percentage" over: &88 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &89 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &90 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &91 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &92 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &93 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &94 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &95 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &96 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &97 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &98 allOf: - "$ref": "#/components/schemas/cc_rav_fee" supplier: description: Hotel que está fornecendo a hospedagem. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/hotel_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e as outras taxas (other_fees) de cada passageiro. " description: Totais consolidados do produto. hotel_read: type: object description: Diárias de hospedagem. required: - booking_number - check_in - check_out - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 booking_number: *68 check_in: *69 check_out: *70 destination: *71 accommodation_kind: *72 room_category: *73 meal_plan: *74 nights: *75 status: *76 issue_date: *77 canceled_at: *78 observations: *79 included_services: *80 vendor_reservation_url: *81 currency: *82 exchange_rate: *83 commission_amount: *84 commission_percentage: *85 over_amount: *86 over_percentage: *87 over: *88 intermediary_commission_amount: *89 intermediary_commission_percentage: *90 intermediary_over_amount: *91 intermediary_over_percentage: *92 intermediary_over: *93 agency_service_fee: *94 agency_card_rate: *95 deductions: *96 discount_amount: *97 cc_rav_fee: *98 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e as outras taxas (other_fees) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Hotel que está fornecendo a hospedagem. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/hotel_passenger_read" airline_ticket: type: object description: " Passagem aérea.

É possível realizar a inserção de passagens aéreas de duas maneiras: Os bilhetes enviados individualmente serão agrupados internamente pelo nosso sistema na mesma venda, desde que possuam o mesmo localizador (`locator`) e data de venda (`sale_date`). Bilhetes com o mesmo localizador, mas com datas de venda diferentes, não serão agrupados e sim inseridos em vendas distintas. " required: - local_id - locator - destination - segments - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" locator: &99 type: string description: Código localizador da passagem. maxLength: 10 destination: &100 type: string description: Destino da passagem. Utilize "national" para voos dentro do Brasil e "international" para voos para outros países. enum: - national - international status: &101 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &102 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &103 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &104 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &105 type: string description: ' Informações sobre os serviços inclusos na passagem aérea, como franquia de bagagem, refeições, escolha de assentos, entre outros benefícios oferecidos pela Cia. aérea. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "3 bagagens despachadas sem custo\nAssento com reclinação total\nAcesso ao Lounge". ' vendor_reservation_url: &106 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &107 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &108 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &109 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &110 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &111 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &112 allOf: - "$ref": "#/components/schemas/over_percentage" over: &113 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &114 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &115 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &116 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &117 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &118 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &119 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &120 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &121 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &122 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &123 type: number format: double default: 0 minimum: 0 multipleOf: 0.01 description: " Taxa administrativa de cartão de crédito sobre a RAV. " cc_du_fee: &124 allOf: - "$ref": "#/components/schemas/cc_du_fee" supplier: description: Cia. Aérea que está fornecendo a passagem. allOf: - type: object required: - airline_code - name properties: airline_code: type: string description: 'Código IATA ou ICAO da Cia. Aérea.

Exemplo: "AA"' maxLength: 3 airline_number: type: string description: 'Código IATA de três dígitos da Cia. Aérea.

Exemplo: "001"' maxLength: 3 name: type: string description: 'Nome fantasia.

Exemplo: "American Airlines".' maxLength: 100 legal_name: type: string description: 'Razão Social.

Exemplo: "American Airlines Inc.".' maxLength: 100 cnpj: type: string description: 'CNPJ, sem pontos, barras, traços ou espaços.

Exemplo: "50559280000140".' minLength: 14 maxLength: 14 foreigner: type: boolean description: Indica se a empresa é estrangeira. Use `true` para empresas que não estão sediadas no Brasil. - "$ref": "#/components/schemas/person" representative: allOf: - "$ref": "#/components/schemas/representative" segments: type: array description: Lista de trechos que compõem o itinerário aéreo. items: type: object required: - airline_code - flight_number - origin - departure_date - destination - arrival_date properties: airline_code: type: string description: 'Código IATA ou ICAO da Cia. Aérea.

Exemplo: "AA"' maxLength: 3 flight_number: type: string description: Número do voo. maxLength: 4 class: type: string description: Classe do voo. maxLength: 2 origin: type: string description: 'Código IATA do aeroporto de origem.

Exemplo: "NAS".' maxLength: 3 departure_date: type: string description: 'Data e hora de partida no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização do aeroporto, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T10:56:27".' destination: type: string description: 'Código IATA do aeroporto de destino.

Exemplo: "JFK".' maxLength: 3 arrival_date: type: string description: 'Data e hora de chegada no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização do aeroporto, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T14:08:27".' seats: type: array writeOnly: true description: Lista de assentos associados a este trecho. items: type: object required: - seat_number - ticket_number properties: seat_number: type: string description: Número do assento. maxLength: 3 ticket_number: type: string description: Número do bilhete com o qual o assento está associado. maxLength: 20 passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/airline_ticket_passenger" totals: type: object readOnly: true description: Totais consolidados do produto. properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa de embarque (boarding_fee) e as outras taxas (other_fees) de cada passageiro. " rav_fee: type: number format: double readOnly: true description: " Total da RAV dos passageiros do produto. " rav_fee_discount: type: number format: double readOnly: true description: " Total de desconto sobre a RAV dos passageiros do produto. " agency_fee: type: number format: double readOnly: true description: " Total da taxa de serviço oculta dos passageiros do produto. " discount: type: number format: double readOnly: true description: " Total de descontos do produto. " products: type: number format: double readOnly: true description: " Soma apenas dos valores dos produtos, sem taxas, descontos ou abatimentos. " du_fee: type: number format: double readOnly: true description: " Total da DU dos passageiros do produto. " du_fee_discount: type: number format: double readOnly: true description: " Total de desconto sobre a DU dos passageiros do produto. " customer_amount: type: number format: double readOnly: true description: " Valor total para o cliente. " amount: type: number format: double readOnly: true description: " Valor total do produto, somando os produtos, as taxas e as remunerações e subtraindo descontos e abatimentos. " airline_ticket_read: type: object description: " Passagem aérea.

É possível realizar a inserção de passagens aéreas de duas maneiras: Os bilhetes enviados individualmente serão agrupados internamente pelo nosso sistema na mesma venda, desde que possuam o mesmo localizador (`locator`) e data de venda (`sale_date`). Bilhetes com o mesmo localizador, mas com datas de venda diferentes, não serão agrupados e sim inseridos em vendas distintas. " required: - locator - destination - segments - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 locator: *99 destination: *100 status: *101 issue_date: *102 canceled_at: *103 observations: *104 included_services: *105 vendor_reservation_url: *106 currency: *107 exchange_rate: *108 commission_amount: *109 commission_percentage: *110 over_amount: *111 over_percentage: *112 over: *113 intermediary_commission_amount: *114 intermediary_commission_percentage: *115 intermediary_over_amount: *116 intermediary_over_percentage: *117 intermediary_over: *118 agency_service_fee: *119 agency_card_rate: *120 deductions: *121 discount_amount: *122 cc_rav_fee: *123 cc_du_fee: *124 totals: type: object readOnly: true description: Totais consolidados do produto. properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa de embarque (boarding_fee) e as outras taxas (other_fees) de cada passageiro. " rav_fee: type: number format: double readOnly: true description: " Total da RAV dos passageiros do produto. " rav_fee_discount: type: number format: double readOnly: true description: " Total de desconto sobre a RAV dos passageiros do produto. " agency_fee: type: number format: double readOnly: true description: " Total da taxa de serviço oculta dos passageiros do produto. " discount: type: number format: double readOnly: true description: " Total de descontos do produto. " products: type: number format: double readOnly: true description: " Soma apenas dos valores dos produtos, sem taxas, descontos ou abatimentos. " du_fee: type: number format: double readOnly: true description: " Total da DU dos passageiros do produto. " du_fee_discount: type: number format: double readOnly: true description: " Total de desconto sobre a DU dos passageiros do produto. " customer_amount: type: number format: double readOnly: true description: " Valor total para o cliente. " amount: type: number format: double readOnly: true description: " Valor total do produto, somando os produtos, as taxas e as remunerações e subtraindo descontos e abatimentos. " supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Cia. Aérea que está fornecendo a passagem. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. segments: type: array description: Lista de trechos que compõem o itinerário aéreo. items: type: object required: - airline_code - flight_number - origin - departure_date - destination - arrival_date properties: airline_code: type: string description: 'Código IATA ou ICAO da Cia. Aérea.

Exemplo: "AA"' maxLength: 3 flight_number: type: string description: Número do voo. maxLength: 4 class: type: string description: Classe do voo. maxLength: 2 origin: type: string description: 'Código IATA do aeroporto de origem.

Exemplo: "NAS".' maxLength: 3 departure_date: type: string description: 'Data e hora de partida no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização do aeroporto, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T10:56:27".' destination: type: string description: 'Código IATA do aeroporto de destino.

Exemplo: "JFK".' maxLength: 3 arrival_date: type: string description: 'Data e hora de chegada no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização do aeroporto, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T14:08:27".' seats: type: array writeOnly: true description: Lista de assentos associados a este trecho. items: type: object required: - seat_number - ticket_number properties: seat_number: type: string description: Número do assento. maxLength: 3 ticket_number: type: string description: Número do bilhete com o qual o assento está associado. maxLength: 20 passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/airline_ticket_passenger_read" train_ticket: type: object description: " Bilhete de trem. " required: - local_id - document - currency - segments - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" document: &125 type: string description: Identificador geral do bilhete de trem, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "código localizador", "número do bilhete", "número da reserva", entre outros. maxLength: 40 departure_date: &126 type: string readOnly: true description: 'Data e hora de partida do bilhete no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-04T10:56:27".' arrival_date: &127 type: string readOnly: true description: 'Data e hora de chegada do bilhete no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-07T10:56:27".' status: &128 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &129 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &130 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &131 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &132 type: string description: ' Informações sobre os serviços inclusos no bilhete de trem, como refeições, serviços de bordo, Wi-Fi, entre outros benefícios oferecidos pela operadora ferroviária. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Refeição inclusa\nWi-Fi gratuito\nVagão silencioso". ' vendor_reservation_url: &133 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &134 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &135 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &136 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &137 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &138 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &139 allOf: - "$ref": "#/components/schemas/over_percentage" over: &140 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &141 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &142 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &143 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &144 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &145 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &146 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &147 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &148 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &149 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &150 allOf: - "$ref": "#/components/schemas/cc_rav_fee" segments: type: array writeOnly: true description: Lista de trechos que compõem o itinerário ferroviário. items: type: object required: - railway_operator - origin - departure_date - destination - arrival_date properties: railway_operator: type: string description: Operadora Ferroviária responsável pelo trecho. maxLength: 50 origin: type: string description: 'Estação de origem.

Exemplo: "Paris Gare de Lyon".' maxLength: 50 departure_date: type: string format: date-time description: 'Data e hora de saída no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização da estação, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T10:56:27".' destination: type: string description: 'Estação de destino.

Exemplo: "Nice-Ville".' maxLength: 50 arrival_date: type: string format: date-time description: 'Data e hora de chegada no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização da estação, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T14:08:27".' supplier: description: Operadora Ferroviária ou empresa distribuidora que está fornecendo o bilhete de trem. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/train_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) de cada passageiro. " description: Totais consolidados do produto. train_ticket_read: type: object description: " Bilhete de trem. " required: - document - currency - segments - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: *125 departure_date: *126 arrival_date: *127 status: *128 issue_date: *129 canceled_at: *130 observations: *131 included_services: *132 vendor_reservation_url: *133 currency: *134 exchange_rate: *135 commission_amount: *136 commission_percentage: *137 over_amount: *138 over_percentage: *139 over: *140 intermediary_commission_amount: *141 intermediary_commission_percentage: *142 intermediary_over_amount: *143 intermediary_over_percentage: *144 intermediary_over: *145 agency_service_fee: *146 agency_card_rate: *147 deductions: *148 discount_amount: *149 cc_rav_fee: *150 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- 'Operadora Ferroviária ou empresa distribuidora que está fornecendo o bilhete de trem.' representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. segments: type: array writeOnly: true description: Lista de trechos que compõem o itinerário ferroviário. items: type: object required: - railway_operator - origin - departure_date - destination - arrival_date properties: railway_operator: type: string description: Operadora Ferroviária responsável pelo trecho. maxLength: 50 origin: type: string description: 'Estação de origem.

Exemplo: "Paris Gare de Lyon".' maxLength: 50 departure_date: type: string format: date-time description: 'Data e hora de saída no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização da estação, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T10:56:27".' destination: type: string description: 'Estação de destino.

Exemplo: "Nice-Ville".' maxLength: 50 arrival_date: type: string format: date-time description: 'Data e hora de chegada no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas à localização da estação, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T14:08:27".' passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/train_passenger_read" ground_transportation: type: object description: " Transporte terrestre. " required: - local_id - document - segments - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" document: &151 type: string description: Identificador geral do transporte terrestre, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "localizador", "número do bilhete", "número da reserva", entre outros. maxLength: 40 departure_date: &152 type: string readOnly: true description: 'Data e hora de partida do transporte terrestre no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-04T10:56:27".' arrival_date: &153 type: string readOnly: true description: 'Data e hora de chegada do transporte terrestre no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-07T10:56:27".' status: &154 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &155 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &156 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &157 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &158 type: string description: ' Informações sobre os serviços inclusos no transporte terrestre, como refeições, Wi-Fi, entre outros benefícios oferecidos pela viação. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Refeição inclusa\nWi-Fi gratuito". ' vendor_reservation_url: &159 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &160 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &161 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &162 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &163 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &164 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &165 allOf: - "$ref": "#/components/schemas/over_percentage" over: &166 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &167 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &168 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &169 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &170 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &171 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &172 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &173 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &174 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &175 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &176 allOf: - "$ref": "#/components/schemas/cc_rav_fee" segments: type: array writeOnly: true description: Lista de trechos que compõem o itinerário terrestre. items: type: object required: - coach_company - origin - departure_date - destination - arrival_date properties: coach_company: type: string description: 'Nome da viação responsável pelo trecho.

Exemplo: "Viação UTIL"' maxLength: 100 service_class: type: string description: 'Classe da passagem.

Exemplos: "Leito, Convencional, Executivo".' maxLength: 20 origin: type: string description: 'Terminal ou estação de origem.

Exemplo: "Terminal Rodoviário Novo Rio".' maxLength: 100 departure_date: type: string format: date-time description: 'Data e hora de partida no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas ao local de embarque, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T10:56:27".' destination: type: string description: 'Terminal ou estação de destino.

Exemplo: "Terminal Rodoviário de Santos".' maxLength: 100 arrival_date: type: string format: date-time description: 'Data e hora de chegada no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas ao local de desembarque, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T14:56:27".' seats: type: array writeOnly: true description: Lista de assentos associados a este trecho. items: type: object required: - seat_number - ticket_number properties: seat_number: type: string description: Número do assento. maxLength: 3 ticket_number: type: string description: Número do bilhete com o qual o assento está associado. maxLength: 20 supplier: description: Viação ou empresa de transporte que está fornecendo a passagem. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/ground_transportation_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) de cada passageiro. " description: Totais consolidados do produto. ground_transportation_read: type: object description: " Transporte terrestre. " required: - document - segments - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: *151 departure_date: *152 arrival_date: *153 status: *154 issue_date: *155 canceled_at: *156 observations: *157 included_services: *158 vendor_reservation_url: *159 currency: *160 exchange_rate: *161 commission_amount: *162 commission_percentage: *163 over_amount: *164 over_percentage: *165 over: *166 intermediary_commission_amount: *167 intermediary_commission_percentage: *168 intermediary_over_amount: *169 intermediary_over_percentage: *170 intermediary_over: *171 agency_service_fee: *172 agency_card_rate: *173 deductions: *174 discount_amount: *175 cc_rav_fee: *176 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Viação ou empresa de transporte que está fornecendo a passagem. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. segments: type: array writeOnly: true description: Lista de trechos que compõem o itinerário terrestre. items: type: object required: - coach_company - origin - departure_date - destination - arrival_date properties: coach_company: type: string description: 'Nome da viação responsável pelo trecho.

Exemplo: "Viação UTIL"' maxLength: 100 service_class: type: string description: 'Classe da passagem.

Exemplos: "Leito, Convencional, Executivo".' maxLength: 20 origin: type: string description: 'Terminal ou estação de origem.

Exemplo: "Terminal Rodoviário Novo Rio".' maxLength: 100 departure_date: type: string format: date-time description: 'Data e hora de partida no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas ao local de embarque, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T10:56:27".' destination: type: string description: 'Terminal ou estação de destino.

Exemplo: "Terminal Rodoviário de Santos".' maxLength: 100 arrival_date: type: string format: date-time description: 'Data e hora de chegada no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS). A data e hora serão sempre relativas ao local de desembarque, portanto, não é necessário incluir informações de fuso horário.

Exemplo: "2026-10-04T14:56:27".' seats: type: array writeOnly: true description: Lista de assentos associados a este trecho. items: type: object required: - seat_number - ticket_number properties: seat_number: type: string description: Número do assento. maxLength: 3 ticket_number: type: string description: Número do bilhete com o qual o assento está associado. maxLength: 20 passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/ground_transportation_passenger_read" car_rental: type: object description: Locação de veículos. required: - local_id - document - pickup_date - dropoff_date - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" document: &177 type: string description: Identificador geral da locação, utilizado para localizá-la junto ao fornecedor ou representante. Pode ser conhecido como "número da reserva", "código do voucher", "localizador", entre outros. maxLength: 40 pickup_date: &178 type: string description: ' Data e hora de retirada do veículo no formato ISO 8601. Exemplos: "2026-10-04"; "2026-10-04T10:56:27" ' pickup_location: &179 type: string description: ' Local de retirada do veículo.

Exemplo: "Aeroporto de Congonhas" ' maxLength: 30 dropoff_date: &180 type: string description: ' Data e hora de devolução do veículo no formato ISO 8601. Exemplos: "2026-10-11"; "2026-10-11T10:56:27" ' dropoff_location: &181 type: string description: 'Local de devolução do veículo.

Exemplo: "Aeroporto de Congonhas" ' maxLength: 30 destination: &182 type: string description: Tipo de destino da locação. Utilize "national" para locações dentro do Brasil e "international" para locações em outros países. enum: - national - international vehicle_category: &183 type: string description: ' Categoria do veículo.

Exemplos: "Econômico", "Intermediário", "Premium", "SUV". ' maxLength: 50 rental_days: &184 type: integer readOnly: true minimum: 0 description: Quantidade de diárias da locação (entre retirada e devolução). status: &185 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &186 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &187 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &188 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &189 type: string description: ' Informações adicionais sobre o que está incluso na locação do veículo, como quilometragem, seguro, extras, etc. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Quilometragem livre\nSeguro básico incluso\nTanque cheio". ' vendor_reservation_url: &190 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &191 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &192 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &193 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &194 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &195 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &196 allOf: - "$ref": "#/components/schemas/over_percentage" over: &197 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &198 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &199 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &200 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &201 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &202 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &203 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &204 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &205 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &206 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &207 allOf: - "$ref": "#/components/schemas/cc_rav_fee" supplier: description: Locadora de veículos que está fornecendo o serviço. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/default_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e as outras taxas (other_fees) de cada passageiro. " description: Totais consolidados do produto. car_rental_read: type: object description: Locação de veículos. required: - document - pickup_date - dropoff_date - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: *177 pickup_date: *178 pickup_location: *179 dropoff_date: *180 dropoff_location: *181 destination: *182 vehicle_category: *183 rental_days: *184 status: *185 issue_date: *186 canceled_at: *187 observations: *188 included_services: *189 vendor_reservation_url: *190 currency: *191 exchange_rate: *192 commission_amount: *193 commission_percentage: *194 over_amount: *195 over_percentage: *196 over: *197 intermediary_commission_amount: *198 intermediary_commission_percentage: *199 intermediary_over_amount: *200 intermediary_over_percentage: *201 intermediary_over: *202 agency_service_fee: *203 agency_card_rate: *204 deductions: *205 discount_amount: *206 cc_rav_fee: *207 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e as outras taxas (other_fees) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Locadora de veículos que está fornecendo o serviço. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/car_rental_passenger_read" travel_package: type: object description: Pacotes turísticos. required: - local_id - document - begin_date - destination - package_name - currency - supplier - passengers properties: local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" document: &208 type: string description: Identificador geral do pacote, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "número da reserva", "código do voucher", "localizador", "número do pedido", entre outros. maxLength: 40 begin_date: &209 type: string description: 'Data e hora de início do pacote no formato ISO 8601. Exemplos: "2026-10-06"; "2026-10-06T10:56:27"' end_date: &210 type: string description: 'Data e hora de término do pacote no formato ISO 8601. Exemplos: "2026-10-13"; "2026-10-13T10:56:27"' destination: &211 type: string description: Tipo de destino da viagem. Utilize "national" para viagens dentro do Brasil e "international" para viagens para outros países. enum: - national - international package_name: &212 type: string description: 'Nome do pacote turístico.

Exemplos: "Aracajú", "Surf Trip Trancoso".' maxLength: 50 transport: &213 type: string description: " Tipo de transporte incluído no pacote.

" enum: - self_provided - road_transport - no_transport - charter_flight - scheduled_flight maxLength: 20 status: &214 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &215 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &216 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &217 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &218 type: string description: ' Informações adicionais sobre o que está incluso no pacote turístico, como detalhes de hospedagem, passeios, refeições, etc. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Hospedagem: Hotel 5 estrelas\nRefeições: Café da manhã incluso\nPasseios: City tour e aulas de surf". ' vendor_reservation_url: &219 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &220 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &221 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &222 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &223 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &224 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &225 allOf: - "$ref": "#/components/schemas/over_percentage" over: &226 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &227 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &228 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &229 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &230 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &231 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &232 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &233 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &234 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &235 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &236 allOf: - "$ref": "#/components/schemas/cc_rav_fee" supplier: description: Fornecedor responsável pelo pacote turístico. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/travel_package_passenger" totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e as outras taxas (other_fees) de cada passageiro. " description: Totais consolidados do produto. travel_package_read: type: object description: Pacotes turísticos. required: - document - begin_date - destination - package_name - currency - supplier - passengers readOnly: true properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: *208 begin_date: *209 end_date: *210 destination: *211 package_name: *212 transport: *213 status: *214 issue_date: *215 canceled_at: *216 observations: *217 included_services: *218 vendor_reservation_url: *219 currency: *220 exchange_rate: *221 commission_amount: *222 commission_percentage: *223 over_amount: *224 over_percentage: *225 over: *226 intermediary_commission_amount: *227 intermediary_commission_percentage: *228 intermediary_over_amount: *229 intermediary_over_percentage: *230 intermediary_over: *231 agency_service_fee: *232 agency_card_rate: *233 deductions: *234 discount_amount: *235 cc_rav_fee: *236 totals: allOf: - "$ref": "#/components/schemas/product_totals" - type: object properties: fees: type: number format: double readOnly: true description: " Total das taxas dos passageiros do produto, somando a taxa (fees) e as outras taxas (other_fees) de cada passageiro. " description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor responsável pelo pacote turístico. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/travel_package_passenger_read" others: type: object readOnly: true description: Outros produtos da venda, que podem ou não ter passageiros. required: - id - product_name - product_with_passengers - currency - supplier properties: id: allOf: - "$ref": "#/components/schemas/sale_product_id" document: &237 allOf: - "$ref": "#/components/schemas/product_document" destination: &238 allOf: - "$ref": "#/components/schemas/destination" departure_date: &239 allOf: - "$ref": "#/components/schemas/departure_date" arrival_date: &240 allOf: - "$ref": "#/components/schemas/arrival_date" status: &241 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &242 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &243 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &244 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &245 allOf: - "$ref": "#/components/schemas/included_services" vendor_reservation_url: &246 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &247 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &248 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &249 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &250 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &251 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &252 allOf: - "$ref": "#/components/schemas/over_percentage" over: &253 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &254 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &255 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &256 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &257 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &258 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &259 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &260 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &261 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &262 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &263 allOf: - "$ref": "#/components/schemas/cc_rav_fee" quantity: &264 oneOf: - "$ref": "#/components/schemas/quantity" - type: 'null' unit_price: &265 oneOf: - "$ref": "#/components/schemas/unit_price" - type: 'null' unit_fee: &266 oneOf: - "$ref": "#/components/schemas/unit_fee" - type: 'null' product_name: allOf: - "$ref": "#/components/schemas/product_name" product_with_passengers: allOf: - "$ref": "#/components/schemas/product_with_passengers" supplier: description: Fornecedor do produto. Empresa proprietária direta do produto, como uma casa de câmbio ou emissora de passes de trem, por exemplo. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" passengers: description: Lista de Passageiros. oneOf: - type: array items: allOf: - "$ref": "#/components/schemas/default_passenger_read" - type: 'null' totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. others_read: type: object readOnly: true description: Outros produtos da venda, que podem ou não ter passageiros. required: - currency - supplier properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: *237 destination: *238 departure_date: *239 arrival_date: *240 status: *241 issue_date: *242 canceled_at: *243 observations: *244 included_services: *245 vendor_reservation_url: *246 currency: *247 exchange_rate: *248 commission_amount: *249 commission_percentage: *250 over_amount: *251 over_percentage: *252 over: *253 intermediary_commission_amount: *254 intermediary_commission_percentage: *255 intermediary_over_amount: *256 intermediary_over_percentage: *257 intermediary_over: *258 agency_service_fee: *259 agency_card_rate: *260 deductions: *261 discount_amount: *262 cc_rav_fee: *263 quantity: *264 unit_price: *265 unit_fee: *266 totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. product: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Produto cadastrado que originou este item da venda. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor do produto. Empresa proprietária direta do produto, como uma casa de câmbio ou emissora de passes de trem, por exemplo. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: description: Lista de Passageiros. oneOf: - type: array items: allOf: - "$ref": "#/components/schemas/default_passenger_read" - type: 'null' excursion_read: type: object readOnly: true description: " Passeios (excursões) da venda. Consulta apenas: hoje não é possível criar ou alterar excursões pela API. " required: - document - currency - supplier - passengers properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: type: string readOnly: true description: Identificador geral do passeio, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "localizador", "número do voucher", "número da reserva", entre outros. maxLength: 40 departure_date: type: string readOnly: true description: 'Data e hora de partida do passeio no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-04T10:56:27".' arrival_date: type: string readOnly: true description: 'Data e hora de chegada do passeio no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-04T10:56:27".' status: allOf: - "$ref": "#/components/schemas/product_status" issue_date: allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: allOf: - "$ref": "#/components/schemas/product_observations" included_services: type: string description: ' Informações sobre os serviços inclusos no passeio, como guia, transporte, alimentação, entre outros benefícios oferecidos pelo fornecedor. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Guia local incluso\nTransporte incluso". ' vendor_reservation_url: allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: allOf: - "$ref": "#/components/schemas/over_percentage" over: allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: allOf: - "$ref": "#/components/schemas/deductions" discount_amount: allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: allOf: - "$ref": "#/components/schemas/cc_rav_fee" totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor do passeio. Empresa proprietária direta do produto. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. passengers: type: array description: Lista de Passageiros. items: allOf: - "$ref": "#/components/schemas/default_passenger_read" operation: type: object description: Produtos de operação própria da venda (operados pela própria agência), com ou sem passageiros. required: - product_id - local_id - product_name - product_with_passengers - currency - supplier - departure_date properties: product_id: type: string format: uuid writeOnly: true description: Identificador (UUID) do produto de operação própria escolhido no catálogo da agência. Consulte os produtos disponíveis em GET /products?kind=operation. local_id: allOf: - "$ref": "#/components/schemas/sale_product_local_id" product_name: allOf: - "$ref": "#/components/schemas/product_name" product_with_passengers: allOf: - "$ref": "#/components/schemas/product_with_passengers" document: type: string maxLength: 40 description: Identificador geral do produto, utilizado para localizá-lo junto ao fornecedor ou representante. Pode ser conhecido como "localizador", "número da reserva", "código do voucher", "número do pedido", entre outros. departure_date: type: string description: 'Data e hora de início no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-04T10:56:27".' arrival_date: type: string description: 'Data e hora de término no formato ISO 8601 (AAAA-MM-DDTHH:MM:SS).

Exemplo: "2026-10-07T10:56:27".' status: allOf: - "$ref": "#/components/schemas/product_status" issue_date: allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: type: string description: Observações do produto. included_services: type: string description: 'Serviços inclusos no produto. O caractere `\n` será interpretado como uma quebra de linha.

Exemplo: "Guia local incluso\nTraslado".' vendor_reservation_url: allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: allOf: - "$ref": "#/components/schemas/exchange_rate" intermediary_commission_amount: allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: allOf: - "$ref": "#/components/schemas/agency_card_rate" discount_amount: allOf: - "$ref": "#/components/schemas/discount_amount" quantity: description: Quantidade de unidades do produto, em produtos sem passageiros. Em produtos com passageiros retorna nulo, pois a contagem corresponde à lista de passageiros. oneOf: - type: integer minimum: 1 - type: 'null' unit_price: oneOf: - type: number format: double minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 - type: 'null' unit_fee: oneOf: - type: number format: double minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 - type: 'null' agency_fee: description: Taxa de serviço oculta da linha, na moeda de origem. Valor único (não multiplicado pela quantidade). Só se aplica ao produto sem passageiros; com passageiros a taxa é informada por passageiro. oneOf: - type: number format: double minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 - type: 'null' supplier: readOnly: true description: Fornecedor do produto de operação própria. Empresa proprietária direta do produto, como um operador local contratado para realizar o serviço, por exemplo. allOf: - "$ref": "#/components/schemas/company_person" passengers: description: Lista de Passageiros. oneOf: - type: array items: allOf: - "$ref": "#/components/schemas/operation_passenger" - type: 'null' totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. operation_read: type: object readOnly: true description: Produtos de operação própria da venda (operados pela própria agência), com ou sem passageiros. required: - currency - supplier properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 document: &536 allOf: - "$ref": "#/components/schemas/product_document" departure_date: &537 allOf: - "$ref": "#/components/schemas/departure_date" arrival_date: &538 allOf: - "$ref": "#/components/schemas/arrival_date" status: &539 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &540 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &541 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &542 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &543 allOf: - "$ref": "#/components/schemas/included_services" vendor_reservation_url: &544 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &545 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &546 allOf: - "$ref": "#/components/schemas/exchange_rate" intermediary_commission_amount: &547 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &548 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &549 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &550 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &551 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &552 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &553 allOf: - "$ref": "#/components/schemas/agency_card_rate" discount_amount: &554 allOf: - "$ref": "#/components/schemas/discount_amount" quantity: &555 oneOf: - "$ref": "#/components/schemas/quantity" - type: 'null' unit_price: &556 oneOf: - "$ref": "#/components/schemas/unit_price" - type: 'null' unit_fee: &557 oneOf: - "$ref": "#/components/schemas/unit_fee" - type: 'null' totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. product: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Produto cadastrado que originou este item da venda. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor do produto de operação própria. Empresa proprietária direta do produto, como um operador local contratado para realizar o serviço, por exemplo. passengers: description: Lista de Passageiros. oneOf: - type: array items: allOf: - "$ref": "#/components/schemas/operation_passenger_read" - type: 'null' cvc_package: type: object readOnly: true description: Pacotes CVC da venda. Sempre sem passageiros. required: - id - package_name - quantity - unit_price - currency - supplier properties: id: allOf: - "$ref": "#/components/schemas/sale_product_id" package_name: &267 type: string readOnly: true description: Nome do pacote CVC adquirido. receipt_number: &268 type: string readOnly: true description: Identificador geral do pacote CVC, utilizado para localizá-lo junto à CVC. É o número do recibo emitido para o pacote. maxLength: 40 departure_date: &269 allOf: - "$ref": "#/components/schemas/departure_date" arrival_date: &270 allOf: - "$ref": "#/components/schemas/arrival_date" status: &271 allOf: - "$ref": "#/components/schemas/product_status" issue_date: &272 allOf: - "$ref": "#/components/schemas/product_issue_date" canceled_at: &273 allOf: - "$ref": "#/components/schemas/product_canceled_at" observations: &274 allOf: - "$ref": "#/components/schemas/product_observations" included_services: &275 allOf: - "$ref": "#/components/schemas/included_services" vendor_reservation_url: &276 allOf: - "$ref": "#/components/schemas/vendor_reservation_url" currency: &277 allOf: - "$ref": "#/components/schemas/currency_code" exchange_rate: &278 allOf: - "$ref": "#/components/schemas/exchange_rate" commission_amount: &279 allOf: - "$ref": "#/components/schemas/commission_amount" commission_percentage: &280 allOf: - "$ref": "#/components/schemas/commission_percentage" over_amount: &281 allOf: - "$ref": "#/components/schemas/over_amount" over_percentage: &282 allOf: - "$ref": "#/components/schemas/over_percentage" over: &283 allOf: - "$ref": "#/components/schemas/over" intermediary_commission_amount: &284 allOf: - "$ref": "#/components/schemas/intermediary_commission_amount" intermediary_commission_percentage: &285 allOf: - "$ref": "#/components/schemas/intermediary_commission_percentage" intermediary_over_amount: &286 allOf: - "$ref": "#/components/schemas/intermediary_over_amount" intermediary_over_percentage: &287 allOf: - "$ref": "#/components/schemas/intermediary_over_percentage" intermediary_over: &288 allOf: - "$ref": "#/components/schemas/intermediary_over" agency_service_fee: &289 allOf: - "$ref": "#/components/schemas/agency_service_fee" agency_card_rate: &290 allOf: - "$ref": "#/components/schemas/agency_card_rate" deductions: &291 allOf: - "$ref": "#/components/schemas/deductions" discount_amount: &292 allOf: - "$ref": "#/components/schemas/discount_amount" cc_rav_fee: &293 allOf: - "$ref": "#/components/schemas/cc_rav_fee" quantity: &294 allOf: - "$ref": "#/components/schemas/quantity" unit_price: &295 allOf: - "$ref": "#/components/schemas/unit_price" unit_fee: &296 allOf: - "$ref": "#/components/schemas/unit_fee" supplier: description: Fornecedor do pacote CVC. Empresa proprietária direta do produto, ou seja, a CVC. allOf: - "$ref": "#/components/schemas/company_person" representative: allOf: - "$ref": "#/components/schemas/representative" totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. cvc_package_read: type: object readOnly: true description: Pacotes CVC da venda. Sempre sem passageiros. required: - package_name - quantity - unit_price - currency - supplier properties: id: type: string format: uuid readOnly: true description: Identificador único do produto da venda no formato UUID. É o alvo da referência `sale_product` do lançamento, da nota fiscal, do reembolso e do extrato CVC. example: 7e6d5c4b-3a2f-4109-8e7d-6c5b4a392817 package_name: *267 receipt_number: *268 departure_date: *269 arrival_date: *270 status: *271 issue_date: *272 canceled_at: *273 observations: *274 included_services: *275 vendor_reservation_url: *276 currency: *277 exchange_rate: *278 commission_amount: *279 commission_percentage: *280 over_amount: *281 over_percentage: *282 over: *283 intermediary_commission_amount: *284 intermediary_commission_percentage: *285 intermediary_over_amount: *286 intermediary_over_percentage: *287 intermediary_over: *288 agency_service_fee: *289 agency_card_rate: *290 deductions: *291 discount_amount: *292 cc_rav_fee: *293 quantity: *294 unit_price: *295 unit_fee: *296 totals: allOf: - "$ref": "#/components/schemas/product_totals" description: Totais consolidados do produto. product: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Produto cadastrado que originou este item da venda. supplier: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Fornecedor do pacote CVC. Empresa proprietária direta do produto, ou seja, a CVC. representative: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Representante do produto. Empresa que representa o fornecedor na venda do produto, como uma operadora ou consolidadora, por exemplo. Deve ser informado quando a agência de viagens não adquiriu o produto diretamente do fornecedor. payment_product: type: object required: - local_id - payment_amount properties: local_id: type: string maxLength: 50 description: Chave de correlação que vincula este pagamento a um produto específico da venda. Deve corresponder ao local_id de um dos produtos enviados nesta requisição. payment_amount: type: number format: double exclusiveMinimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: Valor do pagamento destinado a este produto. payment_amount: type: number format: double readOnly: true multipleOf: 0.01 description: Valor do movimento de liquidação. bank_account: type: object required: - bank_code - agency_number - account_number description: Informações da conta bancária que receberá o pagamento. properties: description: type: string readOnly: true description: Nome da conta bancária cadastrada na agência. bank_code: type: string description: 'Código do banco.

Exemplo: 001. (Código referente ao Banco do Brasil)' maxLength: 10 agency_number: type: string description: Número da agência bancária maxLength: 10 agency_digit: type: string description: Dígito verificador da agência maxLength: 2 account_number: type: string description: Número da conta bancária maxLength: 20 account_digit: type: string description: Dígito verificador da conta maxLength: 2 payment_card_last_digits: type: string description: Últimos 4 dígitos do cartão. minLength: 4 maxLength: 4 payment_authorization: type: string description: Código de autorização. maxLength: 20 payment_due_date: type: string format: date description: Data de vencimento do pagamento no formato ISO 8601 (AAAA-MM-DD). payment_settlement_date: type: string format: date description: Data de liquidação do pagamento no formato ISO 8601 (AAAA-MM-DD). payment_observations: type: string maxLength: 255 description: 'Observações sobre o pagamento. Pode ser usado para especificar o tipo de transferência utilizado.

Exemplos: "Pix", "TED", "DOC".' payment_description: type: string maxLength: 60 description: Descrição do pagamento gravada no lançamento financeiro. Quando omitida, é usado "Pagamento venda". Máximo de 60 caracteres. payment_products: type: array description: Lista de produtos vinculados a este pagamento, com seus respectivos valores. **Todos os produtos da lista devem ter o mesmo fornecedor ou representante**. items: "$ref": "#/components/schemas/payment_product" payment_installments: type: integer description: Número de parcelas. minimum: 1 default: 1 payment_vendor_due_date: type: string format: date readOnly: true description: Data de vencimento do pagamento ao fornecedor. payment_agency_due_date: type: string format: date readOnly: true description: Data de vencimento do pagamento no formato ISO 8601 (AAAA-MM-DD). agency_credit_card: type: object required: - card_last_digits - card_brand - due_date - bank_account - products - amount properties: due_date: &558 allOf: - "$ref": "#/components/schemas/payment_due_date" settlement_date: &559 allOf: - "$ref": "#/components/schemas/payment_settlement_date" description: &560 allOf: - "$ref": "#/components/schemas/payment_description" writeOnly: true card_last_digits: &561 allOf: - "$ref": "#/components/schemas/payment_card_last_digits" card_brand: &562 type: string description: Bandeira do cartão. enum: - amex - diners - hipercard - mastercard - visa - elo authorization: &563 allOf: - "$ref": "#/components/schemas/payment_authorization" payer: "$ref": "#/components/schemas/payment_payer_write" amount: allOf: - "$ref": "#/components/schemas/payment_amount" bank_account: "$ref": "#/components/schemas/bank_account" products: allOf: - "$ref": "#/components/schemas/payment_products" writeOnly: true vendor_credit_card: type: object required: - card_last_digits - products properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" card_last_digits: allOf: - "$ref": "#/components/schemas/payment_card_last_digits" authorization: allOf: - "$ref": "#/components/schemas/payment_authorization" installments: allOf: - "$ref": "#/components/schemas/payment_installments" payer: "$ref": "#/components/schemas/payment_payer_write" products: allOf: - "$ref": "#/components/schemas/payment_products" agency_bank_slip: type: object required: - due_date - bank_account - products - amount properties: due_date: &564 allOf: - "$ref": "#/components/schemas/payment_due_date" settlement_date: &565 allOf: - "$ref": "#/components/schemas/payment_settlement_date" description: &566 allOf: - "$ref": "#/components/schemas/payment_description" writeOnly: true bank_slip_number: &567 type: integer readOnly: true description: Número do boleto. amount: &568 allOf: - "$ref": "#/components/schemas/payment_amount" payer: "$ref": "#/components/schemas/payment_payer_write" bank_account: "$ref": "#/components/schemas/bank_account" products: allOf: - "$ref": "#/components/schemas/payment_products" writeOnly: true vendor_others: type: object required: - products properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" details: type: string maxLength: 255 description: 'Detalhes sobre o pagamento. Pode ser usado para especificar a forma de pagamento utilizada.

Exemplos: "Pix", "Boleto bancário", "Fatura", "Dinheiro".' payer: "$ref": "#/components/schemas/payment_payer_write" products: allOf: - "$ref": "#/components/schemas/payment_products" agency_bank_deposit: type: object required: - due_date - bank_account - products - amount properties: due_date: &569 description: Data prevista do depósito (vencimento) no formato ISO 8601 (AAAA-MM-DD). allOf: - "$ref": "#/components/schemas/payment_due_date" settlement_date: &570 allOf: - "$ref": "#/components/schemas/payment_settlement_date" description: &571 allOf: - "$ref": "#/components/schemas/payment_description" writeOnly: true observations: &572 allOf: - "$ref": "#/components/schemas/payment_observations" amount: &573 allOf: - "$ref": "#/components/schemas/payment_amount" payer: "$ref": "#/components/schemas/payment_payer_write" bank_account: "$ref": "#/components/schemas/bank_account" products: allOf: - "$ref": "#/components/schemas/payment_products" writeOnly: true vendor_credit: type: object required: - products properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" document: type: string readOnly: true description: Identificação do crédito do fornecedor, como número de documento ou outra referência, quando aplicável. payer: "$ref": "#/components/schemas/payment_payer_write" products: allOf: - "$ref": "#/components/schemas/payment_products" payment_agency: type: object properties: credit_card: description: Pagamento com cartão de crédito. "$ref": "#/components/schemas/agency_credit_card" bank_slip: description: Pagamento com boleto bancário. "$ref": "#/components/schemas/agency_bank_slip" bank_deposit: description: Pagamento por depósito em conta, que pode representar diferentes meios de transferência, como Pix, TED ou DOC. Você pode usar o campo `observations` para especificar o tipo de transferência utilizado. "$ref": "#/components/schemas/agency_bank_deposit" payment_vendor: type: object properties: credit_card: description: Pagamento com cartão de crédito. "$ref": "#/components/schemas/vendor_credit_card" others: description: Pagamento com outras formas . Utilize o campo `details` para especificar a forma de pagamento utilizada. "$ref": "#/components/schemas/vendor_others" credit: description: Pagamento com crédito disponível no fornecedor ou representante. "$ref": "#/components/schemas/vendor_credit" payment: type: object properties: agency: description: Pagamentos destinados à agência. "$ref": "#/components/schemas/payment_agency" vendor: description: Pagamentos destinados ao fornecedor ou representante. "$ref": "#/components/schemas/payment_vendor" payment_product_read: type: object readOnly: true description: Produto da venda coberto pelo pagamento, com o valor destinado a ele. properties: amount: type: number format: double multipleOf: 0.01 description: Valor do pagamento destinado a este produto. sale_product: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Produto da venda que recebeu o valor. payment_products_read: type: array readOnly: true description: Produtos da venda cobertos por este pagamento, com o valor destinado a cada um. items: "$ref": "#/components/schemas/payment_product_read" payment_payer: allOf: - "$ref": "#/components/schemas/entity_reference" readOnly: true description: |- Pagante deste pagamento, que pode ser diferente do pagante da venda. payment_payer_write: writeOnly: true allOf: - "$ref": "#/components/schemas/individual_or_company" description: 'Pagante deste pagamento, pessoa física ou jurídica, informada do mesmo jeito que o pagante da venda: quando não existir, é criada pelo external_id ou pelo documento. Quando omitido, o pagamento herda o pagante da venda.' payment_check: type: object readOnly: true nullable: true description: Dados do cheque; nulo quando o pagamento não foi em cheque. properties: number: type: integer nullable: true description: Número do cheque. bank: type: string nullable: true description: Código do banco emissor do cheque. document: type: string nullable: true description: CPF ou CNPJ do titular do cheque. payment_card: type: object readOnly: true nullable: true description: Dados do cartão; nulo quando o pagamento não foi em cartão. properties: brand: type: string nullable: true description: Bandeira do cartão. last_digits: type: string nullable: true description: Últimos 4 dígitos do cartão. authorization: type: string nullable: true description: Código de autorização. agency_credit_read: type: object readOnly: true description: Pagamentos com crédito disponível na agência. Não geram lançamento financeiro, por isso vêm embutidos. properties: due_date: allOf: - "$ref": "#/components/schemas/payment_agency_due_date" document: type: string nullable: true readOnly: true description: Identificação do crédito da agência, como número de documento ou outra referência, quando aplicável. amount: allOf: - "$ref": "#/components/schemas/payment_amount" payer: "$ref": "#/components/schemas/payment_payer" origin_sale: allOf: - "$ref": "#/components/schemas/entity_reference" readOnly: true nullable: true description: |- Venda que originou o crédito. products: "$ref": "#/components/schemas/payment_products_read" agency_retained_by_intermediary_read: type: object readOnly: true description: Valores retidos pelo intermediário. Não geram lançamento financeiro, por isso vêm embutidos. properties: due_date: allOf: - "$ref": "#/components/schemas/payment_agency_due_date" amount: description: Valor retido pelo intermediário. Sempre positivo. allOf: - "$ref": "#/components/schemas/payment_amount" payer: "$ref": "#/components/schemas/payment_payer" products: "$ref": "#/components/schemas/payment_products_read" agency_legacy_read: type: object readOnly: true description: Pagamentos à agência gravados sem lançamento financeiro em versões anteriores do sistema. Nenhum pagamento novo entra nesta lista, e a forma utilizada vem em payment_method. properties: due_date: allOf: - "$ref": "#/components/schemas/payment_agency_due_date" amount: allOf: - "$ref": "#/components/schemas/payment_amount" check: "$ref": "#/components/schemas/payment_check" card: "$ref": "#/components/schemas/payment_card" payer: "$ref": "#/components/schemas/payment_payer" payment_method: allOf: - "$ref": "#/components/schemas/entity_reference" readOnly: true description: |- Forma de pagamento utilizada. products: "$ref": "#/components/schemas/payment_products_read" vendor_credit_card_read: type: object readOnly: true properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" card_last_digits: readOnly: true allOf: - "$ref": "#/components/schemas/payment_card_last_digits" authorization: readOnly: true allOf: - "$ref": "#/components/schemas/payment_authorization" installments: readOnly: true allOf: - "$ref": "#/components/schemas/payment_installments" payer: "$ref": "#/components/schemas/payment_payer" products: "$ref": "#/components/schemas/payment_products_read" vendor_check_read: type: object readOnly: true properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" bank_code: type: string readOnly: true description: Código do banco emissor do cheque. check_number: type: integer readOnly: true description: Número do cheque. payer: "$ref": "#/components/schemas/payment_payer" products: "$ref": "#/components/schemas/payment_products_read" vendor_credit_read: type: object readOnly: true properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" document: type: string nullable: true readOnly: true description: Identificação do crédito do fornecedor, como número de documento ou outra referência, quando aplicável. payer: "$ref": "#/components/schemas/payment_payer" products: "$ref": "#/components/schemas/payment_products_read" vendor_others_read: type: object readOnly: true properties: due_date: allOf: - "$ref": "#/components/schemas/payment_vendor_due_date" details: type: string maxLength: 255 readOnly: true description: 'Detalhes sobre o pagamento. Pode ser usado para especificar a forma de pagamento utilizada.

Exemplos: "Pix", "Boleto bancário", "Fatura", "Dinheiro".' payer: "$ref": "#/components/schemas/payment_payer" products: "$ref": "#/components/schemas/payment_products_read" payment_agency_read: type: object readOnly: true description: Pagamentos destinados à agência. As listas `bills` e `refunds` são referências; as demais são pagamentos registrados sem lançamento financeiro e vêm embutidas. properties: bills: type: array description: |- Lançamentos gerados pelos pagamentos à agência, incluindo o faturamento e as devoluções. A forma de pagamento, a conta, a liquidação e os produtos cobertos estão no lançamento. items: "$ref": "#/components/schemas/entity_reference" refunds: type: array description: |- Reembolsos ao cliente registrados nesta venda. items: "$ref": "#/components/schemas/entity_reference" credit: type: array description: Pagamento com crédito disponível na agência. items: "$ref": "#/components/schemas/agency_credit_read" retained_by_intermediary: type: array description: Valor retido pelo intermediário. items: "$ref": "#/components/schemas/agency_retained_by_intermediary_read" legacy: type: array description: Pagamentos à agência gravados sem lançamento financeiro em versões anteriores do sistema. Nenhum pagamento novo entra nesta lista, e a forma utilizada vem em payment_method. items: "$ref": "#/components/schemas/agency_legacy_read" payment_vendor_read: type: object readOnly: true description: Pagamentos destinados ao fornecedor ou representante. Não geram lançamento financeiro, por isso vêm embutidos, com os produtos que cada pagamento cobre. properties: credit_card: type: array description: Pagamento com cartão de crédito. items: "$ref": "#/components/schemas/vendor_credit_card_read" check: type: array description: Pagamento com cheque. items: "$ref": "#/components/schemas/vendor_check_read" credit: type: array description: Pagamento com crédito disponível no fornecedor ou representante. items: "$ref": "#/components/schemas/vendor_credit_read" others: type: array description: Pagamento com outras formas . Utilize o campo `details` para especificar a forma de pagamento utilizada. items: "$ref": "#/components/schemas/vendor_others_read" payment_read: type: object readOnly: true description: Pagamentos da venda, separados entre os destinados à agência e os destinados ao fornecedor. properties: agency: allOf: - "$ref": "#/components/schemas/payment_agency_read" description: Pagamentos destinados à agência. As listas `bills` e `refunds` são referências; as demais são pagamentos registrados sem lançamento financeiro e vêm embutidas. vendor: allOf: - "$ref": "#/components/schemas/payment_vendor_read" description: Pagamentos destinados ao fornecedor ou representante. Não geram lançamento financeiro, por isso vêm embutidos, com os produtos que cada pagamento cobre. passenger_document: type: string description: Identificação do passageiro no produto, como número de bilhete ou outra referência de identificação, quando aplicável. maxLength: 30 passenger_cost_center: type: string readOnly: true description: Centro de custo do passageiro. passenger_canceled_at: type: string format: date-time readOnly: true description: Data de cancelamento do passageiro. passenger_amount: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Valor do produto cobrado do passageiro. " passenger_fees: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: ' Taxas cobradas pelo fornecedor ou representante. Também pode ser conhecida como "taxa administrativa", "taxa de emissão", "taxa de embarque", entre outros. ' passenger_other_fees: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Taxas diversas cobradas do passageiro, além das taxas específicas do produto. O que ela representa varia conforme o produto. " passenger_tip: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Gorjeta cobrada do passageiro no cruzeiro. " passenger_rav_fee: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Remuneração do Agente de Viagens (RAV), receita gerada pela agência, especialmente em passagens aéreas. " passenger_rav_fee_discount: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Desconto aplicado sobre a RAV. " passenger_agency_fee: type: number format: double default: 0 minimum: 0 multipleOf: 0.01 exclusiveMaximum: 100000000000 description: " Taxa cobrada diretamente pela agência de viagens, sem vínculo direto com o fornecedor ou representante. O valor é somado ao total do produto mas não aparece detalhado para o cliente final. " passenger_customer_amount: type: number format: double readOnly: true minimum: 0 description: " Valor cobrado do cliente referente ao passageiro. " passenger_total_amount: type: number format: double readOnly: true minimum: 0 description: " Valor total do passageiro. " passenger_person: description: Dados pessoais do passageiro. allOf: - "$ref": "#/components/schemas/individual_person" insurance_passenger: type: object required: - person properties: document: &297 allOf: - "$ref": "#/components/schemas/passenger_document" cost_center: &298 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &299 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &300 allOf: - "$ref": "#/components/schemas/passenger_fees" rav_fee: &301 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &302 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" agency_fee: &303 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &304 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &305 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &306 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: &307 allOf: - "$ref": "#/components/schemas/passenger_person" insurance_passenger_read: type: object readOnly: true required: - person properties: document: *297 cost_center: *298 canceled_at: *299 fees: *300 rav_fee: *301 rav_fee_discount: *302 agency_fee: *303 amount: *304 customer_amount: *305 total_amount: *306 person: &318 allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Dados pessoais do passageiro. train_passenger: type: object required: - person properties: document: &308 allOf: - "$ref": "#/components/schemas/passenger_document" cost_center: &309 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &310 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &311 allOf: - "$ref": "#/components/schemas/passenger_fees" rav_fee: &312 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &313 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" agency_fee: &314 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &315 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &316 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &317 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: *307 train_passenger_read: type: object readOnly: true required: - person properties: document: *308 cost_center: *309 canceled_at: *310 fees: *311 rav_fee: *312 rav_fee_discount: *313 agency_fee: *314 amount: *315 customer_amount: *316 total_amount: *317 person: *318 ground_transportation_passenger: type: object required: - person - document properties: document: &319 allOf: - "$ref": "#/components/schemas/passenger_document" cost_center: &320 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &321 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &322 allOf: - "$ref": "#/components/schemas/passenger_fees" rav_fee: &323 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &324 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" agency_fee: &325 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &326 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &327 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &328 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: *307 ground_transportation_passenger_read: type: object readOnly: true required: - person properties: document: *319 cost_center: *320 canceled_at: *321 fees: *322 rav_fee: *323 rav_fee_discount: *324 agency_fee: *325 amount: *326 customer_amount: *327 total_amount: *328 person: *318 cruise_passenger: type: object required: - person properties: cost_center: &329 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &330 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &331 allOf: - "$ref": "#/components/schemas/passenger_fees" tip: &332 allOf: - "$ref": "#/components/schemas/passenger_tip" rav_fee: &333 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &334 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" agency_fee: &335 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &336 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &337 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &338 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: *307 cruise_passenger_read: type: object readOnly: true required: - person properties: cost_center: *329 canceled_at: *330 fees: *331 tip: *332 rav_fee: *333 rav_fee_discount: *334 agency_fee: *335 amount: *336 customer_amount: *337 total_amount: *338 person: *318 operation_passenger: type: object required: - person properties: document: &349 allOf: - "$ref": "#/components/schemas/passenger_document" cost_center: &350 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &351 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &352 allOf: - "$ref": "#/components/schemas/passenger_fees" amount: &353 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &354 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &355 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: *307 default_passenger: type: object required: - person properties: cost_center: &339 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &340 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &341 allOf: - "$ref": "#/components/schemas/passenger_fees" other_fees: &342 allOf: - "$ref": "#/components/schemas/passenger_other_fees" rav_fee: &343 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &344 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" agency_fee: &345 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &346 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &347 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &348 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: *307 default_passenger_read: type: object readOnly: true required: - person properties: document: &574 allOf: - "$ref": "#/components/schemas/passenger_document" cost_center: *298 canceled_at: *299 fees: *300 rav_fee: *301 rav_fee_discount: *302 agency_fee: *303 amount: *304 customer_amount: *305 total_amount: *306 person: *318 car_rental_passenger_read: type: object readOnly: true required: - person properties: cost_center: *339 canceled_at: *340 fees: *341 other_fees: *342 rav_fee: *343 rav_fee_discount: *344 agency_fee: *345 amount: *346 customer_amount: *347 total_amount: *348 person: *318 operation_passenger_read: type: object readOnly: true required: - person properties: document: *349 cost_center: *350 canceled_at: *351 fees: *352 amount: *353 customer_amount: *354 total_amount: *355 person: *318 travel_package_passenger: type: object required: - person properties: document: &356 allOf: - "$ref": "#/components/schemas/passenger_document" cost_center: *339 canceled_at: *340 fees: *341 other_fees: *342 rav_fee: *343 rav_fee_discount: *344 agency_fee: *345 amount: *346 customer_amount: *347 total_amount: *348 person: *307 travel_package_passenger_read: type: object readOnly: true required: - person properties: document: *356 cost_center: *339 canceled_at: *340 fees: *341 other_fees: *342 rav_fee: *343 rav_fee_discount: *344 agency_fee: *345 amount: *346 customer_amount: *347 total_amount: *348 person: *318 hotel_passenger: type: object required: - person properties: emission_name: &357 type: string readOnly: true description: Nome de emissão do bilhete. maxLength: 30 cost_center: &358 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &359 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" fees: &360 allOf: - "$ref": "#/components/schemas/passenger_fees" other_fees: &361 allOf: - "$ref": "#/components/schemas/passenger_other_fees" rav_fee: &362 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &363 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" agency_fee: &364 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &365 allOf: - "$ref": "#/components/schemas/passenger_amount" customer_amount: &366 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &367 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: *307 hotel_passenger_read: type: object readOnly: true required: - person properties: emission_name: *357 cost_center: *358 canceled_at: *359 fees: *360 other_fees: *361 rav_fee: *362 rav_fee_discount: *363 agency_fee: *364 amount: *365 customer_amount: *366 total_amount: *367 person: *318 airline_ticket_passenger: type: object required: - ticket_number properties: ticket_number: &368 type: string description: Número do bilhete do passageiro. maxLength: 30 original_ticket_number: &369 type: string writeOnly: true description: Número do bilhete original do passageiro. Utilize esse campo para indicar que o bilhete foi reemitido, informando o número do bilhete que originou a reemissão. maxLength: 30 emission_name: &370 type: string description: Nome do passageiro conforme emitido no bilhete. maxLength: 30 seat: &371 type: string readOnly: true description: Assento do passageiro. maxLength: 10 cost_center: &372 allOf: - "$ref": "#/components/schemas/passenger_cost_center" canceled_at: &373 allOf: - "$ref": "#/components/schemas/passenger_canceled_at" boarding_fee: &374 type: number format: double minimum: 0 exclusiveMaximum: 100000000000 description: " Valor da taxa de embarque cobrada do passageiro. " other_fees: &375 allOf: - "$ref": "#/components/schemas/passenger_other_fees" rav_fee: &376 allOf: - "$ref": "#/components/schemas/passenger_rav_fee" rav_fee_discount: &377 allOf: - "$ref": "#/components/schemas/passenger_rav_fee_discount" du_fee: &378 type: number format: double minimum: 0 description: " Remuneração adicional que algumas companhias aéreas oferecem às agências (DU). " du_fee_discount: &379 type: number format: double readOnly: true minimum: 0 description: " Desconto aplicado sobre a DU. " agency_fee: &380 allOf: - "$ref": "#/components/schemas/passenger_agency_fee" amount: &381 type: number format: double default: 0 minimum: 0 description: " Valor do produto cobrado do passageiro. " customer_amount: &382 allOf: - "$ref": "#/components/schemas/passenger_customer_amount" total_amount: &383 allOf: - "$ref": "#/components/schemas/passenger_total_amount" person: description: Dados pessoais do passageiro. allOf: - "$ref": "#/components/schemas/individual_person" airline_ticket_passenger_read: type: object readOnly: true required: - ticket_number properties: ticket_number: *368 original_ticket_number: *369 emission_name: *370 seat: *371 cost_center: *372 canceled_at: *373 boarding_fee: *374 other_fees: *375 rav_fee: *376 rav_fee_discount: *377 du_fee: *378 du_fee_discount: *379 agency_fee: *380 amount: *381 customer_amount: *382 total_amount: *383 person: *318 pagination: type: object description: Informações de paginação da resposta. properties: size: type: integer minimum: 1 maximum: 50 description: Número de registros por página. example: 10 has_next_page: type: boolean description: Indica se existe uma próxima página. Para percorrer a consulta inteira, peça a próxima página com o `next_cursor` enquanto for verdadeiro. example: true next_cursor: type: - string - 'null' description: Cursor para pedir a próxima página. Nulo quando não existe próxima página. example: eyJfcmFpbHMiOnsiZGF0YSI6WyIyMDI2LTAzLTEwIiwiNmIwZjdjMWUtMmQ0YS00ZjhiLTljMzEtNThhMGQ3ZTEzZjQyIl0sInB1ciI6ImFwaS92My9wcm9kdWN0cyNpbmRleCJ9fQ--3aa1d942d6240ca905038c019d661bc90af6836fc4a818cee3663829c75970e4 cabin: type: object description: Representa um tipo de cabine cadastrado no sistema. properties: name: type: string description: Nome da cabine (identificador único) example: Varanda required: - name ship: type: object description: Representa um navio cadastrado no sistema. properties: name: type: string description: Nome do navio (identificador único) example: MSC Preziosa required: - name cost_center: type: object description: Representa um centro de custo cadastrado no sistema. properties: id: type: string format: uuid description: Identificador único do centro de custo example: f9d961b8-ea88-4346-8e52-afe94267417a description: type: string description: Descrição do centro de custo example: Marketing required: - id - description currency: type: object description: Representa uma moeda cadastrada no sistema. properties: code: type: string minLength: 3 maxLength: 3 description: Código da moeda no padrão ISO 4217 (identificador único) example: BRL description: type: string description: Descrição da moeda example: Real symbol: type: string nullable: true description: Símbolo da moeda example: R$ active: type: boolean description: Indica se a moeda está ativa example: true required: - code - description - active category_summary: type: object description: Representa uma categoria financeira cadastrada no sistema, com os campos da própria categoria. properties: id: type: string format: uuid description: Identificador único da categoria example: f9d961b8-ea88-4346-8e52-afe94267417a description: type: string description: Descrição da categoria example: Aluguel pass_through: type: boolean description: Indica se a categoria é de repasse. Repasses são valores que apenas transitam pela agência e não devem ser considerados receita ou despesa real. example: false required: - id - description - pass_through category: description: Representa uma categoria financeira cadastrada no sistema, com o grupo. allOf: - "$ref": "#/components/schemas/category_summary" - type: object required: - group properties: group: type: object description: Grupo ao qual a categoria pertence properties: id: type: string format: uuid description: Identificador único do grupo da categoria no formato UUID example: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: type: string description: Nome do grupo da categoria example: Despesas Administrativas required: - id - name city_summary: type: object description: Representa uma cidade cadastrada no sistema, com os campos da própria cidade. properties: id: type: string format: uuid description: Identificador único da cidade example: f9d961b8-ea88-4346-8e52-afe94267417a name: type: string description: Nome da cidade example: São Paulo ibge: type: string nullable: true description: Código IBGE da cidade (apenas cidades brasileiras) example: '3550308' siafi: type: string nullable: true description: Código SIAFI da cidade (apenas cidades brasileiras) example: '7107' setec: type: string nullable: true description: Código SETEC da cidade example: '354990' required: - id - name city: description: Representa uma cidade cadastrada no sistema, com o estado e o país. allOf: - "$ref": "#/components/schemas/city_summary" - type: object properties: state: type: object nullable: true description: Estado da cidade (nulo para cidades estrangeiras) properties: id: type: string format: uuid description: Identificador único do estado example: b2a6d7da-ff94-40e3-b069-812b2fd45b91 acronym: type: string description: Sigla do estado (UF) example: SP name: type: string description: Nome do estado example: São Paulo required: - id - acronym - name country: type: object nullable: true description: País da cidade properties: id: type: string format: uuid description: Identificador único do país example: c3b7e8eb-1199-4457-9170-923c3fe56c92 name: type: string description: Nome do país example: Brasil code: type: string nullable: true description: Código do país com duas letras (ISO 3166-1 alfa-2) example: BR code_3: type: string nullable: true description: Código do país com três letras (ISO 3166-1 alfa-3) example: BRA sisbacen: type: integer nullable: true description: Código SISBACEN do país example: 1058 required: - id - name seller_summary: type: object description: Representa um vendedor na consulta em lista, com os campos próprios do cadastro. properties: id: type: string format: uuid description: Identificador único do vendedor (o mesmo da pessoa correspondente) example: f9d961b8-ea88-4346-8e52-afe94267417a active: type: boolean description: Indica se o vendedor está ativo example: true created_at: type: string format: date-time description: Data e hora de cadastro do vendedor example: '2024-03-15T10:30:00' required: - id - created_at seller: description: Representa um vendedor cadastrado no sistema. O identificador do vendedor é o mesmo da pessoa correspondente. allOf: - "$ref": "#/components/schemas/seller_summary" - type: object required: - person properties: person: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Pessoa correspondente ao vendedor created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cadastrou o vendedor payment_method: type: object description: Representa uma forma de pagamento cadastrada no sistema. properties: id: type: string format: uuid description: Identificador único da forma de pagamento example: fc9f5c65-59d6-42bb-8dd1-a5c0e3e51ea9 name: type: string description: Descrição da forma de pagamento example: Dinheiro system: type: boolean description: Indica se a forma de pagamento é padrão do sistema (não pode ser editada nem excluída) example: true required: - id - name - system account_summary: type: object description: Representa uma conta ou cartão na consulta em lista, com os campos próprios do cadastro. properties: id: type: string format: uuid description: Identificador único da conta example: f9d961b8-ea88-4346-8e52-afe94267417a description: type: string description: Descrição da conta example: Banco do Brasil - Matriz kind: type: string enum: - checking_account - card_account - check_account - cashier_account description: " Tipo da conta. " example: checking_account active: type: boolean description: Indica se a conta está ativa example: true currency: type: string minLength: 3 maxLength: 3 description: Código da moeda da conta no padrão ISO 4217 example: BRL initial_balance: type: number format: double description: Saldo inicial da conta example: 1500.0 bank_operation: type: string nullable: true description: Código da operação bancária. Relevante apenas para contas correntes da Caixa Econômica Federal; nulo nos demais casos. example: '001' agency: type: string nullable: true description: Número da agência bancária example: '1412' agency_digit: type: string nullable: true description: Dígito da agência bancária example: '5' number: type: string nullable: true description: Número da conta bancária example: '04640' digit: type: string nullable: true description: Dígito da conta bancária example: '2' pix_key: type: string nullable: true description: Chave Pix da conta example: financeiro@agencia.com.br bill_expiration: type: integer nullable: true minimum: 1 maximum: 31 description: Dia de vencimento da fatura (1 a 31). Aplica-se apenas a contas de cartão de crédito; nulo nos demais casos. example: 10 bill_closing: type: integer nullable: true minimum: 1 maximum: 31 description: Dia de fechamento da fatura (1 a 31). Aplica-se apenas a contas de cartão de crédito; nulo nos demais casos. example: 1 required: - id - description - kind - active - currency - initial_balance account: description: Representa uma conta ou cartão cadastrado no sistema. Os campos bancários são preenchidos para contas correntes; os campos de cartão, para cartões de crédito. allOf: - "$ref": "#/components/schemas/account_summary" - type: object required: - companies properties: bank: type: object nullable: true description: Banco da conta (apenas contas correntes) properties: id: type: string format: uuid description: Identificador único do banco example: c3b7e8eb-1199-4457-9170-923c3fe56c92 number: type: string description: Número do banco example: '001' name: type: string description: Nome do banco example: Banco do Brasil required: - id - name owner: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Titular da conta card_operator: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Operadora do cartão (apenas cartões de crédito) companies: type: array description: |- Empresas em que a conta está disponível items: "$ref": "#/components/schemas/entity_reference" nf_rule_summary: type: object description: Representa uma regra da nota fiscal na consulta em lista, com os campos próprios do cadastro. properties: id: &385 type: string format: uuid description: Identificador único da regra example: f9d961b8-ea88-4346-8e52-afe94267417a description: &386 type: string description: Descrição da regra example: Regra padrão de pacotes representative_scope: &387 type: string enum: - any - none - specific description: " Indica a quais representantes a regra se aplica. " example: any created_at: &388 type: string format: date-time description: Data e hora de cadastro da regra example: '2024-03-15T10:30:00' payer_rule: &389 type: object properties: &384 recipient: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa para quem a nota fiscal é emitida (nulo = a própria pessoa da venda) revenues: type: array description: Parcelas que somam ao valor da nota fiscal (taxas próprias, comissão e over da agência) items: type: string enum: - du_fee - rav_fee - agency_service_fee - agency_fee - commission_amount - over_amount discounts: type: array description: Parcelas que reduzem o valor da nota fiscal (taxas de cartão, comissão e over de intermediário e o desconto total) items: type: string enum: - cc_du_fee - cc_rav_fee - discount - intermediary_commission_amount - intermediary_over_amount required: - recipient - revenues - discounts description: Emissão para o pagante supplier_rule: &390 type: object properties: *384 required: - recipient - revenues - discounts description: Emissão para o fornecedor representative_rule: &391 type: object properties: *384 required: - recipient - revenues - discounts description: Emissão para o representante required: - id - representative_scope - payer_rule - supplier_rule - representative_rule - created_at nf_rule: type: object description: Representa uma regra de emissão de nota fiscal, com as parcelas de valor (receitas e descontos) que compõem cada emissão. properties: id: *385 description: *386 representative_scope: *387 created_at: *388 product: &575 allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Produto ao qual a regra se aplica (nulo = todos os produtos) supplier: &576 allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Fornecedor ao qual a regra se aplica (nulo = todos os fornecedores) representative: &577 allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Representante ao qual a regra se aplica (preenchido quando representative_scope = specific) payer: &578 allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pagante ao qual a regra se aplica (nulo = todos os pagantes) created_by: &579 allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cadastrou a regra payer_rule: *389 supplier_rule: *390 representative_rule: *391 required: - id - representative_scope - payer_rule - supplier_rule - representative_rule - created_at task_summary: type: object description: Representa uma tarefa cadastrada no sistema. properties: id: type: string format: uuid description: Identificador único da tarefa example: f9d961b8-ea88-4346-8e52-afe94267417a number: type: integer description: Número sequencial da tarefa example: 1042 title: type: string description: Título da tarefa example: Enviar voucher para o cliente description: type: string nullable: true description: Descrição da tarefa example: Confirmar os dados do embarque antes do envio. due: type: string format: date-time description: Data e hora de vencimento example: '2024-04-01T09:00:00' completed_at: type: string format: date-time nullable: true description: Data e hora de conclusão (nulo quando não concluída) example: visualized: type: boolean description: Indica se a tarefa foi visualizada pelo responsável example: true deleted: type: boolean description: Indica se a tarefa foi excluída example: false created_at: type: string format: date-time description: Data e hora de cadastro da tarefa example: '2024-03-15T10:30:00' required: - id - number - title - due - visualized - deleted - created_at task_historic: type: object readOnly: true description: Entrada do histórico da tarefa — um comentário ou um registro de alteração. properties: created_at: type: string format: date-time description: Data e hora do registro no histórico example: '2024-04-01T09:30:00' text: type: string nullable: true description: Comentário registrado no histórico (nulo quando a entrada é apenas um registro de alteração) example: Cliente confirmou os dados do embarque. historic: type: string nullable: true description: Registro de alteração da tarefa (nulo quando a entrada é apenas um comentário) example: "'Título' alterado de 'A' para 'B'" person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que registrou a entrada do histórico (nulo quando a entrada não tem uma pessoa como autor, como a registrada pelo próprio Monde ou por uma credencial da API) task: description: Representa uma tarefa com o histórico e os campos personalizados. allOf: - "$ref": "#/components/schemas/task_summary" - type: object required: - category - assignee - history - custom_fields properties: category: allOf: - "$ref": "#/components/schemas/numeric_entity_reference" description: |- Categoria da tarefa assignee: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Responsável pela tarefa person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa vinculada à tarefa company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa da tarefa (nulo quando a tarefa vale para todas as empresas) created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cadastrou a tarefa history: type: array readOnly: true description: Histórico da tarefa (comentários e registros de alteração) items: "$ref": "#/components/schemas/task_historic" custom_fields: type: array readOnly: true description: Campos personalizados preenchidos na tarefa, definidos pela agência items: "$ref": "#/components/schemas/custom_field" task_historic_create: type: object writeOnly: true description: Comentário a acrescentar ao histórico da tarefa. required: - text properties: text: type: string description: Texto do comentário example: Cliente confirmou os dados do embarque. task_create: type: object writeOnly: true description: Dados para criar uma tarefa. required: - company_identifier - title - due - category_id - assignee_id properties: company_identifier: allOf: - "$ref": "#/components/schemas/company_identifier" description: CNPJ da empresa em que a tarefa será criada, só os dígitos title: type: string maxLength: 100 description: Título da tarefa example: Enviar voucher para o cliente description: type: string description: Descrição da tarefa example: Confirmar os dados do embarque antes do envio. due: type: string format: date-time description: Data e hora de vencimento example: '2024-04-01T09:00:00' category_id: type: integer description: Identificador da categoria da tarefa, obtido em [Consultar categorias de tarefa](#tag/Categorias-de-Tarefas/paths/~1task_categories/get). example: 11 assignee_id: type: string format: uuid description: Identificador da pessoa responsável pela tarefa, obtido em [Consultar pessoas](#tag/Pessoas/paths/~1people/get). A pessoa precisa ser um usuário ativo do Monde. example: b2a6d7da-ff94-40e3-b069-812b2fd45b91 person_id: type: string format: uuid description: Identificador da pessoa vinculada à tarefa, obtido em [Consultar pessoas](#tag/Pessoas/paths/~1people/get). example: c3b7e8eb-1199-4457-9170-923c3fe56c92 history: type: array description: Comentários com que a tarefa nasce items: "$ref": "#/components/schemas/task_historic_create" custom_fields: type: array description: Campos personalizados a preencher na tarefa, definidos pela agência items: "$ref": "#/components/schemas/custom_field" task_update: type: object writeOnly: true description: Dados para alterar uma tarefa. Todos os campos são opcionais. properties: company_identifier: allOf: - "$ref": "#/components/schemas/company_identifier" description: CNPJ da empresa para onde a tarefa vai, só os dígitos title: type: string maxLength: 100 description: Título da tarefa example: Enviar voucher atualizado para o cliente description: type: string description: Descrição da tarefa example: Voucher reemitido com o novo horário do embarque. due: type: string format: date-time description: Data e hora de vencimento example: '2024-04-02T09:00:00' category_id: type: integer description: Identificador da categoria da tarefa, obtido em [Consultar categorias de tarefa](#tag/Categorias-de-Tarefas/paths/~1task_categories/get). example: 11 assignee_id: type: string format: uuid description: Identificador da pessoa responsável pela tarefa, obtido em [Consultar pessoas](#tag/Pessoas/paths/~1people/get). A pessoa precisa ser um usuário ativo do Monde. example: b2a6d7da-ff94-40e3-b069-812b2fd45b91 person_id: type: string format: uuid description: Identificador da pessoa vinculada à tarefa, obtido em [Consultar pessoas](#tag/Pessoas/paths/~1people/get). example: c3b7e8eb-1199-4457-9170-923c3fe56c92 completed: type: boolean description: "`true` conclui a tarefa, com a data e hora da alteração; `false` a reabre. Concluir uma tarefa já concluída mantém a data da conclusão original." example: true custom_fields: type: array description: 'Campos personalizados da tarefa, definidos pela agência. Não substitui: cada campo enviado é gravado por cima do valor atual e os que não vierem permanecem como estão, então a lista vazia não muda nada e não é possível esvaziar um campo por esta operação. Envie cada campo por `id` e `value`.' items: "$ref": "#/components/schemas/custom_field" task_category: type: object description: Representa uma categoria de tarefa cadastrada no sistema. properties: id: type: integer description: Identificador único da categoria de tarefa example: 42 name: type: string description: Nome da categoria de tarefa example: Emissão required: - id - name travel_summary: type: object description: Representa uma viagem na listagem, com campos escalares e referências. properties: id: type: string format: uuid description: Identificador único da viagem example: f9d961b8-ea88-4346-8e52-afe94267417a number: type: string description: Número sequencial da viagem example: '000042' description: type: string nullable: true description: Descrição da viagem example: Lua de mel - Cancún situation: type: string nullable: true enum: - upcoming - ongoing - finished description: " Situação da viagem, calculada a partir do período. Nula quando a viagem não tem vendas vinculadas com produtos ativos. " example: upcoming start_date: type: string format: date nullable: true description: Menor data de início entre os produtos das vendas vinculadas example: '2024-05-10' end_date: type: string format: date nullable: true description: Maior data de fim entre os produtos das vendas vinculadas example: '2024-05-24' observations: type: string nullable: true description: Observações da viagem example: Cliente prefere assentos na janela. created_at: type: string format: date-time nullable: true description: Data e hora de cadastro da viagem example: '2024-03-15T10:30:00' required: - id - number travel: type: object description: Representa uma viagem com seus campos escalares e as referências às vendas e aos passageiros vinculados. allOf: - "$ref": "#/components/schemas/travel_summary" - type: object properties: customer: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Cliente da viagem seller: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Vendedor da viagem company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa da viagem created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cadastrou a viagem sales: type: array description: |- Referências às vendas vinculadas à viagem items: "$ref": "#/components/schemas/entity_reference" passengers: type: array description: |- Referências aos passageiros da viagem, deduplicados por pessoa items: "$ref": "#/components/schemas/entity_reference" quote_summary: type: object description: Representa um orçamento na consulta em lista, com os campos próprios do cadastro. properties: id: type: integer description: Identificador único do orçamento example: 42 title: type: string description: Título do orçamento example: Cancún subtitle: type: string description: Subtítulo do orçamento example: Lua de mel - 14 noites details: type: string description: Detalhes do orçamento (texto livre) example: Pacote com aéreo, hospedagem all inclusive e traslados. valid_until: type: string format: date description: Data de validade do orçamento example: '2024-05-31' active: type: boolean description: Indica se o orçamento está ativo example: true public_url: type: string format: uri nullable: true description: Link público de visualização do orçamento (acessível apenas enquanto ativo e dentro da validade) example: https://suaviagem.app/a1B2c3-cancun internal_observations: type: string nullable: true description: Observações internas (não aparecem no link público) example: Cliente pediu retorno até sexta. created_at: type: string format: date-time description: Data e hora de criação example: '2024-03-15T10:30:00' required: - id - title - subtitle - details - valid_until - active - created_at quote: description: Representa um orçamento cadastrado no sistema. allOf: - "$ref": "#/components/schemas/quote_summary" - type: object required: - company properties: person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa vinculada ao orçamento company: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Empresa do orçamento invoice_rule_summary: type: object description: Representa uma regra de faturamento na consulta em lista, com os campos próprios do cadastro. properties: id: type: string format: uuid description: Identificador único da regra example: f9d961b8-ea88-4346-8e52-afe94267417a description: type: string description: Descrição da regra (copiada para as faturas geradas) example: Faturamento semanal aéreo person_kind: type: string enum: - customer - supplier - representative description: " Tipo da pessoa dona da regra. " example: supplier destination: type: string enum: - every - national - international - cruise description: " Destino ao qual a regra se aplica. " example: every movement: type: string enum: - every_movement - to_pay - to_receive description: " Movimento ao qual a regra se aplica. Só se aplica a regras de fornecedor e representante; em regras de cliente é sempre every_movement e não tem efeito. " example: every_movement cost_center: type: string nullable: true description: Centro de custo ao qual a regra se aplica (apenas regras de cliente; nulo = todos) example: Comercial closing: type: object description: Configuração de fechamento do período que agrupa as vendas em uma fatura. properties: period_kind: type: string enum: - standalone - daily - weekly - weekly_iata - weekly_inside_month - decendial - fortnightly - monthly - custom description: " Cadência de fechamento que agrupa as vendas em uma fatura. " example: weekly week_start: type: string nullable: true enum: - sunday - monday - tuesday - wednesday - thursday - friday - saturday description: Dia em que a semana começa; usado apenas quando period_kind é weekly ou weekly_inside_month, nulo nos demais casos. example: monday custom_period: type: string nullable: true description: Faixas de dias do mês que definem cada período de fechamento customizado (usado quando period_kind = custom). Cada faixa é 'dia_inicial-dia_final', em dias do mês, separadas por ';'. Exemplo '1-8;9-15;16-23;24-31' significa do dia 1 ao dia 8, do dia 9 ao dia 15, do dia 16 ao dia 23 e do dia 24 ao dia 31. example: 1-8;9-15;16-23;24-31 custom_period_due_date: type: string nullable: true description: Dia do mês em que vence cada faixa de custom_period, na mesma ordem, separados por ';'. O N-ésimo valor é o dia de vencimento da N-ésima faixa. Exemplo para '1-8;9-15;16-23;24-31', o valor '10;17;25;5' vence a primeira faixa no dia 10, a segunda no dia 17, a terceira no dia 25 e a quarta no dia 5. example: 10;17;25;5 date_to_use: type: string enum: - after_sale_date - before_checkin - after_checkin - before_checkout - after_checkout description: " Data de referência da venda usada para enquadrar o item no período de fechamento. " example: after_sale_date required: - period_kind - date_to_use due_date: type: object description: Configuração de vencimento da fatura gerada. properties: days_to_skip: type: integer description: Quantidade de dias após o fechamento do período para calcular o vencimento (dias úteis quando period_kind = weekly_iata). example: 5 on_weekend: type: string enum: - stay - next - previous description: " Ajuste do vencimento quando cai em sábado, domingo ou feriado. " example: stay required: - days_to_skip - on_weekend required: - id - description - person_kind - destination - movement - closing - due_date invoice_rule: description: Representa uma regra de faturamento cadastrada no sistema. allOf: - "$ref": "#/components/schemas/invoice_rule_summary" - type: object properties: person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa dona da regra (nula = vale para todas as pessoas do tipo) product: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Produto ao qual a regra se aplica (nulo = todos os produtos) supplier: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Fornecedor ao qual a regra se aplica (apenas regras de representante; nulo = todos) requester: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Solicitante ao qual a regra se aplica (apenas regras de cliente; nulo = todos) integration_summary: type: object description: Representa uma integração na consulta em lista, com os campos próprios do cadastro. properties: id: type: string format: uuid description: Identificador único da integração example: f9d961b8-ea88-4346-8e52-afe94267417a description: type: string description: Descrição da integração example: BRT Consolidadora active: type: boolean description: Indica se a integração está ativa example: true vendor_name: type: string nullable: true description: Nome do provedor da integração example: BRT required: - id - description - active - vendor_name integration: description: Representa uma integração com fornecedor cadastrada no sistema, sem os dados de acesso. allOf: - "$ref": "#/components/schemas/integration_summary" - type: object properties: person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa vinculada como fornecedor ou representante nos produtos importados company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa da integração (nula quando vale para todas as empresas) person_summary: type: object description: Representa uma pessoa na consulta (lista), com escalares próprios e referências das entidades fortes, sem entidades fracas. properties: id: type: string format: uuid description: Identificador único da pessoa example: f9d961b8-ea88-4346-8e52-afe94267417a external_id: type: - string - 'null' maxLength: 50 description: Identificador que você atribuiu a esta pessoa ao cadastrá-la. Nulo quando a credencial que consulta não tem identificador externo para ela. code: type: integer nullable: true description: Código sequencial da pessoa example: 1042 person_kind: type: string enum: - individual - company description: Define se é uma pessoa física (individual) ou jurídica (company). example: individual name: type: string description: 'Nome ou nome fantasia, de acordo com o tipo da pessoa.

Exemplo: "Maria da Silva" ou "Epic Journey".' maxLength: 100 legal_name: type: - string - 'null' description: 'Razão social.

Exemplo: "Epic Journey S.A.".' maxLength: 100 cpf_cnpj: type: - string - 'null' description: 'CPF ou CNPJ, de acordo com o tipo da pessoa, sem pontos, barras, traços ou espaços.

Exemplo: "38107867807" ou "50559280000140".' minLength: 11 maxLength: 14 gender: type: - string - 'null' enum: - female - male - description: Gênero birthdate: type: - string - 'null' format: date description: 'Data de nascimento no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "1990-02-12".' rg_ie: type: - string - 'null' description: 'RG ou Inscrição Estadual, de acordo com o tipo da pessoa, sem pontos, traços ou espaços.

Exemplo: "461196037" ou "123456789012".' maxLength: 20 city_inscription: type: - string - 'null' description: Inscrição municipal tax_identification_number: type: - string - 'null' description: Identificação fiscal (pessoa jurídica estrangeira) passport_number: type: - string - 'null' description: 'Número do passaporte, sem pontos, traços ou espaços.

Exemplo: "FG225776".' maxLength: 20 passport_expiration_date: type: - string - 'null' format: date description: 'Data de expiração do passaporte no formato ISO 8601 (AAAA-MM-DD).

Exemplo: "2035-12-01".' foreigner: type: boolean description: Indica se a pessoa ou empresa é estrangeira. Use `true` para pessoas que não têm nacionalidade brasileira ou empresas que não estão sediadas no Brasil. default: false foreign_identity_document: type: - string - 'null' description: ' Documento de identificação do estrangeiro, emitido em seu país de origem. Sem pontos, traços ou espaços.

Exemplo: "41234567". ' maxLength: 30 email: type: - string - 'null' description: 'Endereço de e-mail.

Exemplo: "contato@exemplo.com".' maxLength: 200 phone_number: type: - string - 'null' description: 'Número de telefone, sem traço ou espaços. Para números internacionais, utilize + e o código do país.

Exemplos: "1134567890", "+33170180123".' maxLength: 20 mobile_number: type: - string - 'null' description: 'Número de telefone celular, sem traço ou espaços. Para números internacionais, utilize + e o código do país.

Exemplos: "11934567890", "+447911123456".' maxLength: 20 business_phone: type: - string - 'null' description: Telefone comercial example: '4133334444' website: type: - string - 'null' description: Website (pessoa jurídica) example: https://www.agencia.com.br cvc_code: type: - integer - 'null' description: Código CVC da pessoa observations: type: - string - 'null' description: Observações da pessoa charge_billet_fee: type: boolean description: Indica se a taxa de boleto é cobrada da pessoa example: false created_at: type: - string - 'null' format: date-time description: Data e hora de cadastro da pessoa address: type: - object - 'null' description: Endereço. properties: postal_code: type: - string - 'null' description: 'CEP ou código postal, sem traços.

Exemplo: "04078011".' maxLength: 8 street: type: - string - 'null' description: 'Logradouro.

Exemplo: "Avenida Divino Salvador".' maxLength: 50 street_number: type: - string - 'null' description: 'Número.

Exemplo: "5000".' maxLength: 10 neighborhood: type: - string - 'null' description: 'Bairro.

Exemplo: "Planalto Paulista".' maxLength: 30 additional_info: type: - string - 'null' description: 'Complemento.

Exemplo: "Casa 2".' maxLength: 20 city: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Cidade do endereço. Estado e país saem na consulta da cidade por ID. additional_data: type: - object - 'null' description: Dados adicionais da pessoa física. Ausente (null) para pessoa jurídica. properties: marital_status: type: - string - 'null' enum: - single - married - separated - divorced - widowed - civil_union - description: " Estado civil (pessoa física). " example: married rg_emitter: type: - string - 'null' description: Órgão emissor do RG example: SSP/SP rg_issue_date: type: - string - 'null' format: date description: Data de emissão do RG birth_certificate: type: - string - 'null' description: Certidão de nascimento mother_name: type: - string - 'null' description: Filiação (mãe) last_contacts: type: object description: Datas dos últimos contatos e movimentações da pessoa. properties: first_sale_date: type: - string - 'null' format: date description: Data da primeira venda da pessoa last_sale_date: type: - string - 'null' format: date description: Data da última venda da pessoa last_departure_date: type: - string - 'null' format: date description: Data do último embarque da pessoa last_return_date: type: - string - 'null' format: date description: Data do último retorno da pessoa last_task_update_at: type: - string - 'null' format: date-time description: Data e hora da última atualização de tarefa da pessoa tax_withholding: type: - object - 'null' description: Retenções de imposto da pessoa jurídica. Ausente (null) para pessoa física. properties: iss: type: boolean description: Indica retenção de ISS (pessoa jurídica) ir: type: boolean description: Indica retenção de IR (pessoa jurídica) pis_cofins_csll: type: boolean description: Indica retenção de PIS/COFINS/CSLL (pessoa jurídica) airline: type: - object - 'null' description: Dados de companhia aérea da pessoa jurídica (fornecedores). Ausente (null) para pessoa física. properties: code: type: - string - 'null' description: Código da companhia aérea (fornecedores). É único entre as pessoas — no cadastro, um código já usado por outra pessoa é recusado. example: '957' number: type: - string - 'null' description: Número da companhia aérea (fornecedores) person_detail: description: Representa a consulta completa de uma pessoa, com os campos da consulta acrescidos dos blocos agrupados e das entidades fracas. allOf: - "$ref": "#/components/schemas/person_summary" - type: object properties: birthplace: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Naturalidade, cidade de nascimento da pessoa física seller: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Vendedor responsável pela pessoa promoter: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Promotor da pessoa (planos operadora) created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que efetuou o cadastro, como referência com id e name contacts: type: array description: Vínculos de contato da pessoa, nos dois sentidos — quem é contato dela e de quem ela é contato. items: type: object properties: role: type: - string - 'null' description: Função registrada no vínculo, que descreve quem é o contato person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- A outra pessoa do vínculo: quem é o contato da pessoa consultada, ou a pessoa de quem ela é o contato labels: type: array description: |- Marcadores atribuídos à pessoa. items: "$ref": "#/components/schemas/entity_reference" custom_fields: type: array description: Campos personalizados preenchidos da pessoa, como pares de definição e valor. items: type: object properties: id: type: integer description: Identificador da definição do campo personalizado. O nome, o tipo e as opções da definição saem da consulta de definições de campos personalizados. example: 123 value: type: - string - number - 'null' description: Valor preenchido do campo personalizado attachments: type: array description: Anexos da pessoa. O download é feito pela URL assinada em download_url. items: "$ref": "#/components/schemas/attachment_summary" credit_cards: type: array description: Cartões de crédito da pessoa. O número completo nunca é devolvido. items: type: object properties: name: type: - string - 'null' description: Nome/apelido do cartão last_digits: type: - string - 'null' description: Quatro últimos dígitos do cartão maxLength: 4 example: '1111' expiration_date: type: - string - 'null' format: date description: Data de validade do cartão issuer: type: - string - 'null' description: Operadora/bandeira do cartão ticket_card: type: - string - 'null' description: Identificação do cartão passagem kandir_law: type: - array - 'null' description: Retenção de impostos por produto, prevista pela Lei 9.430/1996 (art. 64), aplicável a pessoa jurídica. Ausente (null) para pessoa física. items: type: object properties: amount: allOf: - "$ref": "#/components/schemas/kandir_law_tax_group" description: Retenção incidente sobre o valor do produto. boarding_fee: allOf: - "$ref": "#/components/schemas/kandir_law_tax_group" description: Retenção incidente sobre a taxa de embarque. du_rav_fee: allOf: - "$ref": "#/components/schemas/kandir_law_tax_group" description: Retenção incidente sobre a taxa de DU/RAV. service_fee: allOf: - "$ref": "#/components/schemas/kandir_law_tax_group" description: Retenção incidente sobre a taxa de serviço. product: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Produto ao qual os percentuais de retenção se aplicam. kandir_law_tax_group: type: object properties: national: allOf: - "$ref": "#/components/schemas/kandir_law_tax_breakdown" description: Percentuais de retenção para produto nacional. international: allOf: - "$ref": "#/components/schemas/kandir_law_tax_breakdown" description: Percentuais de retenção para produto internacional. kandir_law_tax_breakdown: type: object properties: ir: type: number format: float description: Percentual de retenção de Imposto de Renda (IR). csll: type: number format: float description: Percentual de retenção de CSLL. pis: type: number format: float description: Percentual de retenção de PIS. cofins: type: number format: float description: Percentual de retenção de COFINS. total: type: number format: float description: Percentual total de retenção, soma de IR, CSLL, PIS e COFINS. label: type: object description: Representa um marcador usado para classificar pessoas. properties: id: type: string format: uuid description: Identificador único do marcador no formato UUID example: f9d961b8-ea88-4346-8e52-afe94267417a name: type: string maxLength: 38 description: Nome do marcador example: VIP required: - id - name bill_billet: type: object nullable: true properties: status: type: string enum: - unregistered - pending_registration - waiting_return - registered - rejected - bank_settled - pending_cleared - cleared - pending_update description: Situação da cobrança do boleto. example: registered number: type: integer nullable: true description: Número do boleto. example: 12345 our_number: type: string nullable: true description: Nosso número do boleto. example: '000000012345' amount: type: number format: double description: Valor do boleto. example: 1500.0 demonstrative: type: string nullable: true description: Demonstrativo do boleto. example: Pagável em qualquer banco até o vencimento. rejection_reason: type: string nullable: true description: Motivo da rejeição do registro do boleto, quando houver. example: account: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Conta de cobrança do boleto. bill_check: type: object nullable: true description: Dados do cheque informados no lançamento; nulo quando o pagamento não foi em cheque. properties: number: type: integer nullable: true description: Número do cheque. example: 123456 bank: type: string nullable: true description: Código do banco emissor do cheque. example: '237' document: type: string nullable: true description: CPF ou CNPJ do titular do cheque. example: '03832060901' bill_card: type: object nullable: true description: Dados do cartão informados no lançamento; nulo quando o pagamento não foi em cartão. properties: brand: type: string nullable: true description: Bandeira do cartão. example: MasterCard last_digits: type: string nullable: true description: Últimos dígitos do cartão. example: '4117' authorization: type: string nullable: true description: Código de autorização da transação do cartão. example: '600551159' bill_category: type: object properties: amount: type: number format: double description: Valor da categoria, sempre positivo. O grupo da categoria define se é receita ou despesa. example: 1500.0 category: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Categoria financeira do rateio. bill_apportionment: type: object properties: percentage: type: number format: double description: Percentual da empresa no rateio. example: 50.0 amount: type: number format: double description: Valor correspondente ao percentual da empresa. example: 750.0 company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa do rateio. bill_cost_center: type: object properties: percentage: type: number format: double description: Percentual do centro de custo no rateio. example: 100.0 amount: type: number format: double description: Valor correspondente ao percentual do centro de custo. example: 1500.0 cost_center: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Centro de custo. bill_commission: type: object properties: description: type: string nullable: true description: Descrição da comissão. example: Comissão pacote amount: type: number format: double description: Valor da comissão. example: 150.0 retained_amount: type: number format: double description: Valor retido da comissão. example: 0.0 balance: type: number format: double description: 'Saldo da comissão: o valor menos o valor retido.' example: 150.0 person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que recebe a comissão. bill_item: type: object properties: description: type: string nullable: true description: Descrição do item. example: Diárias de Hospedagem cost_center: type: string nullable: true description: Centro de custo anotado no item, em texto livre. Não tem relação com o cadastro de centros de custo nem com o rateio de centro de custo do lançamento, que sai em apportionments.per_cost_center. example: Alteração de pax checked: type: boolean description: Indica se o item foi conferido. example: false amount: type: number format: double description: Valor do item, com sinal próprio indicando a direção do fluxo daquele item. Como o amount do lançamento é sempre a magnitude, sem sinal, a soma dos itens equivale a +amount quando transaction_kind é credit e a -amount quando é debit. example: -4.0 sale: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Venda a que o item pertence. sale_product: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Produto da venda que originou o item. O identificador aparece no produto correspondente dentro da venda. cvc_statement: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Linha do extrato CVC conciliada com o item. Pode vir preenchida junto com sale_product, quando a conciliação recai sobre um item que já tem produto de venda, ou sozinha, quando o item veio só do extrato. bill_credit_card_item: type: object properties: date: type: string format: date nullable: true description: Data da cobrança. example: '2026-04-08' amount: type: number format: double description: Valor da cobrança, com o sinal cru do movimento (negativo para despesas). example: -717.91 checked: type: boolean description: Indica se a cobrança foi conferida. example: false movement: allOf: - "$ref": "#/components/schemas/entity_reference" description: |- Movimentação que originou essa linha da fatura. bill: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Lançamento liquidado por essa linha da fatura. bill_custom_field: type: object properties: id: type: integer description: Identificador da definição do campo personalizado. O nome, o tipo e as opções da definição saem da consulta de definições de campos personalizados ou de Consultar campo personalizado por ID. example: 123 value: type: - string - 'null' description: Valor do campo personalizado. example: Matriz bill_summary: type: object description: Resumo de uma conta a pagar ou receber, como retornado na consulta. properties: id: type: string format: uuid description: Identificador único do lançamento. example: 212b54b8-27df-4859-80a9-79ad855bcd09 number: type: string nullable: true description: Número sequencial do lançamento. Lançamentos parcelados recebem um sufixo com o número da parcela, como 362-1, por isso o campo é texto e não número. example: '12345' transaction_kind: type: string enum: - credit - debit description: 'Natureza do lançamento. ' example: credit kind: type: string enum: - normal - sale_payment - sale_standalone - vendor_standalone - vendor_invoice - customer_invoice - credit_card_invoice - commission description: 'Origem do lançamento. ' example: customer_invoice description: type: string nullable: true description: Descrição do lançamento. example: Fatura cliente - Janeiro/2026 document: type: string nullable: true description: Documento associado ao lançamento. example: NF 1001 invoice_number: type: integer nullable: true description: Número da fatura, quando o lançamento é uma fatura. example: 42 amount: type: number format: double description: Valor original do lançamento. example: 1500.0 final_amount: type: number format: double description: Valor final do lançamento (após ajustes de categoria). example: 1500.0 issue_date: type: string format: date nullable: true description: Data de emissão. example: '2026-01-10' due_date: type: string format: date nullable: true description: Data de vencimento. example: '2026-02-10' settlement_date: type: string format: date nullable: true description: Data de liquidação; nulo quando o lançamento ainda não foi liquidado. example: created_at: type: string format: date-time nullable: true description: Data e hora de cadastro do lançamento. example: '2026-01-10T13:45:36' canceled: type: boolean description: Indica se o lançamento foi cancelado. example: false checked: type: boolean description: Indica se o lançamento foi conferido. example: false invoice_closed: type: boolean description: Indica se a fatura do lançamento foi fechada. Fatura fechada não recebe mais itens. example: false system_generated: type: boolean description: Indica se o lançamento foi gerado pelo sistema, em vez de cadastrado manualmente. example: true generates_credit: type: boolean description: Indica se o lançamento gera crédito. example: false periodicity: type: string enum: - without_periodicity - weekly - biweekly - monthly - bimonthly - quarterly - semiannual - annual description: Periodicidade da recorrência (without_periodicity, weekly, biweekly, monthly, bimonthly, quarterly, semiannual, annual). example: monthly recurrence_kind: type: string enum: - non_recurrent - recurrent - installment - recurrency_excluded description: Tipo de recorrência (non_recurrent, recurrent, installment, recurrency_excluded). example: installment recurrence_group_id: type: string format: uuid nullable: true description: 'Identificador da série de lançamentos gerada por um parcelamento ou por uma recorrência: todos os lançamentos da mesma série compartilham o valor. Nulo quando o lançamento não pertence a nenhuma série. Não é uma entidade consultável, apenas uma chave de agrupamento.' example: 5f1c8a2e-9b3d-4c7a-8e1f-2a3b4c5d6e7f observations: type: string nullable: true description: Observações do lançamento. example: billet: allOf: - "$ref": "#/components/schemas/bill_billet" description: Dados do boleto; nulo quando o lançamento não tem número de boleto nem conta de cobrança. check: allOf: - "$ref": "#/components/schemas/bill_check" description: Dados do cheque informados no lançamento; nulo quando o pagamento não foi em cheque. card: allOf: - "$ref": "#/components/schemas/bill_card" description: Dados do cartão informados no lançamento; nulo quando o pagamento não foi em cartão. required: - id - transaction_kind - kind - amount - final_amount - canceled bill: type: object description: Detalhe completo de uma conta a pagar ou receber. properties: id: type: string format: uuid description: Identificador único do lançamento. example: 212b54b8-27df-4859-80a9-79ad855bcd09 number: type: string nullable: true description: Número sequencial do lançamento. Lançamentos parcelados recebem um sufixo com o número da parcela, como 362-1, por isso o campo é texto e não número. example: '12345' transaction_kind: type: string enum: - credit - debit description: 'Natureza do lançamento. ' example: credit kind: type: string enum: - normal - sale_payment - sale_standalone - vendor_standalone - vendor_invoice - customer_invoice - credit_card_invoice - commission description: 'Origem do lançamento. ' example: customer_invoice description: type: string nullable: true description: Descrição do lançamento. example: Fatura cliente - Janeiro/2026 document: type: string nullable: true description: Documento associado ao lançamento. example: NF 1001 invoice_number: type: integer nullable: true description: Número da fatura, quando o lançamento é uma fatura. example: 42 amount: type: number format: double description: Valor original do lançamento. example: 1500.0 final_amount: type: number format: double description: Valor final do lançamento (após ajustes de categoria). example: 1500.0 issue_date: type: string format: date nullable: true description: Data de emissão. example: '2026-01-10' due_date: type: string format: date nullable: true description: Data de vencimento. example: '2026-02-10' settlement_date: type: string format: date nullable: true description: Data de liquidação; nulo quando o lançamento ainda não foi liquidado. example: created_at: type: string format: date-time nullable: true description: Data e hora de cadastro do lançamento. example: '2026-01-10T13:45:36' canceled: type: boolean description: Indica se o lançamento foi cancelado. example: false checked: type: boolean description: Indica se o lançamento foi conferido. example: false invoice_closed: type: boolean description: Indica se a fatura do lançamento foi fechada. Fatura fechada não recebe mais itens. example: false system_generated: type: boolean description: Indica se o lançamento foi gerado pelo sistema, em vez de cadastrado manualmente. example: true generates_credit: type: boolean description: Indica se o lançamento gera crédito. example: false periodicity: type: string enum: - without_periodicity - weekly - biweekly - monthly - bimonthly - quarterly - semiannual - annual description: Periodicidade da recorrência (without_periodicity, weekly, biweekly, monthly, bimonthly, quarterly, semiannual, annual). example: monthly recurrence_kind: type: string enum: - non_recurrent - recurrent - installment - recurrency_excluded description: Tipo de recorrência (non_recurrent, recurrent, installment, recurrency_excluded). example: installment recurrence_group_id: type: string format: uuid nullable: true description: 'Identificador da série de lançamentos gerada por um parcelamento ou por uma recorrência: todos os lançamentos da mesma série compartilham o valor. Nulo quando o lançamento não pertence a nenhuma série. Não é uma entidade consultável, apenas uma chave de agrupamento.' example: 5f1c8a2e-9b3d-4c7a-8e1f-2a3b4c5d6e7f observations: type: string nullable: true description: Observações do lançamento. example: billet: allOf: - "$ref": "#/components/schemas/bill_billet" description: Dados do boleto; nulo quando o lançamento não tem número de boleto nem conta de cobrança. check: allOf: - "$ref": "#/components/schemas/bill_check" description: Dados do cheque informados no lançamento; nulo quando o pagamento não foi em cheque. card: allOf: - "$ref": "#/components/schemas/bill_card" description: Dados do cartão informados no lançamento; nulo quando o pagamento não foi em cartão. sale: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Venda que originou o lançamento. person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa vinculada ao lançamento (cliente ou fornecedor). company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa dona do lançamento. account: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Conta de previsão (bancária) vinculada ao lançamento. payment_method: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Forma de pagamento efetiva: a da liquidação tem precedência sobre a planejada. Nulo quando não há forma. operation: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Operação própria vinculada ao lançamento. invoice_rule: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Regra de faturamento que originou o lançamento. created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Usuário que cadastrou o lançamento. movements: type: array description: |- Movimentações de liquidação do lançamento. items: "$ref": "#/components/schemas/entity_reference" apportionments: type: object description: Rateio do valor do lançamento, decomposto por empresa e por centro de custo. properties: per_company: type: array description: Rateio entre empresas. items: "$ref": "#/components/schemas/bill_apportionment" per_cost_center: type: array description: Rateio entre centros de custo. items: "$ref": "#/components/schemas/bill_cost_center" custom_fields: type: array description: Campos personalizados preenchidos no lançamento. items: "$ref": "#/components/schemas/bill_custom_field" attachments: type: array description: Anexos do lançamento, com link temporário de download. items: "$ref": "#/components/schemas/attachment_summary" categories: type: array description: Rateio do lançamento por categoria financeira. items: "$ref": "#/components/schemas/bill_category" commissions: type: array description: Comissões vinculadas ao lançamento. items: "$ref": "#/components/schemas/bill_commission" items: type: array description: Itens que compõem o lançamento. items: "$ref": "#/components/schemas/bill_item" credit_card_items: type: array description: Itens da fatura de cartão (cobranças consolidadas); preenchido quando kind = credit_card_invoice, array vazio caso contrário. items: "$ref": "#/components/schemas/bill_credit_card_item" required: - id - transaction_kind - kind - amount - final_amount - canceled bills_response: type: object description: Resposta contendo a lista de contas a pagar e receber com informações de paginação. properties: data: type: array description: Array contendo as contas a pagar e receber da página atual. items: "$ref": "#/components/schemas/bill_summary" pagination: "$ref": "#/components/schemas/pagination" account_movement_check: type: object nullable: true properties: number: type: integer nullable: true description: Número do cheque example: 4567 bank: type: string nullable: true description: Código de compensação do banco do cheque example: '341' document: type: string nullable: true description: CPF ou CNPJ do emitente do cheque, apenas dígitos example: '03832060901' account_movement_card: type: object nullable: true properties: brand: type: string nullable: true description: Operadora do cartão example: MasterCard last_digits: type: string nullable: true description: Últimos dígitos do cartão example: '4117' authorization: type: string nullable: true description: Código de autorização da operadora example: '600551159' account_movement_summary: type: object description: Resumo de uma movimentação de conta, como retornado na consulta. properties: id: type: string format: uuid description: Identificador único da movimentação example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 date: type: string format: date nullable: true description: Data do movimento na conta example: '2026-01-26' amount: type: number format: double description: Valor do movimento, negativo quando é saída da conta example: -9112.17 transaction_kind: type: string enum: - credit - debit description: |- ' Sentido do movimento, derivado do sinal do valor. ' example: debit description: type: string nullable: true description: 'Observação da própria movimentação: o texto informado na transferência entre contas ou a identificação da parcela, quando o pagamento em cartão de crédito foi parcelado. Não é a descrição da conta a pagar ou a receber liquidada, que vem no recurso referenciado em bill' example: Repasse diário check: allOf: - "$ref": "#/components/schemas/account_movement_check" description: Dados do cheque, nulo quando o movimento não foi feito em cheque card: allOf: - "$ref": "#/components/schemas/account_movement_card" description: Dados do cartão, nulo quando o movimento não foi feito em cartão. Número completo, código de segurança, validade e nome do portador nunca são retornados required: - id - amount - transaction_kind account_movement: type: object description: Detalhe completo de uma movimentação de conta. properties: id: type: string format: uuid description: Identificador único da movimentação example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 date: type: string format: date nullable: true description: Data do movimento na conta example: '2026-01-26' amount: type: number format: double description: Valor do movimento, negativo quando é saída da conta example: -9112.17 transaction_kind: type: string enum: - credit - debit description: |- ' Sentido do movimento, derivado do sinal do valor. ' example: debit description: type: string nullable: true description: 'Observação da própria movimentação: o texto informado na transferência entre contas ou a identificação da parcela, quando o pagamento em cartão de crédito foi parcelado. Não é a descrição da conta a pagar ou a receber liquidada, que vem no recurso referenciado em bill' example: Repasse diário check: allOf: - "$ref": "#/components/schemas/account_movement_check" description: Dados do cheque, nulo quando o movimento não foi feito em cheque card: allOf: - "$ref": "#/components/schemas/account_movement_card" description: Dados do cartão, nulo quando o movimento não foi feito em cartão. Número completo, código de segurança, validade e nome do portador nunca são retornados account: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Conta em que o movimento foi lançado payment_method: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Forma de pagamento do movimento bill: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Conta a pagar ou a receber liquidada pelo movimento credit_card_invoice: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Fatura de cartão de crédito que o movimento compõe counterpart_account: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Conta do outro lado da transferência entre contas: a de destino quando esta movimentação é a saída, a de origem quando é a entrada. Nula quando a movimentação não é transferência required: - id - amount - transaction_kind - account account_movements_response: type: object description: Resposta contendo a lista de movimentações com informações de paginação. properties: data: type: array description: Array contendo as movimentações da página atual. items: "$ref": "#/components/schemas/account_movement_summary" pagination: "$ref": "#/components/schemas/pagination" refund_summary: type: object description: 'Representa um reembolso de venda na consulta: apenas os campos do próprio reembolso.' properties: id: &392 type: string format: uuid description: Identificador único do reembolso example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 refund_type: &393 type: string enum: - customer - vendor description: |- ' Lado do reembolso. ' example: vendor amount: &394 type: number format: double description: Valor do reembolso example: -91.36 description: &395 type: string nullable: true description: Descrição do reembolso example: Reembolso Incentivo issue_date: &396 type: string format: date nullable: true description: Data de emissão do reembolso example: '2021-06-16' due_date: &397 type: string format: date nullable: true description: Vencimento do reembolso example: '2021-06-17' required: - id - refund_type - amount refund: type: object description: Representa um reembolso de venda com as referências para as entidades relacionadas. properties: id: *392 refund_type: *393 amount: *394 description: *395 issue_date: *396 due_date: *397 sale: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Venda reembolsada sale_product: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Produto da venda que originou o reembolso. O identificador aparece no produto correspondente dentro da venda person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Cliente ou fornecedor/representante do reembolso company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa do reembolso bill: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Conta a pagar ou a receber do reembolso, nula enquanto ele não está faturado required: - id - refund_type - amount - sale - sale_product - person - company refunds_response: type: object description: Resposta contendo a lista de reembolsos com informações de paginação. properties: data: type: array description: Array contendo os reembolsos da página atual. items: "$ref": "#/components/schemas/refund_summary" pagination: "$ref": "#/components/schemas/pagination" cvc_statement_summary: type: object description: 'Representa um recibo do extrato CVC na consulta: apenas os campos do próprio recibo.' properties: id: &398 type: string format: uuid description: Identificador único do recibo do extrato CVC example: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 receipt_number: &399 type: string nullable: true description: Número do recibo, nulo no movimento que não se refere a um recibo example: '89930000112199' movement_date: &400 type: string format: date description: Data da movimentação example: '2019-12-26' sale_date: &401 type: string format: date-time nullable: true description: Data da venda registrada no recibo example: '2019-12-26T18:00:00' cancellation_date: &402 type: string format: date-time nullable: true description: Data de cancelamento registrada no recibo example: boarding_date: &403 type: string format: date nullable: true description: Data de embarque registrada no recibo example: '2020-09-01' return_date: &404 type: string format: date nullable: true description: Data de retorno registrada no recibo example: '2020-09-09' product_name: &405 type: string nullable: true description: 'Nome do produto como veio no extrato da CVC, em texto livre. Não é o produto cadastrado no sistema: para chegar ao produto da venda, use a referência sale_product' example: Excursões Internacionais package_name: &406 type: string nullable: true description: Nome do pacote como veio no extrato da CVC, em texto livre example: SANTIAGO total_payments: &407 type: number format: double description: Total dos lançamentos do movimento example: 347.89 total_taxes: &408 type: number format: double description: Total das taxas do movimento example: 0.0 total_discounts: &409 type: number format: double description: Total dos descontos do movimento example: 0.0 total_abatement: &410 type: number format: double description: Total dos abatimentos do movimento example: 0.0 calculated_commission: &411 type: number format: double description: Comissão calculada do movimento example: 111.33 retained_commission: &412 type: number format: double description: Comissão retida do movimento example: 0.0 intermediary_commission: &413 type: number format: double description: Comissão do intermediário no movimento example: 0.0 deposit: &414 type: number format: double description: Valor do depósito do movimento example: 34.78 opfax: &415 type: number format: double description: Valor do movimento em OPFAX example: 0.0 opfax_balance: &416 type: number format: double description: Saldo consolidado do par de recibos gerado quando o lançamento é em OPFAX parcial, gravado igual nas duas linhas. Não é o valor do movimento em OPFAX, que vem em opfax example: 0.0 balance: &417 type: number format: double description: Saldo do movimento example: 76.55 imported: &418 type: boolean description: Indica que o registro veio da importação do extrato example: true edited: &419 type: boolean description: Indica que o registro foi alterado manualmente depois de importado example: false checked: &420 type: boolean description: Marca de conferência do recibo example: false deleted: &421 type: boolean description: Indica que o recibo foi excluído. Sempre falso na consulta, que não retorna recibo excluído; na consulta por ID, é verdadeiro quando o recibo foi excluído example: false created_at: &422 type: string format: date-time nullable: true description: Data e hora em que o registro foi cadastrado example: '2019-12-30T08:45:48' required: - id - movement_date - balance - deleted cvc_statement: type: object description: Representa um recibo do extrato CVC com o tipo do movimento e as referências para as entidades relacionadas. properties: id: *398 receipt_number: *399 movement_date: *400 sale_date: *401 cancellation_date: *402 boarding_date: *403 return_date: *404 product_name: *405 package_name: *406 total_payments: *407 total_taxes: *408 total_discounts: *409 total_abatement: *410 calculated_commission: *411 retained_commission: *412 intermediary_commission: *413 deposit: *414 opfax: *415 opfax_balance: *416 balance: *417 imported: *418 edited: *419 checked: *420 deleted: *421 created_at: *422 movement_kind: type: object description: Tipo do movimento, com o nome como a CVC o classifica no extrato properties: name: type: string description: Nome do tipo do movimento example: BAIXA DE RECIBO required: - name company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa do recibo contractor: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que consta como contratante no recibo seller: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que consta como vendedor no recibo, que não é necessariamente uma pessoa cadastrada como vendedor intermediary: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que consta como intermediário no recibo sale: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Venda vinculada ao recibo, nula quando o movimento não tem venda sale_product: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Produto da venda vinculado ao recibo. O identificador aparece no produto correspondente dentro da venda nf: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Nota fiscal emitida para o recibo created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cadastrou o registro required: - id - movement_date - balance - deleted - movement_kind - company cvc_statements_response: type: object description: Resposta contendo a lista de recibos do extrato CVC com informações de paginação. properties: data: type: array description: Array contendo os recibos da página atual. items: "$ref": "#/components/schemas/cvc_statement_summary" pagination: "$ref": "#/components/schemas/pagination" nf_item: type: object description: Representa um item da nota fiscal. properties: description: type: string description: Descrição do item da nota fiscal example: Prestação de serviço de intermediação de venda de Passagem Aérea amount: type: number format: double description: Valor total do item example: 113.48 service_amount: type: number format: double description: Valor dos serviços do item example: 2613.82 approximate_taxes_amount: type: number format: double description: Valor aproximado dos tributos do item example: 0.0 required: - description - amount nf_summary: type: object description: 'Representa uma nota fiscal na consulta: apenas os campos da própria nota.' properties: id: &423 type: string format: uuid description: Identificador único da nota fiscal example: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 number: &424 type: integer nullable: true description: Número da nota fiscal, nulo enquanto ela não recebeu numeração example: 982677 series: &425 type: string nullable: true description: Série da nota fiscal example: '1' issue_date: &426 type: string format: date description: Data de emissão da nota fiscal example: '2023-01-13' status: &427 type: string enum: - unissued - issued - processing - processing_cancellation - awaiting_processing - canceled - awaiting_issue - awaiting_cancellation description: |- ' Situação da nota fiscal. ' example: issued operation_nature: &428 type: string description: Natureza da operação declarada na nota fiscal example: Prestação de Serviço cfop: &429 type: string nullable: true description: Código Fiscal de Operações e Prestações (CFOP) da nota fiscal example: '5933' nbs_code: &430 type: string nullable: true description: Código da Nomenclatura Brasileira de Serviços (NBS) da nota fiscal example: 1.2004.10.00 document: &431 type: string nullable: true description: Documento gravado na nota fiscal, usado para conciliá-la com o documento de origem example: '9572810403321' manual_emission: &432 type: boolean description: Indica que a nota foi emitida manualmente, com o número da NFS-e informado por quem a emitiu example: false amount: &433 type: number format: double description: Valor total da nota fiscal, base de cálculo dos tributos example: 113.48 service_amount: &434 type: number format: double description: Valor total dos serviços da nota fiscal example: 2613.82 net_amount: &435 type: number format: double description: 'Valor líquido da nota fiscal: o valor total menos as retenções de PIS, COFINS, IR, CSLL e do ISS retido na fonte' example: 113.48 approximate_taxes_percentage: &436 type: number format: double description: Percentual aproximado dos tributos da nota fiscal example: 0.0 approximate_taxes_amount: &437 type: number format: double description: Valor aproximado dos tributos da nota fiscal example: 0.0 observations: &438 type: string nullable: true description: Observações da nota fiscal example: Nota emitida conforme contrato 4471. printed_at: &439 type: string format: date-time nullable: true description: Data e hora em que a nota fiscal foi impressa ou gerada example: '2023-02-09T17:26:29' canceled_at: &440 type: string format: date-time nullable: true description: Data e hora do cancelamento da nota fiscal example: '2023-03-02T09:14:52' created_at: &441 type: string format: date-time nullable: true description: Data e hora do cadastro da nota fiscal example: '2023-02-09T17:16:14' recipient: &442 type: object description: Dados do tomador gravados na nota fiscal properties: kind: &580 type: string enum: - payer - supplier - representative description: |- ' Papel do tomador na venda que originou a nota. ' example: payer name: &581 type: string description: Nome ou razão social do tomador example: Esferatur Passagens e Turismo Ltda cpf_cnpj: &582 type: string nullable: true description: CPF ou CNPJ do tomador, apenas dígitos example: '76530260000130' state_inscription: &583 type: string nullable: true description: Inscrição estadual do tomador example: '2536987410' city_inscription: &584 type: string nullable: true description: Inscrição municipal do tomador example: '1023456' postal_code: &585 type: string nullable: true description: CEP do tomador, apenas dígitos example: '89010300' street: &586 type: string nullable: true description: Logradouro do tomador example: Alameda Rio Branco street_number: &587 type: string nullable: true description: Número do endereço do tomador example: '238' neighborhood: &588 type: string nullable: true description: Bairro do tomador example: Jardim Blumenau additional_info: &589 type: string nullable: true description: Complemento do endereço do tomador example: 1º andar phone: &590 type: string nullable: true description: Telefone do tomador example: "(47) 3221-0100" email: &591 type: string nullable: true description: E-mail do tomador; pode conter vários endereços separados por ponto e vírgula example: financeiro@esferatur.com.br foreign: &592 type: boolean description: Indica que o tomador é estrangeiro example: false foreign_document: &593 type: string nullable: true description: Documento do tomador estrangeiro example: AB1234567 city: &594 allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Cidade do tomador taxes: &443 type: object description: Retenções e tributos da nota fiscal properties: retain_iss: &595 type: boolean description: Indica retenção de ISS na nota fiscal example: false retain_ir: &596 type: boolean description: Indica retenção de IR na nota fiscal example: false retain_pis_cofins_csll: &597 type: boolean description: Indica retenção de PIS, COFINS e CSLL na nota fiscal example: false iss_percentage: &598 type: number format: double description: Percentual de ISS aplicado na nota fiscal example: 5.0 iss_amount: &599 type: number format: double description: Valor de ISS da nota fiscal example: 5.67 pis_percentage: &600 type: number format: double description: Percentual de PIS aplicado na nota fiscal example: 0.0 pis_amount: &601 type: number format: double description: Valor de PIS da nota fiscal example: 0.0 cofins_percentage: &602 type: number format: double description: Percentual de COFINS aplicado na nota fiscal example: 0.0 cofins_amount: &603 type: number format: double description: Valor de COFINS da nota fiscal example: 0.0 ir_percentage: &604 type: number format: double description: Percentual de IR aplicado na nota fiscal example: 0.0 ir_amount: &605 type: number format: double description: Valor de IR da nota fiscal example: 0.0 csll_percentage: &606 type: number format: double description: Percentual de CSLL aplicado na nota fiscal example: 0.0 csll_amount: &607 type: number format: double description: Valor de CSLL da nota fiscal example: 0.0 nfse: &444 type: object description: Dados da NFS-e correspondente à nota fiscal properties: number: &608 type: string nullable: true description: Número da NFS-e example: '13299' batch: &609 type: string nullable: true description: Lote em que a NFS-e foi transmitida example: '8471' protocol: &610 type: string nullable: true description: Protocolo devolvido na transmissão da NFS-e example: '202302091716140001' verification_code: &611 type: string nullable: true description: Código de verificação da NFS-e example: BFLXB50A processed_at: &612 type: string format: date-time nullable: true description: Data e hora do processamento da NFS-e example: '2023-02-09T17:26:29' errors: &613 type: string nullable: true description: Erro devolvido no processamento da NFS-e, nulo quando não houve erro example: Inscricao municipal do prestador nao encontrada. required: - id - issue_date - status - operation_nature - recipient nf: type: object description: Representa uma nota fiscal com os itens e as referências para as entidades relacionadas. properties: id: *423 number: *424 series: *425 issue_date: *426 status: *427 operation_nature: *428 cfop: *429 nbs_code: *430 document: *431 manual_emission: *432 amount: *433 service_amount: *434 net_amount: *435 approximate_taxes_percentage: *436 approximate_taxes_amount: *437 observations: *438 printed_at: *439 canceled_at: *440 created_at: *441 recipient: *442 taxes: *443 nfse: *444 person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa cadastrada a que a nota foi emitida. Os dados do tomador são os do bloco recipient, gravados na nota; o cadastro pode ter mudado desde a emissão. Nula quando o tomador foi informado apenas na nota company: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Empresa emitente da nota fiscal sale_product: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Produto da venda que originou a nota fiscal. O identificador aparece no produto correspondente dentro da venda sale: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Venda que originou a nota fiscal created_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cadastrou a nota fiscal canceled_by: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Pessoa que cancelou a nota fiscal, nula enquanto a nota não foi cancelada items: type: array description: Itens da nota fiscal items: "$ref": "#/components/schemas/nf_item" required: - id - issue_date - status - operation_nature - recipient - company - items nfs_response: type: object description: Resposta contendo a lista de notas fiscais com informações de paginação. properties: data: type: array description: Array contendo as notas fiscais da página atual. items: "$ref": "#/components/schemas/nf_summary" pagination: "$ref": "#/components/schemas/pagination" log_summary: type: object description: 'Representa uma linha do histórico na consulta: apenas os campos da própria linha.' properties: id: &445 type: string format: uuid description: Identificador único da linha do histórico example: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 kind: &446 type: string enum: - insertion - edition - deletion - custom - export description: |- ' Ação registrada. ' example: edition origin: &447 type: string nullable: true description: Origem da alteração. O conjunto é aberto e cresce conforme novas telas passam a registrar histórico, então trate o valor como texto livre. Os valores conhecidos são cidade, conta, conta_cobranca, conta_movimento, conta_receber, cvc_extrato, financeiro, financeiro_categoria, financeiro_item, nota_fiscal, pessoa, regra_nota_fiscal, tarefa, usuario, vendas, vendas_produtos e viagem. Uma exportação de relatório grava o nome da tela no lugar do recurso, como em vendas por produto. Nulo em registros antigos, gravados antes de a origem passar a ser preenchida. example: financeiro_categoria description: &448 type: string description: Descrição da alteração, no texto gravado no momento em que ela ocorreu. Traz uma linha por campo alterado, separadas por quebra de linha CRLF, que no JSON chega escapada como \r\n. No log gravado por uma requisição da API, a primeira linha nomeia a ação e a credencial que a fez, e os campos alterados vêm nas linhas seguintes example: Valor de "10" para "20" created_at: &449 type: string format: date-time description: Data e hora em que a alteração foi registrada example: '2026-08-05T09:12:33' required: - id - kind - description - created_at log: type: object description: Representa uma linha do histórico com as referências para o autor e para o registro auditado. properties: id: *445 kind: *446 origin: *447 description: *448 created_at: *449 person: allOf: - "$ref": "#/components/schemas/entity_reference" nullable: true description: |- Autor da alteração. Nulo quando o registro foi gerado pelo sistema ou pela API resource: allOf: - "$ref": "#/components/schemas/entity_reference" description: 'Registro auditado. É sempre o registro principal: em uma alteração de categoria ou de item de um lançamento financeiro o identificador é o do lançamento, e em uma alteração de produto da venda é o da venda' required: - id - kind - description - created_at - resource logs_response: type: object description: Resposta contendo a lista de logs com informações de paginação. properties: data: type: array description: Array contendo os logs da página atual. items: "$ref": "#/components/schemas/log_summary" pagination: "$ref": "#/components/schemas/pagination" custom_field_definition: type: object description: 'Representa a definição de um campo personalizado: o identificador e os metadados do campo.' properties: id: type: integer description: Identificador único do campo personalizado. example: 123 resource: type: string enum: - sales - travels - people - bills - tasks description: Recurso (origem) do campo, no vocabulário público da API. example: sales name: type: string description: Nome do campo personalizado. example: Centro de custo kind: type: string enum: - numeric - currency - text - date - choices description: |- ' Tipo do valor aceito pelo campo. ' example: choices required: type: boolean description: Indica se o campo é obrigatório no recurso ao qual ele está associado. example: true active: type: boolean description: Indica se o campo está ativo. example: true choices: type: array items: type: string description: Opções cadastradas de um campo do tipo lista (choices). Vazio nos demais tipos. example: - Matriz - Filial required: - id - resource - name - kind - required - active - choices custom_fields_response: type: object description: Resposta contendo a lista de campos personalizados com informações de paginação. properties: data: type: array description: Array contendo os campos personalizados da página atual. items: "$ref": "#/components/schemas/custom_field_definition" pagination: "$ref": "#/components/schemas/pagination" responses: internal_server_error: description: Ocorreu um erro interno em nosso servidor. Tente novamente e, se o erro persistir, entre em contato com nosso suporte em suporte@monde.com.br. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - Ocorreu um erro interno em nosso servidor. Tente novamente e, se o erro persistir, entre em contato com nosso suporte. unauthorized: description: Credenciais de acesso não são válidas. Solicite credenciais válidas diretamente com a agência de viagens. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - Credenciais de acesso não são válidas. forbidden: description: A requisição foi recusada, e a mensagem devolvida em errors diz por quê. São três causas, e o remédio de cada uma é diferente — a empresa em que a credencial trabalha não tem licença de API, a licença contratada é somente leitura e a ação grava, ou a credencial não tem a permissão exigida no recurso. A falta de licença é sempre relatada antes da falta de permissão. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - Você não possui licença de API. Contate o nosso time de suporte para mais informações. - Sua licença de API não dá acesso a esta ação. - Você não tem permissão para executar essa ação. bad_request: description: Não foi possível processar a requisição devido a um erro de sintaxe ou formatação. Verifique se o corpo da requisição é um JSON válido. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - Não foi possível processar a requisição devido a um erro de sintaxe ou formatação. Certifique-se de que todos os parâmetros, como o corpo da requisição, estão corretos antes de tentar novamente. conflict: description: Requisição conflitante. Retornado quando uma requisição com a mesma chave de idempotência já está sendo processada. content: application/json: schema: type: object properties: errors: type: array items: type: string examples: - Uma requisição com esta chave de idempotência já está sendo processada. Aguarde a conclusão antes de tentar novamente. too_many_requests: description: Limite de requisições excedido. Aguarde um momento antes de tentar novamente. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - Limite de requisições excedido. Aguarde um momento antes de tentar novamente. unsupported_media_type: description: O cabeçalho Content-Type da requisição especificou um tipo de mídia que não é suportado pela API. Certifique-se de que a requisição esteja utilizando application/json. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - O cabeçalho Content-Type da requisição especificou um tipo de mídia que não é suportado pela API. Certifique-se de que a requisição esteja utilizando application/json. unprocessable_content: description: Ocorreu um erro de validação. Verifique as mensagens de erro retornadas para mais detalhes. content: application/json: schema: type: object properties: errors: type: array items: type: string not_found: description: O recurso solicitado não foi encontrado. Verifique se o ID fornecido está correto. content: application/json: schema: type: object properties: errors: type: array items: type: string default: - O recurso solicitado não foi encontrado. product: description: Produto retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/product" examples: product_detail: summary: Produto com fornecimentos "$ref": "#/components/examples/product_detail" products: description: Lista de produtos retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de produtos com informações de paginação. properties: data: type: array description: Array contendo os produtos da página atual. items: "$ref": "#/components/schemas/product_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_products: summary: Todos os produtos "$ref": "#/components/examples/all_products" filtered_products: summary: Produtos filtrados "$ref": "#/components/examples/filtered_products" paginated_products: summary: Produtos paginados "$ref": "#/components/examples/paginated_products" sale: description: Venda retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/sale_detail" examples: all_products_sale: summary: Venda com todos os produtos "$ref": "#/components/examples/all_products_sale_single" sales: description: Lista de vendas retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/sales_response" examples: all_products_sales: summary: Venda com todos os produtos "$ref": "#/components/examples/all_products_sale_list" cabins: description: Lista de cabines retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de cabines com informações de paginação. properties: data: type: array description: Array contendo as cabines da página atual. items: "$ref": "#/components/schemas/cabin" pagination: "$ref": "#/components/schemas/pagination" examples: all_cabins: summary: Todas as cabines "$ref": "#/components/examples/all_cabins" paginated_cabins: summary: Cabines paginadas "$ref": "#/components/examples/paginated_cabins" ships: description: Lista de navios retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de navios com informações de paginação. properties: data: type: array description: Array contendo os navios da página atual. items: "$ref": "#/components/schemas/ship" pagination: "$ref": "#/components/schemas/pagination" examples: all_ships: summary: Todos os navios "$ref": "#/components/examples/all_ships" paginated_ships: summary: Navios paginados "$ref": "#/components/examples/paginated_ships" cost_center: description: Centro de custo retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/cost_center" examples: cost_center: summary: Centro de custo administrativo "$ref": "#/components/examples/cost_center" cost_centers: description: Lista de centros de custo retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de centros de custo com informações de paginação. properties: data: type: array description: Array contendo os centros de custo da página atual. items: "$ref": "#/components/schemas/cost_center" pagination: "$ref": "#/components/schemas/pagination" examples: all_cost_centers: summary: Todos os centros de custo "$ref": "#/components/examples/all_cost_centers" paginated_cost_centers: summary: Centros de custo paginados "$ref": "#/components/examples/paginated_cost_centers" currency: description: Moeda retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/currency" examples: currency: summary: Real "$ref": "#/components/examples/currency" currencies: description: Lista de moedas retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de moedas com informações de paginação. properties: data: type: array description: Array contendo as moedas da página atual. items: "$ref": "#/components/schemas/currency" pagination: "$ref": "#/components/schemas/pagination" examples: all_currencies: summary: Todas as moedas "$ref": "#/components/examples/all_currencies" paginated_currencies: summary: Moedas paginadas "$ref": "#/components/examples/paginated_currencies" category: description: Categoria retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/category" examples: category: summary: Categoria "$ref": "#/components/examples/category" categories: description: Lista de categorias retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de categorias com informações de paginação. properties: data: type: array description: Array contendo as categorias da página atual. items: "$ref": "#/components/schemas/category_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_categories: summary: Todas as categorias "$ref": "#/components/examples/all_categories" paginated_categories: summary: Categorias paginadas "$ref": "#/components/examples/paginated_categories" city: description: Cidade retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/city" examples: city: summary: Cidade "$ref": "#/components/examples/city" cities: description: Lista de cidades retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de cidades com informações de paginação. properties: data: type: array description: Array contendo as cidades da página atual. items: "$ref": "#/components/schemas/city_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_cities: summary: Todas as cidades "$ref": "#/components/examples/all_cities" paginated_cities: summary: Cidades paginadas "$ref": "#/components/examples/paginated_cities" seller: description: Vendedor retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/seller" examples: seller: summary: Vendedor ativo "$ref": "#/components/examples/seller" sellers: description: Lista de vendedores retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de vendedores com informações de paginação. properties: data: type: array description: Array contendo os vendedores da página atual. items: "$ref": "#/components/schemas/seller_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_sellers: summary: Todos os vendedores "$ref": "#/components/examples/all_sellers" paginated_sellers: summary: Vendedores paginados "$ref": "#/components/examples/paginated_sellers" payment_method: description: Forma de pagamento retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/payment_method" examples: payment_method: summary: Dinheiro "$ref": "#/components/examples/payment_method" payment_methods: description: Lista de formas de pagamento retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de formas de pagamento com informações de paginação. properties: data: type: array description: Array contendo as formas de pagamento da página atual. items: "$ref": "#/components/schemas/payment_method" pagination: "$ref": "#/components/schemas/pagination" examples: all_payment_methods: summary: Todas as formas de pagamento "$ref": "#/components/examples/all_payment_methods" paginated_payment_methods: summary: Formas de pagamento paginadas "$ref": "#/components/examples/paginated_payment_methods" account: description: Conta ou cartão retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/account" examples: account: summary: Cartão de crédito "$ref": "#/components/examples/account" accounts: description: Lista de contas e cartões retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de contas e cartões com informações de paginação. properties: data: type: array description: Array contendo as contas e cartões da página atual. items: "$ref": "#/components/schemas/account_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_accounts: summary: Todas as contas e cartões "$ref": "#/components/examples/all_accounts" paginated_accounts: summary: Contas e cartões paginados "$ref": "#/components/examples/paginated_accounts" nf_rule: description: Regra da nota fiscal retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/nf_rule" examples: nf_rule: summary: Regra padrão de pacotes "$ref": "#/components/examples/nf_rule" nf_rules: description: Lista de regras da nota fiscal retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de regras da nota fiscal com informações de paginação. properties: data: type: array description: Array contendo as regras da página atual. items: "$ref": "#/components/schemas/nf_rule_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_nf_rules: summary: Todas as regras da nota fiscal "$ref": "#/components/examples/all_nf_rules" paginated_nf_rules: summary: Regras da nota fiscal paginadas "$ref": "#/components/examples/paginated_nf_rules" task: description: Tarefa retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/task" examples: task_detail: summary: Tarefa com histórico e campos personalizados "$ref": "#/components/examples/task_detail" tasks: description: Lista de tarefas retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de tarefas com informações de paginação. properties: data: type: array description: Array contendo as tarefas da página atual. items: "$ref": "#/components/schemas/task_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_tasks: summary: Todas as tarefas "$ref": "#/components/examples/all_tasks" paginated_tasks: summary: Tarefas paginadas "$ref": "#/components/examples/paginated_tasks" task_categories: description: Lista de categorias de tarefas retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de categorias de tarefas com informações de paginação. properties: data: type: array description: Array contendo as categorias de tarefas da página atual. items: "$ref": "#/components/schemas/task_category" pagination: "$ref": "#/components/schemas/pagination" examples: all_task_categories: summary: Todas as categorias de tarefas "$ref": "#/components/examples/all_task_categories" task_category: description: Categoria de tarefa retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/task_category" examples: task_category: summary: Categoria de tarefa "$ref": "#/components/examples/task_category" travels: description: Lista de viagens retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de viagens com informações de paginação. properties: data: type: array description: Array contendo as viagens da página atual. items: "$ref": "#/components/schemas/travel_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_travels: summary: Todas as viagens "$ref": "#/components/examples/all_travels" paginated_travels: summary: Viagens paginadas "$ref": "#/components/examples/paginated_travels" travel: description: Viagem retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/travel" examples: travel: summary: Detalhe da viagem "$ref": "#/components/examples/travel" quote: description: Orçamento retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/quote" examples: quote: summary: Orçamento de lua de mel "$ref": "#/components/examples/quote" quotes: description: Lista de orçamentos retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de orçamentos com informações de paginação. properties: data: type: array description: Array contendo os orçamentos da página atual. items: "$ref": "#/components/schemas/quote_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_quotes: summary: Todos os orçamentos "$ref": "#/components/examples/all_quotes" paginated_quotes: summary: Orçamentos paginados "$ref": "#/components/examples/paginated_quotes" invoice_rule: description: Regra de faturamento retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/invoice_rule" examples: invoice_rule: summary: Faturamento semanal aéreo "$ref": "#/components/examples/invoice_rule" invoice_rules: description: Lista de regras de faturamento retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de regras de faturamento com informações de paginação. properties: data: type: array description: Array contendo as regras da página atual. items: "$ref": "#/components/schemas/invoice_rule_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_invoice_rules: summary: Todas as regras de faturamento "$ref": "#/components/examples/all_invoice_rules" paginated_invoice_rules: summary: Regras de faturamento paginadas "$ref": "#/components/examples/paginated_invoice_rules" integration: description: Integração retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/integration" examples: integration: summary: Integração ativa "$ref": "#/components/examples/integration" integrations: description: Lista de integrações retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de integrações com informações de paginação. properties: data: type: array description: Array contendo as integrações da página atual. items: "$ref": "#/components/schemas/integration_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_integrations: summary: Todas as integrações "$ref": "#/components/examples/all_integrations" paginated_integrations: summary: Integrações paginadas "$ref": "#/components/examples/paginated_integrations" people: description: Lista de pessoas retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de pessoas com informações de paginação. properties: data: type: array description: Array contendo as pessoas da página atual. items: "$ref": "#/components/schemas/person_summary" pagination: "$ref": "#/components/schemas/pagination" examples: all_people: summary: Todas as pessoas "$ref": "#/components/examples/all_people" paginated_people: summary: Pessoas paginadas "$ref": "#/components/examples/paginated_people" person: description: Pessoa retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/person_detail" examples: person_detail: summary: Consulta de pessoa por ID "$ref": "#/components/examples/person_detail" label: description: Marcador retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/label" examples: label: summary: Marcador VIP "$ref": "#/components/examples/label" labels: description: Lista de marcadores retornada com sucesso. content: application/json: schema: type: object description: Resposta contendo lista de marcadores com informações de paginação. properties: data: type: array description: Array contendo os marcadores da página atual. items: "$ref": "#/components/schemas/label" pagination: "$ref": "#/components/schemas/pagination" examples: all_labels: summary: Todos os marcadores "$ref": "#/components/examples/all_labels" paginated_labels: summary: Marcadores paginados "$ref": "#/components/examples/paginated_labels" bill: description: Conta a pagar ou receber retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/bill" examples: receivable_bill: summary: Conta a receber (fatura de cliente) "$ref": "#/components/examples/receivable_bill_single" vendor_invoice_bill: summary: Conta a pagar (fatura de fornecedor) "$ref": "#/components/examples/vendor_invoice_bill_single" card_invoice_bill: summary: Conta a pagar (fatura de cartão) "$ref": "#/components/examples/card_invoice_bill_single" commission_bill: summary: Conta a pagar (comissão) "$ref": "#/components/examples/commission_bill_single" bills: description: Lista de contas a pagar e receber retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/bills_response" examples: receivable_bills: summary: Contas a receber e a pagar "$ref": "#/components/examples/bills_list" paginated_bills: summary: Contas paginadas "$ref": "#/components/examples/paginated_bills" account_movements: description: Lista de movimentações retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/account_movements_response" examples: all_account_movements: summary: Todas as movimentações "$ref": "#/components/examples/all_account_movements" paginated_account_movements: summary: Movimentações paginadas "$ref": "#/components/examples/paginated_account_movements" account_movement: description: Movimentação retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/account_movement" examples: settlement_account_movement: summary: Liquidação em cartão "$ref": "#/components/examples/settlement_account_movement" transfer_account_movement: summary: Transferência entre contas "$ref": "#/components/examples/transfer_account_movement" refunds: description: Lista de reembolsos retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/refunds_response" examples: all_refunds: summary: Todos os reembolsos "$ref": "#/components/examples/all_refunds" paginated_refunds: summary: Reembolsos paginados "$ref": "#/components/examples/paginated_refunds" refund: description: Reembolso retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/refund" examples: vendor_refund: summary: Reembolso de fornecedor "$ref": "#/components/examples/vendor_refund" customer_refund: summary: Reembolso de cliente "$ref": "#/components/examples/customer_refund" cvc_statements: description: Lista de recibos retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/cvc_statements_response" examples: all_cvc_statements: summary: Todos os recibos "$ref": "#/components/examples/all_cvc_statements" paginated_cvc_statements: summary: Recibos paginados "$ref": "#/components/examples/paginated_cvc_statements" cvc_statement: description: Recibo retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/cvc_statement" examples: cvc_statement_with_sale: summary: Recibo com venda vinculada "$ref": "#/components/examples/cvc_statement_with_sale" manual_adjustment_cvc_statement: summary: Ajuste manual sem venda "$ref": "#/components/examples/manual_adjustment_cvc_statement" nfs: description: Lista de notas fiscais retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/nfs_response" examples: all_nfs: summary: Todas as notas fiscais "$ref": "#/components/examples/all_nfs" paginated_nfs: summary: Notas fiscais paginadas "$ref": "#/components/examples/paginated_nfs" nf: description: Nota fiscal retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/nf" examples: issued_nf: summary: Nota fiscal emitida "$ref": "#/components/examples/issued_nf" canceled_nf: summary: Nota fiscal cancelada "$ref": "#/components/examples/canceled_nf" logs: description: Lista de logs retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/logs_response" examples: all_logs: summary: Logs "$ref": "#/components/examples/all_logs" paginated_logs: summary: Logs paginados "$ref": "#/components/examples/paginated_logs" log: description: Log retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/log" examples: edition_log: summary: Log de edição "$ref": "#/components/examples/edition_log" system_log: summary: Log gravado pela API "$ref": "#/components/examples/system_log" custom_fields: description: Lista de campos personalizados retornada com sucesso. content: application/json: schema: "$ref": "#/components/schemas/custom_fields_response" examples: all_custom_fields: summary: Campos personalizados "$ref": "#/components/examples/all_custom_fields" custom_field: description: Campo personalizado retornado com sucesso. content: application/json: schema: "$ref": "#/components/schemas/custom_field_definition" examples: custom_field: summary: Campo personalizado "$ref": "#/components/examples/custom_field" examples: upload_attachments: summary: Exemplo de envio de anexo. value: resource_type: sale resource_id: c52a1c51-80e2-4a28-925e-2102a7b5d4e1 file: "@voucher.pdf" description: voucher upload_attachments_response: summary: Exemplo de resposta do envio de anexo. value: id: '0685f968-4afb-4574-be1b-3a1e5fc10d94' description: voucher extension: pdf content_type: application/pdf download_url: https://sua-agencia.monde.com.br/api/v3/attachments/0685f968-4afb-4574-be1b-3a1e5fc10d94/download product_detail: summary: Produto com fornecimentos description: Exemplo de resposta com um produto e seus fornecimentos, fornecedores e representantes. value: id: f9d961b8-ea88-4346-8e52-afe94267417a name: Seguro Viagem included_services: Cobertura completa para viagens internacionais kind: insurance passengers: true system: true active: true nbs_code: '115022000' supplies: - description: Fornecimento padrão commission_type: percentage commission_percentage: 10.0 commission_amount: 0.0 over_percentage: 0.0 over_value: 100.0 du_percentage: 0.0 rav_percentage: 0.0 restitutes_kandir_law: true supplier: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 representations: - commission_type: percentage commission_percentage: 5.0 commission_amount: 0.0 over_percentage: 0.0 over_value: 100.0 du_percentage: 0.0 rav_percentage: 0.0 representative: id: c3b7e8eb-1199-5457-c170-923c3fe56c92 all_products: summary: Todos os produtos description: Exemplo de resposta contendo produtos de diferentes tipos. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a name: Seguro Viagem kind: insurance passengers: true system: true active: true nbs_code: included_services: Cobertura completa para viagens internacionais - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: Cruzeiro kind: cruise passengers: true system: true active: true nbs_code: included_services: - id: c3b7e8eb-1199-5457-c170-923c3fe56c92 name: Diárias de Hospedagem kind: hotel passengers: true system: true active: true nbs_code: included_services: Hotel 5 estrelas em Copacabana - id: 979cc2d4-4e37-4d36-b6de-eb1e9e1080f0 name: Passagem Aérea kind: airline_ticket passengers: true system: true active: true nbs_code: included_services: - id: 20febcb5-85ef-427d-9a4e-da407062432d name: Operação Própria kind: operation passengers: true system: false active: true nbs_code: included_services: Turismo de aventura - id: 3b857f74-8c82-4391-bc95-2245fc4ba341 name: Outros kind: others passengers: true system: true active: true nbs_code: included_services: - id: bdaaf1b2-ee48-4b20-810a-10ccc27875b0 name: Aluguel de Carro kind: car_rental passengers: true system: true active: true nbs_code: included_services: Locação de veículo econômico - id: ae36c79c-37cd-4185-af57-448a75683ba1 name: Pacote Turístico kind: travel_package passengers: true system: true active: true nbs_code: included_services: Pacote completo de viagem - id: 49dd6ca0-9eca-4718-906e-c32805d8d677 name: Produto CVC kind: cvc_package passengers: false system: true active: true nbs_code: included_services: Produto exclusivo CVC - id: 4f1c9a27-58aa-4d3e-9f0b-1c7d6e2b8a94 name: Excursão kind: excursion passengers: true system: true active: true nbs_code: included_services: Passeio com guia acompanhante pagination: size: 20 has_next_page: false next_cursor: filtered_products: summary: Produtos filtrados description: Exemplo de resposta filtrada por tipos específicos (insurance e cruise). value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a name: Seguro Viagem kind: insurance passengers: true system: true active: true nbs_code: included_services: Cobertura completa para viagens internacionais - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: Cruzeiro kind: cruise passengers: true system: true active: true nbs_code: included_services: pagination: size: 10 has_next_page: false next_cursor: paginated_products: summary: Produtos paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a name: Seguro Viagem kind: insurance passengers: true system: true active: true nbs_code: included_services: Cobertura completa para viagens internacionais - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: Cruzeiro kind: cruise passengers: true system: true active: true nbs_code: included_services: - id: c3b7e8eb-1199-5457-c170-923c3fe56c92 name: Diárias de Hospedagem kind: hotel passengers: true system: true active: true nbs_code: included_services: Hotel 5 estrelas em Copacabana - id: 979cc2d4-4e37-4d36-b6de-eb1e9e1080f0 name: Passagem Aérea kind: airline_ticket passengers: true system: true active: true nbs_code: included_services: - id: 20febcb5-85ef-427d-9a4e-da407062432d name: Operação Própria kind: operation passengers: true system: false active: true nbs_code: included_services: Turismo de aventura pagination: size: 10 has_next_page: true next_cursor: eyJfcmFpbHMiOnsiZGF0YSI6WyIyMDI2LTAzLTEwIiwiNmIwZjdjMWUtMmQ0YS00ZjhiLTljMzEtNThhMGQ3ZTEzZjQyIl0sInB1ciI6ImFwaS92My9wcm9kdWN0cyNpbmRleCJ9fQ--3aa1d942d6240ca905038c019d661bc90af6836fc4a818cee3663829c75970e4 all_products_sale_list: value: data: - id: 9f8e7d6c-5b4a-3210-9876-5432109876ab sale_number: 987 sale_date: '2026-09-29' status: closed observations: Venda finalizada. printed_receipt: true created_at: '2026-09-29T10:30:00' totals: products: 19188.57 fees: 598.84 discount: 225.0 revenue: 1500.0 balance: 0 final_amount: 19870.43 pagination: size: 20 has_next_page: false next_cursor: all_products_sale_single: value: id: 9f8e7d6c-5b4a-3210-9876-5432109876ab sale_number: 987 sale_date: '2026-09-29' status: closed observations: Venda finalizada. printed_receipt: true created_at: '2026-09-29T10:30:00' totals: products: 19188.57 fees: 598.84 discount: 225.0 revenue: 1500.0 balance: 0 final_amount: 19870.43 company: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 created_by: id: b4c3d2e1-6f7a-4b9c-8d1e-2f3a4b5c6d7e operation: id: 8936058a-2906-4239-9a7f-e22ccc2c195e seller: id: 7c9e1a04-53b6-4f28-9d71-0e5a2c8b4f13 payer: &453 id: 2f8b6d51-9c04-4e37-a1b8-63d95e70c2a4 intermediary: id: d40a7f92-1e63-4b85-8c27-5a9f3e01b6d8 requester: id: b17c5e38-6a90-4d21-9f43-8e2b70c5a916 approver: id: 95e2a7c1-4b38-4f60-8d19-27a6f3e0b5c4 promoter: id: 6a3f9d27-8c51-4e04-b2f7-72e5c8a91b30 travel: id: 7c1d9f30-5a2b-4e68-9d47-2f8b6c0a1e35 custom_fields: - id: 12345 value: Reunião comercial insurances: - id: 1a2b3c4d-5e6f-4708-9a1b-2c3d4e5f6071 document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international status: active issue_date: '2026-09-29' canceled_at: observations: Embarque confirmado. included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 25.04 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 10.0 cc_rav_fee: 0 totals: &627 fees: 25.0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 10.0 products: 625.95 customer_amount: 650.95 amount: 650.95 supplier: &450 id: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b representative: &451 id: '028ea1ef-3f8e-4c7f-93da-463794a5afda' passengers: - &628 document: '9921508090000' cost_center: Corporativa EXT canceled_at: fees: 25.0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 625.95 customer_amount: 650.95 total_amount: 650.95 person: &452 id: 322ff2c2-43e0-4376-bea5-20f88b673b6d cruises: - id: 2b3c4d5e-6f70-4819-ab2c-3d4e5f607182 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A meal_plan: All inclusive status: active issue_date: '2026-09-29' canceled_at: observations: Cabine confirmada. included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 417.94 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 100.0 cc_rav_fee: 0 totals: &629 fees: 120.0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 100.0 products: 8358.77 customer_amount: 8478.77 amount: 8478.77 supplier: *450 representative: *451 passengers: - &630 cost_center: Corporativa EXT canceled_at: fees: 120.0 tip: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 8358.77 customer_amount: 8478.77 total_amount: 8478.77 person: *452 hotels: - id: 3c4d5e6f-7081-492a-bc3d-4e5f60718293 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive nights: 8 status: active issue_date: '2026-09-29' canceled_at: observations: Reserva garantida. included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 281.54 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 50.0 cc_rav_fee: 0 totals: &631 fees: 281.54 rav_fee: 0 rav_fee_discount: 0 agency_fee: 563.07 discount: 50.0 products: 5630.73 customer_amount: 6475.34 amount: 6475.34 supplier: *450 representative: *451 passengers: - &632 emission_name: Maria da Silva cost_center: Corporativa EXT canceled_at: fees: 281.54 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 563.07 amount: 5630.73 customer_amount: 6475.34 total_amount: 6475.34 person: *452 airline_tickets: - id: 4d5e6f70-8192-4a3b-cd4e-5f6071829304 locator: WABCJJ destination: international status: active issue_date: '2026-09-29' canceled_at: observations: Bilhete emitido. included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 68.04 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 totals: &633 fees: 136.06 rav_fee: 204.01 rav_fee_discount: 0 agency_fee: 0 discount: 20.0 products: 1360.67 du_fee: 104.01 du_fee_discount: 0 customer_amount: 1804.75 amount: 1804.75 supplier: &634 id: 3d7b0c94-2a68-4f15-8e93-1c5a6d20b7f4 representative: *451 segments: - &635 airline_code: AA flight_number: '1234' class: A origin: NAS departure_date: '2026-10-04T10:56:27' destination: JFK arrival_date: '2026-10-04T10:56:27' passengers: - &636 ticket_number: '99526874895' emission_name: Maria da Silva seat: 12A cost_center: Corporativa EXT canceled_at: boarding_fee: 136.06 other_fees: 0 rav_fee: 204.01 rav_fee_discount: 0 du_fee: 104.01 du_fee_discount: 0 agency_fee: 0 amount: 1360.67 customer_amount: 1804.75 total_amount: 1804.75 person: *452 train_tickets: - id: 5e6f7081-92a3-4b4c-de5f-607182930415 document: RE9988777 departure_date: '2026-10-04T10:56:27' arrival_date: '2026-10-07T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Bilhete emitido. included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 7.5 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 5.0 cc_rav_fee: 0 totals: &637 fees: 24.05 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 5.0 products: 240.5 customer_amount: 264.55 amount: 264.55 supplier: *450 representative: *451 passengers: - &638 document: RE9988777 cost_center: Corporativa EXT canceled_at: fees: 24.05 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 240.5 customer_amount: 264.55 total_amount: 264.55 person: *452 ground_transportations: - id: 6f708192-a3b4-4c5d-ef60-718293041526 document: GT123456 departure_date: '2026-10-04T10:56:27' arrival_date: '2026-10-07T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Bilhete emitido. included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 4.28 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 5.0 cc_rav_fee: 0 totals: &639 fees: 12.19 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 5.0 products: 121.95 customer_amount: 134.14 amount: 134.14 supplier: *450 representative: *451 passengers: - &640 document: '0001234567' cost_center: Corporativa EXT canceled_at: fees: 12.19 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 121.95 customer_amount: 134.14 total_amount: 134.14 person: *452 car_rentals: - id: 708192a3-b4c5-4d6e-f071-829304152637 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico rental_days: 7 status: active issue_date: '2026-09-29' canceled_at: observations: Retirada confirmada. included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 17.5 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 10.0 cc_rav_fee: 0 totals: &641 fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 10.0 products: 350.0 customer_amount: 350.0 amount: 350.0 supplier: *450 representative: *451 passengers: - &642 cost_center: Corporativa EXT canceled_at: fees: 0 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 350.0 customer_amount: 350.0 total_amount: 350.0 person: *452 travel_packages: - id: 8192a3b4-c5d6-4e7f-0182-930415263748 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight status: active issue_date: '2026-09-29' canceled_at: observations: Pacote confirmado. included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 125.0 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 25.0 cc_rav_fee: 0 totals: &643 fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 25.0 products: 2500.0 customer_amount: 2500.0 amount: 2500.0 supplier: *450 representative: *451 passengers: - &644 document: PCT2024050001 cost_center: Corporativa EXT canceled_at: fees: 0 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *452 others: - id: 8f7e6d5c-4b3a-4218-9f0e-1d2c3b4a5968 product: &645 id: a3b2c1d0-9e8f-4756-b4a3-2c1d0e9f8a7b document: OUT123456 destination: Salvador status: active issue_date: '2026-09-29' canceled_at: observations: Passeio confirmado. included_services: Guia local incluso vendor_reservation_url: https://www.epicjourney.com/reservation/9877 currency: BRL exchange_rate: 1 commission_amount: 12.0 commission_percentage: 2 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 4.0 intermediary_commission_percentage: 2 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 50 agency_card_rate: 0 deductions: 0 discount_amount: 0 cc_rav_fee: 0 quantity: unit_price: unit_fee: totals: &646 fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 0 products: 2500.0 customer_amount: 2500.0 amount: 2500.0 supplier: *450 representative: *451 passengers: - &647 document: OUT2024060012 cost_center: Corporativa EXT canceled_at: fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *452 excursions: - id: d0e1f2a3-b4c5-4906-a1b2-3c4d5e6f7081 document: EXC123456 departure_date: '2026-10-04T10:56:27' arrival_date: '2026-10-04T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Passeio confirmado. included_services: |- Guia local incluso Transporte incluso vendor_reservation_url: https://www.epicjourney.com/reservation/9880 currency: BRL exchange_rate: 1 commission_amount: 10.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 5.0 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 20 agency_card_rate: 0 deductions: 0 discount_amount: 0 cc_rav_fee: 0 totals: &648 fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 0 products: 350.0 customer_amount: 350.0 amount: 350.0 supplier: *450 representative: *451 passengers: - &649 document: EXC2024060034 cost_center: Corporativa EXT canceled_at: fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 350.0 customer_amount: 350.0 total_amount: 350.0 person: *452 cvc_packages: - id: 5c4b3a29-1e0d-4982-7c6b-5a4938271605 product: &653 id: c5d4e3f2-1a0b-4978-d6c5-4e3f2a1b0c9d package_name: CVC Caribe 7 noites receipt_number: '89100000183488' departure_date: '2026-10-14T10:56:27' arrival_date: '2026-10-21T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Pacote confirmado. included_services: |- Hospedagem all inclusive Traslados inclusos vendor_reservation_url: https://www.epicjourney.com/reservation/9879 currency: BRL exchange_rate: 1 commission_amount: 490.0 commission_percentage: 12 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 0 intermediary_commission_percentage: 0 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 0 agency_card_rate: 0 deductions: 0 discount_amount: 0 cc_rav_fee: 0 quantity: 2 unit_price: 1500.0 unit_fee: 80.0 totals: &654 fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 0 products: 3160.0 customer_amount: 3160.0 amount: 3160.0 supplier: *450 representative: *451 operations: - id: 6d5c4b3a-2f1e-4093-8d7c-6b5a49382716 product: &650 id: b4c3d2e1-0f9a-4867-c5b4-3d2e1f0a9b8c document: OP-000123 departure_date: '2026-10-06T10:56:27' arrival_date: '2026-10-06T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: City tour confirmado. included_services: |- Guia local incluso Transporte incluso vendor_reservation_url: https://www.epicjourney.com/reservation/9878 currency: BRL exchange_rate: 1 intermediary_commission_amount: 0 intermediary_commission_percentage: 0 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 0 agency_card_rate: 0 discount_amount: 0 quantity: unit_price: unit_fee: totals: &651 fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 discount: 0 products: 2500.0 customer_amount: 2500.0 amount: 2500.0 supplier: *450 passengers: - &652 document: OP2024060056 cost_center: Corporativa EXT canceled_at: fees: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *452 payments: agency: &666 bills: - id: 9f2c8b71-4d3e-4a56-b8c9-1e2f3a4b5c6d - id: 1a77b3c2-5e6f-4708-9a1b-2c3d4e5f6071 - id: 4b5c6d7e-8f90-41a2-b3c4-d5e6f7081920 refunds: - id: 3b41c2d5-6e7f-4809-a1b2-c3d4e5f60718 credit: - due_date: '2026-10-29' document: CRED-000123 amount: 6475.34 payer: *453 origin_sale: id: 3d4e5f60-7182-4394-83a5-c3d4e5f6a7b8 products: - amount: 6475.34 sale_product: &664 id: 3c4d5e6f-7081-492a-bc3d-4e5f60718293 retained_by_intermediary: - due_date: '2026-10-29' amount: 195.0 payer: *453 products: - amount: 625.95 sale_product: &665 id: 1a2b3c4d-5e6f-4708-9a1b-2c3d4e5f6071 legacy: - due_date: '2026-08-30' amount: 300.0 check: card: brand: mastercard last_digits: '5678' authorization: ABC123 payer: *453 payment_method: id: fc9f5c65-59d6-42bb-8dd1-a5c0e3e51ea9 products: - &454 amount: 8358.77 sale_product: &658 id: 2b3c4d5e-6f70-4819-ab2c-3d4e5f607182 vendor: &667 credit_card: - due_date: '2026-10-29' card_last_digits: '1234' authorization: XYZ789 installments: 2 payer: *453 products: - *454 - amount: 2500.0 sale_product: &659 id: 8f7e6d5c-4b3a-4218-9f0e-1d2c3b4a5968 - amount: 3160.0 sale_product: &660 id: 5c4b3a29-1e0d-4982-7c6b-5a4938271605 - amount: 2500.0 sale_product: &661 id: 6d5c4b3a-2f1e-4093-8d7c-6b5a49382716 check: - due_date: '2026-10-29' bank_code: '341' check_number: 654321 payer: *453 products: - &455 amount: 134.14 sale_product: &663 id: 6f708192-a3b4-4c5d-ef60-718293041526 credit: - due_date: '2026-10-29' document: CRED-000123 payer: *453 products: - *455 others: - due_date: '2026-10-29' details: Fatura payer: *453 products: - amount: 2500.0 sale_product: &662 id: 8192a3b4-c5d6-4e7f-0182-930415263748 commissions: - &670 description: 'Plano: Padrão, cálculo: 10%' amount: 700.0 retained_amount: 0.0 balance: 700.0 person: id: 0a1b2c3d-4e5f-4061-8072-90a1b2c3d4e5 - &671 description: Comissão Intermediário amount: 49.75 retained_amount: 0.0 balance: 49.75 person: id: 1b2c3d4e-5f60-4172-8183-a1b2c3d4e5f6 - &672 description: amount: -100.0 retained_amount: 0.0 balance: -100.0 person: id: 2c3d4e5f-6071-4283-8294-b2c3d4e5f6a7 financial: observations: Teste de observações financeiras vendor_bills: - &668 id: c8b7a695-4d3e-4f21-b0a9-8e7d6c5b4a39 standalone_bills: - &669 id: f1e2d3c4-b5a6-4978-8f6e-5d4c3b2a1e0f all_products_sale: x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: &460 external_id: a8a41bec-e2a2-4d6a-b2f9-8fbc29169e46 name: João da Silva cpf: '83115137168' payer: &461 person_kind: individual external_id: cce45f2c-30e3-43a6-bbf1-af340188a04c name: Márcio da Veiga legal_name: gender: male birthdate: '1990-02-12' cpf_cnpj: '50957153848' rg_ie: '202571476' passport_number: BC826174 passport_expiration_date: '2030-07-15' foreigner: false foreign_identity_document: email: contato@marcio.com phone_number: '11999990001' mobile_number: '11999990002' address: &614 postal_code: '08330410' street: Avenida Andrômeda street_number: '100' neighborhood: Cidade Satélite Santa Bárbara additional_info: Apartamento 501 city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR intermediary: &462 person_kind: individual external_id: 8a9de5ce-dac6-4721-851b-7366bf9ff5b0 name: Isabel Ribas legal_name: gender: female birthdate: '1984-03-22' cpf_cnpj: '05619249883' rg_ie: '417277556' passport_number: XM468760 passport_expiration_date: '2035-07-22' foreigner: false foreign_identity_document: email: contato@isabel.com phone_number: '11999990003' mobile_number: '11999990004' address: &615 postal_code: '12239420' street: Rua Maria Martins Ottoboni street_number: '100' neighborhood: Campo dos Alemães additional_info: Sala 7 city_ibge: '3549904' city_name: São José dos Campos state_code: SP country_code: BR approver: &463 person_kind: individual external_id: b7f3c1a2-9d84-4e60-8c15-2a6f0e3d4b91 name: Renata Furtado legal_name: gender: female birthdate: '1979-11-08' cpf_cnpj: '68432197807' rg_ie: '331948027' passport_number: YK517293 passport_expiration_date: '2032-04-30' foreigner: false foreign_identity_document: email: contato@renata.com phone_number: '11999990005' mobile_number: '11999990006' address: &616 postal_code: '13070170' street: Rua Antônio Lapa street_number: '100' neighborhood: Cambuí additional_info: Sala 3 city_ibge: '3509502' city_name: Campinas state_code: SP country_code: BR requester: &464 external_id: 9f2c7a41-8b53-4e06-a1d9-63f0e2b5c748 name: Beatriz Nogueira gender: female birthdate: '1988-06-19' cpf: '47690215858' rg: '289104537' passport_number: RT902184 passport_expiration_date: '2033-09-10' foreigner: false foreign_identity_document: email: contato@beatriz.com phone_number: '11999990007' mobile_number: '11999990008' address: &617 postal_code: '01310100' street: Avenida Paulista street_number: '1000' neighborhood: Bela Vista additional_info: Conjunto 4 city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR insurances: - &465 local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: &456 external_id: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b name: Epic Journey Turismo legal_name: Epic Journey Turismo S.A. cnpj: '11402447000103' ie: '1234567890' foreigner: false email: contato@epicjourney.com.br phone_number: '11999990005' mobile_number: '11999990006' address: &622 postal_code: '01310932' street: Avenida Paulista street_number: '1000' neighborhood: Bela Vista additional_info: 10° andar city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR representative: &457 external_id: '028ea1ef-3f8e-4c7f-93da-463794a5afda' name: Epic Journey Operadora legal_name: Epic Journey Operadora Ltd. cnpj: '18258223000119' ie: '1234567890' foreigner: false email: contato@epicjourneyoperadora.com phone_number: '11999990007' mobile_number: '11999990008' address: &626 postal_code: '01310932' street: Avenida Paulista street_number: '5000' neighborhood: Bela Vista additional_info: 7° andar city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR passengers: &481 - &503 document: '9921508090000' amount: 625.95 fees: 31.3 rav_fee: 15.0 rav_fee_discount: 5.0 agency_fee: 10.0 person: &458 external_id: 322ff2c2-43e0-4376-bea5-20f88b673b6d name: Maria da Silva gender: female birthdate: '1990-10-01' cpf: '38107867807' rg: '461196037' passport_number: FG225776 passport_expiration_date: '2035-12-01' foreigner: false foreign_identity_document: email: maria.silva@example.com phone_number: '11999990009' mobile_number: '11999990010' address: &618 postal_code: '04078011' street: Avenida Divino Salvador street_number: '5000' neighborhood: Planalto Paulista additional_info: Casa 2 city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR cruises: - &466 local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: &482 - &504 amount: 8358.77 fees: 209.0 tip: 50.0 rav_fee: 40.0 rav_fee_discount: 10.0 agency_fee: 20.0 person: *458 hotels: - &467 local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: &484 - &505 amount: 5630.73 fees: 281.54 other_fees: 30.0 rav_fee: 60.0 rav_fee_discount: 15.0 agency_fee: 563.07 person: *458 airline_tickets: - &468 local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: &485 airline_code: AA airline_number: '001' name: American Airlines legal_name: American Airlines Inc. cnpj: '73765430000178' ie: '1234567890' foreigner: false email: contato@americanairlines.com.br phone_number: '11999990023' mobile_number: '11999990024' address: &624 postal_code: '04543013' street: Avenida Brigadeiro Faria Lima street_number: '2232' neighborhood: Jardim Paulistano additional_info: 9° andar city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR representative: *457 segments: &486 - &655 airline_code: AA flight_number: '1234' class: A origin: NAS departure_date: '2026-10-04T10:56:27' destination: JFK arrival_date: '2026-10-04T10:56:27' seats: - seat_number: A27 ticket_number: '99526874895' passengers: &487 - &506 ticket_number: '99526874895' original_ticket_number: '99526874894' emission_name: Maria da Silva amount: 1360.67 boarding_fee: 136.06 rav_fee: 204.01 du_fee: 104.01 person: *458 train_tickets: - &469 local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: &488 - &656 railway_operator: SNCF origin: Paris Gare de Lyon departure_date: '2026-10-04T10:56:27' destination: Nice-Ville arrival_date: '2026-10-04T16:56:27' supplier: *456 representative: *457 passengers: &489 - &507 amount: 240.5 fees: 24.05 rav_fee: 10.0 rav_fee_discount: 2.0 agency_fee: 5.0 document: RE9988777 person: *458 ground_transportations: - &470 local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: &490 - &657 coach_company: Viação UTIL service_class: LE origin: Terminal Rodoviário Novo Rio departure_date: '2026-10-02T10:56:27' destination: Terminal Rodoviário de Santos arrival_date: '2026-10-02T16:56:27' seats: - seat_number: '27' ticket_number: '0001234567' supplier: *456 representative: *457 passengers: &491 - &508 amount: 121.95 fees: 12.19 rav_fee: 5.0 rav_fee_discount: 1.0 agency_fee: 3.0 document: '0001234567' person: *458 car_rentals: - &471 local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: &492 - &509 amount: 350.0 fees: 17.5 other_fees: 8.0 rav_fee: 7.0 rav_fee_discount: 2.0 agency_fee: 5.0 person: *458 travel_packages: - &472 local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: &493 - &510 amount: 2500.0 fees: 125.0 other_fees: 25.0 rav_fee: 50.0 rav_fee_discount: 10.0 agency_fee: 30.0 document: PCT2024050001 person: *458 payments: - &473 agency: credit_card: due_date: '2026-10-29' settlement_date: '2026-09-29' card_brand: mastercard card_last_digits: '5678' authorization: ABC123 bank_account: &459 bank_code: '237' agency_number: '1234' agency_digit: '5' account_number: '56789' account_digit: '0' products: - &497 local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 payment_amount: 264.55 - &474 agency: bank_slip: due_date: '2026-10-29' settlement_date: '2026-09-29' bank_account: *459 products: - &499 local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 payment_amount: 350.0 - &475 agency: bank_deposit: due_date: '2026-10-29' settlement_date: '2026-09-29' observations: TED bank_account: *459 products: - &496 local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 payment_amount: 6475.34 - &494 local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef payment_amount: 625.95 - &476 vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - &495 local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 payment_amount: 8358.77 - &477 vendor: others: details: Fatura payer: &479 person_kind: individual external_id: cce45f2c-30e3-43a6-bbf1-af340188a04c name: Márcio da Veiga products: - &500 local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 payment_amount: 2500.0 - &478 vendor: credit: products: - &498 local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 payment_amount: 134.14 closed_sale_with_commissions: x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - *465 cruises: - *466 hotels: - *467 airline_tickets: - *468 train_tickets: - *469 ground_transportations: - *470 car_rentals: - *471 travel_packages: - *472 payments: - *473 - *474 - *475 - *476 - *477 - *478 status: closed commissions: - &673 external_id: a8a41bec-e2a2-4d6a-b2f9-8fbc29169e46 kind: seller value: 150.0 - &674 external_id: 8a9de5ce-dac6-4721-851b-7366bf9ff5b0 kind: intermediary value: 80.0 retained_value: 10.0 required_fields_sale: x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *479 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international currency: BRL supplier: external_id: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b name: Epic Journey Insurance passengers: - amount: 625.95 person: &480 external_id: 322ff2c2-43e0-4376-bea5-20f88b673b6d name: Maria da Silva cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview currency: BRL supplier: external_id: f2e3d4c5-b6a7-4c8d-9e0f-1a2b3c4d5e6f name: Epic Journey Cruises passengers: - amount: 8358.77 person: *480 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506091' check_in: '2026-10-22' check_out: '2026-10-29' currency: BRL supplier: external_id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d name: Epic Journey Hotel passengers: - amount: 5630.73 person: *480 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international currency: BRL segments: - airline_code: AA flight_number: '1234' origin: NAS departure_date: '2026-10-04T10:56:27' destination: JFK arrival_date: '2026-10-04T10:56:27' supplier: airline_code: AA name: American Airlines passengers: - amount: 1360.67 person: *480 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 currency: EUR segments: - railway_operator: SNCF origin: Paris Gare de Lyon departure_date: '2026-10-04T10:56:27' destination: Nice-Ville arrival_date: '2026-10-04T16:56:27' supplier: external_id: 1d26857c-6eb2-47f0-814e-fc3bd27e6cb9 name: Rail Europe passengers: - amount: 240.5 person: *480 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 currency: BRL segments: - coach_company: Viação UTIL origin: Terminal Rodoviário Novo Rio departure_date: '2026-10-02T10:56:27' destination: Terminal Rodoviário de Santos arrival_date: '2026-10-02T16:56:27' supplier: external_id: b3c4d5e6-f7a8-4b9c-0d1e-2f3a4b5c6d7e name: Viação UTIL passengers: - amount: 121.95 person: *480 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Brasília dropoff_date: '2026-10-11' dropoff_location: Centro de Brasília currency: BRL supplier: external_id: c1d2e3f4-a5b6-4c7d-8e9f-0a1b2c3d4e5f name: Epic Journey Car Rental passengers: - amount: 350.0 person: *480 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight currency: BRL supplier: external_id: e3f4a5b6-c7d8-4e9f-0a1b-2c3d4e5f6a7b name: Epic Journey Travel Packages passengers: - amount: 2500.0 person: *480 multiple_products_of_same_kind_sale: description: 'Exemplo simplificado: paga apenas insurance e cruise; em uso real, os demais produtos também teriam pagamento.' x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: *481 - local_id: 82670c74-0180-4362-bd69-2bda5803ca74 document: '14296923' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - document: '9921508090000' amount: 625.95 fees: 31.3 rav_fee: 15.0 rav_fee_discount: 5.0 agency_fee: 10.0 person: &483 external_id: 4a162ad1-fdbb-41f9-b49e-70dfb1c80f6c name: Kaleigh Glover gender: female birthdate: '1991-05-14' cpf: rg: passport_number: US748239 passport_expiration_date: '2033-03-12' foreigner: true foreign_identity_document: '182430728200321' email: kg@test.com phone_number: "+390612345670" mobile_number: "+393331234571" address: &621 postal_code: '00187' street: Via Veneto street_number: '15' neighborhood: Ludovisi additional_info: Appartamento 3B city_ibge: city_name: Roma state_code: RM country_code: IT cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: *482 - local_id: fe9dfa42-55a2-44d9-88ad-d5deccff6336 booking_number: '987568490' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: - amount: 8358.77 fees: 209.0 tip: 50.0 rav_fee: 40.0 rav_fee_discount: 10.0 agency_fee: 20.0 person: *483 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: *484 - local_id: d309a038-3d41-447b-8c00-0d9841d27d70 booking_number: '1020506092' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: - amount: 5630.73 fees: 281.54 other_fees: 30.0 rav_fee: 60.0 rav_fee_discount: 15.0 agency_fee: 563.07 person: *483 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: *486 passengers: *487 - local_id: 6c3bddd0-6cae-4918-8528-eba333f2e3fd locator: WABCJK destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: *486 passengers: - ticket_number: '99526874896' original_ticket_number: '99526874895' emission_name: Kaleigh Glover amount: 1360.67 boarding_fee: 136.06 rav_fee: 204.01 du_fee: 104.01 person: *483 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: *489 - local_id: 444e0743-63ee-407f-a40f-e8cd0517ef92 document: RE9988778 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: - amount: 240.5 fees: 24.05 rav_fee: 10.0 rav_fee_discount: 2.0 agency_fee: 5.0 document: RE9988777 person: *483 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *456 representative: *457 passengers: *491 - local_id: d8515741-369f-4fe8-9c5a-fe9a67b6cf02 document: GT123457 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *456 representative: *457 passengers: - amount: 121.95 fees: 12.19 rav_fee: 5.0 rav_fee_discount: 1.0 agency_fee: 3.0 document: '0001234567' person: *483 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: *492 - local_id: 14515a24-c160-480e-8c83-fa24202fdb46 document: CR987654321 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - amount: 350.0 fees: 17.5 other_fees: 8.0 rav_fee: 7.0 rav_fee_discount: 2.0 agency_fee: 5.0 person: *483 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: *493 - local_id: 24e6d37f-3e4e-46bf-8954-f4570ef74b35 document: TP987654321 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: - amount: 2500.0 fees: 125.0 other_fees: 25.0 rav_fee: 50.0 rav_fee_discount: 10.0 agency_fee: 30.0 document: PCT2024050001 person: *483 payments: - &502 vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *494 - *495 insurance_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - *465 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *494 sale_with_custom_fields: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - *465 custom_fields: - id: 12345 value: Reunião comercial operation_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 operation: local_id: 9f8e7d6c-5b4a-3210-fedc-ba9876543210 product_id: f47ac10b-58cc-4372-a567-0e02b2c3d479 document: OP-2026-0001 departure_date: '2026-10-04' arrival_date: '2026-10-19' observations: Excursão operada pela própria agência included_services: Traslados, guia local e hospedagem vendor_reservation_url: https://www.epicjourney.com/reservation/op-1 currency: BRL exchange_rate: 1 intermediary_commission_amount: 30.0 agency_service_fee: 80.0 discount_amount: 10.0 passengers: - &675 amount: 1200.0 fees: 60.0 document: OP-000123 person: *458 operation_no_passengers_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 operation: local_id: 1a2b3c4d-5e6f-7081-9203-a4b5c6d7e8f9 product_id: f47ac10b-58cc-4372-a567-0e02b2c3d479 document: OP-2026-0002 departure_date: '2026-10-04' arrival_date: '2026-10-19' observations: Cota de operação própria, vendida por quantidade. currency: BRL exchange_rate: 1 quantity: 3 unit_price: 500.0 unit_fee: 20.0 agency_fee: 15.0 discount_amount: 10.0 cruise_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 cruises: - *466 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *495 hotel_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 hotels: - *467 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *496 airline_ticket_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 airline_tickets: - *468 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 payment_amount: 1804.75 train_ticket_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 train_tickets: - *469 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *497 ground_transportation_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 ground_transportations: - *470 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *498 car_rental_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 car_rentals: - *471 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *499 travel_package_only_sale: value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 travel_packages: - *472 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - *500 company_payer_sale: x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: person_kind: company external_id: 3c1e6b21-5d44-4d98-8f21-2f90b6a8c3e7 name: Tech Solutions LTDA legal_name: Tech Solutions Tecnologia Ltda cpf_cnpj: '86452403000197' rg_ie: '9876543' email: teste@techsolutions.com.br phone_number: '1133224455' mobile_number: '11998877665' address: &619 postal_code: '04547002' street: Avenida Brigadeiro Faria Lima street_number: '2000' neighborhood: Itaim Bibi additional_info: 12º andar city_ibge: '3550308' city_name: São Paulo state_code: SP country_code: BR intermediary: *462 approver: *463 requester: *464 insurances: - *465 cruises: - *466 hotels: - *467 airline_tickets: - *468 train_tickets: - *469 ground_transportations: - *470 car_rentals: - *471 travel_packages: - *472 payments: - *473 - *474 - *475 - *476 - *477 - *478 foreigner_payer_sale: x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: person_kind: individual external_id: d82e4b79-6b2a-44f8-a431-027b2d7a9e68 name: John Smith gender: male birthdate: '1982-11-30' passport_number: AA1234567 passport_expiration_date: '2030-09-20' foreigner: true foreign_identity_document: F987654321 email: john.smith@example.com phone_number: "+390612345672" mobile_number: "+393331234572" address: &620 postal_code: '00198' street: Via dei Parioli street_number: '25' neighborhood: Parioli additional_info: Appartamento 4C city_ibge: city_name: Roma state_code: RM country_code: IT intermediary: *462 approver: *463 requester: *464 insurances: - *465 cruises: - *466 hotels: - *467 airline_tickets: - *468 train_tickets: - *469 ground_transportations: - *470 car_rentals: - *471 travel_packages: - *472 payments: - *473 - *474 - *475 - *476 - *477 - *478 datetime_products_sale: x-ignore-on-postman: airline_tickets,train_tickets,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04T10:56:27' end_date: '2026-10-19T10:56:27' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: *481 cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05T10:56:27' arrival_date: '2026-10-19T10:56:27' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: *482 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22T10:56:27' check_out: '2026-10-29T10:56:27' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: *484 airline_tickets: - *468 train_tickets: - *469 ground_transportations: - *470 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04T10:56:27' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11T10:56:27' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: *492 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09T10:56:27' end_date: '2026-10-16T10:56:27' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: *493 payments: - *473 - *474 - *475 - *476 - *477 - *478 foreign_sale: description: 'Exemplo simplificado: paga apenas insurance e cruise; em uso real, os demais produtos também teriam pagamento.' x-ignore-on-postman: airline_tickets,train_tickets,ground_transportations,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: EUR exchange_rate: 6.1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: &501 external_id: 30a20d58-b4f7-465d-b8b0-f89b2fc00b67 name: EuroTravel legal_name: EuroTravel Global GmbH cnpj: ie: foreigner: true email: contact@eurotravel.com phone_number: "+390212345678" mobile_number: "+393331234567" address: &623 postal_code: '20121' street: Via Monte Napoleone street_number: '8' neighborhood: Centro additional_info: Piano 3 city_ibge: city_name: Milano state_code: MI country_code: IT representative: *457 passengers: *481 cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: EUR exchange_rate: 6.1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *501 representative: *457 passengers: *482 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Grand European Hotels: Rue de la Paix, 82, FR Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: EUR exchange_rate: 6.1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *501 representative: *457 passengers: *484 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: EUR exchange_rate: 6.1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: airline_code: LH airline_number: '220' name: European Wings legal_name: European Wings AG cnpj: ie: foreigner: true email: contact@europeanwings.com phone_number: "+390212345679" mobile_number: "+393331234570" address: &625 postal_code: '20124' street: Via Torino street_number: '45' neighborhood: Centro additional_info: Piano 5 city_ibge: city_name: Milano state_code: MI country_code: IT representative: *457 segments: *486 passengers: *487 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: *489 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: EUR exchange_rate: 6.1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *501 representative: *457 passengers: *491 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: EUR exchange_rate: 6.1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *501 representative: *457 passengers: *492 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: EUR exchange_rate: 6.1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *501 representative: *457 passengers: *493 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef payment_amount: 3818.3 - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 payment_amount: 50988.5 foreign_passenger_sale: description: 'Exemplo simplificado: paga apenas insurance e cruise; em uso real, os demais produtos também teriam pagamento.' x-ignore-on-postman: airline_tickets,train_tickets,ground_transportations,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - document: '9921508090000' amount: 625.95 fees: 31.3 rav_fee: 15.0 rav_fee_discount: 5.0 agency_fee: 10.0 person: *483 cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: - amount: 8358.77 fees: 209.0 tip: 50.0 rav_fee: 40.0 rav_fee_discount: 10.0 agency_fee: 20.0 person: *483 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: - amount: 5630.73 fees: 281.54 other_fees: 30.0 rav_fee: 60.0 rav_fee_discount: 15.0 agency_fee: 563.07 person: *483 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: *486 passengers: - ticket_number: '99526874896' original_ticket_number: '99526874895' emission_name: Kaleigh Glover amount: 1360.67 boarding_fee: 136.06 rav_fee: 204.01 du_fee: 104.01 person: *483 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: - amount: 240.5 fees: 24.05 rav_fee: 10.0 rav_fee_discount: 2.0 agency_fee: 5.0 document: RE9988777 person: *483 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *456 representative: *457 passengers: - amount: 121.95 fees: 12.19 rav_fee: 5.0 rav_fee_discount: 1.0 agency_fee: 3.0 document: '0001234567' person: *483 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - amount: 350.0 fees: 17.5 other_fees: 8.0 rav_fee: 7.0 rav_fee_discount: 2.0 agency_fee: 5.0 person: *483 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: - amount: 2500.0 fees: 125.0 other_fees: 25.0 rav_fee: 50.0 rav_fee_discount: 10.0 agency_fee: 30.0 document: PCT2024050001 person: *483 payments: - *502 multiple_passengers_sale: description: 'Exemplo simplificado: paga apenas insurance e cruise; em uso real, os demais produtos também teriam pagamento.' x-ignore-on-postman: airline_tickets,train_tickets,ground_transportations,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - *503 - document: '9921508090000' amount: 625.95 fees: 31.3 rav_fee: 15.0 rav_fee_discount: 5.0 agency_fee: 10.0 person: *483 cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: - *504 - amount: 8358.77 fees: 209.0 tip: 50.0 rav_fee: 40.0 rav_fee_discount: 10.0 agency_fee: 20.0 person: *483 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: - *505 - amount: 5630.73 fees: 281.54 other_fees: 30.0 rav_fee: 60.0 rav_fee_discount: 15.0 agency_fee: 563.07 person: *483 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: *486 passengers: - *506 - ticket_number: '99526874896' original_ticket_number: '99526874895' emission_name: Kaleigh Glover amount: 1360.67 boarding_fee: 136.06 rav_fee: 204.01 du_fee: 104.01 person: *483 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: - *507 - amount: 240.5 fees: 24.05 rav_fee: 10.0 rav_fee_discount: 2.0 agency_fee: 5.0 document: RE9988777 person: *483 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *456 representative: *457 passengers: - *508 - amount: 121.95 fees: 12.19 rav_fee: 5.0 rav_fee_discount: 1.0 agency_fee: 3.0 document: '0001234567' person: *483 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - *509 - amount: 350.0 fees: 17.5 other_fees: 8.0 rav_fee: 7.0 rav_fee_discount: 2.0 agency_fee: 5.0 person: *483 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: - *510 - amount: 2500.0 fees: 125.0 other_fees: 25.0 rav_fee: 50.0 rav_fee_discount: 10.0 agency_fee: 30.0 document: PCT2024050001 person: *483 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef payment_amount: 1251.9 - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 payment_amount: 16717.54 multiple_passengers_one_amount_sale: description: 'Exemplo simplificado: paga apenas insurance e cruise; em uso real, os demais produtos também teriam pagamento.' x-ignore-on-postman: airline_tickets,train_tickets,ground_transportations,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - *503 - person: *483 cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: - *504 - person: *483 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: - *505 - person: *483 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: *486 passengers: - *506 - ticket_number: '99526874896' original_ticket_number: '99526874895' emission_name: Kaleigh Glover person: *483 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: - *507 - person: *483 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *456 representative: *457 passengers: - *508 - person: *483 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - *509 - person: *483 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: - *510 - person: *483 payments: - *502 partial_payment_sale: description: 'Exemplo de venda com pagamento parcial: cobre apenas parte do valor total. Em uso real, os demais produtos também teriam pagamento.' x-ignore-on-postman: airline_tickets,train_tickets,ground_transportations,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 insurances: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: *481 cruises: - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: *482 hotels: - local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: *484 airline_tickets: - local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: *486 passengers: *487 train_tickets: - local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: *488 supplier: *456 representative: *457 passengers: *489 ground_transportations: - local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: *490 supplier: *456 representative: *457 passengers: *491 car_rentals: - local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: *492 travel_packages: - local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: *493 payments: - vendor: credit_card: card_last_digits: '1234' authorization: XYZ789 installments: 2 products: - local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef payment_amount: 312.98 - local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 payment_amount: 4179.39 own_operation_sale: x-ignore-on-postman: airline_tickets,train_tickets,ground_transportations,car_rentals,travel_packages value: company_identifier: '46598887000162' sale_date: '2026-09-29' operation_id: 8936058a-2906-4239-9a7f-e22ccc2c195e seller: *460 payer: *461 intermediary: *462 insurances: - *465 cruises: - *466 hotels: - *467 airline_tickets: - *468 train_tickets: - *469 ground_transportations: - *470 car_rentals: - *471 travel_packages: - *472 payments: - *473 - *474 - *475 - *476 - *477 - *478 all_cabins: summary: Todas as cabines description: Exemplo de resposta contendo todas as cabines cadastradas. value: data: - name: Externa - name: Interna - name: Suíte - name: Varanda pagination: size: 20 has_next_page: false next_cursor: paginated_cabins: summary: Cabines paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - name: Suíte - name: Varanda pagination: size: 2 has_next_page: false next_cursor: all_ships: summary: Todos os navios description: Exemplo de resposta contendo todos os navios cadastrados. value: data: - name: Costa Diadema - name: MSC Preziosa - name: MSC Seaview pagination: size: 20 has_next_page: false next_cursor: paginated_ships: summary: Navios paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - name: MSC Seaview pagination: size: 2 has_next_page: false next_cursor: all_cost_centers: summary: Todos os centros de custo description: Exemplo de resposta contendo todos os centros de custo cadastrados. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a description: Administrativo - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 description: Comercial - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 description: Marketing pagination: size: 20 has_next_page: false next_cursor: paginated_cost_centers: summary: Centros de custo paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 description: Marketing pagination: size: 2 has_next_page: false next_cursor: cost_center: summary: Centro de custo administrativo description: Exemplo de resposta de um centro de custo específico. value: id: f9d961b8-ea88-4346-8e52-afe94267417a description: Administrativo all_currencies: summary: Todas as moedas description: Exemplo de resposta contendo todas as moedas cadastradas. value: data: - code: BRL description: Real symbol: R$ active: true - code: USD description: Dólar Americano symbol: US$ active: true - code: EUR description: Euro symbol: "€" active: false pagination: size: 20 has_next_page: false next_cursor: paginated_currencies: summary: Moedas paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - code: EUR description: Euro symbol: "€" active: false pagination: size: 2 has_next_page: false next_cursor: currency: summary: Real description: Exemplo de resposta de uma moeda específica. value: code: BRL description: Real symbol: R$ active: true all_categories: summary: Todas as categorias description: Exemplo de resposta contendo categorias de despesa e receita. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a description: Aluguel pass_through: false - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 description: Comissões a Repassar pass_through: true - id: d4c8f9fc-22aa-4568-a281-a34d4bf67da3 description: Venda de Pacotes pass_through: false pagination: size: 20 has_next_page: false next_cursor: paginated_categories: summary: Categorias paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: d4c8f9fc-22aa-4568-a281-a34d4bf67da3 description: Venda de Pacotes pass_through: false pagination: size: 2 has_next_page: false next_cursor: category: summary: Categoria description: Exemplo de resposta de uma categoria de receita, com o grupo. value: id: d4c8f9fc-22aa-4568-a281-a34d4bf67da3 description: Venda de Pacotes pass_through: false group: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 name: Receitas Operacionais all_cities: summary: Todas as cidades description: Exemplo de resposta contendo cidades brasileiras e estrangeira. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a name: Miami, FL ibge: siafi: setec: - id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 name: Rio de Janeiro ibge: '3304557' siafi: '6001' setec: - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: São Paulo ibge: '3550308' siafi: '7107' setec: pagination: size: 20 has_next_page: false next_cursor: paginated_cities: summary: Cidades paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: São Paulo ibge: '3550308' siafi: '7107' setec: pagination: size: 2 has_next_page: false next_cursor: city: summary: Cidade description: Exemplo de resposta de uma cidade brasileira, com o estado e o país. value: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: São Paulo ibge: '3550308' siafi: '7107' setec: state: id: f6e0bbfe-44cc-478a-c4a3-c56f6de89fc5 acronym: SP name: São Paulo country: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 name: Brasil code: BR code_3: BRA sisbacen: 1058 all_sellers: summary: Todos os vendedores description: Exemplo de resposta contendo vendedores ativos e inativos. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a active: true created_at: '2024-03-15T10:30:00' - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 active: false created_at: '2023-11-02T16:45:00' pagination: size: 20 has_next_page: false next_cursor: paginated_sellers: summary: Vendedores paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 active: false created_at: '2023-11-02T16:45:00' pagination: size: 1 has_next_page: false next_cursor: seller: summary: Vendedor ativo description: Exemplo de resposta de um vendedor específico. value: id: f9d961b8-ea88-4346-8e52-afe94267417a active: true created_at: '2024-03-15T10:30:00' person: id: f9d961b8-ea88-4346-8e52-afe94267417a created_by: id: 212b54b8-27df-4859-80a9-79ad855bcd09 all_payment_methods: summary: Todas as formas de pagamento description: Exemplo de resposta contendo formas de pagamento do sistema e cadastradas pelo usuário. value: data: - id: 348e3bd9-f7ee-4a49-9be6-9a94b8b0a2f3 name: Cartão de Crédito system: true - id: 253484f0-3597-4e91-96a1-2ea87f4b8ab0 name: Cheque system: true - id: fc9f5c65-59d6-42bb-8dd1-a5c0e3e51ea9 name: Dinheiro system: true - id: f9d961b8-ea88-4346-8e52-afe94267417a name: Transferência Internacional system: false pagination: size: 20 has_next_page: false next_cursor: paginated_payment_methods: summary: Formas de pagamento paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: fc9f5c65-59d6-42bb-8dd1-a5c0e3e51ea9 name: Dinheiro system: true - id: f9d961b8-ea88-4346-8e52-afe94267417a name: Transferência Internacional system: false pagination: size: 2 has_next_page: false next_cursor: payment_method: summary: Dinheiro description: Exemplo de resposta de uma forma de pagamento específica. value: id: fc9f5c65-59d6-42bb-8dd1-a5c0e3e51ea9 name: Dinheiro system: true all_accounts: summary: Todas as contas e cartões description: Exemplo de resposta contendo uma conta corrente e um cartão de crédito. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a description: Banco do Brasil - Matriz kind: checking_account active: true currency: BRL initial_balance: 1500.0 bank_operation: agency: '1412' agency_digit: '5' number: '04640' digit: '2' pix_key: financeiro@agencia.com.br bill_expiration: bill_closing: - &511 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Cartão Corporativo kind: card_account active: true currency: BRL initial_balance: 0.0 bank_operation: agency: agency_digit: number: digit: pix_key: bill_expiration: 10 bill_closing: 1 pagination: size: 20 has_next_page: false next_cursor: paginated_accounts: summary: Contas e cartões paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *511 pagination: size: 1 has_next_page: false next_cursor: account: summary: Cartão de crédito description: Exemplo de resposta de uma conta específica. value: id: f9d961b8-ea88-4346-8e52-afe94267417a description: Banco do Brasil - Matriz kind: checking_account active: true currency: BRL initial_balance: 1500.0 bank_operation: agency: '1412' agency_digit: '5' number: '04640' digit: '2' pix_key: financeiro@agencia.com.br bill_expiration: bill_closing: bank: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 number: '001' name: Banco do Brasil owner: card_operator: companies: - id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 all_nf_rules: summary: Todas as regras da nota fiscal description: Exemplo de resposta contendo uma regra geral e uma regra restrita a produto e fornecedor. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a description: Regra padrão de pacotes representative_scope: any created_at: '2024-03-15T10:30:00' payer_rule: recipient: revenues: - du_fee - rav_fee - agency_service_fee discounts: - discount supplier_rule: recipient: revenues: [] discounts: [] representative_rule: recipient: revenues: [] discounts: [] - &512 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Seguro viagem - fornecedor emite representative_scope: none created_at: '2023-11-02T16:45:00' payer_rule: &676 recipient: revenues: [] discounts: [] supplier_rule: &677 recipient: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 revenues: - commission_amount - over_amount discounts: [] representative_rule: &678 recipient: revenues: [] discounts: [] pagination: size: 20 has_next_page: false next_cursor: paginated_nf_rules: summary: Regras da nota fiscal paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *512 pagination: size: 1 has_next_page: false next_cursor: nf_rule: summary: Regra padrão de pacotes description: Exemplo de resposta de uma regra de nota fiscal específica. value: id: f9d961b8-ea88-4346-8e52-afe94267417a description: Regra padrão de pacotes representative_scope: any created_at: '2024-03-15T10:30:00' product: supplier: representative: payer: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 created_by: id: 212b54b8-27df-4859-80a9-79ad855bcd09 payer_rule: recipient: revenues: - du_fee - rav_fee - agency_service_fee discounts: - discount supplier_rule: recipient: revenues: [] discounts: [] representative_rule: recipient: revenues: [] discounts: [] all_tasks: summary: Todas as tarefas description: Exemplo de resposta contendo tarefas pendente e concluída. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a number: 1042 title: Enviar voucher para o cliente description: Confirmar os dados do embarque antes do envio. due: '2024-04-01T09:00:00' completed_at: visualized: false deleted: false created_at: '2024-03-15T10:30:00' - &513 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 number: 1043 title: Cobrar segunda parcela description: due: '2024-04-05T14:00:00' completed_at: '2024-04-05T11:12:00' visualized: true deleted: false created_at: '2024-03-15T10:30:00' pagination: size: 20 has_next_page: false next_cursor: paginated_tasks: summary: Tarefas paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *513 pagination: size: 1 has_next_page: false next_cursor: task_detail: summary: Tarefa com histórico e campos personalizados description: Exemplo de consulta de uma tarefa com o histórico e os campos personalizados. value: id: f9d961b8-ea88-4346-8e52-afe94267417a number: 1042 title: Enviar voucher para o cliente description: Confirmar os dados do embarque antes do envio. due: '2024-04-01T09:00:00' completed_at: visualized: false deleted: false created_at: '2024-03-15T10:30:00' category: id: 11 assignee: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 person: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 company: id: d4c8f9fc-22aa-4568-a281-a34d4bf67da3 created_by: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 history: - created_at: '2024-03-20T14:05:00' text: Cliente confirmou os dados do embarque. historic: person: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 - created_at: '2024-03-15T10:30:00' text: historic: Tarefa cadastrada person: custom_fields: - id: 123 value: Alta create_task: summary: Tarefa com todos os campos description: Exemplo de criação de uma tarefa com pessoa vinculada, comentário inicial e campo personalizado. value: company_identifier: '46598887000162' title: Enviar voucher para o cliente description: Confirmar os dados do embarque antes do envio. due: '2024-04-01T09:00:00' category_id: 11 assignee_id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 person_id: c3b7e8eb-1199-4457-9170-923c3fe56c92 history: - text: Tarefa aberta pelo site. custom_fields: - id: 123 value: Alta create_required_fields_task: summary: Tarefa só com os campos obrigatórios description: Exemplo de criação com o mínimo que o Monde exige — título, vencimento, categoria e responsável. value: company_identifier: '46598887000162' title: Cobrar segunda parcela due: '2024-04-05T14:00:00' category_id: 11 assignee_id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 update_task: summary: Alteração de tarefa description: Exemplo de alteração do título, do vencimento, do responsável e de um campo personalizado de uma tarefa já cadastrada. value: title: Enviar voucher atualizado para o cliente due: '2024-04-02T09:00:00' assignee_id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 custom_fields: - id: 123 value: Urgente complete_task: summary: Conclusão de tarefa description: Exemplo de conclusão de uma tarefa, sem alterar nenhum outro campo. value: completed: true written_task_reference: summary: Tarefa gravada, sem permissão de leitura description: 'Resposta da alteração e do comentário para a credencial que não tem a permissão "Ler todas as tarefas" na empresa da tarefa: traz apenas o id da tarefa.' value: id: f9d961b8-ea88-4346-8e52-afe94267417a create_task_historic: summary: Comentário na tarefa description: Exemplo de comentário acrescentado ao histórico de uma tarefa existente. value: text: Cliente confirmou os dados do embarque. all_task_categories: summary: Todas as categorias de tarefas description: Exemplo de resposta contendo categorias de tarefas. value: data: - id: 12 name: Cobrança - id: 42 name: Emissão - id: 7 name: Reserva pagination: size: 20 has_next_page: false next_cursor: task_category: summary: Categoria de tarefa description: Exemplo de resposta com uma categoria de tarefa específica. value: id: 42 name: Emissão all_travels: summary: Todas as viagens description: Exemplo de resposta contendo viagens a iniciar e finalizada. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a number: '000042' description: Lua de mel - Cancún situation: upcoming start_date: '2024-05-10' end_date: '2024-05-24' observations: Cliente prefere assentos na janela. created_at: '2024-03-15T10:30:00' - &514 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 number: '000041' description: Congresso - São Paulo situation: finished start_date: '2024-02-05' end_date: '2024-02-09' observations: created_at: '2024-01-10T09:00:00' pagination: size: 20 has_next_page: false next_cursor: paginated_travels: summary: Viagens paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *514 pagination: size: 1 has_next_page: false next_cursor: travel: summary: Detalhe da viagem description: Exemplo de viagem com referências às vendas e aos passageiros vinculados. value: id: f9d961b8-ea88-4346-8e52-afe94267417a number: '000042' description: Lua de mel - Cancún situation: upcoming start_date: '2024-05-10' end_date: '2024-05-24' observations: Cliente prefere assentos na janela. created_at: '2024-03-15T10:30:00' customer: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 seller: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 company: id: d4c8f9fc-22aa-4568-a281-a34d4bf67da3 created_by: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 sales: - id: 212b54b8-27df-4859-80a9-79ad855bcd09 - id: 3f2a1b0c-9d8e-4f6a-8b7c-6d5e4f3a2b1c passengers: - id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 - id: a7c9b1d3-4e5f-4a6b-8c9d-0e1f2a3b4c5d all_quotes: summary: Todos os orçamentos description: Exemplo de resposta contendo orçamentos ativo e desativado. value: data: - id: 42 title: Cancún subtitle: Lua de mel - 14 noites details: Pacote com aéreo, hospedagem all inclusive e traslados. valid_until: '2024-05-31' active: true public_url: https://suaviagem.app/a1B2c3-cancun internal_observations: Cliente pediu retorno até sexta. created_at: '2024-03-15T10:30:00' - &515 id: 41 title: Buenos Aires subtitle: Feriado prolongado details: Aéreo + hotel 4 estrelas no centro. valid_until: '2024-02-28' active: false public_url: https://suaviagem.app/x9Y8z7-buenos-aires internal_observations: created_at: '2024-01-10T09:00:00' pagination: size: 20 has_next_page: false next_cursor: paginated_quotes: summary: Orçamentos paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *515 pagination: size: 1 has_next_page: false next_cursor: quote: summary: Orçamento de lua de mel description: Exemplo de resposta de um orçamento específico. value: id: 42 title: Cancún subtitle: Lua de mel - 14 noites details: Pacote com aéreo, hospedagem all inclusive e traslados. valid_until: '2024-05-31' active: true public_url: https://suaviagem.app/a1B2c3-cancun internal_observations: Cliente pediu retorno até sexta. created_at: '2024-03-15T10:30:00' person: id: 212b54b8-27df-4859-80a9-79ad855bcd09 company: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 all_invoice_rules: summary: Todas as regras de faturamento description: Exemplo de resposta contendo regras de fornecedor e de cliente. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a description: Faturamento semanal aéreo person_kind: supplier destination: national movement: to_pay cost_center: closing: period_kind: weekly week_start: monday custom_period: custom_period_due_date: date_to_use: after_checkin due_date: days_to_skip: 5 on_weekend: stay - &516 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Cliente corporativo mensal person_kind: customer destination: every movement: every_movement cost_center: Comercial closing: &679 period_kind: monthly week_start: custom_period: custom_period_due_date: date_to_use: after_sale_date due_date: &680 days_to_skip: 10 on_weekend: next pagination: size: 20 has_next_page: false next_cursor: paginated_invoice_rules: summary: Regras de faturamento paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *516 pagination: size: 1 has_next_page: false next_cursor: invoice_rule: summary: Faturamento semanal aéreo description: Exemplo de resposta de uma regra de faturamento específica. value: id: f9d961b8-ea88-4346-8e52-afe94267417a description: Faturamento semanal aéreo person_kind: supplier destination: national movement: to_pay cost_center: closing: period_kind: weekly week_start: monday custom_period: custom_period_due_date: date_to_use: after_checkin due_date: days_to_skip: 5 on_weekend: stay person: product: supplier: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 requester: all_integrations: summary: Todas as integrações description: Exemplo de resposta contendo integrações de representante e buscador. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a description: BRT Consolidadora active: true vendor_name: BRT - &517 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Buscador de tarifas active: false vendor_name: pagination: size: 20 has_next_page: false next_cursor: paginated_integrations: summary: Integrações paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *517 pagination: size: 1 has_next_page: false next_cursor: integration: summary: Integração ativa description: Exemplo de resposta de uma integração específica. value: id: f9d961b8-ea88-4346-8e52-afe94267417a description: BRT Consolidadora active: true vendor_name: BRT person: company: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 all_people: summary: Todas as pessoas description: Exemplo de resposta da consulta contendo pessoa física e pessoa jurídica. value: data: - id: f9d961b8-ea88-4346-8e52-afe94267417a code: 1042 person_kind: individual name: Carlos Souza legal_name: cpf_cnpj: '12345678909' gender: male birthdate: '1985-07-22' rg_ie: '203456789' city_inscription: tax_identification_number: passport_number: BR123456 passport_expiration_date: '2028-10-01' foreigner: false foreign_identity_document: email: carlos@exemplo.com.br phone_number: '4133334444' mobile_number: '41999998888' business_phone: '4130302020' website: cvc_code: observations: Cliente preferencial. charge_billet_fee: false created_at: '2021-11-05T10:30:00' address: &519 postal_code: '80010000' street: Rua das Flores street_number: '100' neighborhood: Centro additional_info: Apto 12 city: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 additional_data: &520 marital_status: married rg_emitter: SSP/PR rg_issue_date: '2008-03-15' birth_certificate: mother_name: Ana Souza last_contacts: &521 first_sale_date: '2022-01-10' last_sale_date: '2024-03-01' last_departure_date: '2024-03-15' last_return_date: '2024-03-22' last_task_update_at: '2024-03-18T15:12:00' tax_withholding: airline: - &518 id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 code: 87 person_kind: company name: Operadora de Turismo Ltda legal_name: Operadora de Turismo S.A. cpf_cnpj: '12345678000199' gender: birthdate: rg_ie: '9012345678' city_inscription: '1234567' tax_identification_number: passport_number: passport_expiration_date: foreigner: false foreign_identity_document: email: contato@operadora.com.br phone_number: '4133334444' mobile_number: business_phone: website: https://www.operadora.com.br cvc_code: observations: charge_billet_fee: true created_at: '2019-04-18T08:15:00' address: &681 postal_code: '80010000' street: Rua das Flores street_number: '100' neighborhood: Centro additional_info: city: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 additional_data: last_contacts: &682 first_sale_date: last_sale_date: last_departure_date: last_return_date: last_task_update_at: tax_withholding: &683 iss: true ir: false pis_cofins_csll: false airline: pagination: size: 20 has_next_page: false next_cursor: paginated_people: summary: Pessoas paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *518 pagination: size: 1 has_next_page: false next_cursor: person_detail: summary: Consulta de pessoa por ID description: Exemplo da consulta completa de uma pessoa física, com os blocos agrupados e as entidades fracas. value: id: f9d961b8-ea88-4346-8e52-afe94267417a code: 1042 person_kind: individual name: Carlos Souza legal_name: cpf_cnpj: '12345678909' gender: male birthdate: '1985-07-22' rg_ie: '203456789' city_inscription: tax_identification_number: passport_number: BR123456 passport_expiration_date: '2028-10-01' foreigner: false foreign_identity_document: email: carlos@exemplo.com.br phone_number: '4133334444' mobile_number: '41999998888' business_phone: '4130302020' website: cvc_code: observations: Cliente preferencial. charge_billet_fee: false created_at: '2021-11-05T10:30:00' address: *519 additional_data: *520 last_contacts: *521 tax_withholding: airline: birthplace: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 seller: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 promoter: created_by: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 contacts: - role: Financeiro person: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 labels: - id: 2d0b3c4e-5f60-4172-9384-0b1c2d3e4f50 custom_fields: - id: 123 value: Indicação attachments: - id: 3e1c4d5f-6071-4283-a495-1c2d3e4f5061 description: RG digitalizado extension: pdf content_type: application/pdf download_url: https://web.monde.com.br/api/v3/attachments/3e1c4d5f-6071-4283-a495-1c2d3e4f5061/download credit_cards: - name: Cartão Corporativo last_digits: '1111' expiration_date: '2030-05-01' issuer: Visa ticket_card: kandir_law: create_individual_person: summary: Cadastro de pessoa física description: Exemplo de cadastro de pessoa física com endereço, naturalidade, documentos e filiação. value: person_kind: individual external_id: CRM-4471 name: Maria da Silva cpf_cnpj: '38107867807' rg_ie: '461196037' gender: female birthdate: '1990-02-12' passport_number: FG225776 passport_expiration_date: '2035-12-01' foreigner: false email: maria@exemplo.com phone_number: '1134567890' mobile_number: '11934567890' business_phone: '1134567891' city_inscription: '123456789' observations: Cliente preferencial. charge_billet_fee: false address: postal_code: '04078011' street: Avenida Divino Salvador street_number: '5000' neighborhood: Planalto Paulista additional_info: Casa 2 city_ibge: '3550308' birthplace: city_ibge: '3550308' additional_data: marital_status: married rg_emitter: SSP rg_issue_date: '2010-03-01' birth_certificate: '093456 01 55 2010 1 00123 456 7890123-45' mother_name: Joana da Silva seller: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 labels: - id: 2d0b3c4e-5f60-4172-9384-0b1c2d3e4f50 contacts: - role: Financeiro person: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 custom_fields: - id: 123 value: Indicação create_company_person: summary: Cadastro de pessoa jurídica description: Exemplo de cadastro de pessoa jurídica com retenção de impostos e dados de companhia aérea. value: person_kind: company external_id: CRM-9902 name: Epic Journey legal_name: Epic Journey S.A. cpf_cnpj: '50559280000140' rg_ie: '123456789012' foreigner: false email: contato@epicjourney.com.br phone_number: '1134567890' website: https://epicjourney.com.br city_inscription: '987654321' tax_identification_number: US1234567 charge_billet_fee: true address: postal_code: '04078011' street: Avenida Divino Salvador street_number: '5000' city_ibge: '3550308' tax_withholding: iss: true ir: false pis_cofins_csll: true airline: code: JJ number: '957' updated_person_reference: summary: Pessoa alterada, sem permissão de leitura description: 'Resposta da alteração para a credencial que não tem a permissão "Ler todas as pessoas": traz apenas o id da pessoa alterada.' value: id: f9d961b8-ea88-4346-8e52-afe94267417a update_person: summary: Alteração de pessoa description: Exemplo de alteração de contato, endereço, marcadores e campos personalizados de uma pessoa já cadastrada. value: name: Maria da Silva Souza email: maria.souza@exemplo.com mobile_number: '11934567890' observations: Cliente preferencial. address: postal_code: '04078011' street: Avenida Divino Salvador street_number: '5200' city_ibge: '3550308' labels: - id: 2d0b3c4e-5f60-4172-9384-0b1c2d3e4f50 contacts: - role: Financeiro person: id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 custom_fields: - id: 123 value: Indicação all_labels: summary: Todos os marcadores description: Exemplo de resposta contendo todos os marcadores cadastrados. value: data: - id: 2d0b3c4e-5f60-4172-9384-0b1c2d3e4f50 name: VIP - id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 name: Corporativo - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 name: Lua de mel pagination: size: 20 has_next_page: false next_cursor: paginated_labels: summary: Marcadores paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - id: c3b7e8eb-1199-4457-9170-923c3fe56c92 name: Lua de mel pagination: size: 2 has_next_page: false next_cursor: label: summary: Marcador VIP description: Exemplo de resposta de um marcador específico. value: id: 2d0b3c4e-5f60-4172-9384-0b1c2d3e4f50 name: VIP bills_list: summary: Contas a receber e a pagar description: Exemplo de resposta contendo uma conta a receber (fatura de cliente) e uma conta a pagar (fatura de cartão). value: data: - id: 212b54b8-27df-4859-80a9-79ad855bcd09 number: '12345' transaction_kind: credit kind: customer_invoice description: Fatura cliente - Janeiro/2026 document: NF 1001 invoice_number: 42 amount: 1500.0 final_amount: 1500.0 issue_date: '2026-01-10' due_date: '2026-02-10' settlement_date: created_at: '2026-01-10T13:45:36' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: without_periodicity recurrence_kind: non_recurrent recurrence_group_id: observations: billet: &684 status: registered number: 12345 our_number: '000000012345' amount: 1500.0 demonstrative: Pagável em qualquer banco até o vencimento. rejection_reason: account: id: d4e5f6a7-b8c9-4011-e2f3-a4b5c6d7e8f9 check: card: - &522 id: 9f8e7d6c-5b4a-4938-8271-6f5e4d3c2b1a number: '67890' transaction_kind: debit kind: credit_card_invoice description: Fatura Mastercard document: invoice_number: amount: 5577.39 final_amount: 5577.39 issue_date: '2026-04-18' due_date: '2026-05-15' settlement_date: '2026-05-15' created_at: '2026-04-18T13:45:36' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: monthly recurrence_kind: installment recurrence_group_id: 5f1c8a2e-9b3d-4c7a-8e1f-2a3b4c5d6e7f observations: billet: check: card: &685 brand: MasterCard last_digits: '4117' authorization: '600551159' pagination: size: 20 has_next_page: false next_cursor: paginated_bills: summary: Contas paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *522 pagination: size: 1 has_next_page: false next_cursor: receivable_bill_single: summary: Conta a receber (fatura de cliente) description: Exemplo de detalhe de uma fatura de cliente, com categorias, movimentações, rateios, itens, anexos e campos personalizados. value: id: 212b54b8-27df-4859-80a9-79ad855bcd09 number: '12345' transaction_kind: credit kind: customer_invoice description: Fatura cliente - Janeiro/2026 document: NF 1001 invoice_number: 42 amount: 1500.0 final_amount: 1500.0 issue_date: '2026-01-10' due_date: '2026-02-10' settlement_date: created_at: '2026-01-10T13:45:36' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: without_periodicity recurrence_kind: non_recurrent recurrence_group_id: observations: billet: status: registered number: 12345 our_number: '000000012345' amount: 1500.0 demonstrative: Pagável em qualquer banco até o vencimento. rejection_reason: account: id: d4e5f6a7-b8c9-4011-e2f3-a4b5c6d7e8f9 check: card: sale: person: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 company: id: 0a1b2c3d-4e5f-4677-8899-aabbccddeeff account: id: c3d4e5f6-a7b8-4900-d1e2-f3a4b5c6d7e8 payment_method: id: a1a2a3a4-b5b6-4788-c9c0-d1d2d3d4d5d6 operation: invoice_rule: id: 9d0e1f2a-3b4c-4d5e-8f6a-7b8c9d0e1f2a created_by: id: e5f6a7b8-c9d0-4122-f3a4-b5c6d7e8f9a0 movements: - id: 3f2a6d7e-1b2c-4d5e-8f90-a1b2c3d4e5f6 apportionments: per_company: - percentage: 50.0 amount: 750.0 company: id: f6a7b8c9-d0e1-4233-a4b5-c6d7e8f9a0b1 - percentage: 50.0 amount: 750.0 company: id: a7b8c9d0-e1f2-4344-b5c6-d7e8f9a0b1c2 per_cost_center: - percentage: 100.0 amount: 1500.0 cost_center: id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f custom_fields: - id: 123 value: Matriz attachments: - id: b8c9d0e1-f2a3-4455-c6d7-e8f9a0b1c2d3 description: contrato.pdf extension: pdf content_type: application/pdf download_url: https://web.monde.com.br/api/v3/attachments/b8c9d0e1-f2a3-4455-c6d7-e8f9a0b1c2d3/download categories: - amount: 1500.0 category: id: b3c4d5e6-f7a8-4b9c-0d1e-2f3a4b5c6d7e commissions: [] items: - description: Pacote turístico cost_center: Alteração de pax checked: false amount: 1294.72 sale: id: 5e6f7a8b-9c0d-4e1f-8a2b-3c4d5e6f7a8b sale_product: id: f0a1b2c3-d4e5-4966-a7b8-c9d0e1f2a3b4 cvc_statement: - description: cost_center: checked: false amount: 205.28 sale: sale_product: cvc_statement: id: 6a7b8c9d-0e1f-4a2b-9c3d-4e5f6a7b8c9d credit_card_items: [] card_invoice_bill_single: summary: Conta a pagar (fatura de cartão) description: Exemplo de detalhe de uma fatura de cartão, com as cobranças em credit_card_items e items vazio. value: id: 9f8e7d6c-5b4a-4938-8271-6f5e4d3c2b1a number: '67890' transaction_kind: debit kind: credit_card_invoice description: Fatura Mastercard document: invoice_number: amount: 5577.39 final_amount: 5577.39 issue_date: '2026-04-18' due_date: '2026-05-15' settlement_date: '2026-05-15' created_at: '2026-04-18T13:45:36' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: monthly recurrence_kind: installment recurrence_group_id: 5f1c8a2e-9b3d-4c7a-8e1f-2a3b4c5d6e7f observations: billet: check: card: brand: MasterCard last_digits: '4117' authorization: '600551159' sale: person: id: b2c3d4e5-f6a7-4809-c0d1-e2f3a4b5c6d7 company: id: 0a1b2c3d-4e5f-4677-8899-aabbccddeeff account: id: c0d1e2f3-a4b5-4677-d8e9-f0a1b2c3d4e5 payment_method: id: d1d2d3d4-e5e6-4900-f1f2-a3a4a5a6a7a8 operation: invoice_rule: created_by: id: e5f6a7b8-c9d0-4122-f3a4-b5c6d7e8f9a0 movements: - id: 7c8d9e0f-2a3b-4c5d-9e0f-1a2b3c4d5e6f apportionments: per_company: [] per_cost_center: [] custom_fields: [] attachments: [] categories: [] commissions: [] items: [] credit_card_items: - date: '2026-04-08' amount: -717.91 checked: false movement: id: 3e8a94e5-128a-4bcc-8e0d-c17025b0286a bill: id: d1e2f3a4-b5c6-4788-e9f0-a1b2c3d4e5f6 - date: '2026-04-08' amount: -272.0 checked: false movement: id: 5c9b07f2-3d61-4a88-9f2e-70b4c1a5d3e8 bill: id: e2f3a4b5-c6d7-4899-f0a1-b2c3d4e5f6a7 vendor_invoice_bill_single: summary: Conta a pagar (fatura de fornecedor) description: Exemplo de detalhe de uma fatura de fornecedor, com os itens em items e credit_card_items vazio. value: id: 3a2b1c0d-9e8f-4a7b-8c6d-5e4f3a2b1c0d number: '291' transaction_kind: debit kind: vendor_invoice description: Fatura Fornecedor Avulsa document: invoice_number: amount: 4.0 final_amount: 4.0 issue_date: '2026-07-13' due_date: '2026-07-13' settlement_date: created_at: '2026-07-13T14:42:00' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: without_periodicity recurrence_kind: non_recurrent recurrence_group_id: observations: billet: check: card: sale: person: id: d1e2f3a4-b5c6-4788-e9f0-a1b2c3d4e5f6 company: id: 0a1b2c3d-4e5f-4677-8899-aabbccddeeff account: payment_method: operation: invoice_rule: created_by: id: e5f6a7b8-c9d0-4122-f3a4-b5c6d7e8f9a0 movements: [] apportionments: per_company: [] per_cost_center: [] custom_fields: [] attachments: [] categories: [] commissions: [] items: - description: Diárias de Hospedagem cost_center: checked: false amount: -4.0 sale: id: 8b9c0d1e-2f3a-4b5c-8d6e-7f8a9b0c1d2e sale_product: id: f0a1b2c3-d4e5-4966-a7b8-c9d0e1f2a3b4 cvc_statement: credit_card_items: [] commission_bill_single: summary: Conta a pagar (comissão) description: Exemplo de detalhe de uma conta de comissão, com as linhas em commissions e os arrays de item vazios. value: id: 6f5e4d3c-2b1a-4098-8f7e-6d5c4b3a2109 number: '170114' transaction_kind: debit kind: commission description: Comissão - Julho/2026 document: invoice_number: amount: 317.1 final_amount: 317.1 issue_date: '2026-07-01' due_date: '2026-07-31' settlement_date: created_at: '2026-07-01T09:00:00' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: without_periodicity recurrence_kind: non_recurrent recurrence_group_id: observations: billet: check: card: sale: person: id: b1c2d3e4-f5a6-4788-b9c0-d1e2f3a4b5c6 company: id: 0a1b2c3d-4e5f-4677-8899-aabbccddeeff account: payment_method: operation: invoice_rule: created_by: id: e5f6a7b8-c9d0-4122-f3a4-b5c6d7e8f9a0 movements: [] apportionments: per_company: [] per_cost_center: [] custom_fields: [] attachments: [] categories: [] commissions: - description: 'Plano: Carla Côrte Xavier Flor 10%, meta do mês' amount: 205.28 retained_amount: 0.0 balance: 205.28 person: id: c1d2e3f4-a5b6-4788-c9d0-e1f2a3b4c5d6 - description: 'Plano: Carla Côrte Xavier Flor 10%, meta do mês' amount: 111.82 retained_amount: 0.0 balance: 111.82 person: id: c1d2e3f4-a5b6-4788-c9d0-e1f2a3b4c5d6 items: [] credit_card_items: [] all_account_movements: summary: Todas as movimentações description: Exemplo de resposta com uma liquidação em cartão e uma transferência entre contas. value: data: - id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 date: '2026-01-26' amount: -9112.17 transaction_kind: debit description: check: card: &686 brand: MasterCard last_digits: '4117' authorization: '600551159' - &523 id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 date: '2026-01-26' amount: 63063.0 transaction_kind: credit description: Repasse diário check: card: pagination: size: 20 has_next_page: false next_cursor: paginated_account_movements: summary: Movimentações paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *523 pagination: size: 1 has_next_page: false next_cursor: settlement_account_movement: summary: Liquidação em cartão description: Exemplo de movimentação que liquida uma conta a pagar em cartão de crédito. value: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 date: '2026-01-26' amount: -9112.17 transaction_kind: debit description: check: card: brand: MasterCard last_digits: '4117' authorization: '600551159' account: id: f9d961b8-ea88-4346-8e52-afe94267417a payment_method: id: c3b7e8eb-1199-4457-9170-923c3fe56c92 bill: id: 212b54b8-27df-4859-80a9-79ad855bcd09 credit_card_invoice: counterpart_account: transfer_account_movement: summary: Transferência entre contas description: Exemplo de movimentação de transferência, com a referência para o movimento do outro lado. value: id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 date: '2026-01-26' amount: 63063.0 transaction_kind: credit description: Repasse diário check: card: account: id: f9d961b8-ea88-4346-8e52-afe94267417a payment_method: bill: credit_card_invoice: counterpart_account: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 all_refunds: summary: Todos os reembolsos description: Exemplo de resposta com um reembolso de fornecedor e um reembolso de cliente. value: data: - id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 refund_type: vendor amount: -91.36 description: Reembolso Incentivo issue_date: '2021-06-16' due_date: '2021-06-17' - &524 id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 refund_type: customer amount: -1208.89 description: Reembolso devido ao cancelamento da viagem issue_date: '2022-04-09' due_date: '2022-05-24' pagination: size: 20 has_next_page: false next_cursor: paginated_refunds: summary: Reembolsos paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *524 pagination: size: 1 has_next_page: false next_cursor: vendor_refund: summary: Reembolso de fornecedor description: Exemplo de reembolso de fornecedor, já com conta a pagar ou a receber. value: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 refund_type: vendor amount: -91.36 description: Reembolso Incentivo issue_date: '2021-06-16' due_date: '2021-06-17' sale: &687 id: 9f3c4f0e-6a3f-4c0e-8f4a-2c9b1d5e7a10 sale_product: &688 id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 person: &689 id: d4e7b2a9-1f83-4c56-9e0b-7a3d5f1c8b64 company: &690 id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 bill: &691 id: 212b54b8-27df-4859-80a9-79ad855bcd09 customer_refund: summary: Reembolso de cliente description: Exemplo de reembolso de cliente ainda sem conta a pagar ou a receber. value: id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 refund_type: customer amount: -1208.89 description: Reembolso devido ao cancelamento da viagem issue_date: '2022-04-09' due_date: '2022-05-24' sale: &692 id: 3f8a1c92-64d5-4b0e-9a77-1e5c8d2b4f63 sale_product: &693 id: e4c7a1b8-6d39-4f52-8b0a-2f5e9c3d7148 person: &694 id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 company: &695 id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 bill: all_cvc_statements: summary: Todos os recibos description: Exemplo de resposta com um recibo lançado em OPFAX parcial, em que o saldo consolidado do par difere do valor do movimento, e um recibo baixado. value: data: - id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 receipt_number: '89100000164635' movement_date: '2019-12-29' sale_date: '2019-12-29T18:00:00' cancellation_date: boarding_date: '2020-04-10' return_date: '2020-04-15' product_name: Hotel Internacional package_name: MADRI total_payments: 2068.04 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 0.0 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 0.0 opfax: 1826.4 opfax_balance: 200.9 balance: 0.0 imported: true edited: false checked: false deleted: false created_at: '2019-12-30T12:14:02' - &525 id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 receipt_number: '89930000112199' movement_date: '2019-12-26' sale_date: '2019-12-26T18:00:00' cancellation_date: boarding_date: '2020-09-01' return_date: '2020-09-09' product_name: Excursões Internacionais package_name: SANTIAGO total_payments: 347.89 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 111.33 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 34.78 opfax: 0.0 opfax_balance: 0.0 balance: 76.55 imported: true edited: false checked: false deleted: false created_at: '2019-12-30T08:45:48' pagination: size: 20 has_next_page: false next_cursor: paginated_cvc_statements: summary: Recibos paginados description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *525 pagination: size: 1 has_next_page: false next_cursor: cvc_statement_with_sale: summary: Recibo com venda vinculada description: Exemplo de recibo baixado, com venda, produto da venda e nota fiscal. value: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 receipt_number: '89930000112199' movement_date: '2019-12-26' sale_date: '2019-12-26T18:00:00' cancellation_date: boarding_date: '2020-09-01' return_date: '2020-09-09' product_name: Excursões Internacionais package_name: SANTIAGO total_payments: 347.89 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 111.33 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 34.78 opfax: 0.0 opfax_balance: 0.0 balance: 76.55 imported: true edited: false checked: false deleted: false created_at: '2019-12-30T08:45:48' movement_kind: &696 name: BAIXA DE RECIBO company: &697 id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 contractor: &698 id: d4e7b2a9-1f83-4c56-9e0b-7a3d5f1c8b64 seller: &699 id: 9f3c4f0e-6a3f-4c0e-8f4a-2c9b1d5e7a10 intermediary: sale: &700 id: 212b54b8-27df-4859-80a9-79ad855bcd09 sale_product: &701 id: 3f8a1c92-64d5-4b0e-9a77-1e5c8d2b4f63 nf: &702 id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 created_by: &703 id: 1c4d8f2a-5b73-4e91-a6c8-3d90f2e5b174 manual_adjustment_cvc_statement: summary: Ajuste manual sem venda description: 'Exemplo de ajuste manual: movimento sem número de recibo, sem datas de viagem e sem venda vinculada.' value: id: 0f9e5b3d-7a21-4c68-b0d4-9e2f6a1c4b85 receipt_number: movement_date: '2020-09-15' sale_date: cancellation_date: boarding_date: return_date: product_name: package_name: total_payments: 0.0 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 0.0 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 0.0 opfax: 0.0 opfax_balance: 0.0 balance: 12.32 imported: true edited: false checked: false deleted: false created_at: '2020-09-16T16:16:09' movement_kind: &704 name: AJUSTE MANUAL company: &705 id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 contractor: seller: intermediary: sale: sale_product: nf: created_by: &706 id: 1c4d8f2a-5b73-4e91-a6c8-3d90f2e5b174 all_nfs: summary: Todas as notas fiscais description: Exemplo de resposta com uma nota cancelada e uma nota emitida. value: data: - id: c71a5d38-0b64-4e29-9d17-6f2e8a4b3c05 number: 982680 series: '1' issue_date: '2023-02-27' status: canceled operation_nature: Prestação de Serviço cfop: nbs_code: document: '9572810403321' manual_emission: true amount: 1840.0 service_amount: 1840.0 net_amount: 1748.0 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: Nota cancelada a pedido do tomador. printed_at: canceled_at: '2023-03-02T09:14:52' created_at: '2023-02-27T10:03:41' recipient: &530 kind: supplier name: Azul Linhas Aéreas Brasileiras S.A. cpf_cnpj: '09296295000160' state_inscription: '2536987410' city_inscription: '1023456' postal_code: '06460040' street: Avenida Marcos Penteado de Ulhoa Rodrigues street_number: '939' neighborhood: Tamboré additional_info: phone: "(11) 4831-1245" email: fiscal@voeazul.com.br foreign: false foreign_document: city: id: 6d2b8e04-91a7-4c35-8f60-2a7d1c9e5b38 taxes: &531 retain_iss: true retain_ir: false retain_pis_cofins_csll: false iss_percentage: 5.0 iss_amount: 92.0 pis_percentage: 0.0 pis_amount: 0.0 cofins_percentage: 0.0 cofins_amount: 0.0 ir_percentage: 0.0 ir_amount: 0.0 csll_percentage: 0.0 csll_amount: 0.0 nfse: &532 number: '13302' batch: '8471' protocol: '202302271003410001' verification_code: K2QW71PZ processed_at: '2023-02-27T10:05:12' errors: - &526 id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 number: 982677 series: '1' issue_date: '2023-01-13' status: issued operation_nature: Prestação de Serviço cfop: nbs_code: document: manual_emission: false amount: 113.48 service_amount: 2613.82 net_amount: 113.48 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: printed_at: '2023-02-09T17:26:29' canceled_at: created_at: '2023-02-09T17:16:14' recipient: &527 kind: payer name: Esferatur Passagens e Turismo Ltda cpf_cnpj: '76530260000130' state_inscription: city_inscription: postal_code: '89010300' street: Alameda Rio Branco street_number: '238' neighborhood: Jardim Blumenau additional_info: 1º andar phone: "(47) 3221-0100" email: foreign: false foreign_document: city: id: 0a6a2f1b-77c4-4f0e-9c2a-5d3b8e6f1a92 taxes: &528 retain_iss: false retain_ir: false retain_pis_cofins_csll: false iss_percentage: 5.0 iss_amount: 5.67 pis_percentage: 0.0 pis_amount: 0.0 cofins_percentage: 0.0 cofins_amount: 0.0 ir_percentage: 0.0 ir_amount: 0.0 csll_percentage: 0.0 csll_amount: 0.0 nfse: &529 number: '13299' batch: protocol: verification_code: BFLXB50A processed_at: '2023-02-09T17:26:29' errors: pagination: size: 20 has_next_page: false next_cursor: paginated_nfs: summary: Notas fiscais paginadas description: Exemplo de resposta paginada demonstrando a segunda página de resultados. value: data: - *526 pagination: size: 1 has_next_page: false next_cursor: issued_nf: summary: Nota fiscal emitida description: Exemplo de nota fiscal emitida, com um item e as referências para a venda que a originou. value: id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 number: 982677 series: '1' issue_date: '2023-01-13' status: issued operation_nature: Prestação de Serviço cfop: nbs_code: document: manual_emission: false amount: 113.48 service_amount: 2613.82 net_amount: 113.48 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: printed_at: '2023-02-09T17:26:29' canceled_at: created_at: '2023-02-09T17:16:14' recipient: *527 taxes: *528 nfse: *529 person: &707 id: d4e7b2a9-1f83-4c56-9e0b-7a3d5f1c8b64 company: &708 id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 sale_product: &709 id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 sale: &710 id: 9f3c4f0e-6a3f-4c0e-8f4a-2c9b1d5e7a10 created_by: &711 id: 3c9d1f27-58ab-42e0-9b6d-0f7a4c2e8d15 canceled_by: items: - &712 description: Prestação de serviço de intermediação de venda de Passagem Aérea amount: 113.48 service_amount: 2613.82 approximate_taxes_amount: 0.0 canceled_nf: summary: Nota fiscal cancelada description: Exemplo de nota fiscal cancelada, emitida manualmente e sem vínculo com produto de venda. value: id: c71a5d38-0b64-4e29-9d17-6f2e8a4b3c05 number: 982680 series: '1' issue_date: '2023-02-27' status: canceled operation_nature: Prestação de Serviço cfop: nbs_code: document: '9572810403321' manual_emission: true amount: 1840.0 service_amount: 1840.0 net_amount: 1748.0 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: Nota cancelada a pedido do tomador. printed_at: canceled_at: '2023-03-02T09:14:52' created_at: '2023-02-27T10:03:41' recipient: *530 taxes: *531 nfse: *532 person: company: &713 id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 sale_product: sale: created_by: &714 id: 3c9d1f27-58ab-42e0-9b6d-0f7a4c2e8d15 canceled_by: &715 id: 3c9d1f27-58ab-42e0-9b6d-0f7a4c2e8d15 items: - &716 description: Prestação de serviço de intermediação de venda de Pacote amount: 1840.0 service_amount: 1840.0 approximate_taxes_amount: 0.0 all_logs: summary: Logs description: Retorna o histórico com uma edição, uma exportação de relatório e um cadastro gravado por uma requisição da API, sem autor. value: data: - id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 kind: edition origin: financeiro_categoria description: Valor de "10" para "20" created_at: '2026-08-05T09:12:33' - &533 id: c71a5d38-0b64-4e29-9d17-6f2e8a4b3c05 kind: export origin: vendas por produto description: Exportação de 128 registros created_at: '2026-08-05T08:41:07' - id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 kind: insertion origin: pessoa description: "Inserido via API pela credencial \"Integração Contabilidade\"\r\nNome: \"Maria Souza\"" created_at: '2026-08-04T23:05:12' pagination: size: 20 has_next_page: false next_cursor: paginated_logs: summary: Logs paginados description: Retorna a segunda página do histórico, com um log por página. value: data: - *533 pagination: size: 1 has_next_page: true next_cursor: eyJfcmFpbHMiOnsiZGF0YSI6WyIyMDI2LTAzLTEwIiwiNmIwZjdjMWUtMmQ0YS00ZjhiLTljMzEtNThhMGQ3ZTEzZjQyIl0sInB1ciI6ImFwaS92My9sb2dzI2luZGV4In19--5eba5fa50c894ec54e4c22226618cbcb0f7cf86b38dfcd77fdb701eaa23b8aa9 edition_log: summary: Log de edição description: Retorna uma alteração feita por uma pessoa, com as referências para o autor e para o registro auditado. value: id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 kind: edition origin: financeiro_categoria description: Valor de "10" para "20" created_at: '2026-08-05T09:12:33' person: &717 id: b2a6d7da-ff94-40e3-b069-812b2fd45b91 resource: &718 id: 9a1f7c30-1d55-4e0a-9a3b-77b0c2e4f118 system_log: summary: Log gravado pela API description: 'Retorna um cadastro gravado por uma requisição da API, sem autor: a credencial que o gravou é nomeada na primeira linha da descrição.' value: id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 kind: insertion origin: pessoa description: "Inserido via API pela credencial \"Integração Contabilidade\"\r\nNome: \"Maria Souza\"" created_at: '2026-08-04T23:05:12' person: resource: &719 id: 9f3c4f0e-6a3f-4c0e-8f4a-2c9b1d5e7a10 all_custom_fields: summary: Campos personalizados description: Retorna as definições de campos personalizados de vendas, com um campo do tipo lista e um campo de texto. value: data: - id: 123 resource: sales name: Centro de custo kind: choices required: true active: true choices: - Matriz - Filial - id: 124 resource: sales name: Observação interna kind: text required: false active: true choices: [] pagination: size: 20 has_next_page: false next_cursor: custom_field: summary: Campo personalizado description: Retorna a definição de um único campo personalizado, do tipo lista, com as opções cadastradas. value: id: 123 resource: sales name: Centro de custo kind: choices required: true active: true choices: - Matriz - Filial securitySchemes: bearerAuthentication: type: http scheme: bearer description: A credencial deve ser enviada no cabeçalho `Authorization` com o esquema `Bearer`. Veja a seção de [Autenticação](#tag/Autenticacao) para mais detalhes. commission_properties: commission_type: *1 commission_percentage: *2 commission_amount: *3 over_percentage: *4 over_value: *5 du_percentage: *6 rav_percentage: *7 representation_schema: type: object description: Representante vinculado a um fornecimento, com as condições comerciais próprias. properties: *534 supply_schema: type: object description: Fornecimento do produto, com o fornecedor e as condições comerciais negociadas com ele. properties: *535 insurance_scalars: document: *8 begin_date: *9 end_date: *10 destination: *11 status: *12 issue_date: *13 canceled_at: *14 observations: *15 included_services: *16 vendor_reservation_url: *17 currency: *18 exchange_rate: *19 commission_amount: *20 commission_percentage: *21 over_amount: *22 over_percentage: *23 over: *24 intermediary_commission_amount: *25 intermediary_commission_percentage: *26 intermediary_over_amount: *27 intermediary_over_percentage: *28 intermediary_over: *29 agency_service_fee: *30 agency_card_rate: *31 deductions: *32 discount_amount: *33 cc_rav_fee: *34 cruise_scalars: booking_number: *35 departure_date: *36 arrival_date: *37 ship_name: *38 cruise_destination: *39 accommodation_kind: *40 cabin_number: *41 cabin_kind: *42 cabin_category: *43 meal_plan: *44 status: *45 issue_date: *46 canceled_at: *47 observations: *48 included_services: *49 vendor_reservation_url: *50 currency: *51 exchange_rate: *52 commission_amount: *53 commission_percentage: *54 over_amount: *55 over_percentage: *56 over: *57 intermediary_commission_amount: *58 intermediary_commission_percentage: *59 intermediary_over_amount: *60 intermediary_over_percentage: *61 intermediary_over: *62 agency_service_fee: *63 agency_card_rate: *64 deductions: *65 discount_amount: *66 cc_rav_fee: *67 hotel_scalars: booking_number: *68 check_in: *69 check_out: *70 destination: *71 accommodation_kind: *72 room_category: *73 meal_plan: *74 nights: *75 status: *76 issue_date: *77 canceled_at: *78 observations: *79 included_services: *80 vendor_reservation_url: *81 currency: *82 exchange_rate: *83 commission_amount: *84 commission_percentage: *85 over_amount: *86 over_percentage: *87 over: *88 intermediary_commission_amount: *89 intermediary_commission_percentage: *90 intermediary_over_amount: *91 intermediary_over_percentage: *92 intermediary_over: *93 agency_service_fee: *94 agency_card_rate: *95 deductions: *96 discount_amount: *97 cc_rav_fee: *98 airline_ticket_scalars: locator: *99 destination: *100 status: *101 issue_date: *102 canceled_at: *103 observations: *104 included_services: *105 vendor_reservation_url: *106 currency: *107 exchange_rate: *108 commission_amount: *109 commission_percentage: *110 over_amount: *111 over_percentage: *112 over: *113 intermediary_commission_amount: *114 intermediary_commission_percentage: *115 intermediary_over_amount: *116 intermediary_over_percentage: *117 intermediary_over: *118 agency_service_fee: *119 agency_card_rate: *120 deductions: *121 discount_amount: *122 cc_rav_fee: *123 cc_du_fee: *124 train_ticket_scalars: document: *125 departure_date: *126 arrival_date: *127 status: *128 issue_date: *129 canceled_at: *130 observations: *131 included_services: *132 vendor_reservation_url: *133 currency: *134 exchange_rate: *135 commission_amount: *136 commission_percentage: *137 over_amount: *138 over_percentage: *139 over: *140 intermediary_commission_amount: *141 intermediary_commission_percentage: *142 intermediary_over_amount: *143 intermediary_over_percentage: *144 intermediary_over: *145 agency_service_fee: *146 agency_card_rate: *147 deductions: *148 discount_amount: *149 cc_rav_fee: *150 ground_transportation_scalars: document: *151 departure_date: *152 arrival_date: *153 status: *154 issue_date: *155 canceled_at: *156 observations: *157 included_services: *158 vendor_reservation_url: *159 currency: *160 exchange_rate: *161 commission_amount: *162 commission_percentage: *163 over_amount: *164 over_percentage: *165 over: *166 intermediary_commission_amount: *167 intermediary_commission_percentage: *168 intermediary_over_amount: *169 intermediary_over_percentage: *170 intermediary_over: *171 agency_service_fee: *172 agency_card_rate: *173 deductions: *174 discount_amount: *175 cc_rav_fee: *176 car_rental_scalars: document: *177 pickup_date: *178 pickup_location: *179 dropoff_date: *180 dropoff_location: *181 destination: *182 vehicle_category: *183 rental_days: *184 status: *185 issue_date: *186 canceled_at: *187 observations: *188 included_services: *189 vendor_reservation_url: *190 currency: *191 exchange_rate: *192 commission_amount: *193 commission_percentage: *194 over_amount: *195 over_percentage: *196 over: *197 intermediary_commission_amount: *198 intermediary_commission_percentage: *199 intermediary_over_amount: *200 intermediary_over_percentage: *201 intermediary_over: *202 agency_service_fee: *203 agency_card_rate: *204 deductions: *205 discount_amount: *206 cc_rav_fee: *207 travel_package_scalars: document: *208 begin_date: *209 end_date: *210 destination: *211 package_name: *212 transport: *213 status: *214 issue_date: *215 canceled_at: *216 observations: *217 included_services: *218 vendor_reservation_url: *219 currency: *220 exchange_rate: *221 commission_amount: *222 commission_percentage: *223 over_amount: *224 over_percentage: *225 over: *226 intermediary_commission_amount: *227 intermediary_commission_percentage: *228 intermediary_over_amount: *229 intermediary_over_percentage: *230 intermediary_over: *231 agency_service_fee: *232 agency_card_rate: *233 deductions: *234 discount_amount: *235 cc_rav_fee: *236 others_scalars: document: *237 destination: *238 departure_date: *239 arrival_date: *240 status: *241 issue_date: *242 canceled_at: *243 observations: *244 included_services: *245 vendor_reservation_url: *246 currency: *247 exchange_rate: *248 commission_amount: *249 commission_percentage: *250 over_amount: *251 over_percentage: *252 over: *253 intermediary_commission_amount: *254 intermediary_commission_percentage: *255 intermediary_over_amount: *256 intermediary_over_percentage: *257 intermediary_over: *258 agency_service_fee: *259 agency_card_rate: *260 deductions: *261 discount_amount: *262 cc_rav_fee: *263 quantity: *264 unit_price: *265 unit_fee: *266 operation_scalars: document: *536 departure_date: *537 arrival_date: *538 status: *539 issue_date: *540 canceled_at: *541 observations: *542 included_services: *543 vendor_reservation_url: *544 currency: *545 exchange_rate: *546 intermediary_commission_amount: *547 intermediary_commission_percentage: *548 intermediary_over_amount: *549 intermediary_over_percentage: *550 intermediary_over: *551 agency_service_fee: *552 agency_card_rate: *553 discount_amount: *554 quantity: *555 unit_price: *556 unit_fee: *557 cvc_package_scalars: package_name: *267 receipt_number: *268 departure_date: *269 arrival_date: *270 status: *271 issue_date: *272 canceled_at: *273 observations: *274 included_services: *275 vendor_reservation_url: *276 currency: *277 exchange_rate: *278 commission_amount: *279 commission_percentage: *280 over_amount: *281 over_percentage: *282 over: *283 intermediary_commission_amount: *284 intermediary_commission_percentage: *285 intermediary_over_amount: *286 intermediary_over_percentage: *287 intermediary_over: *288 agency_service_fee: *289 agency_card_rate: *290 deductions: *291 discount_amount: *292 cc_rav_fee: *293 quantity: *294 unit_price: *295 unit_fee: *296 agency_credit_card_scalars: due_date: *558 settlement_date: *559 description: *560 card_last_digits: *561 card_brand: *562 authorization: *563 agency_bank_slip_scalars: due_date: *564 settlement_date: *565 description: *566 bank_slip_number: *567 amount: *568 agency_bank_deposit_scalars: due_date: *569 settlement_date: *570 description: *571 observations: *572 amount: *573 passenger_scalars: cost_center: *298 canceled_at: *299 fees: *300 rav_fee: *301 rav_fee_discount: *302 agency_fee: *303 amount: *304 customer_amount: *305 total_amount: *306 insurance_passenger_scalars: document: *297 cost_center: *298 canceled_at: *299 fees: *300 rav_fee: *301 rav_fee_discount: *302 agency_fee: *303 amount: *304 customer_amount: *305 total_amount: *306 train_passenger_scalars: document: *308 cost_center: *309 canceled_at: *310 fees: *311 rav_fee: *312 rav_fee_discount: *313 agency_fee: *314 amount: *315 customer_amount: *316 total_amount: *317 ground_transportation_passenger_scalars: document: *319 cost_center: *320 canceled_at: *321 fees: *322 rav_fee: *323 rav_fee_discount: *324 agency_fee: *325 amount: *326 customer_amount: *327 total_amount: *328 cruise_passenger_scalars: cost_center: *329 canceled_at: *330 fees: *331 tip: *332 rav_fee: *333 rav_fee_discount: *334 agency_fee: *335 amount: *336 customer_amount: *337 total_amount: *338 default_passenger_scalars: cost_center: *339 canceled_at: *340 fees: *341 other_fees: *342 rav_fee: *343 rav_fee_discount: *344 agency_fee: *345 amount: *346 customer_amount: *347 total_amount: *348 default_passenger_read_scalars: document: *574 cost_center: *298 canceled_at: *299 fees: *300 rav_fee: *301 rav_fee_discount: *302 agency_fee: *303 amount: *304 customer_amount: *305 total_amount: *306 operation_passenger_scalars: document: *349 cost_center: *350 canceled_at: *351 fees: *352 amount: *353 customer_amount: *354 total_amount: *355 travel_package_passenger_scalars: document: *356 cost_center: *339 canceled_at: *340 fees: *341 other_fees: *342 rav_fee: *343 rav_fee_discount: *344 agency_fee: *345 amount: *346 customer_amount: *347 total_amount: *348 hotel_passenger_scalars: emission_name: *357 cost_center: *358 canceled_at: *359 fees: *360 other_fees: *361 rav_fee: *362 rav_fee_discount: *363 agency_fee: *364 amount: *365 customer_amount: *366 total_amount: *367 airline_ticket_passenger_scalars: ticket_number: *368 original_ticket_number: *369 emission_name: *370 seat: *371 cost_center: *372 canceled_at: *373 boarding_fee: *374 other_fees: *375 rav_fee: *376 rav_fee_discount: *377 du_fee: *378 du_fee_discount: *379 agency_fee: *380 amount: *381 customer_amount: *382 total_amount: *383 passenger_person_create: person: *307 passenger_person_read: person: *318 id: 322ff2c2-43e0-4376-bea5-20f88b673b6d emission_rule_schema: type: object properties: *384 required: - recipient - revenues - discounts nf_rule_scalar_properties: id: *385 description: *386 representative_scope: *387 created_at: *388 nf_rule_reference_properties: product: *575 supplier: *576 representative: *577 payer: *578 created_by: *579 nf_rule_emission_properties: payer_rule: *389 supplier_rule: *390 representative_rule: *391 refund_scalar_properties: id: *392 refund_type: *393 amount: *394 description: *395 issue_date: *396 due_date: *397 cvc_statement_scalar_properties: id: *398 receipt_number: *399 movement_date: *400 sale_date: *401 cancellation_date: *402 boarding_date: *403 return_date: *404 product_name: *405 package_name: *406 total_payments: *407 total_taxes: *408 total_discounts: *409 total_abatement: *410 calculated_commission: *411 retained_commission: *412 intermediary_commission: *413 deposit: *414 opfax: *415 opfax_balance: *416 balance: *417 imported: *418 edited: *419 checked: *420 deleted: *421 created_at: *422 nf_recipient_properties: kind: *580 name: *581 cpf_cnpj: *582 state_inscription: *583 city_inscription: *584 postal_code: *585 street: *586 street_number: *587 neighborhood: *588 additional_info: *589 phone: *590 email: *591 foreign: *592 foreign_document: *593 city: *594 nf_taxes_properties: retain_iss: *595 retain_ir: *596 retain_pis_cofins_csll: *597 iss_percentage: *598 iss_amount: *599 pis_percentage: *600 pis_amount: *601 cofins_percentage: *602 cofins_amount: *603 ir_percentage: *604 ir_amount: *605 csll_percentage: *606 csll_amount: *607 nf_nfse_properties: number: *608 batch: *609 protocol: *610 verification_code: *611 processed_at: *612 errors: *613 nf_scalar_properties: id: *423 number: *424 series: *425 issue_date: *426 status: *427 operation_nature: *428 cfop: *429 nbs_code: *430 document: *431 manual_emission: *432 amount: *433 service_amount: *434 net_amount: *435 approximate_taxes_percentage: *436 approximate_taxes_amount: *437 observations: *438 printed_at: *439 canceled_at: *440 created_at: *441 recipient: *442 taxes: *443 nfse: *444 log_scalar_properties: id: *445 kind: *446 origin: *447 description: *448 created_at: *449 products_standard_pagination: size: 20 has_next_page: false next_cursor: filtered_pagination: size: 10 has_next_page: false next_cursor: paginated_pagination: size: 10 has_next_page: true next_cursor: eyJfcmFpbHMiOnsiZGF0YSI6WyIyMDI2LTAzLTEwIiwiNmIwZjdjMWUtMmQ0YS00ZjhiLTljMzEtNThhMGQ3ZTEzZjQyIl0sInB1ciI6ImFwaS92My9wcm9kdWN0cyNpbmRleCJ9fQ--3aa1d942d6240ca905038c019d661bc90af6836fc4a818cee3663829c75970e4 seller_read: id: 7c9e1a04-53b6-4f28-9d71-0e5a2c8b4f13 payer_read: id: 2f8b6d51-9c04-4e37-a1b8-63d95e70c2a4 intermediary_read: id: d40a7f92-1e63-4b85-8c27-5a9f3e01b6d8 requester_read: id: b17c5e38-6a90-4d21-9f43-8e2b70c5a916 approver_read: id: 95e2a7c1-4b38-4f60-8d19-27a6f3e0b5c4 promoter_read: id: 6a3f9d27-8c51-4e04-b2f7-72e5c8a91b30 created_by_read: id: b4c3d2e1-6f7a-4b9c-8d1e-2f3a4b5c6d7e operation_read: id: 8936058a-2906-4239-9a7f-e22ccc2c195e supplier_read: id: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b airline_supplier_read: id: 3d7b0c94-2a68-4f15-8e93-1c5a6d20b7f4 representative_read: id: '028ea1ef-3f8e-4c7f-93da-463794a5afda' seller: external_id: a8a41bec-e2a2-4d6a-b2f9-8fbc29169e46 name: João da Silva cpf: '83115137168' individual_payer: person_kind: individual external_id: cce45f2c-30e3-43a6-bbf1-af340188a04c name: Márcio da Veiga legal_name: gender: male birthdate: '1990-02-12' cpf_cnpj: '50957153848' rg_ie: '202571476' passport_number: BC826174 passport_expiration_date: '2030-07-15' foreigner: false foreign_identity_document: email: contato@marcio.com phone_number: '11999990001' mobile_number: '11999990002' address: *614 individual_intermediary: person_kind: individual external_id: 8a9de5ce-dac6-4721-851b-7366bf9ff5b0 name: Isabel Ribas legal_name: gender: female birthdate: '1984-03-22' cpf_cnpj: '05619249883' rg_ie: '417277556' passport_number: XM468760 passport_expiration_date: '2035-07-22' foreigner: false foreign_identity_document: email: contato@isabel.com phone_number: '11999990003' mobile_number: '11999990004' address: *615 individual_approver: person_kind: individual external_id: b7f3c1a2-9d84-4e60-8c15-2a6f0e3d4b91 name: Renata Furtado legal_name: gender: female birthdate: '1979-11-08' cpf_cnpj: '68432197807' rg_ie: '331948027' passport_number: YK517293 passport_expiration_date: '2032-04-30' foreigner: false foreign_identity_document: email: contato@renata.com phone_number: '11999990005' mobile_number: '11999990006' address: *616 individual_requester: external_id: 9f2c7a41-8b53-4e06-a1d9-63f0e2b5c748 name: Beatriz Nogueira gender: female birthdate: '1988-06-19' cpf: '47690215858' rg: '289104537' passport_number: RT902184 passport_expiration_date: '2033-09-10' foreigner: false foreign_identity_document: email: contato@beatriz.com phone_number: '11999990007' mobile_number: '11999990008' address: *617 passenger_person: external_id: 322ff2c2-43e0-4376-bea5-20f88b673b6d name: Maria da Silva gender: female birthdate: '1990-10-01' cpf: '38107867807' rg: '461196037' passport_number: FG225776 passport_expiration_date: '2035-12-01' foreigner: false foreign_identity_document: email: maria.silva@example.com phone_number: '11999990009' mobile_number: '11999990010' address: *618 required_fields_payer: person_kind: individual external_id: cce45f2c-30e3-43a6-bbf1-af340188a04c name: Márcio da Veiga company_payer: person_kind: company external_id: 3c1e6b21-5d44-4d98-8f21-2f90b6a8c3e7 name: Tech Solutions LTDA legal_name: Tech Solutions Tecnologia Ltda cpf_cnpj: '86452403000197' rg_ie: '9876543' email: teste@techsolutions.com.br phone_number: '1133224455' mobile_number: '11998877665' address: *619 foreigner_payer: person_kind: individual external_id: d82e4b79-6b2a-44f8-a431-027b2d7a9e68 name: John Smith gender: male birthdate: '1982-11-30' passport_number: AA1234567 passport_expiration_date: '2030-09-20' foreigner: true foreign_identity_document: F987654321 email: john.smith@example.com phone_number: "+390612345672" mobile_number: "+393331234572" address: *620 required_fields_passenger_person: external_id: 322ff2c2-43e0-4376-bea5-20f88b673b6d name: Maria da Silva foreign_passenger_person: external_id: 4a162ad1-fdbb-41f9-b49e-70dfb1c80f6c name: Kaleigh Glover gender: female birthdate: '1991-05-14' cpf: rg: passport_number: US748239 passport_expiration_date: '2033-03-12' foreigner: true foreign_identity_document: '182430728200321' email: kg@test.com phone_number: "+390612345670" mobile_number: "+393331234571" address: *621 supplier: external_id: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b name: Epic Journey Turismo legal_name: Epic Journey Turismo S.A. cnpj: '11402447000103' ie: '1234567890' foreigner: false email: contato@epicjourney.com.br phone_number: '11999990005' mobile_number: '11999990006' address: *622 foreign_supplier: external_id: 30a20d58-b4f7-465d-b8b0-f89b2fc00b67 name: EuroTravel legal_name: EuroTravel Global GmbH cnpj: ie: foreigner: true email: contact@eurotravel.com phone_number: "+390212345678" mobile_number: "+393331234567" address: *623 airline_supplier: airline_code: AA airline_number: '001' name: American Airlines legal_name: American Airlines Inc. cnpj: '73765430000178' ie: '1234567890' foreigner: false email: contato@americanairlines.com.br phone_number: '11999990023' mobile_number: '11999990024' address: *624 foreign_airline_supplier: airline_code: LH airline_number: '220' name: European Wings legal_name: European Wings AG cnpj: ie: foreigner: true email: contact@europeanwings.com phone_number: "+390212345679" mobile_number: "+393331234570" address: *625 representative: external_id: '028ea1ef-3f8e-4c7f-93da-463794a5afda' name: Epic Journey Operadora legal_name: Epic Journey Operadora Ltd. cnpj: '18258223000119' ie: '1234567890' foreigner: false email: contato@epicjourneyoperadora.com phone_number: '11999990007' mobile_number: '11999990008' address: *626 required_fields_insurance_passenger: amount: 625.95 person: *480 insurance_passenger: document: '9921508090000' cost_center: Corporativa EXT canceled_at: fees: 25.0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 625.95 customer_amount: 650.95 total_amount: 650.95 person: *452 foreign_insurance_passenger: document: '9921508090000' cost_center: Corporativa EXT canceled_at: fees: 25.0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 625.95 customer_amount: 650.95 total_amount: 650.95 person: *483 required_fields_cruise_passenger: amount: 8358.77 person: *480 cruise_passenger: cost_center: Corporativa EXT canceled_at: fees: 120.0 tip: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 8358.77 customer_amount: 8478.77 total_amount: 8478.77 person: *452 foreign_cruise_passenger: cost_center: Corporativa EXT canceled_at: fees: 120.0 tip: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 8358.77 customer_amount: 8478.77 total_amount: 8478.77 person: *483 hotel_passenger: emission_name: Maria da Silva cost_center: Corporativa EXT canceled_at: fees: 281.54 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 563.07 amount: 5630.73 customer_amount: 6475.34 total_amount: 6475.34 person: *452 foreign_hotel_passenger: emission_name: Maria da Silva cost_center: Corporativa EXT canceled_at: fees: 281.54 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 563.07 amount: 5630.73 customer_amount: 6475.34 total_amount: 6475.34 person: *483 airline_passenger: ticket_number: '99526874895' emission_name: Maria da Silva seat: 12A cost_center: Corporativa EXT canceled_at: boarding_fee: 136.06 other_fees: 0 rav_fee: 204.01 rav_fee_discount: 0 du_fee: 104.01 du_fee_discount: 0 agency_fee: 0 amount: 1360.67 customer_amount: 1804.75 total_amount: 1804.75 person: *452 foreign_airline_passenger: ticket_number: '99526874896' emission_name: Kaleigh Glover seat: 12A cost_center: Corporativa EXT canceled_at: boarding_fee: 136.06 other_fees: 0 rav_fee: 204.01 rav_fee_discount: 0 du_fee: 104.01 du_fee_discount: 0 agency_fee: 0 amount: 1360.67 customer_amount: 1804.75 total_amount: 1804.75 person: *483 train_passenger: document: RE9988777 cost_center: Corporativa EXT canceled_at: fees: 24.05 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 240.5 customer_amount: 264.55 total_amount: 264.55 person: *452 foreign_train_passenger: document: RE9988777 cost_center: Corporativa EXT canceled_at: fees: 24.05 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 240.5 customer_amount: 264.55 total_amount: 264.55 person: *483 ground_transportation_passenger: document: '0001234567' cost_center: Corporativa EXT canceled_at: fees: 12.19 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 121.95 customer_amount: 134.14 total_amount: 134.14 person: *452 foreign_ground_transportation_passenger: document: '0001234567' cost_center: Corporativa EXT canceled_at: fees: 12.19 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 121.95 customer_amount: 134.14 total_amount: 134.14 person: *483 required_fields_car_rental_passenger: amount: 350.0 person: *480 car_rental_passenger: cost_center: Corporativa EXT canceled_at: fees: 0 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 350.0 customer_amount: 350.0 total_amount: 350.0 person: *452 foreign_car_rental_passenger: cost_center: Corporativa EXT canceled_at: fees: 0 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 350.0 customer_amount: 350.0 total_amount: 350.0 person: *483 required_fields_travel_package_passenger: amount: 2500.0 person: *480 travel_package_passenger: document: PCT2024050001 cost_center: Corporativa EXT canceled_at: fees: 0 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *452 foreign_travel_package_passenger: document: PCT2024050001 cost_center: Corporativa EXT canceled_at: fees: 0 other_fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *483 excursion_passenger: document: EXC2024060034 cost_center: Corporativa EXT canceled_at: fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 350.0 customer_amount: 350.0 total_amount: 350.0 person: *452 others_passenger: document: OUT2024060012 cost_center: Corporativa EXT canceled_at: fees: 0 rav_fee: 0 rav_fee_discount: 0 agency_fee: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *452 operation_passenger: document: OP2024060056 cost_center: Corporativa EXT canceled_at: fees: 0 amount: 2500.0 customer_amount: 2500.0 total_amount: 2500.0 person: *452 insurance_product: id: 1a2b3c4d-5e6f-4708-9a1b-2c3d4e5f6071 document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international status: active issue_date: '2026-09-29' canceled_at: observations: Embarque confirmado. included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 25.04 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 10.0 cc_rav_fee: 0 totals: *627 supplier: *450 representative: *451 passengers: - *628 cruise_product: id: 2b3c4d5e-6f70-4819-ab2c-3d4e5f607182 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A meal_plan: All inclusive status: active issue_date: '2026-09-29' canceled_at: observations: Cabine confirmada. included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 417.94 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 100.0 cc_rav_fee: 0 totals: *629 supplier: *450 representative: *451 passengers: - *630 hotel_product: id: 3c4d5e6f-7081-492a-bc3d-4e5f60718293 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive nights: 8 status: active issue_date: '2026-09-29' canceled_at: observations: Reserva garantida. included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 281.54 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 50.0 cc_rav_fee: 0 totals: *631 supplier: *450 representative: *451 passengers: - *632 airline_product: id: 4d5e6f70-8192-4a3b-cd4e-5f6071829304 locator: WABCJJ destination: international status: active issue_date: '2026-09-29' canceled_at: observations: Bilhete emitido. included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 68.04 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 totals: *633 supplier: *634 representative: *451 segments: - *635 passengers: - *636 train_product: id: 5e6f7081-92a3-4b4c-de5f-607182930415 document: RE9988777 departure_date: '2026-10-04T10:56:27' arrival_date: '2026-10-07T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Bilhete emitido. included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 7.5 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 5.0 cc_rav_fee: 0 totals: *637 supplier: *450 representative: *451 passengers: - *638 ground_transportation_product: id: 6f708192-a3b4-4c5d-ef60-718293041526 document: GT123456 departure_date: '2026-10-04T10:56:27' arrival_date: '2026-10-07T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Bilhete emitido. included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 4.28 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 5.0 cc_rav_fee: 0 totals: *639 supplier: *450 representative: *451 passengers: - *640 car_rental_product: id: 708192a3-b4c5-4d6e-f071-829304152637 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico rental_days: 7 status: active issue_date: '2026-09-29' canceled_at: observations: Retirada confirmada. included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 17.5 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 10.0 cc_rav_fee: 0 totals: *641 supplier: *450 representative: *451 passengers: - *642 travel_package_product: id: 8192a3b4-c5d6-4e7f-0182-930415263748 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight status: active issue_date: '2026-09-29' canceled_at: observations: Pacote confirmado. included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 125.0 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 100 agency_card_rate: 0 deductions: 0 discount_amount: 25.0 cc_rav_fee: 0 totals: *643 supplier: *450 representative: *451 passengers: - *644 others_product: id: 8f7e6d5c-4b3a-4218-9f0e-1d2c3b4a5968 product: *645 document: OUT123456 destination: Salvador status: active issue_date: '2026-09-29' canceled_at: observations: Passeio confirmado. included_services: Guia local incluso vendor_reservation_url: https://www.epicjourney.com/reservation/9877 currency: BRL exchange_rate: 1 commission_amount: 12.0 commission_percentage: 2 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 4.0 intermediary_commission_percentage: 2 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 50 agency_card_rate: 0 deductions: 0 discount_amount: 0 cc_rav_fee: 0 quantity: unit_price: unit_fee: totals: *646 supplier: *450 representative: *451 passengers: - *647 excursion_product: id: d0e1f2a3-b4c5-4906-a1b2-3c4d5e6f7081 document: EXC123456 departure_date: '2026-10-04T10:56:27' arrival_date: '2026-10-04T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Passeio confirmado. included_services: |- Guia local incluso Transporte incluso vendor_reservation_url: https://www.epicjourney.com/reservation/9880 currency: BRL exchange_rate: 1 commission_amount: 10.0 commission_percentage: 10 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 5.0 intermediary_commission_percentage: 5 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 20 agency_card_rate: 0 deductions: 0 discount_amount: 0 cc_rav_fee: 0 totals: *648 supplier: *450 representative: *451 passengers: - *649 operation_product: id: 6d5c4b3a-2f1e-4093-8d7c-6b5a49382716 product: *650 document: OP-000123 departure_date: '2026-10-06T10:56:27' arrival_date: '2026-10-06T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: City tour confirmado. included_services: |- Guia local incluso Transporte incluso vendor_reservation_url: https://www.epicjourney.com/reservation/9878 currency: BRL exchange_rate: 1 intermediary_commission_amount: 0 intermediary_commission_percentage: 0 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 0 agency_card_rate: 0 discount_amount: 0 quantity: unit_price: unit_fee: totals: *651 supplier: *450 passengers: - *652 cvc_package_product: id: 5c4b3a29-1e0d-4982-7c6b-5a4938271605 product: *653 package_name: CVC Caribe 7 noites receipt_number: '89100000183488' departure_date: '2026-10-14T10:56:27' arrival_date: '2026-10-21T10:56:27' status: active issue_date: '2026-09-29' canceled_at: observations: Pacote confirmado. included_services: |- Hospedagem all inclusive Traslados inclusos vendor_reservation_url: https://www.epicjourney.com/reservation/9879 currency: BRL exchange_rate: 1 commission_amount: 490.0 commission_percentage: 12 over_amount: 0 over_percentage: 0 over: 0 intermediary_commission_amount: 0 intermediary_commission_percentage: 0 intermediary_over_amount: 0 intermediary_over_percentage: 0 intermediary_over: 0 agency_service_fee: 0 agency_card_rate: 0 deductions: 0 discount_amount: 0 cc_rav_fee: 0 quantity: 2 unit_price: 1500.0 unit_fee: 80.0 totals: *654 supplier: *450 representative: *451 insurance_passenger_create: document: '9921508090000' amount: 625.95 fees: 31.3 rav_fee: 15.0 rav_fee_discount: 5.0 agency_fee: 10.0 person: *458 cruise_passenger_create: amount: 8358.77 fees: 209.0 tip: 50.0 rav_fee: 40.0 rav_fee_discount: 10.0 agency_fee: 20.0 person: *458 hotel_passenger_create: amount: 5630.73 fees: 281.54 other_fees: 30.0 rav_fee: 60.0 rav_fee_discount: 15.0 agency_fee: 563.07 person: *458 airline_passenger_create: ticket_number: '99526874895' original_ticket_number: '99526874894' emission_name: Maria da Silva amount: 1360.67 boarding_fee: 136.06 rav_fee: 204.01 du_fee: 104.01 person: *458 train_passenger_create: amount: 240.5 fees: 24.05 rav_fee: 10.0 rav_fee_discount: 2.0 agency_fee: 5.0 document: RE9988777 person: *458 ground_transportation_passenger_create: amount: 121.95 fees: 12.19 rav_fee: 5.0 rav_fee_discount: 1.0 agency_fee: 3.0 document: '0001234567' person: *458 car_rental_passenger_create: amount: 350.0 fees: 17.5 other_fees: 8.0 rav_fee: 7.0 rav_fee_discount: 2.0 agency_fee: 5.0 person: *458 travel_package_passenger_create: amount: 2500.0 fees: 125.0 other_fees: 25.0 rav_fee: 50.0 rav_fee_discount: 10.0 agency_fee: 30.0 document: PCT2024050001 person: *458 insurance_product_create: local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef document: '14296922' begin_date: '2026-10-04' end_date: '2026-10-19' destination: international included_services: |- Plano: Max BRL R$ 60.000,00 com cobertura de despesas médicas Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/9871 currency: BRL exchange_rate: 1 commission_amount: 50.07 intermediary_commission_amount: 25.04 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - *503 cruise_product_create: local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 booking_number: '987568489' departure_date: '2026-10-05' arrival_date: '2026-10-19' ship_name: MXS Example Seaview cruise_destination: Bahamas accommodation_kind: Duplo Casal cabin_number: '1234' cabin_kind: Royal Suite cabin_category: 7A included_services: |- Pacote: All Inclusive Código: 1234 vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 835.88 intermediary_commission_amount: 417.94 agency_service_fee: 100 discount_amount: 100.0 supplier: *456 representative: *457 passengers: - *504 hotel_product_create: local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 booking_number: '1020506090' check_in: '2026-10-22' check_out: '2026-10-29' destination: international accommodation_kind: Duplo Casal room_category: Deluxe meal_plan: All Inclusive included_services: |- Epic Journey Hotel: Avenida Rebouças, 397, São Paulo, SP, Brasil Quarto com vista para cidade. vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 563.07 intermediary_commission_amount: 281.54 agency_service_fee: 100 discount_amount: 50.0 supplier: *456 representative: *457 passengers: - *505 airline_product_create: local_id: d4e5f6a7-b8c9-0123-4567-890123def012 locator: WABCJJ destination: international included_services: |- 3 bagagens despachadas sem custo Assento com reclinação total Acesso ao Lounge vendor_reservation_url: https://www.epicjourney.com/reservation/6598 currency: BRL exchange_rate: 1 commission_amount: 136.07 intermediary_commission_amount: 68.04 agency_service_fee: 100 discount_amount: 20.0 cc_rav_fee: 27.22 cc_du_fee: 27.22 supplier: *485 representative: *457 segments: - *655 passengers: - *506 train_product_create: local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 document: RE9988777 included_services: |- Refeição inclusa Wi-Fi gratuito Vagão silencioso vendor_reservation_url: https://www.epicjourney.com/reservation/7852 currency: BRL exchange_rate: 1 commission_amount: 15.0 intermediary_commission_amount: 7.5 agency_service_fee: 100 discount_amount: 5.0 segments: - *656 supplier: *456 representative: *457 passengers: - *507 ground_transportation_product_create: local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 document: GT123456 included_services: |- Refeição inclusa Wi-Fi gratuito. vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 8.55 intermediary_commission_amount: 4.28 agency_service_fee: 100 discount_amount: 5.0 segments: - *657 supplier: *456 representative: *457 passengers: - *508 car_rental_product_create: local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 document: CR123456789 pickup_date: '2026-10-04' pickup_location: Aeroporto de Congonhas dropoff_date: '2026-10-11' dropoff_location: Aeroporto de Congonhas destination: national vehicle_category: Econômico included_services: |- Quilometragem livre Seguro básico incluso Tanque cheio na retirada vendor_reservation_url: https://www.epicjourney.com/reservation/8765 currency: BRL exchange_rate: 1 commission_amount: 35.0 intermediary_commission_amount: 17.5 agency_service_fee: 100 discount_amount: 10.0 supplier: *456 representative: *457 passengers: - *509 travel_package_product_create: local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 document: TP123456789 begin_date: '2026-10-09' end_date: '2026-10-16' destination: international package_name: Pacote Europa Clássica transport: scheduled_flight included_services: |- Hospedagem: Hotéis 4 estrelas Refeições: Café da manhã e jantar Passeios: City tour em 5 cidades Seguro viagem internacional vendor_reservation_url: https://www.epicjourney.com/reservation/9876 currency: BRL exchange_rate: 1 commission_amount: 250.0 intermediary_commission_amount: 125.0 agency_service_fee: 100 discount_amount: 25.0 supplier: *456 representative: *457 passengers: - *510 insurance_payment: local_id: a1b2c3d4-e5f6-7890-1234-567890abcdef payment_amount: 625.95 cruise_payment: local_id: b2c3d4e5-f6a7-8901-2345-678901bcdef0 payment_amount: 8358.77 hotel_payment: local_id: c3d4e5f6-a7b8-9012-3456-789012cdef01 payment_amount: 6475.34 airline_ticket_payment: local_id: d4e5f6a7-b8c9-0123-4567-890123def012 payment_amount: 1804.75 train_ticket_payment: local_id: e5f6a7b8-c9d0-1234-5678-901234ef0123 payment_amount: 264.55 ground_transportation_payment: local_id: f6a7b8c9-d0e1-2345-6789-012345f01234 payment_amount: 134.14 car_rental_payment: local_id: a7b8c9d0-e1f2-3456-7890-123456a01234 payment_amount: 350.0 travel_package_payment: local_id: b8c9d0e1-f2a3-4567-8901-234567a01234 payment_amount: 2500.0 others_payment: local_id: c9d0e1f2-a3b4-5678-9012-345678b01234 payment_amount: 2500.0 cvc_package_payment: local_id: e1f2a3b4-c5d6-7890-1234-567890d01234 payment_amount: 3160.0 operation_payment: local_id: 9f8e7d6c-5b4a-3210-fedc-ba9876543210 payment_amount: 1200.0 bank_account_example: bank_code: '237' agency_number: '1234' agency_digit: '5' account_number: '56789' account_digit: '0' vendor_credit_card_payment: card_last_digits: '1234' authorization: XYZ789 installments: 2 agency_credit_card_payment: due_date: '2026-10-29' settlement_date: '2026-09-29' card_brand: mastercard card_last_digits: '5678' authorization: ABC123 bank_account: *459 agency_bank_slip_payment: due_date: '2026-10-29' settlement_date: '2026-09-29' bank_account: *459 agency_bank_deposit_payment: due_date: '2026-10-29' settlement_date: '2026-09-29' observations: TED bank_account: *459 vendor_others_payment: details: Fatura vendor_minimal_payment: - *502 all_payment_methods: - *473 - *474 - *475 - *476 - *477 - *478 cruise_payment_read: amount: 8358.77 sale_product: *658 others_payment_read: amount: 2500.0 sale_product: *659 cvc_package_payment_read: amount: 3160.0 sale_product: *660 operation_payment_read: amount: 2500.0 sale_product: *661 travel_package_payment_read: amount: 2500.0 sale_product: *662 ground_transportation_payment_read: amount: 134.14 sale_product: *663 hotel_payment_read: amount: 6475.34 sale_product: *664 insurance_payment_read: amount: 625.95 sale_product: *665 all_payment_methods_read: agency: *666 vendor: *667 sale_fields_create: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 insurances: - *465 cruises: - *466 hotels: - *467 airline_tickets: - *468 train_tickets: - *469 ground_transportations: - *470 car_rentals: - *471 travel_packages: - *472 payments: - *473 - *474 - *475 - *476 - *477 - *478 sale_without_product: company_identifier: '46598887000162' sale_date: '2026-09-29' seller: *460 payer: *461 intermediary: *462 approver: *463 requester: *464 sale_financial: observations: Teste de observações financeiras vendor_bills: - *668 standalone_bills: - *669 sale_commissions: - *670 - *671 - *672 sale_commissions_create: - *673 - *674 sales_standard_pagination: size: 20 has_next_page: false next_cursor: operation_passenger_create: amount: 1200.0 fees: 60.0 document: OP-000123 person: *458 operation_product_create: local_id: 9f8e7d6c-5b4a-3210-fedc-ba9876543210 product_id: f47ac10b-58cc-4372-a567-0e02b2c3d479 document: OP-2026-0001 departure_date: '2026-10-04' arrival_date: '2026-10-19' observations: Excursão operada pela própria agência included_services: Traslados, guia local e hospedagem vendor_reservation_url: https://www.epicjourney.com/reservation/op-1 currency: BRL exchange_rate: 1 intermediary_commission_amount: 30.0 agency_service_fee: 80.0 discount_amount: 10.0 passengers: - *675 operation_no_passengers_create: local_id: 1a2b3c4d-5e6f-7081-9203-a4b5c6d7e8f9 product_id: f47ac10b-58cc-4372-a567-0e02b2c3d479 document: OP-2026-0002 departure_date: '2026-10-04' arrival_date: '2026-10-19' observations: Cota de operação própria, vendida por quantidade. currency: BRL exchange_rate: 1 quantity: 3 unit_price: 500.0 unit_fee: 20.0 agency_fee: 15.0 discount_amount: 10.0 cabins_standard_pagination: size: 20 has_next_page: false next_cursor: cabins_paginated_pagination: size: 2 has_next_page: false next_cursor: ships_standard_pagination: size: 20 has_next_page: false next_cursor: ships_paginated_pagination: size: 2 has_next_page: false next_cursor: cost_centers_standard_pagination: size: 20 has_next_page: false next_cursor: cost_centers_paginated_pagination: size: 2 has_next_page: false next_cursor: currencies_standard_pagination: size: 20 has_next_page: false next_cursor: currencies_paginated_pagination: size: 2 has_next_page: false next_cursor: categories_standard_pagination: size: 20 has_next_page: false next_cursor: categories_paginated_pagination: size: 2 has_next_page: false next_cursor: cities_standard_pagination: size: 20 has_next_page: false next_cursor: cities_paginated_pagination: size: 2 has_next_page: false next_cursor: sellers_standard_pagination: size: 20 has_next_page: false next_cursor: sellers_paginated_pagination: size: 1 has_next_page: false next_cursor: payment_methods_standard_pagination: size: 20 has_next_page: false next_cursor: payment_methods_paginated_pagination: size: 2 has_next_page: false next_cursor: accounts_standard_pagination: size: 20 has_next_page: false next_cursor: accounts_paginated_pagination: size: 1 has_next_page: false next_cursor: accounts_company: id: e5d9aaed-33bb-4679-b392-b45e5cd78eb4 accounts_card_example: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Cartão Corporativo kind: card_account active: true currency: BRL initial_balance: 0.0 bank_operation: agency: agency_digit: number: digit: pix_key: bill_expiration: 10 bill_closing: 1 accounts_checking_example: id: f9d961b8-ea88-4346-8e52-afe94267417a description: Banco do Brasil - Matriz kind: checking_account active: true currency: BRL initial_balance: 1500.0 bank_operation: agency: '1412' agency_digit: '5' number: '04640' digit: '2' pix_key: financeiro@agencia.com.br bill_expiration: bill_closing: nf_rules_standard_pagination: size: 20 has_next_page: false next_cursor: nf_rules_paginated_pagination: size: 1 has_next_page: false next_cursor: nf_rule_paginated_example: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Seguro viagem - fornecedor emite representative_scope: none created_at: '2023-11-02T16:45:00' payer_rule: *676 supplier_rule: *677 representative_rule: *678 tasks_standard_pagination: size: 20 has_next_page: false next_cursor: tasks_paginated_pagination: size: 1 has_next_page: false next_cursor: task_paginated_example: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 number: 1043 title: Cobrar segunda parcela description: due: '2024-04-05T14:00:00' completed_at: '2024-04-05T11:12:00' visualized: true deleted: false created_at: '2024-03-15T10:30:00' task_categories_standard_pagination: size: 20 has_next_page: false next_cursor: travels_standard_pagination: size: 20 has_next_page: false next_cursor: travels_paginated_pagination: size: 1 has_next_page: false next_cursor: travel_paginated_example: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 number: '000041' description: Congresso - São Paulo situation: finished start_date: '2024-02-05' end_date: '2024-02-09' observations: created_at: '2024-01-10T09:00:00' quotes_standard_pagination: size: 20 has_next_page: false next_cursor: quotes_paginated_pagination: size: 1 has_next_page: false next_cursor: quote_paginated_example: id: 41 title: Buenos Aires subtitle: Feriado prolongado details: Aéreo + hotel 4 estrelas no centro. valid_until: '2024-02-28' active: false public_url: https://suaviagem.app/x9Y8z7-buenos-aires internal_observations: created_at: '2024-01-10T09:00:00' invoice_rules_standard_pagination: size: 20 has_next_page: false next_cursor: invoice_rules_paginated_pagination: size: 1 has_next_page: false next_cursor: invoice_rule_paginated_example: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Cliente corporativo mensal person_kind: customer destination: every movement: every_movement cost_center: Comercial closing: *679 due_date: *680 integrations_standard_pagination: size: 20 has_next_page: false next_cursor: integrations_paginated_pagination: size: 1 has_next_page: false next_cursor: integration_paginated_example: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 description: Buscador de tarifas active: false vendor_name: people_standard_pagination: size: 20 has_next_page: false next_cursor: people_paginated_pagination: size: 1 has_next_page: false next_cursor: person_summary_individual: id: f9d961b8-ea88-4346-8e52-afe94267417a code: 1042 person_kind: individual name: Carlos Souza legal_name: cpf_cnpj: '12345678909' gender: male birthdate: '1985-07-22' rg_ie: '203456789' city_inscription: tax_identification_number: passport_number: BR123456 passport_expiration_date: '2028-10-01' foreigner: false foreign_identity_document: email: carlos@exemplo.com.br phone_number: '4133334444' mobile_number: '41999998888' business_phone: '4130302020' website: cvc_code: observations: Cliente preferencial. charge_billet_fee: false created_at: '2021-11-05T10:30:00' address: *519 additional_data: *520 last_contacts: *521 tax_withholding: airline: person_summary_company: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 code: 87 person_kind: company name: Operadora de Turismo Ltda legal_name: Operadora de Turismo S.A. cpf_cnpj: '12345678000199' gender: birthdate: rg_ie: '9012345678' city_inscription: '1234567' tax_identification_number: passport_number: passport_expiration_date: foreigner: false foreign_identity_document: email: contato@operadora.com.br phone_number: '4133334444' mobile_number: business_phone: website: https://www.operadora.com.br cvc_code: observations: charge_billet_fee: true created_at: '2019-04-18T08:15:00' address: *681 additional_data: last_contacts: *682 tax_withholding: *683 airline: labels_standard_pagination: size: 20 has_next_page: false next_cursor: labels_paginated_pagination: size: 2 has_next_page: false next_cursor: bills_standard_pagination: size: 20 has_next_page: false next_cursor: bills_paginated_pagination: size: 1 has_next_page: false next_cursor: receivable_person: id: a1b2c3d4-e5f6-4708-b9c0-d1e2f3a4b5c6 card_person: id: b2c3d4e5-f6a7-4809-c0d1-e2f3a4b5c6d7 receivable_summary: id: 212b54b8-27df-4859-80a9-79ad855bcd09 number: '12345' transaction_kind: credit kind: customer_invoice description: Fatura cliente - Janeiro/2026 document: NF 1001 invoice_number: 42 amount: 1500.0 final_amount: 1500.0 issue_date: '2026-01-10' due_date: '2026-02-10' settlement_date: created_at: '2026-01-10T13:45:36' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: without_periodicity recurrence_kind: non_recurrent recurrence_group_id: observations: billet: *684 check: card: card_summary: id: 9f8e7d6c-5b4a-4938-8271-6f5e4d3c2b1a number: '67890' transaction_kind: debit kind: credit_card_invoice description: Fatura Mastercard document: invoice_number: amount: 5577.39 final_amount: 5577.39 issue_date: '2026-04-18' due_date: '2026-05-15' settlement_date: '2026-05-15' created_at: '2026-04-18T13:45:36' canceled: false checked: false invoice_closed: false system_generated: false generates_credit: false periodicity: monthly recurrence_kind: installment recurrence_group_id: 5f1c8a2e-9b3d-4c7a-8e1f-2a3b4c5d6e7f observations: billet: check: card: *685 account_movements_standard_pagination: size: 20 has_next_page: false next_cursor: account_movements_paginated_pagination: size: 1 has_next_page: false next_cursor: account_movement_settlement_summary: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 date: '2026-01-26' amount: -9112.17 transaction_kind: debit description: check: card: *686 account_movement_transfer_summary: id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 date: '2026-01-26' amount: 63063.0 transaction_kind: credit description: Repasse diário check: card: refunds_standard_pagination: size: 20 has_next_page: false next_cursor: refunds_paginated_pagination: size: 1 has_next_page: false next_cursor: refund_vendor_scalars: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 refund_type: vendor amount: -91.36 description: Reembolso Incentivo issue_date: '2021-06-16' due_date: '2021-06-17' refund_customer_scalars: id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 refund_type: customer amount: -1208.89 description: Reembolso devido ao cancelamento da viagem issue_date: '2022-04-09' due_date: '2022-05-24' refund_vendor_example: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 refund_type: vendor amount: -91.36 description: Reembolso Incentivo issue_date: '2021-06-16' due_date: '2021-06-17' sale: *687 sale_product: *688 person: *689 company: *690 bill: *691 refund_customer_example: id: 0d1f5a83-9b2c-4d6e-8a71-3c5f7e9b2d40 refund_type: customer amount: -1208.89 description: Reembolso devido ao cancelamento da viagem issue_date: '2022-04-09' due_date: '2022-05-24' sale: *692 sale_product: *693 person: *694 company: *695 bill: cvc_statements_standard_pagination: size: 20 has_next_page: false next_cursor: cvc_statements_paginated_pagination: size: 1 has_next_page: false next_cursor: cvc_statement_receipt_scalars: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 receipt_number: '89930000112199' movement_date: '2019-12-26' sale_date: '2019-12-26T18:00:00' cancellation_date: boarding_date: '2020-09-01' return_date: '2020-09-09' product_name: Excursões Internacionais package_name: SANTIAGO total_payments: 347.89 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 111.33 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 34.78 opfax: 0.0 opfax_balance: 0.0 balance: 76.55 imported: true edited: false checked: false deleted: false created_at: '2019-12-30T08:45:48' cvc_statement_partial_opfax_scalars: id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 receipt_number: '89100000164635' movement_date: '2019-12-29' sale_date: '2019-12-29T18:00:00' cancellation_date: boarding_date: '2020-04-10' return_date: '2020-04-15' product_name: Hotel Internacional package_name: MADRI total_payments: 2068.04 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 0.0 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 0.0 opfax: 1826.4 opfax_balance: 200.9 balance: 0.0 imported: true edited: false checked: false deleted: false created_at: '2019-12-30T12:14:02' cvc_statement_manual_adjustment_scalars: id: 0f9e5b3d-7a21-4c68-b0d4-9e2f6a1c4b85 receipt_number: movement_date: '2020-09-15' sale_date: cancellation_date: boarding_date: return_date: product_name: package_name: total_payments: 0.0 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 0.0 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 0.0 opfax: 0.0 opfax_balance: 0.0 balance: 12.32 imported: true edited: false checked: false deleted: false created_at: '2020-09-16T16:16:09' cvc_statement_with_sale_example: id: 6b0f7c1e-2d4a-4f8b-9c31-58a0d7e13f42 receipt_number: '89930000112199' movement_date: '2019-12-26' sale_date: '2019-12-26T18:00:00' cancellation_date: boarding_date: '2020-09-01' return_date: '2020-09-09' product_name: Excursões Internacionais package_name: SANTIAGO total_payments: 347.89 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 111.33 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 34.78 opfax: 0.0 opfax_balance: 0.0 balance: 76.55 imported: true edited: false checked: false deleted: false created_at: '2019-12-30T08:45:48' movement_kind: *696 company: *697 contractor: *698 seller: *699 intermediary: sale: *700 sale_product: *701 nf: *702 created_by: *703 cvc_statement_manual_adjustment_example: id: 0f9e5b3d-7a21-4c68-b0d4-9e2f6a1c4b85 receipt_number: movement_date: '2020-09-15' sale_date: cancellation_date: boarding_date: return_date: product_name: package_name: total_payments: 0.0 total_taxes: 0.0 total_discounts: 0.0 total_abatement: 0.0 calculated_commission: 0.0 retained_commission: 0.0 intermediary_commission: 0.0 deposit: 0.0 opfax: 0.0 opfax_balance: 0.0 balance: 12.32 imported: true edited: false checked: false deleted: false created_at: '2020-09-16T16:16:09' movement_kind: *704 company: *705 contractor: seller: intermediary: sale: sale_product: nf: created_by: *706 nfs_standard_pagination: size: 20 has_next_page: false next_cursor: nfs_paginated_pagination: size: 1 has_next_page: false next_cursor: nf_issued_scalars: id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 number: 982677 series: '1' issue_date: '2023-01-13' status: issued operation_nature: Prestação de Serviço cfop: nbs_code: document: manual_emission: false amount: 113.48 service_amount: 2613.82 net_amount: 113.48 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: printed_at: '2023-02-09T17:26:29' canceled_at: created_at: '2023-02-09T17:16:14' recipient: *527 taxes: *528 nfse: *529 nf_canceled_scalars: id: c71a5d38-0b64-4e29-9d17-6f2e8a4b3c05 number: 982680 series: '1' issue_date: '2023-02-27' status: canceled operation_nature: Prestação de Serviço cfop: nbs_code: document: '9572810403321' manual_emission: true amount: 1840.0 service_amount: 1840.0 net_amount: 1748.0 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: Nota cancelada a pedido do tomador. printed_at: canceled_at: '2023-03-02T09:14:52' created_at: '2023-02-27T10:03:41' recipient: *530 taxes: *531 nfse: *532 nf_issued_example: id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 number: 982677 series: '1' issue_date: '2023-01-13' status: issued operation_nature: Prestação de Serviço cfop: nbs_code: document: manual_emission: false amount: 113.48 service_amount: 2613.82 net_amount: 113.48 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: printed_at: '2023-02-09T17:26:29' canceled_at: created_at: '2023-02-09T17:16:14' recipient: *527 taxes: *528 nfse: *529 person: *707 company: *708 sale_product: *709 sale: *710 created_by: *711 canceled_by: items: - *712 nf_canceled_example: id: c71a5d38-0b64-4e29-9d17-6f2e8a4b3c05 number: 982680 series: '1' issue_date: '2023-02-27' status: canceled operation_nature: Prestação de Serviço cfop: nbs_code: document: '9572810403321' manual_emission: true amount: 1840.0 service_amount: 1840.0 net_amount: 1748.0 approximate_taxes_percentage: 0.0 approximate_taxes_amount: 0.0 observations: Nota cancelada a pedido do tomador. printed_at: canceled_at: '2023-03-02T09:14:52' created_at: '2023-02-27T10:03:41' recipient: *530 taxes: *531 nfse: *532 person: company: *713 sale_product: sale: created_by: *714 canceled_by: *715 items: - *716 logs_standard_pagination: size: 20 has_next_page: false next_cursor: logs_paginated_pagination: size: 1 has_next_page: true next_cursor: eyJfcmFpbHMiOnsiZGF0YSI6WyIyMDI2LTAzLTEwIiwiNmIwZjdjMWUtMmQ0YS00ZjhiLTljMzEtNThhMGQ3ZTEzZjQyIl0sInB1ciI6ImFwaS92My9sb2dzI2luZGV4In19--5eba5fa50c894ec54e4c22226618cbcb0f7cf86b38dfcd77fdb701eaa23b8aa9 log_edition_scalars: id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 kind: edition origin: financeiro_categoria description: Valor de "10" para "20" created_at: '2026-08-05T09:12:33' log_export_scalars: id: c71a5d38-0b64-4e29-9d17-6f2e8a4b3c05 kind: export origin: vendas por produto description: Exportação de 128 registros created_at: '2026-08-05T08:41:07' log_system_scalars: id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 kind: insertion origin: pessoa description: "Inserido via API pela credencial \"Integração Contabilidade\"\r\nNome: \"Maria Souza\"" created_at: '2026-08-04T23:05:12' log_edition_example: id: 5f1b8b0e-3a2c-4d51-8f7a-1c9e2b4d6a83 kind: edition origin: financeiro_categoria description: Valor de "10" para "20" created_at: '2026-08-05T09:12:33' person: *717 resource: *718 log_system_example: id: 7b1e9d43-2c85-4a06-9f37-4e8d1c6a5b92 kind: insertion origin: pessoa description: "Inserido via API pela credencial \"Integração Contabilidade\"\r\nNome: \"Maria Souza\"" created_at: '2026-08-04T23:05:12' person: resource: *719 custom_field_choices: id: 123 resource: sales name: Centro de custo kind: choices required: true active: true choices: - Matriz - Filial custom_field_text: id: 124 resource: sales name: Observação interna kind: text required: false active: true choices: [] openapi: 3.1.0 info: title: Monde API version: V3 description: 'Bem-vindo a API da Monde! Essa documentação detalha os endpoints disponíveis para você integrar seu sistema conosco.

Sobre a API V3

' contact: name: Dúvidas e suporte email: suporte@monde.com.br servers: - url: https://web.monde.com.br/api/v3