Como criar canais personalizados
Os canais personalizados permitem que você defina sua própria estrutura e formato de feed, com controle total sobre os nomes dos campos, a organização dos dados e o formato de saída. Diferente dos canais integrados (como Facebook ou Google), que têm campos predefinidos, os canais personalizados são configurados inteiramente por você.

Quando usar canais personalizados
Os canais personalizados são úteis quando:
- Você precisa exportar para uma plataforma que não é compatível com os canais integrados do Feedr
- Um marketplace ou parceiro exige um formato específico que você não consegue obter com um canal integrado
- Você quer enviar dados de produtos para sistemas internos, como um ERP, um PIM ou uma ferramenta de estoque
- Você precisa de controle total sobre os nomes dos campos, a estrutura e o formato de saída
- Você quer gerar vários formatos (XML, CSV, JSON) a partir de uma única definição de canal
Criar um canal personalizado
- Acesse sua Shop na barra lateral
- Clique em Canais personalizados
- Clique em Criar no canto superior direito
- Digite um título e selecione um ou mais formatos de saída

TIP
Você pode selecionar vários formatos (XML, CSV, JSON) para um único canal. Cada formato tem suas próprias opções de configuração, então você pode adaptar a saída para diferentes destinos a partir de uma única definição de canal.
Formatos de dados compatíveis
| Formato | Ideal para | Extensão |
|---|---|---|
| XML | Plataformas de anúncios, marketplaces, dados estruturados | .xml |
| CSV | Planilhas, importações simples, dados planos | .csv |
| JSON | APIs, integrações modernas, dados aninhados | .json |
Configurar XML
O formato XML dá a você controle sobre a estrutura do documento, os namespaces e os elementos que envolvem o conteúdo.

