Models and payload schemas
Browse API resource representations and the namespaced validation contracts that define workflow payloads. Select a model or schema to focus the reference.
No models match.
Account
accounts
A user account on the platform — the human who logs in via email/password and owns one or more Businesses.
Represents a person authenticated through the access service. Holds personal data (name, email, phone, locale), authentication state (has-password, is-validated) and is the root of permission grants for every Business the user belongs to.
| Field | Type | Info |
|---|---|---|
string |
||
| name | string |
|
| phone-number | string | null |
|
| phone-country | string | null |
|
| tax-number | string | null |
|
| locale | string |
pt-BR | en |
| has-password | boolean |
|
| is-validated | boolean |
|
| mobile-token | string | null |
|
| birthday | string | null |
|
| extra | object | null |
|
| source | string | null |
|
| terms | object | null |
|
| personal-data | object | null |
|
| account-type | string | null |
personal | shared | admin | sales | accounting |
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| businesses | Business |
has_many |
AccountFiscalEntity
account-fiscal-entities
Resource of type AccountFiscalEntity.
| Field | Type | Info |
|---|---|---|
| name | string |
|
string | null |
||
| address | string | null |
|
| status | string |
waiting_setup | waiting_update | failed | active | inactive |
| document-type | string |
|
| tax-number | string |
|
| tax-country | string |
|
| tax-data | object | null |
|
| emission-status | string | null |
active | inactive | missing_setup | missing_auth | missing_validation |
| certificate-expiration-date | string | null |
|
| das-paid-by | string | null |
|
| status-pass-govs | string |
none | validating | succeeded | failed |
| status-pass-invoices | string |
none | validating | succeeded | failed |
| status-certificate | string |
none | validating | succeeded | failed |
| has-pass-gov | boolean |
|
| has-pass-invoices | boolean |
|
| has-certificate | boolean |
|
| created-at | string |
|
| updated-at | string |
|
| created-by | string | null |
|
| updated-by | string | null |
| Name | Type | Kind | Info |
|---|---|---|---|
| account | Account |
has_one |
AccountType
account-types
Resource of type AccountType.
| Field | Type | Info |
|---|---|---|
| name | string |
Address
embedded
Physical address with country, state, city, neighborhood, street, number, zipcode, and complement.
Used as an embedded object in FiscalEntity schemas (e.g. address field on ProfessionalFiscalEntity, BusinessFiscalEntity). Fields: country (2-letter ISO), state, city, neighborhood, street, street-number, zipcode, complement. The Go struct is SimpleAddress from go-common/models/address.go.
| Field | Type | Info |
|---|---|---|
| country | string |
|
| state | string |
|
| city | string |
|
| neighborhood | string |
|
| street | string |
|
| street-number | string |
|
| zipcode | string |
|
| complement | string |
Business
businesses
A salon or beauty business owned by an Account — the tenant boundary identified by the ilm-business header.
Represents a salon, studio, or independent professional registered as a tenant. Almost every other resource (Professionals, Invoices, Schedules, Fiscal Entities) is scoped to a Business. The numeric id appears in the ilm-business header and in nested URLs like /businesses/{businessId}/….
| Field | Type | Info |
|---|---|---|
| name | string |
|
| trading-name | string | null |
|
| document | string |
|
| document-type | string |
cnpj |
| brand | string |
required |
| culture | string |
required |
| locale | string |
pt-BR |
| timezone | string |
required |
| permalink | string | null |
|
| country-iso | string |
required immutable |
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| account | Account |
has_one |
|
| category | BusinessCategory |
has_one |
|
| week-schedule | WeekSchedule |
has_one |
|
| professionals | Professional |
has_many |
|
| professional-categories | ProfessionalCategory |
has_many |
|
| settings | BusinessSetting |
has_many |
BusinessCategory
business-categories
Resource of type BusinessCategory.
| Field | Type | Info |
|---|---|---|
| name | string |
|
| professional-categories | array<object> |
BusinessFiscalEntity
business-fiscal-entities
The fiscal entity (CNPJ/CPF) owned by a Business — the issuer of invoices on the salon's behalf.
A SellerFiscalEntity scoped to a Business. Holds the salon's CNPJ, address, MEI registration data, digital certificate, and PassGov credentials used to talk to government services. The certificate_expiration_date attribute is sourced from the linked fiscal-entity-certificates.expiration_date row (single source of truth — updated automatically on certificate upload, absent when no active certificate is on file).
| Field | Type | Info |
|---|---|---|
| name | string |
|
string | null |
||
| status | string |
waiting_setup | waiting_update | failed | active | inactive |
| document-type | string |
|
| tax-number | string |
|
| tax-country | string |
|
| emission-status | string |
active | inactive | missing_setup | missing_auth | missing_validation |
| certificate-expiration-date | string | null |
|
| status-pass-govs | string |
none | validating | succeeded | failed |
| status-pass-invoices | string |
none | validating | succeeded | failed |
| status-certificate | string |
none | validating | succeeded | failed |
| has-pass-gov | boolean |
|
| has-pass-invoices | boolean |
|
| has-certificate | boolean |
|
| created-at | string |
|
| updated-at | string |
|
| created-by | string | null |
|
| updated-by | string | null |
|
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
BusinessRequest
business-requests
Tracks one asynchronous workflow, from creation to its final status.
type to the contract, invoice, termination, or service workflow you need.data using the matching BusinessRequest.* schema below.status; use statuses when you need the full audit trail.On-demand services: read GET /business-requests/catalog, select a manual service, then send its service_key. The server restores the trusted service data.
| Field | Type | Info |
|---|---|---|
| type | string |
new_contract | new_contract_pdf | terminate_contract | professional_invoice_emission | new_certificate | on_demand_service | professional_on_demand_service |
| status | string |
draft | open | processing | waiting | closed | cancel_requested | canceled | errored |
| last-author | string | null |
|
| last-author-type | string | null |
|
| status-updated-at | string | null |
|
| tags | string |
format: comma-separated kebab-case service tag, department, and service key |
| artifacts | object | null |
|
| created-at | string |
|
| created-by | string | null |
|
| updated-at | string |
|
| updated-by | string | null |
|
| submitted-at | string | null |
|
| submitted-by | string | null |
|
| canceled-at | string | null |
|
| canceled-by | string | null |
|
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
required |
Each schema belongs to BusinessRequest. The workflow is selected by attributes.type; the fields below describe attributes.data.
| Schema | Attribute | Validation | Applies to |
|---|---|---|---|
BusinessRequest.NewContract | attributes.data | No strict JSON schema | Creates the linked fillable contract. The service accepts the documented values but does not apply a strict payload schema. |
BusinessRequest.NewContractPdf | attributes.data | No strict JSON schema | Registers a contract that is already signed. The PDF URL is stored with the linked contract. |
BusinessRequest.ProfessionalInvoiceEmission | attributes.data | Strict schema | Creates a batch of professional invoice-emission items with the professional, amount, and buyer and seller fiscal data for each item. |
BusinessRequest.TerminateContract | attributes.data | Strict schema | Records the end of a professional partnership, including the settlement flags, parties, and optional signed termination document. |
BusinessRequest.NewCertificate | attributes.data | Strict schema | Requests a new certificate with the complete catalog-service, owner, business, and representative context. |
BusinessRequest.OnDemandService | attributes.data | Strict schema after catalog resolution | Requests a catalog service with required owner and business context at the payload root. |
BusinessRequest.ProfessionalOnDemandService | attributes.data | Strict schema after catalog resolution | Requests a catalog service for a selected MEI professional, with required owner, business, professional, and fiscal-entity context at the payload root. |
/business-requestsGET /business-requestsPATCH /business-requests/{businessrequestId}/update-statusPOST /business-requests/{businessrequestId}/update-statusPATCH /business-requests/update-statusGET /professionals/{professionalId}/business-requests/historyGET /business-requests/{businessrequestId}GET /business-requests/{businessrequestId}/status
BusinessSetting
business-settings
Resource of type BusinessSetting.
| Field | Type | Info |
|---|---|---|
| group-name | string |
notifications |
| name | string |
|
| value | string |
required |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
CnaeItem
embedded
A CNAE (Classificação Nacional de Atividades Econômicas) code and description.
Embedded within ExtraData.all-cnae. Each item pairs a CNAE code with its human-readable description. CNAE codes classify the economic activities of the business.
| Field | Type | Info |
|---|---|---|
| cnae | string |
|
| description | string |
ExternalAppToken
external-app-tokens
An API key for external app integrations — scoped access without user credentials.
Allows third-party systems to call the API using a static key instead of user JWTs. The gateway validates the key, generates a short-lived external-app JWT, and caches it for 5 minutes. Managed by admins via /external-app-tokens CRUD.
| Field | Type | Info |
|---|---|---|
| name | string |
|
| key | string |
|
| scopes | array<string> |
array of permission strings |
| expires-at | string | null |
|
| created-at | string |
ExtraData
embedded
Additional fiscal entity data — CNAE list and partner info.
Embedded within TaxData. Contains the primary CNAE code, the full list of CNAE items (all-cnae), the main partner name, and the municipal jurisdiction code.
| Field | Type | Info |
|---|---|---|
| cnae | string |
|
| main-partner-name | string |
|
| municipal-jurisdiction | string |
|
FiscalEntityMeiCcmei
fiscal-entity-mei-ccmeis
Cartão CNPJ do MEI (CCMEI) — MEI card document for a fiscal entity.
Stores the CCMEI (MEI card) document data for a fiscal entity. The CCMEI is an official document proving MEI registration. Status tracks the document state; details and extra contain the government response data. Linked to a parent MEI entity.
| Field | Type | Info |
|---|---|---|
| updated-at | string |
required |
| status | string |
|
| details | object |
|
| extra | object |
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity-mei | FiscalEntityMei |
has_one |
InvoiceItem
embedded
A line item within a ProfessionalInvoice — description, quantity, unit value, and total.
Embedded within ProfessionalInvoice.items. Each item has: description (string), quantity (integer), unit-value-cents (integer, in centavos), total-value-cents (integer, in centavos). The sum of all items' total-value-cents should equal the invoice's total-value-cents.
| Field | Type | Info |
|---|---|---|
| description | string |
|
| quantity | integer |
|
| unit-value-cents | integer |
|
| total-value-cents | integer |
PaymentsRecipient
billing-recipients
Resource of type PaymentsRecipient.
| Field | Type | Info |
|---|---|---|
| bank-account | object | null |
|
| providers | object | null |
|
| pix-info | object | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
Permission
permissions
Resource of type Permission.
| Field | Type | Info |
|---|---|---|
| name | string |
PersonalDocument
personal-documents
An identity or supporting document attached to a Professional or Account.
Stores uploaded identity documents (RG, CNH, CPF, address proof, etc.) required for compliance checks, contract approval, or fiscal entity registration. Each document has a type, file URL, and validation status.
| Field | Type | Info |
|---|---|---|
| document-type | string |
rg | cnh | cpf | address_proof | other |
| data | object | null |
|
| front-url | string | null |
|
| back-url | string | null |
|
| foreign-type | string | null |
|
| foreign-id | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| account | Account |
has_one |
Phone
phones
Resource of type Phone.
| Field | Type | Info |
|---|---|---|
| country | string |
|
| number | string |
PinCred
pin-creds
Resource of type PinCred.
| Field | Type | Info |
|---|---|---|
| pin | string |
Professional
professionals
A beauty professional (hairdresser, manicurist, esthetician, …) working under a Business.
A worker who renders services and may issue invoices through the platform. Linked to a ProfessionalContract with the Business and to a ProfessionalFiscalEntity (their MEI / CNPJ) used for invoice emission.
| Field | Type | Info |
|---|---|---|
| name | string |
|
| initials | string | null |
|
string |
format: /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i | |
| phone-number | string | null |
format: /^[0-9]+$/ |
| phone-country | string | null |
format: /^[0-9]+(-[0-9]+)?$/ |
| phone-composed | string | null |
|
| individual-tax-number | string | null |
|
| birth-date | string | null |
format: YYYY-MM-DD |
| address | object | null |
|
| gender | string | null |
|
| marital-status | string | null |
|
| rg | string | null |
|
| issuing-organization | string | null |
|
| shipping-date | string | null |
|
| national-identification-data | object | null |
|
| is-active | boolean |
|
| category-key | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| account | Account |
has_one |
|
| business | Business |
has_one |
|
| category | ProfessionalCategory |
has_one |
|
| permissions-group | permissions-groups | has_one |
ProfessionalCategory
professional-categories
Resource of type ProfessionalCategory.
| Field | Type | Info |
|---|---|---|
| name | string |
|
| color | string | null |
|
| translation-key | string | null |
|
| sort-weight | integer | null |
|
| is-locked | boolean | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| permissions-group | permissions-groups | has_one |
ProfessionalContract
professional-contracts
The contractual relationship between a Business and a Professional.
Tracks the agreement that authorizes a Professional to operate under a Business. Status flows: filling → approved → (active) → terminated. Two PDF slots: pdf_url for the signed contract (set by new_contract_pdf) and termination_pdf_url for the signed distrato (set by terminate_contract — either at create time via data.pdf_url, or at the status→closed transition via a top-level termination_pdf_url field). The termination-business-request relationship identifies the BusinessRequest that initiated termination. When terminate_contract is created with data.pdf_url, the contract is driven directly approved → terminated (skipping termination_requested) and the BusinessRequest goes directly to closed (skipping open) — mirrors the new_contract_pdf flow. The termination_pdf_url column can only be set while the contract is in termination_requested or terminated and is locked once populated; further attempts error with 422 TerminationPdfUrlAlreadySet.
| Field | Type | Info |
|---|---|---|
| status | string |
filling | in_approval | approved | termination_requested | terminated | canceled required |
| contract-status | string |
filling | in_approval | approved | termination_requested | terminated | canceled |
| pdf-url | string | null |
format: URI (http/https) |
| termination-pdf-url | string | null |
format: URI (http/https) |
| termination-business-request-id | string | null |
|
| partnership-start-date | string | null |
|
| partnership-end-date | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
required |
| professional | Professional |
has_one |
required |
| business-request | BusinessRequest |
has_one |
|
| termination-business-request | BusinessRequest |
has_one |
/professional-contracts/{professionalcontractId}/update-statusPUT /professional-contracts/{professionalcontractId}/pdfPATCH /professional-contracts/{professionalcontractId}/cancelGET /accounts/{accountId}/professional-contractsGET /professionals/{professionalId}/professional-contracts/activeGET /accounts/{accountId}/professional-contracts/{contractId}GET /professional-contractsGET /professional-contracts/{professionalcontractId}PATCH /professional-contracts/{professionalcontractId}/cancellation-requestPATCH /professional-contracts/{professionalcontractId}/in-approvalPATCH /professional-contracts/{professionalcontractId}/statusPATCH /professional-contracts/update-status
ProfessionalFiscalEntity
professional-fiscal-entities
The fiscal entity (CPF/CNPJ, usually a MEI) belonging to a Professional — the issuer of their invoices.
A SellerFiscalEntity owned by a Professional. Stores CNPJ (when MEI), CPF, digital certificate, MEI registration data, and PassGov credentials needed to query Receita Federal services on the Professional's behalf. The certificate_expiration_date attribute is sourced from the linked fiscal-entity-certificates.expiration_date row (single source of truth — updated automatically on certificate upload, absent when no active certificate is on file).
| Field | Type | Info |
|---|---|---|
| name | string |
|
string | null |
||
| status | string |
waiting_setup | waiting_update | failed | active | inactive |
| document-type | string |
|
| tax-number | string |
|
| tax-country | string |
|
| emission-status | string |
active | inactive | missing_setup | missing_auth | missing_validation |
| certificate-expiration-date | string | null |
|
| das-paid-by | string | null |
|
| status-pass-govs | string |
none | validating | succeeded | failed |
| status-pass-invoices | string |
none | validating | succeeded | failed |
| status-certificate | string |
none | validating | succeeded | failed |
| has-pass-gov | boolean |
|
| has-pass-invoices | boolean |
|
| has-certificate | boolean |
|
| created-at | string |
|
| updated-at | string |
|
| created-by | string | null |
|
| updated-by | string | null |
|
| Name | Type | Kind | Info |
|---|---|---|---|
| professional | Professional |
has_one |
ProfessionalInvoice
professional-invoices
A NFS-e (electronic service invoice) issued for services rendered by a Professional.
Represents a Brazilian electronic service invoice (NFS-e) emitted through the eNotas integration on behalf of a Professional. Lifecycle: pending → requested → succeeded | failed. Cancellation lifecycle: pending-cancelation → requested-cancelation → canceled | failed-cancelation.
| Field | Type | Info |
|---|---|---|
| invoice-type | string | null |
services | products |
| items | array<object> |
required array of { description, quantity, unit_value_cents, total_value_cents } |
| buyer-id | string | null |
|
| buyer-type | string | null |
business | external |
| buyer-data | object | null |
|
| status | string |
pending | requested | succeeded | failed |
| cancel-status | string | null |
none | requested | canceled | cancel_failed |
| status-reason | string | null |
|
| cancel-reason | string | null |
|
| emission-date | string | null |
|
| fiscal-date | string | null |
|
| nfse-url | string | null |
|
| total-value-cents | integer | null |
|
| source | string | null |
|
| invoice-id | string | null |
|
| created-at | string |
|
| updated-at | string |
|
| created-by | string | null |
|
| updated-by | string | null |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
|
| professional | Professional |
has_one |
|
| professional-fiscal-entity | ProfessionalFiscalEntity |
has_one |
|
| business-request | BusinessRequest |
has_one |
/professional-invoices/{professionalinvoiceId}/emitPATCH /professional-invoices/{professionalinvoiceId}/cancel/confirmationPOST /professional-invoices/{professionalinvoiceId}/reemitPUT /professional-invoices/{professionalinvoiceId}/nfseGET /accounts/{accountId}/professional-invoicesGET /accounts/{accountId}/professional-invoices/{invoiceId}PATCH /accounts/{accountId}/professional-invoices/{invoiceId}/cancelPATCH /accounts/{accountId}/professional-invoices/{invoiceId}/emitPOST /accounts/{accountId}/professional-invoices/{invoiceId}/reemitGET /professional-invoicesGET /professional-invoices/{professionalinvoiceId}PATCH /professional-invoices/{professionalinvoiceId}
ProfessionalService
professional-services
Resource of type ProfessionalService.
| Field | Type | Info |
|---|---|---|
| services | array<object> |
required non-empty array of { service_category, professional_percentage, establishment_percentage } |
| pay-periodicity | string | null |
monthly | bi_weekly | weekly | daily |
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
required |
| professional | Professional |
has_one |
required |
Representative
representatives
The legal representative (Person) registered for a Business.
Stores the responsible person's identification (name, CPF, contact). Required by eNotas / Serpro when issuing invoices on the Business's behalf.
| Field | Type | Info |
|---|---|---|
| name | string |
required |
| surname | string |
required |
| gender | string |
required |
string |
format: /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i required |
|
| contact | string |
format: /^([1-9]\d)?[ -]?9\d{4}[-\s]?\d{4}$/ required |
| cpf | string |
format: /^\d{3}\.?\d{3}\.?\d{3}-?\d{2}$/ required |
| rg | string |
format: /^(\d{1,2}\.?)(\d{3}\.?)(\d{3})(-?[0-9Xx])$/ required |
| issuing-organization | string |
required |
| shipping-date | string |
required |
| address-postal | string |
format: /^\d{8}$/ required |
| address-street | string |
required |
| address-neighborhood | string | null |
|
| address-number | string |
required |
| address-complement | string |
required |
| address-city | string |
required |
| address-state | string |
required |
| marital-status | string |
required |
| birthday | string |
required |
| business-id | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| businesses | Business |
has_many |
Resource
resources
An uploaded blob (PDF, image, certificate) referenced from other resources by id.
Generic file upload. The response returns an id used to attach the blob to other resources (e.g. contract PDFs, certificate files).
| Field | Type | Info |
|---|---|---|
| url | string |
|
| content-type | string |
|
| filename | string |
|
| byte-size | integer |
|
| created-at | string |
ServiceCategory
service-categories
Resource of type ServiceCategory.
| Field | Type | Info |
|---|---|---|
| translation-key | string |
required |
| level | integer |
required |
| service-category-id | string |
required |
Session
sessions
An authenticated session — credentials traded for a short-lived JWT bearer token.
Created via POST /sessions with email/password. The response carries the bearer token used in Authorization: Bearer … for every subsequent call. Sessions can be listed and revoked.
| Field | Type | Info |
|---|---|---|
| token | string |
|
string |
||
| type | string |
|
| created-at | string |
TaxData
embedded
Tax and fiscal configuration data for a seller fiscal entity — enterprise info, tax system, rules, and municipal parameters.
Embedded object on SellerFiscalEntity and BusinessFiscalEntity containing the fiscal entity's tax registration data: enterprise type/name, tax system (MEI/Simples Nacional status), CNAE codes, municipal jurisdiction, ISS aliquota, and regime especial tributacao. The enterprise-tax-system sub-object tracks MEI and Simples Nacional status with optional date intervals. The rules sub-object indicates which fields are active for this entity (e.g. whether descricao_servico or item_lista_servico are used). The extra sub-object contains CNAE list and partner info. Sourced from InfoSimples and updated on revalidation.
| Field | Type | Info |
|---|---|---|
| fantasy-name | string |
|
| enterprise-type | string |
|
| enterprise-name | string |
|
| phone-country | string |
|
| phone-number | string |
|
| cnae | string |
|
| serie-nfe | string |
|
| codigo-nbs | string |
|
| aliquota-iss | number |
|
| razao-social | string |
|
| nome-fantasia | string |
|
| codigo-ibge-uf | string |
|
| sequencial-nfe | string |
|
| tipo-autenticacao | integer |
|
| codigo-ibge-cidade | string |
|
| inscricao-estadual | string |
|
| telefone-comercial | string |
|
| inscricao-municipal | string |
|
| sequencial-lote-nfe | string |
|
| item-lista-servico-lc | string |
|
| municipal-jurisdiction | string |
|
| codigo-servico-municipal | string |
|
| optante-simples-nacional | boolean |
|
| codigo-tributacao-nacional | string |
|
| regime-especial-tributacao | string |
|
| regime-especial-tributacao-label | string |
|
TaxRules
embedded
Flags indicating which tax fields are active for a fiscal entity.
Embedded within TaxData. Boolean flags that control which fields are relevant for this entity's tax regime: uses-descricao-servico, uses-item-lista-servico, uses-codigo-servico-municipal, uses-regime-especial-tributacao. These flags drive form visibility in the UI.
| Field | Type | Info |
|---|---|---|
| uses-descricao-servico | boolean |
|
| uses-item-lista-servico | boolean |
|
| uses-codigo-servico-municipal | boolean |
|
| uses-regime-especial-tributacao | boolean |
TaxSystem
embedded
MEI and Simples Nacional tax regime status for a fiscal entity.
Embedded within TaxData. Tracks whether the entity is MEI (is-mei), enrolled in Simples Nacional (is-simples), and the date intervals for Simples participation (is-simples-intervals). The situacao-cadastral object holds the Receita Federal cadastral situation.
| Field | Type | Info |
|---|---|---|
| country | string |
|
| is-mei | boolean |
|
| is-simples | boolean |
|
| situacao-cadastral | object |
|
| is-simples-start-date | string |
|
| is-simples-end-date | string |
|
WeekSchedule
week-schedules
Weekly working hours for a Business or Professional.
Holds the recurring weekly availability used by booking flows: open/close time per weekday, breaks, and exceptions.
| Field | Type | Info |
|---|---|---|
| time-intervals | array<array> |
array of [day, open, close] tuples |
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
BuyerFiscalEntity
buyer-fiscal-entities
A customer fiscal entity (CPF/CNPJ) — the receiver named on invoices issued by Professionals.
Stores the tax data required to address an NFS-e to a customer (individual or company). Reused across many ProfessionalInvoices.
| Field | Type | Info |
|---|---|---|
| tax-number | string |
|
| tax-type | string |
cpf |
| name | string |
|
string | null |
||
| phone | string | null |
|
| created-at | string |
|
| updated-at | string |
|
Das
fiscal-entity-dases
A monthly DAS (Documento de Arrecadação do Simples Nacional) record for a MEI.
The monthly tax payment slip mandatory for MEI companies. Fetched from Serpro/InfoSimples for each month of the year. Status indicates whether the DAS has been paid, is overdue, or is pending fetch. The PATCH endpoint requests an update from the government source.
| Field | Type | Info |
|---|---|---|
| competence | string | null |
|
| due-date | string | null |
|
| amount-cents | integer | null |
|
| status | string |
not-requested | requested | not-mei | failed | waiting-payment | paid | missing | errored | in-active-debt |
| barcode | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity | ProfessionalFiscalEntity |
has_one |
Diagnosis
fiscal-entity-diagnoses
A fiscal compliance diagnostic result for a MEI FiscalEntity.
Captures the result of querying Receita Federal / government services for pending issues (debts, certificate problems, registration inconsistencies) that would block NFS-e emission. A diagnosis is triggered on demand and may contain multiple issue entries.
| Field | Type | Info |
|---|---|---|
| status | string |
processing | succeeded | failed | errored | not_applicable |
| result | object | null |
|
| checked-at | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity | ProfessionalFiscalEntity |
has_one |
/businesses/{businessId}/fiscal-entity/diagnosisPOST /businesses/{businessId}/fiscal-entity/diagnosisGET /professionals/{professionalId}/fiscal-entity/diagnosisPOST /professionals/{professionalId}/fiscal-entity/diagnosisGET /accounts/{accountId}/fiscal-entity/mei/diagnosisPOST /accounts/{accountId}/fiscal-entity/mei/diagnosisGET /fiscal-entities/{fiscalEntityId}/mei/diagnosisPOST /fiscal-entities/{fiscalEntityId}/mei/diagnosisGET /accounting/diagnosis/{taxNumber}
EmissionValidation
emission-validations
The result of a test-invoice emission validation attempt for a seller fiscal entity.
Returned by the emission validation endpoints (POST/GET /invoices-emission/validate, POST /validate-emission, GET /validation-status). Each record represents one validation attempt: a zero-value test NFS-e is emitted through eNotas, and the callback updates the status to succeeded or failed. The status field is the last entry of the internal statuses audit trail (none → validating → succeeded / failed). author and author_type identify who requested the validation, captured from the request context. authentication_type records which credential was used (pass_only, token, user_and_pass, or certificate). canceled_at is set when the test invoice is queued for cancellation after a successful validation. is_valid reflects whether the seller fiscal entity is currently emission-validated. The invoice relationship points to the test invoice created for this validation.
| Field | Type | Info |
|---|---|---|
| status | string |
none | validating | succeeded | failed |
| author | string | null |
|
| author-type | string | null |
|
| authentication-type | string | null |
pass_only | token | user_and_pass | certificate |
| attempted-at | string |
|
| completed-at | string | null |
|
| canceled-at | string | null |
|
| invoice-status | string | null |
|
| error | object | null |
|
| municipal-data | object | null |
|
| is-valid | boolean |
| Name | Type | Kind | Info |
|---|---|---|---|
| invoice | Invoice |
has_one |
/businesses/{businessId}/fiscal-entity/invoices-emission/validateGET /businesses/{businessId}/fiscal-entity/invoices-emission/validatePOST /professionals/{professionalId}/fiscal-entity/invoices-emission/validateGET /professionals/{professionalId}/fiscal-entity/invoices-emission/validatePOST /fiscal-entities/{fiscalEntityId}/validate-emissionGET /fiscal-entities/{fiscalEntityId}/validation-statusPOST /fiscal-entities/{fiscalEntityId}/invoices-emission/validateGET /fiscal-entities/{fiscalEntityId}/invoices-emission/validate
FiscalEntityCertificate
fiscal-entity-certificates
Digital certificate (PKCS#12) stored for a FiscalEntity, used to authenticate with the NFS-e issuing portal.
Stores the PKCS#12 (.pfx) digital certificate bytes (in S3) and the encrypted password. PATCH .../certificate/validate downloads the .pfx from S3, decrypts the password, and tests the certificate against the external revenue API. Validation runs automatically when a new file or password is saved. Setting password: "" deactivates the certificate, clears the stored password and S3 key, and resets validation_status to none. The upload endpoints require a non-empty password.
| Field | Type | Info |
|---|---|---|
| expiration-date | string | null |
|
| status | string |
active | inactive |
| validation-status | string |
none | validating | succeeded | failed |
| validation-errors | array<string> |
|
| validation-at | string | null |
|
| validation-by-id | string | null |
|
| s3-key | string |
required |
| created-at | string |
|
| created-by | string | null |
|
| updated-at | string |
|
| updated-by | string | null |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
|
| professional | Professional |
has_one |
/businesses/{businessId}/fiscal-entity/certificateGET /businesses/{businessId}/fiscal-entity/certificatePUT /professionals/{professionalId}/fiscal-entity/certificateGET /professionals/{professionalId}/fiscal-entity/certificatePOST /businesses/{businessId}/fiscal-entity/certificate/validatePOST /professionals/{professionalId}/fiscal-entity/certificate/validatePUT /accounts/{accountId}/fiscal-entity/certificateGET /accounts/{accountId}/fiscal-entity/certificatePOST /accounts/{accountId}/fiscal-entity/certificatePOST /accounts/{accountId}/fiscal-entity/certificate/validateGET /fiscal-entities/{fiscalEntityId}/certificatesPOST /fiscal-entities/{fiscalEntityId}/certificates
+1 more
FiscalEntityMei
fiscal-entity-meis
MEI (Microempreendedor Individual) registration data for a fiscal entity — CNPJ details, CCMEI number, and compliance status.
Stores the MEI-specific registration data for a fiscal entity including CNPJ details (situation, update timestamp), CCMEI number and situation, and overall MEI status. Linked to a parent fiscal entity. The CNPJ and CCMEI sub-objects track the raw government data and when it was last refreshed.
| Field | Type | Info |
|---|---|---|
| tax-number | string |
|
| status | string |
|
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity | SellerFiscalEntity |
has_one |
FiscalEntityMeiCnd
fiscal-entity-mei-cnds
Certidão Negativa de Débitos (CND) — tax clearance certificate for a MEI fiscal entity.
Stores the CND (negative tax certificate) for a MEI fiscal entity. The CND confirms the entity has no outstanding tax debts. Status tracks the validation state; details and extra contain the government response data. Linked to a parent MEI entity.
| Field | Type | Info |
|---|---|---|
| updated-at | string |
required |
| status | string |
|
| details | object |
|
| extra | object |
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity-mei | FiscalEntityMei |
has_one |
FiscalEntityMeiDasn
fiscal-entity-mei-dasns
Declaração Anual do Simples Nacional (DASN) — annual MEI revenue declaration.
Stores the annual DASN declaration for a MEI fiscal entity. The DASN is the yearly revenue declaration required for MEI companies. Status tracks the declaration state. Linked to an account and a fiscal entity.
| Field | Type | Info |
|---|---|---|
| status | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| account | Account |
has_one |
|
| fiscal-entity | SellerFiscalEntity |
has_one |
FiscalEntityRequest
fiscal-entity-requests
A request record for fiscal entity operations (CNPJ validation, document uploads, government service queries).
Tracks asynchronous fiscal entity operations such as CNPJ validation, document fetch, or government service queries. Each request has a category, processing status, and optional error details. Linked to a parent fiscal entity.
| Field | Type | Info |
|---|---|---|
| category | string |
|
| details | object |
|
| process-status | string |
|
| status | string |
|
| error-status | string | null |
|
| created-at | string |
required |
| updated-at | string |
required |
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity | SellerFiscalEntity |
has_one |
FiscalEntityRevenue
fiscal-entity-revenues
Monthly fiscal entity gross revenue record used for annual limits tracking.
Stores the declared monthly revenue for a seller fiscal entity. For MEI entities, the annual limit is R$81k/year (sum of current year). For non-MEI entities, the limit is platform-configurable and uses trailing-12-month calculation. The PATCH endpoint triggers an asynchronous refresh from the revenue provider. When refresh is in flight, the record data JSONB may carry a revenue_job_id (string) pointing to the async job on the external revenue API; on completion the poller removes the field and writes the final succeeded/errored status.
| Field | Type | Info |
|---|---|---|
| month | string | null |
|
| gross-amount | number | null |
|
| tax-number | string | null |
|
| tax-country | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| professional | Professional |
has_one |
FiscalEntityRevenueResume
fiscal-entity-revenue-resumes
Revenue resume aggregated per fiscal entity across a business.
Returned by GET /professional-fiscal-entities/revenue, GET /businesses/{businessId}/revenue, and GET /fiscal-entities/revenue (proxied from the accounting service). One entry per seller fiscal entity of the business, with the sum of succeeded monthly revenue records for the relevant period (yearly for MEI, trailing 12 months for non-MEI). The api_status reflects the aggregated health of the underlying monthly records (errored > processing > succeeded). The total_revenue_status compares actual total revenue against the annual limit (ok/nok). The projected_revenue_status projects current revenue forward using two configurable thresholds (ok/warning_low/warning_high). The calculation_type distinguishes yearly (MEI, calendar-year sum) from trailing (non-MEI, rolling 12-month sum). Errored and processing months are listed in errored_months and processing_months respectively. A last_updated_at field (RFC 3339) reflects the most recent update timestamp across all underlying revenue records. The response is JSON:API with a fiscal-entity relationship.
| Field | Type | Info |
|---|---|---|
| year | integer | null |
|
| total-gross-amount | number | null |
|
| total-months | integer | null |
|
| limit-amount | number | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| fiscal-entity | ProfessionalFiscalEntity |
has_one |
Invoice
invoices
An invoice record managed by the accounting service — tracks NFS-e emission, tax breakdown, and provider status.
The accounting-side invoice record created when a ProfessionalInvoice is emitted. Stores tax breakdown (IRRF, PIS, COFINS, CSLL, ISS), NFS-e number/verification code, and the external provider status. Linked to a SellerFiscalEntity (issuer) and BuyerFiscalEntity (receiver). Status follows the accounting service lifecycle: pending → requested → succeeded | failed. Cancellation: pending-cancelation → requested-cancelation → canceled | failed-cancelation.
| Field | Type | Info |
|---|---|---|
| competency-date | string |
|
| nfse-number | string | null |
|
| nfse-verification-code | string | null |
|
| nfse-url | string | null |
|
| amount-cents | integer |
|
| tax-irrf-cents | integer |
|
| tax-pis-cents | integer |
|
| tax-cofins-cents | integer |
|
| tax-csll-cents | integer |
|
| tax-iss-cents | integer |
|
| status | string |
pending | requested | succeeded | failed |
| cancel-status | string | null |
none | requested | canceled | cancel_failed |
| provider-id | string | null |
|
| provider-status | string | null |
|
| emission-date | string | null |
|
| fiscal-date | string | null |
|
| created-at | string |
|
| updated-at | string |
| Name | Type | Kind | Info |
|---|---|---|---|
| seller-fiscal-entity | seller-fiscal-entities | has_one |
|
| buyer-fiscal-entity | BuyerFiscalEntity |
has_one |
/accounts/{accountId}/invoicesGET /accounts/{accountId}/invoicesGET /accounts/{accountId}/invoices/{invoiceId}POST /accounts/{accountId}/invoices/{invoiceId}/emitPOST /accounts/{accountId}/invoices/{invoiceId}/cancelGET /fiscal-entities/{fiscalEntityId}/invoicesPOST /fiscal-entities/{fiscalEntityId}/invoicesGET /fiscal-entities/{fiscalEntityId}/invoices/{invoiceId}PATCH /fiscal-entities/{fiscalEntityId}/invoices/{invoiceId}
PassGov
fiscal-entity-pass-govs
Gov.br credentials (CPF + password) stored for automated government service access.
Stores the gov.br login used to query Receita Federal on the FiscalEntity's behalf — e.g., to fetch DAS, diagnoses, and CND documents. Credentials are encrypted at rest. PATCH .../pass-gov/validate tests the credentials live against the government portal and updates validation_status. On PATCH .../pass-gov, sending password: "" clears the stored password, sets status to inactive and validation_status to none. The create endpoint requires a non-empty password. Validation runs automatically when credentials are saved or updated.
| Field | Type | Info |
|---|---|---|
| cpf | string |
|
| password | string |
|
| status | string |
active | inactive |
| validation-status | string |
none | validating | succeeded | failed |
| validation-errors | array<string> |
|
| validation-at | string | null |
|
| validation-by-id | string | null |
|
| created-at | string |
|
| created-by | string | null |
|
| updated-at | string |
|
| updated-by | string | null |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
|
| professional | Professional |
has_one |
/businesses/{businessId}/fiscal-entity/pass-govPOST /businesses/{businessId}/fiscal-entity/pass-govPATCH /businesses/{businessId}/fiscal-entity/pass-govPOST /businesses/{businessId}/fiscal-entity/pass-gov/validateGET /professionals/{professionalId}/fiscal-entity/pass-govPOST /professionals/{professionalId}/fiscal-entity/pass-govPATCH /professionals/{professionalId}/fiscal-entity/pass-govPOST /professionals/{professionalId}/fiscal-entity/pass-gov/validateGET /accounts/{accountId}/fiscal-entity/pass-govPOST /accounts/{accountId}/fiscal-entity/pass-govPATCH /accounts/{accountId}/fiscal-entity/pass-govPOST /accounts/{accountId}/fiscal-entity/pass-gov/validate
+3 more
PassInvoice
fiscal-entity-pass-invoices
Prefeitura NFS-e portal credentials for a FiscalEntity.
Stores the login/password for the municipal NFS-e issuing system (prefeitura). Required when the municipality does not support direct integration via eNotas and invoices must be issued through the city portal. Managed separately from PassGov. PATCH .../pass-invoices/validate tests the credentials live against the external revenue API and updates validation_status. On PATCH .../pass-invoices, sending password: "" clears the stored password, sets status to inactive and validation_status to none. The create endpoint requires a non-empty password. Validation runs automatically when credentials are saved or updated.
| Field | Type | Info |
|---|---|---|
| authentication-type | string |
pass_only | token | user_and_pass |
| username | string | null |
|
| login | string |
|
| password | string |
|
| status | string |
active | inactive |
| validation-status | string |
none | validating | succeeded | failed |
| validation-errors | array<string> |
|
| validation-at | string | null |
|
| validation-by-id | string | null |
|
| created-at | string |
|
| created-by | string | null |
|
| updated-at | string |
|
| updated-by | string | null |
| Name | Type | Kind | Info |
|---|---|---|---|
| business | Business |
has_one |
|
| professional | Professional |
has_one |
/businesses/{businessId}/fiscal-entity/pass-invoicesPOST /businesses/{businessId}/fiscal-entity/pass-invoicesPATCH /businesses/{businessId}/fiscal-entity/pass-invoicesPOST /businesses/{businessId}/fiscal-entity/pass-invoices/validateGET /professionals/{professionalId}/fiscal-entity/pass-invoicesPOST /professionals/{professionalId}/fiscal-entity/pass-invoicesPATCH /professionals/{professionalId}/fiscal-entity/pass-invoicesPOST /professionals/{professionalId}/fiscal-entity/pass-invoices/validateGET /accounts/{accountId}/fiscal-entity/pass-invoicesPOST /accounts/{accountId}/fiscal-entity/pass-invoicesPATCH /accounts/{accountId}/fiscal-entity/pass-invoicesPOST /accounts/{accountId}/fiscal-entity/pass-invoices/validate
+3 more
SellerFiscalEntity
fiscal-entities
A seller fiscal entity (CPF/CNPJ) in the accounting service — the issuer of invoices.
Represents a fiscal entity registered in the accounting service for invoice emission. Stores tax number, address, certificate expiration, MEI registration, and emission status. Linked to an Account and optionally to a parent fiscal entity and MEI data. The certificate_expiration_date is sourced from the linked fiscal-entity-certificates.expiration_date row. The emission_status tracks whether the entity can emit invoices (missing_setup → missing_auth → missing_validation → active | inactive); missing_auth means the eNotas company account exists but no credentials have been sent yet. The status_pass_govs, status_pass_invoices, and status_certificate fields expose the current state of linked credentials and certificates.
| Field | Type | Info |
|---|---|---|
| name | string |
|
string | null |
||
| status | string |
|
| emission-status | string |
|
| certificate-expiration-date | string | null |
|
| das-paid-by | integer | null |
|
| status-pass-govs | string |
|
| status-pass-invoices | string |
|
| status-certificate | string |
|
| has-pass-gov | boolean |
|
| has-pass-invoices | boolean |
|
| has-certificate | boolean |
|
| document-type | string |
|
| tax-number | string |
|
| tax-country | string |
|
| emission-validated-at | string | null |
|
| foreign-id | integer | null |
|
| foreign-type | string | null |
|
| created-at | string |
required |
| created-by | integer | null |
|
| updated-at | string |
required |
| updated-by | integer | null |
|
| Name | Type | Kind | Info |
|---|---|---|---|
| parent-fiscal-entity | SellerFiscalEntity |
has_one |
|
| account | Account |
has_one |
|
| fiscal-entity-mei | FiscalEntityMei |
has_one |
BusinessRequest.NewContract
Creates the linked fillable contract. The service accepts the documented values but does not apply a strict payload schema.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
professional_id | string | Optional | Linked professional identifier. |
BusinessRequest.NewContractPdf
Registers a contract that is already signed. The PDF URL is stored with the linked contract.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
professional_id | string | Optional | Linked professional identifier. |
pdf_url | URI | Optional | Signed contract PDF URL. |
BusinessRequest.ProfessionalInvoiceEmission
Creates a batch of professional invoice-emission items with the professional, amount, and buyer and seller fiscal data for each item.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
fiscal_month | YYYY-MM string | Required | Competency month for every item in the batch. |
fiscal_date | YYYY-MM-DD string | Optional | Specific fiscal date when it differs from the competency month. |
invoices | array (at least 1 item) | Required | Invoice-emission items. |
invoices[].professional_id | string | Required | Professional issuing the service invoice. |
invoices[].total_value_cents | integer ≥ 1 | Required | Invoice total in cents. |
invoices[].description | string | Optional | Description shown on the invoice. |
invoices[].buyer_fiscal_entity_name | string | Required | Buyer fiscal entity legal name. |
invoices[].buyer_fiscal_entity_tax_number | string | Required | Buyer CPF or CNPJ. |
invoices[].buyer_fiscal_entity_id | string | Optional | Stored buyer fiscal entity identifier. |
invoices[].seller_fiscal_entity_name | string | Required | Seller fiscal entity legal name. |
invoices[].seller_fiscal_entity_tax_number | string | Required | Seller CPF or CNPJ. |
invoices[].seller_fiscal_entity_id | string | Optional | Stored seller fiscal entity identifier. |
BusinessRequest.TerminateContract
Records the end of a professional partnership, including the settlement flags, parties, and optional signed termination document.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
professional_contract_id | string | Required | Professional contract being terminated. |
partnership_start_date | YYYY-MM-DD string | Required | Partnership start date. |
partnership_end_date | YYYY-MM-DD string | Required | Partnership end date. |
has_transfer_value | boolean | Required | Whether a transfer value is part of the settlement. |
transfer_value_cents | integer ≥ 1 | null | Conditional | Transfer value in cents when has_transfer_value is true. |
professional_received_transfer_value | boolean | Conditional | Whether the professional received the transfer value. |
has_payment_to_salon | boolean | Required | Whether the professional owes a payment to the salon. |
payment_to_salon_cents | integer ≥ 1 | null | Conditional | Payment amount in cents when has_payment_to_salon is true. |
salon_received_payment | boolean | Conditional | Whether the salon received that payment. |
business | object | Required | Business information captured for the termination. |
professional | object | Required | Professional information captured for the termination. |
notes | string | null | Optional | Additional termination notes. |
pdf_url | HTTP(S) URI | Optional | Signed termination document URL. |
BusinessRequest.NewCertificate
Requests a new certificate with the complete catalog-service, owner, business, and representative context.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
service_data | object | Required | Resolved catalog service data. Additional properties are rejected. |
service_data.service_key | string | Required | Catalog service identifier. |
service_data.service_name | string | Required | Service name shown to the requester. |
service_data.service_tag | string | Optional | Catalog tag for grouping or discovery. |
service_data.service_description | string | Required | Description of the requested service. |
service_data.category_key | string | Required | Catalog category identifier. |
service_data.category_name | string | Required | Catalog category name. |
service_data.service_department | string | Optional | Department responsible for the service. |
service_data.price_value | integer ≥ 0 | Required | Price in the currency declared by price_currency. |
service_data.price_currency | string | Required | ISO-style currency code. |
service_data.sla_business_days | integer ≥ 0 | null | Optional | Expected completion time in business days. |
service_data.is_featured | boolean | Required | Whether the catalog marks this service as featured. |
service_data.scope | business | professional | Required | Whether the service is requested for a business or a professional. |
service_data.service_mode | manual | auto | Optional | How the service is fulfilled. |
owner | object | Required | Owner context. Identifier and name are required; contact fields are optional. |
owner.professional_id | string | Required | Owner professional identifier. |
owner.name | string | Required | Owner full name. |
owner.email | string | Optional | Owner email address. |
owner.phone_country | string | Optional | Telephone country code. |
owner.phone_number | string | Optional | Telephone number. |
business | object | Required | Business context. All nested fields are required. |
business.id | string | Required | Business identifier. |
business.brand | string | Required | Business brand name. |
business.tax_number | string | Required | Business CPF or CNPJ. |
requested_details | string | null | Optional | Additional instructions from the requester. |
attachments | array of HTTPS URI strings | Optional | Supporting document URLs. |
representative | object | Required | Representative context. All nested fields are required. |
representative.id | string | Required | Representative identifier. |
representative.name | string | Required | Representative full name. |
representative.tax_number | string | Optional | Representative CPF or CNPJ. |
representative.email | string | Required | Representative email address. |
representative.phone_country | string | Required | Telephone country code. |
representative.phone_number | string | Required | Telephone number. |
BusinessRequest.OnDemandService
Requests a catalog service with required owner and business context at the payload root.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
service_data | object | Required | Resolved catalog service data. Additional properties are rejected. |
service_data.service_key | string | Required | Catalog service identifier. |
service_data.service_name | string | Required | Service name shown to the requester. |
service_data.service_tag | string | Optional | Catalog tag for grouping or discovery. |
service_data.service_description | string | Required | Description of the requested service. |
service_data.category_key | string | Required | Catalog category identifier. |
service_data.category_name | string | Required | Catalog category name. |
service_data.service_department | string | Optional | Department responsible for the service. |
service_data.price_value | integer ≥ 0 | Required | Price in the currency declared by price_currency. |
service_data.price_currency | string | Required | ISO-style currency code. |
service_data.sla_business_days | integer ≥ 0 | null | Optional | Expected completion time in business days. |
service_data.is_featured | boolean | Required | Whether the catalog marks this service as featured. |
service_data.scope | business | professional | Required | Whether the service is requested for a business or a professional. |
service_data.service_mode | manual | auto | Optional | How the service is fulfilled. |
owner | object | Required | Owner context. Identifier and name are required; contact fields are optional. |
owner.professional_id | string | Required | Owner professional identifier. |
owner.name | string | Required | Owner full name. |
owner.email | string | Optional | Owner email address. |
owner.phone_country | string | Optional | Telephone country code. |
owner.phone_number | string | Optional | Telephone number. |
business | object | Required | Business context. All nested fields are required. |
business.id | string | Required | Business identifier. |
business.brand | string | Required | Business brand name. |
business.tax_number | string | Required | Business CPF or CNPJ. |
requested_details | string | null | Optional | Additional instructions from the requester. |
attachments | array of HTTPS URI strings | Optional | Supporting document URLs. |
BusinessRequest.ProfessionalOnDemandService
Requests a catalog service for a selected MEI professional, with required owner, business, professional, and fiscal-entity context at the payload root.
| Field | Type | Requirement | Meaning |
|---|---|---|---|
service_data | object | Required | Resolved catalog service data. Additional properties are rejected. |
service_data.service_key | string | Required | Catalog service identifier. |
service_data.service_name | string | Required | Service name shown to the requester. |
service_data.service_tag | string | Optional | Catalog tag for grouping or discovery. |
service_data.service_description | string | Required | Description of the requested service. |
service_data.category_key | string | Required | Catalog category identifier. |
service_data.category_name | string | Required | Catalog category name. |
service_data.service_department | string | Optional | Department responsible for the service. |
service_data.price_value | integer ≥ 0 | Required | Price in the currency declared by price_currency. |
service_data.price_currency | string | Required | ISO-style currency code. |
service_data.sla_business_days | integer ≥ 0 | null | Optional | Expected completion time in business days. |
service_data.is_featured | boolean | Required | Whether the catalog marks this service as featured. |
service_data.scope | business | professional | Required | Whether the service is requested for a business or a professional. |
service_data.service_mode | manual | auto | Optional | How the service is fulfilled. |
owner | object | Required | Owner context. Identifier and name are required; contact fields are optional. |
owner.professional_id | string | Required | Owner professional identifier. |
owner.name | string | Required | Owner full name. |
owner.email | string | Optional | Owner email address. |
owner.phone_country | string | Optional | Telephone country code. |
owner.phone_number | string | Optional | Telephone number. |
business | object | Required | Business context. All nested fields are required. |
business.id | string | Required | Business identifier. |
business.brand | string | Required | Business brand name. |
business.tax_number | string | Required | Business CPF or CNPJ. |
requested_details | string | null | Optional | Additional instructions from the requester. |
attachments | array of HTTPS URI strings | Optional | Supporting document URLs. |
professional | object | Required | Professional context. Both nested fields are required. |
professional.id | string | Required | Professional identifier. |
professional.name | string | Required | Professional name. |
fiscal_entity | object | Required | Fiscal-entity context. Both nested fields are required. |
fiscal_entity.id | string | Required | Fiscal entity identifier. |
fiscal_entity.tax_number | string | Required | Fiscal entity CPF or CNPJ. |