Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
APLICA-SE A:
Azure Data Factory
Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise completa para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!
Este artigo descreve como usar a atividade de cópia nos pipelines do Azure Data Factory ou do Azure Synapse Analytics para copiar dados de uma tabela do Xero. Ele amplia o artigo Visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.
Observação
O conector Xero exige a autenticação OAuth e não se destina ao uso de servidor para servidor.
Importante
O conector Xero versão 2.0 fornece suporte nativo aprimorado ao Xero. Se você estiver usando o conector Xero versão 1.0 em sua solução, atualize o conector Xero antes de 31 de março de 2026. Consulte esta seção para obter detalhes sobre a diferença entre a versão 2.0 e a versão 1.0.
Funcionalidades com suporte
O conector Xero é compatível com as seguintes funcionalidades:
| Funcionalidades com suporte | IR |
|---|---|
| Atividade de cópia (origem/-) | (1) (2) |
| Atividade de pesquisa | (1) (2) |
① Tempo de execução de integração do Azure ② Tempo de execução de integração auto-hospedado
Para obter uma lista de armazenamentos de dados com suporte como origens e coletores, confira a tabela Armazenamentos de dados com suporte.
Especificamente, esse conector do Xero fornece suporte para:
- Autenticação OAuth 2.0.
- Todas as tabelas Xero (pontos de extremidade de API), exceto "Relatórios".
- Versões do Windows neste artigo.
Observação
Devido ao pôr do sol da autenticação OAuth 1.0 no Xero, atualize para o tipo de autenticação OAuth 2.0 se no momento você estiver usando o tipo de autenticação OAuth 1.0.
Introdução
Para executar a atividade de cópia com um pipeline, você pode usar uma das seguintes ferramentas ou SDKs:
- Ferramenta de Cópia de Dados
- Portal do Azure
- SDK do .NET
- SDK do Python
- PowerShell do Azure
- REST API
- Modelo do Azure Resource Manager
Criar um serviço vinculado ao Xero usando a interface do usuário
Use as etapas a seguir para criar um serviço vinculado ao Xero na interface do usuário do portal do Azure.
Navegue até a guia Gerenciar no workspace do Azure Data Factory ou do Synapse e selecione Serviços Vinculados. Depois, clique em Novo:
Procure por Xero e selecione o conector do Xero.
Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.
Detalhes da configuração do conector
As seções a seguir fornecem detalhes sobre as propriedades usadas para definir entidades do Data Factory específicas ao conector do Xero.
Propriedades do serviço vinculado
O conector Xero agora dá suporte à versão 2.0. Consulte esta seção para fazer o upgrade da versão do seu conector Xero a partir da versão 1.0. Para obter detalhes sobre as propriedades, consulte as seções correspondentes.
Versão 2.0
O serviço vinculado do Xero dá suporte às seguintes propriedades ao aplicar a versão 2.0:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
| tipo | A propriedade type deve ser definida como: Xero | Sim |
| versão | A versão que você especifica. O valor é 2.0. |
Sim |
| hospedar | O ponto de extremidade do servidor Xero (api.xero.com). |
Sim |
| consumerKey | Especifique a ID do cliente para seu aplicativo Xero. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim |
| privateKey | Especifique o segredo do cliente para seu aplicativo Xero. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim |
| tenantId | A ID de locatário associada ao seu aplicativo Xero. Aplicável à autenticação OAuth 2.0. Saiba como obter a ID do locatário em Verificar os locatários que você está autorizado a acessar a seção. |
Sim |
| refreshToken | O token de atualização OAuth 2.0 é associado ao aplicativo Xero e usado para atualizar o token de acesso, que expira após 30 minutos. Saiba mais sobre como o fluxo de autorização do Xero funciona e como obter o token de atualização deste artigo. Para obter um token de atualização, você deve solicitar o escopo offline_access. Limitação desaber: observe que o Xero redefine o token de atualização depois que ele é usado para a atualização do token de acesso. Para carga de trabalho operacionalizada, antes de cada execução de atividade de cópia, você precisa definir um token de atualização válido para o serviço usar. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim |
| connectVia | O runtime de integração a ser usado para se conectar ao armazenamento de dados. Se nenhum valor for especificado, a propriedade usará o runtime de integração padrão do Azure. Você pode usar o runtime de integração auto-hospedada e sua versão deve ser 5.61 ou superior. | Não |
Exemplo:
{
"name": "XeroLinkedService",
"properties": {
"type": "Xero",
"typeProperties": {
"host": "api.xero.com",
"consumerKey": "<client ID>",
"privateKey": {
"type": "SecureString",
"value": "<client secret>"
},
"tenantId": "<tenant ID>",
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
},
"authenticationType":"OAuth_2.0",
"version": "2.0"
}
}
}
Versão 1.0
O serviço vinculado do Xero dá suporte às seguintes propriedades ao aplicar a versão 1.0:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
| tipo | A propriedade type deve ser definida como: Xero | Sim |
| connectionProperties | Um grupo de propriedades que define como se conectar ao Xero. | Sim |
Em connectionProperties: |
||
| hospedar | O ponto de extremidade do servidor Xero (api.xero.com). |
Sim |
| authenticationType | Os valores permitidos são OAuth_2.0 e OAuth_1.0. |
Sim |
| consumerKey | Para o OAuth 2.0, especifique a ID do cliente para seu aplicativo Xero. Para o OAuth 1.0, especifique a chave de consumidor associada ao aplicativo Xero. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim |
| privateKey | Para o OAuth 2.0, especifique o segredo do cliente para seu aplicativo Xero. Para o OAuth 1.0, especifique a chave privada do arquivo .pem que foi gerada para o seu aplicativo privado Xero. Observe gerar privatekey.pem com numbits de 512 usando openssl genrsa -out privatekey.pem 512; não há suporte para a 1024. Inclua todo o texto do arquivo .pem, incluindo as terminações de linha Unix (\n), consulte o exemplo abaixo.Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim |
| tenantId | A ID de locatário associada ao seu aplicativo Xero. Aplicável à autenticação OAuth 2.0. Saiba como obter a ID do locatário em Verificar os locatários que você está autorizado a acessar a seção. |
Sim para autenticação OAuth 2.0 |
| refreshToken | Aplicável à autenticação OAuth 2.0. O token de atualização OAuth 2.0 é associado ao aplicativo Xero e usado para atualizar o token de acesso, que expira após 30 minutos. Saiba mais sobre como o fluxo de autorização do Xero funciona e como obter o token de atualização deste artigo. Para obter um token de atualização, você deve solicitar o escopo offline_access. Limitação desaber: observe que o Xero redefine o token de atualização depois que ele é usado para a atualização do token de acesso. Para carga de trabalho operacionalizada, antes de cada execução de atividade de cópia, você precisa definir um token de atualização válido para o serviço usar. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. |
Sim para autenticação OAuth 2.0 |
| useEncryptedEndpoints | Especifica se os endpoints de fonte de dados são criptografados usando HTTPS. O valor padrão é verdadeiro. | Não |
| useHostVerification | Especifica se o nome do host é necessário no certificado do servidor para corresponder ao nome de host do servidor ao se conectar via TLS. O valor padrão é verdadeiro. | Não |
| usePeerVerification | Especifica se a identidade do servidor deve ser verificada nas conexões por TLS. O valor padrão é verdadeiro. | Não |
Exemplo: autenticação OAuth 2.0
{
"name": "XeroLinkedService",
"properties": {
"type": "Xero",
"typeProperties": {
"connectionProperties": {
"host": "api.xero.com",
"authenticationType":"OAuth_2.0",
"consumerKey": {
"type": "SecureString",
"value": "<client ID>"
},
"privateKey": {
"type": "SecureString",
"value": "<client secret>"
},
"tenantId": "<tenant ID>",
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
Exemplo: autenticação OAuth 1.0
{
"name": "XeroLinkedService",
"properties": {
"type": "Xero",
"typeProperties": {
"connectionProperties": {
"host": "api.xero.com",
"authenticationType":"OAuth_1.0",
"consumerKey": {
"type": "SecureString",
"value": "<consumer key>"
},
"privateKey": {
"type": "SecureString",
"value": "<private key>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
Valor de chave privada de exemplo:
Inclua todo o texto do arquivo .pem incluindo as terminações de linha do Unix (\n).
"-----BEGIN RSA PRIVATE KEY-----\nMII***************************************************P\nbu****************************************************s\nU/****************************************************B\nA*****************************************************W\njH****************************************************e\nsx*****************************************************l\nq******************************************************X\nh*****************************************************i\nd*****************************************************s\nA*****************************************************dsfb\nN*****************************************************M\np*****************************************************Ly\nK*****************************************************Y=\n-----END RSA PRIVATE KEY-----"
Propriedades do conjunto de dados
Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre conjuntos de dados. Esta seção fornece uma lista das propriedades com suporte pelo conjunto de dados do Xero.
Para copiar dados do Xero, defina a propriedade type do conjunto de dados como XeroObject. Há suporte para as seguintes propriedades:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
| tipo | A propriedade de tipo do conjunto de dados deve ser definido para: XeroObject | Sim |
| tabela | Nome da tabela. Os nomes de tabela usam o nome do objeto, por exemplo: Accounts. Essa propriedade só tem suporte na versão 2.0. |
Sim |
| tableName | Nome da tabela. Os nomes de tabela usam nomes de objeto com prefixo, por exemplo, "Global"."Accounts". Essa propriedade é suportada apenas na versão 1.0. |
Não (se "query" na fonte da atividade for especificada) |
Exemplo
{
"name": "XeroDataset",
"properties": {
"type": "XeroObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<Xero linked service name>",
"type": "LinkedServiceReference"
}
}
}
O conector versão 2.0 dá suporte às seguintes tabelas Xero:
- Accounts
- Bank_Transactions
- Itens_de_Linha_de_Transação_Bancária
- Transferências_Bancárias
- Budgets
- Contatos
- Contacts_Addresses
- Contact_Groups
- Contact_Group_Contacts
- Contacts_Phones
- Credit_Notes
- Itens_de_Linha_da_Nota_de_Crédito
- Rastreamento_de_Itens_de_Linha_de_Notas_de_Crédito
- Moedas
- Faturas
- Invoices_Credit_Notes
- Invoice_Line_Items
- Invoice_Line_Items_Tracking
- Invoices_Overpayments
- Faturas_Adiantamentos
- Itens
- Diários
- Linhas_do_Diário
- Journal_Line_Tracking_Categories
- Manual_Journals
- Manual_Journal_Lines
- Organizações
- Pagamentos a maior
- Payments
- Pagamento antecipado
- Prepayments_Allocations
- Itens_de_Linha_de_Adiantamento
- Projetos
- UsuáriosDoProjeto
- Pedidos_de_Compra
- Itens_de_Linha_de_Ordem_de_Compra
- Recebimentos
- Taxas_de_Impostos
- Tracking_Categories
- Opções_de_Categorias_de_Rastreamento
- Usuários
Propriedades da atividade de cópia
Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines. Esta seção fornece uma lista das propriedades com suporte pela fonte do Xero.
Xero como fonte
Para copiar dados de Xero, defina o tipo de fonte na atividade de cópia como XeroSource. As propriedades a seguir têm suporte na seção source da atividade de cópia:
| Propriedade | Descrição | Obrigatório |
|---|---|---|
| tipo | A propriedade type da fonte da atividade de cópia deve ser definida como: XeroSource | Sim |
| consulta | Utiliza a consulta SQL personalizada para ler os dados. Por exemplo: "SELECT * FROM Contacts". |
Não (se "tableName" no conjunto de dados for especificado) |
Observação
query não há suporte para a versão 2.0.
Exemplo:
"activities":[
{
"name": "CopyFromXero",
"type": "Copy",
"inputs": [
{
"referenceName": "<Xero input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "XeroSource",
"query": "SELECT * FROM Contacts"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Observe o seguinte ao especificar a consulta Xero:
Tabelas com itens complexos serão divididas em várias tabelas. Por exemplo, as transações bancárias possuem uma estrutura de dados complexa "LineItems", portanto, os dados de transação bancária são mapeados para a tabela
Bank_TransactioneBank_Transaction_Line_Items, comBank_Transaction_IDcomo chave estrangeira para vinculá-los.Os dados do Xero estão disponíveis através de dois esquemas:
Minimal(padrão) eComplete. O esquema completo contém tabelas de chamadas prévias que requerem dados adicionais (por exemplo, Coluna de ID) antes de fazer a consulta desejada.
As tabelas a seguir possuem a mesma informação no esquema Mínimo e Completo. Para reduzir o número de chamadas à API, use o esquema Mínimo (padrão).
- Bank_Transactions
- Contact_Groups
- Contatos
- Contacts_Sales_Tracking_Categories
- Contacts_Phones
- Contacts_Addresses
- Contacts_Purchases_Tracking_Categories
- Credit_Notes
- Credit_Notes_Allocations
- Expense_Claims
- Expense_Claim_Validation_Errors
- Faturas
- Invoices_Credit_Notes
- Faturas_ Pagamentos Antecipados
- Invoices_Overpayments
- Manual_Journals
- Pagamentos a maior
- Overpayments_Allocations
- Pagamento antecipado
- Prepayments_Allocations
- Recebimentos
- Receipt_Validation_Errors
- Tracking_Categories
As tabelas a seguir somente podem ser consultadas com o esquema completo:
- Complete.Bank_Transaction_Line_Items
- Complete.Bank_Transaction_Line_Item_Tracking
- Complete.Contact_Group_Contacts
- Complete.Contacts_Contact_ Persons
- Complete.Credit_Note_Line_Items
- Complete.Credit_Notes_Line_Items_Tracking
- Complete.Expense_Claim_ Payments
- Complete.Expense_Claim_Receipts
- Complete.Invoice_Line_Items
- Complete.Invoices_Line_Items_Tracking
- Complete.Manual_Journal_Lines
- Complete.Manual_Journal_Line_Tracking
- Complete.Overpayment_Line_Items
- Complete.Overpayment_Line_Items_Tracking
- Complete.Prepayment_Line_Items
- Complete.Prepayment_Line_Item_Tracking
- Complete.Receipt_Line_Items
- Complete.Receipt_Line_Item_Tracking
- Complete.Tracking_Category_Options
Mapeamento de tipo de dados para Xero
Quando você copia dados do Xero, os mapeamentos a seguir se aplicam dos tipos de dados do Xero aos tipos de dados internos usados pelo serviço. Para saber mais sobre como a atividade Copy mapeia o tipo de dados e esquema de origem para o coletor, consulte Mapeamentos de tipo de dados e esquema.
| Tipo de dados Xero | Tipo de dados de serviço provisório (para a versão 2.0) | Tipo de dados de serviço provisório (para a versão 1.0) |
|---|---|---|
| String | String | String |
| Date | String | Date |
| DateTime | String | String |
| booleano | booleano | booleano |
| Número (padrão) | Int32 | Int32 |
| Número (grande) | Int64 | Int64 |
Pesquisar propriedades de atividade
Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.
Ciclo de vida e atualização do conector Xero
A tabela a seguir mostra o estágio de lançamento e os logs de alteração para versões diferentes do conector Xero:
| Versão | Fase de liberação | Log de alterações |
|---|---|---|
| Versão 1.0 | Fim do suporte anunciado | / |
| Versão 2.0 | Versão GA disponível | • Use table em vez de tableName. • O valor para table é o nome do objeto, por exemplo: Accounts. • A versão do runtime de integração auto-hospedada deve ser 5.61 ou superior. • A data é lida como tipo de dados String. • useEncryptedEndpoints, useHostVerificationusePeerVerification não há suporte no serviço vinculado. • query não há suporte. • Não há suporte para autenticação OAuth 1.0. • Suporte a tabelas específicas do Xero. Para a lista de tabelas com suporte, acesse as propriedades do conjunto de dados. |
Atualizar o conector Xero da versão 1.0 para a versão 2.0
Na página Editar serviço vinculado , selecione a versão 2.0 e configure o serviço vinculado referindo-se às propriedades do serviço vinculado versão 2.0.
O mapeamento de tipo de dados para o serviço vinculado Xero versão 2.0 é diferente do da versão 1.0. Para saber mais sobre o mapeamento de tipo de dados mais recente, consulte Mapeamento de tipo de dados para Xero.
Se você usar o runtime de integração auto-hospedada, sua versão deverá ser 5.61 ou superior.
Use
tableem vez detableNamena versão 2.0. Para a configuração detalhada, acesse as propriedades do conjunto de dados.querysó tem suporte na versão 1.0. Você deve usar otableem vez dequeryna versão 2.0.Observe que a versão 2.0 dá suporte a tabelas específicas do Xero. Para a lista de tabelas com suporte, acesse as propriedades do conjunto de dados.
Conteúdo relacionado
Para obter uma lista de armazenamentos de dados com suporte pela atividade de cópia, confira a tabela Armazenamentos de dados com suporte.