Configuring Prosyst as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Prosyst option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
Prosyst is self-hosted: it runs on your own server, so the connection details come from your IT team or from Prosyst’s support. Before configuring the source, make sure the web service is running and that its port is reachable from the internet. The following configurations are available:-
Service URL: Base URL of your Prosyst web service, including the released port — for example
https://erp.yourcompany.com:8090. Nekt must be able to reach this address. - User: A Prosyst ERP user used to authenticate. It is registered in the user maintenance screen (PRX001400). Prosyst usually provisions this user, but you can configure your own.
- Password: The password for that user.
- Initial sync date: The earliest date from which records will be synced.
-
Verify SSL Certificate: (Default:
true) Whether to validate the server’s TLS certificate. Disable it only if your Prosyst server serves an incomplete certificate chain. - Date Window Size (days): (Default: 30) The connector sweeps date-filtered streams in windows of this size. Lower it if your ERP server times out on large date ranges.
- Delay Between Requests (seconds): (Default: 0) An optional pause after each request, useful to keep large syncs from saturating your ERP server.
- Establishment Code: Restrict sales orders to a single establishment. Leave it empty to sync all of them.
- Branch Connection Name: The branch database connection used when reading production orders. Leave it empty to use the default connection.
-
Sales Order Status Filter: Restrict sales orders to
P(pending) orL(settled). Leave it empty to sync both. - Material Status Filter: Restrict the material catalogue by registration status. Leave it empty to sync every material.
- Include Cancelled / Closed Purchase Orders: Whether purchase orders in those statuses are returned.
- Only Purchase Orders With Balance: Return only purchase order lines that still have a pending balance.
- Include Requests Without Purchase Order: Also return purchase requests that have not yet become a purchase order.
- Receivables Status Filter: (Default: 2 — all) Accounts receivable status to sync: 0 open, 1 settled, 2 all.
- Receivables Document Type: (Default: 0 — normal) 0 normal, 1 advances, 2 advances to appropriate, 3 grouped.
Some Prosyst endpoints are released per customer. Contas a Receber requires parameter 15 (
API-LIBERA-CONTAS-A-RECEBER) to be enabled by Prosyst. If a stream is not released on your instance, the connector logs a warning and skips it instead of failing the extraction.2. Select streams
Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.Tip: The stream can be found more easily by typing its name.Select the streams and click Next.
3. Configure data streams
Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table (which will effectively contain the fetched data) and the type of sync.- Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
- Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once and make this process faster!
- Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
- Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
- Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
4. Configure data source
Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can define some additional settings:- Configure Delta Log Retention and determine for how long we should store old states of this table as it gets updated. Read more about this resource here.
- Determine when to execute an Additional Full Sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while.
5. Check your new source
You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.How incremental sync works
Most Prosyst endpoints let you filter by a modification date but do not return that date on the record itself. For those streams the connector sweeps the period in fixed date windows and stamps each record with a syntheticdata_referencia_sync field, which is used as the replication key. Lista de Preços is the exception: it returns a real change date (data_alt) and replicates on it.
Streams without any date filter — inventory balances, the material catalogue and the reference tables — are always replicated in full.
Reading data never changes anything in your ERP. The production-order endpoint would normally mark the orders it returns as “integrated”; the connector always asks for previously-returned orders as well and never sends the manual-integration flag, so extractions stay repeatable and no other integration is affected.
Data not available through the API
Two Prosyst modules are documented as write-only in the web service and therefore cannot be extracted:- Faturas — the API only offers an endpoint to create invoices, not to query them.
- CT-e — the API only offers an endpoint to issue transport documents, not to query them.
notas field of Pedidos de Venda.
Streams and Fields
Below you’ll find all available data streams from Prosyst and their corresponding fields:Clientes
Clientes
Customers registered in Prosyst, including address, sales representative, credit limit and group companies.Primary key:
codigo_cliente
Replication key: data_referencia_syncFields:codigo_cliente- Internal Prosyst code that uniquely identifies the customer.codigo_cliente_principal- Code of the parent customer when this record belongs to a customer group; 0 when the customer stands alone.descricao- Customer name or company name as registered in the ERP.string_situacao- Human-readable registration status, e.g. ‘Ativo’ or ‘Cancelado’.situacao- Numeric registration status code matching ‘string_situacao’.estado- Two-letter Brazilian state abbreviation of the customer address.cod_municipio- IBGE code of the customer’s city.municipio- Name of the customer’s city.bairro- Neighborhood of the customer address.endereco- Street address of the customer.numero_endereco- Street number of the customer address.cep- Postal code (CEP) of the customer address. Kept as text so leading zeros are preserved.fone- Primary phone number of the customer.cpf_cnpj- Customer’s CPF or CNPJ. Kept as text so leading zeros and any formatting punctuation are preserved.inscricao_estadual- State tax registration number, or ‘ISENTO’ when exempt.data_cadastro- Timestamp when the customer was first registered in Prosyst.cod_representante- Code of the sales representative assigned to the customer.representante- Name of the sales representative assigned to the customer.cod_tabela_preco- Code of the price list applied to this customer.inadimplente- Whether the customer is currently flagged as delinquent.atividades- Business activities linked to the customer (JSON array of objects with ‘codigo’ and ‘descricao’).data_ultimo_pedido- Date of the customer’s most recent sales order.ultimo_pedido- Order number of the customer’s most recent sales order.clientes_do_grupo- Other customers belonging to the same economic group (JSON array of objects with ‘codigo’, ‘cpfCnpj’, ‘descricao’, ‘stringSituacao’ and ‘dataCadastro’).contatos- Customer contacts (JSON array of objects with ‘nome’, ‘email’ and ‘telefone’).limite_credito- Credit limit summary (JSON object with the granted credit, the value already committed in orders and receivables, allowed days overdue and the remaining credit balance).empresa_turismo- Whether the customer is registered as a tourism company.observacoes- Free-text notes recorded against the customer.data_referencia_sync- Synthetic field holding the moment this sync ran. The Prosyst customer endpoint filters by modification date but does not return it, so this value is used as the incremental replication key.
Pedidos de Venda
Pedidos de Venda
Sales orders, with their line items, installments and issued invoices.Primary key:
numero_pedido
Replication key: data_referencia_syncFields:numero_pedido- Sales order number that uniquely identifies the order.situacao_pedido- Human-readable order status, e.g. ‘Pendente’ (not yet invoiced) or ‘Liquidado’ (invoiced and closed).codigo_situacao- Single-letter status code: ‘P’ for pending, ‘L’ for settled.descricao_situacao- Description matching ‘codigo_situacao’.data_aprovacao- Timestamp when the order was approved.data_cadastro- Timestamp when the order was created in Prosyst.cod_cliente- Prosyst code of the customer that placed the order.nome_cliente- Name of the ordering customer.cpf_cnpj- CPF or CNPJ of the ordering customer. Kept as text so leading zeros are preserved.cod_tabela_preco- Code of the price list applied to the order.representante- Code of the sales representative credited for the order.operador_logistico- Code of the logistics operator handling the order.observacao- Free-text notes on the order.observacao_nota_fiscal- Notes to be printed on the order’s invoice.aviso_faturamento- Billing notice attached to the order.tipo_frete- Numeric freight type code (who pays the freight).tipo_frete_descricao- Freight type description, e.g. ‘Pago (CIF)’.valor_frete- Freight amount charged.transportadora- Code of the carrier assigned to the order.transportadora_descricao- Name of the carrier assigned to the order.via_transporte- Transport mode code used for the shipment.redespacho- Code of the redispatch carrier, when the shipment is forwarded.condicao_pgto- Code of the payment terms applied to the order.pedido_cliente- Customer’s own purchase-order reference for this sale.vendedor- Code of the salesperson who registered the order.descricao_vendedor- Name of the salesperson who registered the order.vendedor2- Code of the second salesperson sharing the order, when applicable.descricao_vendedor2- Name of the second salesperson sharing the order.tipo_fat- Invoicing type code applied to the order.finalidade- Purpose code of the order (sale, sample, return, etc.).pct_red_icms- Percentage of ICMS tax base reduction applied to the order.percentual_desconto_materiais- Overall discount percentage applied to the order’s materials.valor_desconto_materiais- Overall discount amount applied to the order’s materials.percentual_comissao- Commission percentage applied to the order.tp_saida- Outbound movement type code for the order.valor_antecipacao- Amount paid in advance against the order.valor_total_pedido- Total value of the sales order.endereco_entrega- Delivery address (JSON object with recipient, street, number, neighborhood, city, state, postal code and phone numbers).endereco_cobranca- Billing address (JSON object with the same shape as ‘endereco_entrega’).itens- Order line items (JSON array of objects with product code and description, ordered/delivered/cancelled/remaining quantities, unit and total price, discount and commission percentages, IPI, CFOP, delivery deadline and line status).parcelas- Payment installments agreed for the order (JSON array of objects).notas- Invoices issued against the order (JSON array of objects with ‘numero’, ‘serie’, ‘dataEmissao’ and ‘valor’).data_referencia_sync- Synthetic field holding the upper bound of the modification-date window this order was fetched in. The Prosyst API filters by last modification date but does not return it, so this value is used as the incremental replication key.
Notas Fiscais
Notas Fiscais
Invoices issued against each sales order, including the access key and the full XML. Not selected by default: it costs one request per order.Primary key:
numero_pedido, nota, serieFields:numero_pedido- Sales order number the invoice was issued for.nota- Invoice number.serie- Invoice series.chave_nfe- 44-digit access key (chave de acesso) of the electronic invoice.x_ml- Full invoice XML, Base64-encoded as returned by the API.
Ordens de Produção
Ordens de Produção
Production orders, with their routing steps, consumed materials and linked sales orders.Primary key:
nr_ordem_producao, nr_ordem_producao_complementar
Replication key: data_referencia_syncFields:nr_ordem_producao- Production order number.nr_ordem_producao_complementar- Complementary production order number, used when an order is split; 0 when there is none.nr_ordem_producao_origem- Number of the production order this one originated from.nr_seq_producao- Production sequence number assigned to the order.cod_material- Code of the material being produced.desc_material- Description of the material being produced.cod_cor_material- Colour code of the material being produced.desc_cor_material- Colour description of the material being produced.classe_material- Class code of the material being produced.tipo_material- Type code of the material being produced.peso- Unit weight of the produced material.codigo_cliente- Code of the customer the production order is for.nome_cliente- Name of the customer the production order is for.quantidade_planejada- Quantity planned for production.quantidade_produzida- Quantity already produced against the order.qtd_por_embalagem- Quantity of units per package for the produced material.acao- Action code describing what happened to the order (created, replanned, cancelled).situacao- Current status code of the production order.data_inicio_producao- Production start date exactly as returned by the API: a compact integer in ddMMyyyy layout, with the leading zero dropped.data_inicio_producao_iso- Production start date parsed to a calendar date. Null when the raw value does not resolve to a valid date.data_entrega- Delivery date exactly as returned by the API: a compact integer in ddMMyyyy layout, with the leading zero dropped.data_entrega_iso- Delivery date parsed to a calendar date. Null when the raw value does not resolve to a valid date.lista_processos- Routing steps of the order (JSON array of objects with step number, activity, work centre, tooling, planned start/end dates and times, expected cycle and setup times, and cavity counts).lista_materiais- Materials consumed by the order (JSON array of objects with material code and description, batch, quantity, application code and usage percentage).lista_pedido_ordem_producao- Sales orders linked to this production order (JSON array of objects with order number, material code, volumes, quantity and unit of measure).data_referencia_sync- Synthetic field holding the upper bound of the date window this order was fetched in, used as the incremental replication key.
Pedidos de Compra
Pedidos de Compra
Purchase orders, one row per order line, with supplier, quantities and expected delivery.Primary key:
nr_pedido_compra, item, sequencia_materialFields:nr_pedido_compra- Purchase order number.status- Current status of the purchase order, e.g. ‘Ativo’.codigo_fornecedor- Prosyst code of the supplier.nome_fornecedor- Name of the supplier.item- Code of the material ordered on this line.nr_solicitacao- Number of the purchase request that originated this line.sequencia_material- Sequence number of the material within the purchase order.quantidade_solicitada- Quantity requested on this purchase order line.quantidade_entregue- Quantity already delivered against this purchase order line.previsao_entrega- Expected delivery date for this purchase order line.
Estoque de Materiais
Estoque de Materiais
Current inventory balance per material and storage location.Primary key:
material, localFields:material- Code of the material the balance refers to.local- Code of the storage location holding the balance.quantidade- Quantity of the material available at that storage location.
Materiais
Materiais
Material (product) catalogue, including classification, packaging, barcodes and supplier/customer codes.Primary key:
codigoFields:codigo- Internal Prosyst code that uniquely identifies the material.codigo_alternativo- Alternative or customer-facing item code for the material.descricao- Description of the material.classe- Class code of the material.descricao_classe- Description of the material’s class.tipo- Type code of the material.descricao_tipo- Description of the material’s type.unidade_medida- Unit of measure the material is stocked and sold in.revisao- Current revision of the material.arquivo_desenho- Path to the technical drawing file for the material.desenho- Drawing identifier of the material.descricao_desenho- Description of the material’s drawing.tipo_desenho- Type code of the drawing.informacao_tecnica- Technical information recorded for the material.informacao_adicional- Additional free-text information for the material.acabamento- Finishing code of the material.tratamento_superficial- Surface-treatment code applied to the material.cod_trat_superficial- Detailed surface-treatment code registered for the material.desc_trat_superficial- Description of the material’s surface treatment.tratamento_termico- Heat-treatment code applied to the material.situacao_registro- Registration status: 0 active, 1 pending approval, 9 cancelled.peso_unitario- Unit weight of the material.data_revisao- Date of the material’s latest revision.usuario_terceiro- Third-party user associated with the material record.classificacao_fiscal- Tax classification (NCM) code of the material.pct_ipi- IPI tax percentage applied to the material.indicador_st- Whether the material is subject to ICMS tax substitution.material_fabricante- Manufacturer’s own code for the material.fora_uso- Whether the material has been discontinued.codigo_empresa- Code of the company the material belongs to.controle_lote- Whether the material is batch-controlled.cod_local_padrao- Default storage location code for the material.lote_minimo- Minimum batch size for the material.cor- Colour code of the material.cor_descricao- Colour description of the material.largura- Width of the material.comprimento- Length of the material.espessura- Thickness of the material.marca- Brand code of the material.fabricante- Manufacturer code.nome_fabricante- Manufacturer name.grupo_similar- Code grouping materials that can substitute one another.codigo_epi- Personal protective equipment (EPI) code, when applicable.data_validade_epi- Expiry date of the EPI certificate, when applicable.referencia- Free-text reference recorded for the material.quantidade_material_embalagem- Quantity of the material per package.quantidade_material_pallet- Quantity of the material per pallet.lead_time_liberacao- Lead time, in days, required to release the material.lead_time- Lead time, in days, to obtain or produce the material.fantasma- Whether the material is a phantom item in the bill of materials.classificacao_abc- ABC classification of the material by value or turnover.possui_estrutura- Whether the material has a bill of materials (structure).tipo_item- Item type code of the material.lista_codigo_barras- Barcodes registered for the material (JSON array of objects).lista_embalagens- Packaging options for the material (JSON array of objects with package code, description, capacity and a primary flag).lista_material_cliente- Customer-specific codes for the material (JSON array of objects).lista_material_fornecedor- Supplier-specific codes for the material (JSON array of objects).lista_tabela_precos- Price lists the material appears in (JSON array of objects).caracteristicas- Custom characteristics of the material (JSON array of objects).
Lista de Preços
Lista de Preços
Price-list entries per material, with effective date, payment terms and final price.Primary key:
cod_tabela_preco, cod_material, vigencia
Replication key: data_altFields:cod_tabela_preco- Code of the price table the entry belongs to.lista_preco- Code of the price list the entry belongs to.desc_lista_preco- Description of the price list.cod_material- Code of the material the price applies to.desc_material- Description of the material.reg_clastip- Internal class/type registry reference for the material.peso_material- Unit weight of the material.cod_classe- Class code of the material.desc_classe- Class description.cod_tipo- Type code of the material.desc_tipo- Type description.classe- Class code and description combined, as returned by the API.tipo- Type code and description combined, as returned by the API.unidade_medida- Unit of measure the price refers to.vigencia- Date the price entry became effective.documento- Reference of the document that set the price.preco_unitario- Unit price of the material.preco_promocional- Promotional unit price, when one is in effect.custo_compra- Purchase cost recorded for the material.cod_cond_pagamento- Primary payment-terms code linked to the price.desc_cond_pagamento- Description of the primary payment terms.acrescimo- Surcharge applied to the price.valor_final- Final price after surcharges and discounts.moeda- Currency the price is expressed in.qtd_estoque- Stock quantity of the material at the time of the query.pct_ipi- IPI tax percentage on the price.classificacao_fiscal- Tax classification (NCM) code of the material.icms_st- ICMS tax-substitution amount applied to the price.local_estoque- Storage location the stock quantity refers to.usuario_alt- User who last changed the price entry.data_alt- Timestamp of the last change to the price entry, used as the incremental replication key.hora_alt- Time of day of the last change, as returned by the API.quantidade_por_embalagem- Quantity of the material per package.
Contas a Receber
Contas a Receber
Accounts receivable, per document installment. Requires Prosyst parameter 15 (API-LIBERA-CONTAS-A-RECEBER) to be enabled.Primary key:
numero_titulo, serie_titulo, nr_parcela
Replication key: data_referencia_syncFields:codigo_cliente- Prosyst code of the customer that owes the receivable.descriao_cliente- Name of the customer that owes the receivable. The field name carries the typo present in the Prosyst API.cpf_cnpj_cliente- CPF or CNPJ of the customer. Kept as text so leading zeros and formatting are preserved.numero_titulo- Number of the receivable document (título).serie_titulo- Series of the receivable document.nr_parcela- Installment number within the receivable document.valor_parcela- Face value of the installment.valor_recebido- Amount already received against the installment.valor_desconto- Discount granted on the installment.valor_abatimento- Rebate applied to the installment.valor_acrescimo- Surcharge (interest or fine) added to the installment.valor_antecipado- Amount paid in advance against the installment.data_emissao- Issue date of the receivable document.data_liquidacao- Date the installment was settled; null while still open.data_vencimento_original- Original due date of the installment.codigo_portador- Code of the bank or portfolio holding the receivable.nome_portador- Name of the bank or portfolio holding the receivable.codigo_representante- Code of the sales representative linked to the receivable.nome_representante- Name of the sales representative linked to the receivable.codigo_vendedor- Code of the salesperson linked to the receivable.nome_vendedor- Name of the salesperson linked to the receivable.codigo_condicao_pgto- Code of the payment terms applied to the receivable.descricao_condigo_pgto- Description of the payment terms. The field name carries the typo present in the Prosyst API.nome_estabelecimento- Name of the establishment that issued the receivable.data_referencia_sync- Synthetic field holding the upper bound of the issue-date window this record was fetched in, used as the incremental replication key.
Estabelecimentos
Estabelecimentos
Company establishments (branches) registered in Prosyst.Primary key:
codigoFields:codigo- Internal code that uniquely identifies the establishment.descricao- Name of the establishment, e.g. ‘TESTE MATRIZ’.cnpj- CNPJ of the establishment. Kept as text so leading zeros are preserved.
Representantes
Representantes
Sales representatives and their default commission.Primary key:
codigoFields:codigo- Internal code that uniquely identifies the representative.nome- Name of the sales representative.comissao- Default commission percentage for the representative.
Funcionários
Funcionários
Employees, with their shift and employment status.Primary key:
matriculaFields:matricula- Employee registration number that uniquely identifies them.nome- Name of the employee.turno- Code of the employee’s work shift.situacao- Employment status of the employee, e.g. ‘ativo’.
Condições de Pagamento
Condições de Pagamento
Payment terms available in the ERP.Primary key:
codigoFields:codigo- Internal code that uniquely identifies the payment terms.descricao- Description of the payment terms, e.g. ‘A VISTA’ or ‘28 DIAS’.
Etapas de Pedido de Venda
Etapas de Pedido de Venda
Sales-order workflow stages configured per establishment.Primary key:
codigo_etapa, codigo_estabelecimentoFields:codigo_etapa- Code that identifies the sales-order stage.descricao- Description of the stage.acao_inicio- Action triggered when an order enters this stage.sequencia- Position of the stage in the order workflow.tipo_etapa- Type of the stage, e.g. ‘Aprovação com Restrição de Crédito’.codigo_estabelecimento- Code of the establishment the stage is configured for.descricao_estabelecimento- Name of the establishment the stage is configured for.