Opções de XML
| Opção | Descrição |
|---|---|
| Elementos de envolvimento | Nome do elemento raiz. Pode ser aninhado em vários níveis (ex.: rss → channel). |
| Elemento de item | O elemento que envolve cada produto. O padrão é item. |
| Atributos | Pares chave-valor adicionados aos elementos de envolvimento (ex.: version="2.0"). |
| Namespaces | Declarações de namespaces XML: associam um prefixo a uma URI (ex.: g → http://base.google.com/ns/1.0). |
| Filhos estáticos | Elementos filhos fixos com nome, valor e envolvimento CDATA opcional. Úteis para metadados como <title>My Feed</title>. |
Exemplo de saída XML
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>My Product Feed</title>
<item>
<name>Blue T-Shirt</name>
<price>29.99</price>
<description><![CDATA[A comfortable blue t-shirt]]></description>
</item>
<item>
<name>Red Hoodie</name>
<price>59.99</price>
<description><![CDATA[A warm red hoodie]]></description>
</item>
</channel>
</rss>Configurar JSON
O formato JSON permite controlar a estrutura do documento JSON e adicionar campos de metadados estáticos.

Opções de JSON
| Opção | Descrição |
|---|---|
| Item key | A chave do array de produtos. O padrão é products. |
| Elementos de envolvimento | Camadas de objetos aninhados em volta do array de itens (ex.: data → catalog). |
| Campos estáticos | Pares chave-valor fixos em cada nível de envolvimento (ex.: "version": "1.0"). |
Exemplo de saída JSON
{
"version": "1.0",
"data": {
"catalog": {
"products": [
{
"name": "Blue T-Shirt",
"price": "29.99"
},
{
"name": "Red Hoodie",
"price": "59.99"
}
]
}
}
}Configurar CSV
O formato CSV oferece controle detalhado sobre delimitadores, aspas e a forma de representar campos aninhados ou com vários valores.

Opções de CSV
| Opção | Descrição | Padrão |
|---|---|---|
| Delimitador | Separador de campos (vírgula, ponto e vírgula, tab, pipe) | , |
| Include header | Se uma linha de cabeçalho é incluída | Sim |
| Caractere de aspas | Tipo de aspas (duplas, simples ou nenhuma) | " |
| Fim de linha | LF ou CRLF | LF |
| Valor de campo vazio | Valor usado para campos vazios | (vazio) |
| Separador de múltiplos valores | Separador para campos com vários valores | | |
| Nested field format | Formato dos campos aninhados: key_value ou value_only | key_value |
| Separador chave-valor | Separador entre a chave e o valor nos campos aninhados | : |
| Separador de pares | Separador entre os pares chave-valor nos campos aninhados | ; |
| Separador de grupos | Separador entre grupos aninhados | | |
Exemplo de saída CSV
name,price,description
"Blue T-Shirt","29.99","A comfortable blue t-shirt"
"Red Hoodie","59.99","A warm red hoodie"Gerenciar os campos de saída
Os campos de saída definem quais campos aparecem no seu feed e em que ordem. Você os gerencia na aba Campos de saída do seu canal personalizado.

- Adicionar: clique em Adicionar para criar um novo campo. Preencha o título e configure as opções.
- Editar: clique na linha de um campo para abrir a janela de edição.
- Excluir: clique no botão de excluir na linha de um campo. Será pedida uma confirmação.
- Reordenar: arraste e solte os campos pela alça para mudar a ordem deles na saída.

Opções de campo
| Opção | Descrição | Aplica-se a |
|---|---|---|
| Título | O nome do campo como aparece na saída | Todos os formatos |
| Tipo de saída | Indicação do tipo de dado (texto, URL, imagem, data, booleano) | Todos os formatos |
| Namespace | Prefixo de namespace XML para este campo | Só XML |
| CDATA | Envolve o valor em uma seção CDATA | Só XML |
| Multiple | O campo pode conter vários valores | Todos os formatos |
Criar campos aninhados
Os canais personalizados aceitam uma hierarquia de campos pai e filho de até dois níveis. Os campos aninhados permitem agrupar dados relacionados sob um elemento pai.
Para criar campos aninhados:
- Adicione um campo pai (ex.:
shipping) - Adicione campos filhos e defina o Parent deles como o campo que você acabou de criar (ex.:
country,price)
INFO
Um campo pai funciona como contêiner, então ele não tem valor próprio. Só os campos filhos contêm dados de produto.
Como os campos aninhados aparecem
A mesma estrutura de pai e filho aparece de forma diferente dependendo do formato:
XML: elementos aninhados dentro do elemento pai:
<shipping>
<country>US</country>
<price>5.99</price>
</shipping>JSON: objeto aninhado dentro da chave pai:
{
"shipping": {
"country": "US",
"price": "5.99"
}
}CSV: achatado com os separadores configuráveis:
shipping
"country:US;price:5.99"Criar um feed com um canal personalizado
Quando seu canal personalizado estiver configurado com os campos de saída, você pode criar um feed que o use:
- Acesse Feeds → Novo feed
- Selecione seu canal personalizado na lista de canais
- Clique em Criar
- Copie a URL do feed para usá-la na sua integração
- Configure o Mapeamento de saída para mapear os dados dos seus produtos para os campos de saída que você definiu

Acessar formatos diferentes
Se o seu canal personalizado tiver vários formatos ativados, você pode acessar cada um mudando a extensão do arquivo na URL do feed:
https://feeds.feedr.com/your-hash.xmlhttps://feeds.feedr.com/your-hash.csvhttps://feeds.feedr.com/your-hash.json
Só ficam disponíveis os formatos que você configurou no canal. Pedir um formato que não está configurado retorna um erro.

WARNING
Confira se você configurou as opções específicas (elementos de envolvimento, delimitadores etc.) de cada formato que ativar. Os padrões funcionam para casos simples, mas a maioria das integrações vai precisar de algum ajuste.
Duplicar um canal personalizado
Você pode duplicar um canal personalizado existente para criar uma cópia com todos os campos de saída e configurações de formato intactos. Isso é útil quando você precisa de um canal parecido com pequenas variações: duplique-o e ajuste as diferenças em vez de começar do zero.
Você pode duplicar um canal personalizado existente para criar uma cópia com todos os campos de saída e configurações de formato intactos. Isso é útil quando você precisa de um canal parecido com pequenas variações: duplique-o e ajuste as diferenças em vez de começar do zero.