LogoyStore

Discord

Configure as notificações via Discord para a loja.

Exemplo completo de configuração

Aqui está um exemplo de como configurar as notificações do Discord:

options:
  approved:
    url: ''
    username: 'yPayments - Nova Compra'
  mediation:
    url: ''
    username: 'yPayments - Pedido de Reembolso'
  refunded:
    url: ''
    username: 'yPayments - Novo Reembolso'

embeds:
  bought:
    title: ':mailbox: Uma nova compra foi detectada'
    thumbnail: 'https://minotar.net/body/{player}/100.png'
    color: '#fff'
    content: ''
    footer:
      text: 'yStore © Todos os direitos reservados'
      image: ''
    fields:
      player:
        inline: true
        header: 'Player'
        content: '```{player}```'
      product:
        inline: true
        header: 'Produto'
        content: '```{product}```'
      price:
        inline: true
        header: 'Preço'
        content: '```{price}```'
      discount:
        inline: true
        header: 'Desconto'
        content: '```{discount}% - {coupon}```'
      reference:
        inline: true
        header: 'Referência'
        content: '```{reference} | {gateway}```'
      date_activated:
        inline: true
        header: 'Comprado em'
        content: '```{bought_date} às {bought_hour}```'

Estrutura de configuração

options

Configurações gerais dos webhooks para cada tipo de evento.

approved

Webhook para notificações de compras aprovadas.

Exemplo:

options:
  approved:
    url: 'https://discord.com/api/webhooks/seu-webhook-aqui'
    username: 'yPayments - Nova Compra'

Obtenha a URL do webhook nas configurações de integração do seu canal do Discord.

mediation

Webhook para notificações de pedidos de reembolso em mediação.

Exemplo:

options:
  mediation:
    url: 'https://discord.com/api/webhooks/seu-webhook-aqui'
    username: 'yPayments - Pedido de Reembolso'

refunded

Webhook para notificações de reembolsos processados.

Exemplo:

options:
  refunded:
    url: 'https://discord.com/api/webhooks/seu-webhook-aqui'
    username: 'yPayments - Novo Reembolso'

Deixe a URL vazia (url: '') para desabilitar as notificações daquele tipo de evento.

Sistema de embeds

embeds

Configuração visual das mensagens enviadas ao Discord.

title

Título da embed exibido no topo da mensagem.

Exemplo:

embeds:
  bought:
    title: ':mailbox: Uma nova compra foi detectada'

Você pode usar emojis do Discord usando o formato :nome_emoji:.

thumbnail

URL da imagem em miniatura exibida no canto da embed.

Exemplo:

embeds:
  bought:
    thumbnail: 'https://minotar.net/body/{player}/100.png'

Placeholder disponível: {player} - Nome do jogador (usado para buscar a skin no Minotar)

color

Cor da borda lateral da embed em formato hexadecimal.

Exemplo:

embeds:
  bought:
    color: '#00ff00'  # Verde

Use cores diferentes para cada tipo de evento: verde para aprovações, vermelho para reembolsos, etc.

content

Conteúdo de texto adicional fora da embed.

Exemplo:

embeds:
  bought:
    content: '@everyone Nova compra realizada!'

Use menções com moderação para evitar spam de notificações.

Configuração do rodapé da embed.

Exemplo:

embeds:
  bought:
    footer:
      text: 'yStore © Todos os direitos reservados'
      image: 'https://seusite.com/logo.png'

fields

Campos de informação exibidos na embed.

Cada campo possui três propriedades:

  • inline: Se true, o campo aparece na mesma linha que outros campos inline
  • header: Título do campo (em negrito)
  • content: Conteúdo do campo

player

Campo exibindo o nome do jogador que realizou a compra.

Exemplo:

embeds:
  bought:
    fields:
      player:
        inline: true
        header: 'Player'
        content: '```{player}```'

Use ``` para criar blocos de código com fundo cinza no Discord.

product

Campo exibindo o nome do produto comprado.

Exemplo:

embeds:
  bought:
    fields:
      product:
        inline: true
        header: 'Produto'
        content: '```{product}```'

Placeholder disponível: {product} - Nome do produto configurado

price

Campo exibindo o preço pago.

Exemplo:

embeds:
  bought:
    fields:
      price:
        inline: true
        header: 'Preço'
        content: '```{price}```'

Placeholder disponível: {price} - Valor formatado com o desconto aplicado

discount

Campo exibindo informações sobre o desconto aplicado.

Exemplo:

embeds:
  bought:
    fields:
      discount:
        inline: true
        header: 'Desconto'
        content: '```{discount}% - {coupon}```'

Placeholders disponíveis: {discount} - Porcentagem de desconto, {coupon} - Código do cupom usado

reference

Campo exibindo o código de referência da transação e o gateway usado.

Exemplo:

embeds:
  bought:
    fields:
      reference:
        inline: true
        header: 'Referência'
        content: '```{reference} | {gateway}```'

Placeholders disponíveis: {reference} - Código único da transação, {gateway} - Gateway de pagamento usado

date_activated

Campo exibindo a data e hora da compra.

Exemplo:

embeds:
  bought:
    fields:
      date_activated:
        inline: true
        header: 'Comprado em'
        content: '```{bought_date} às {bought_hour}```'

Placeholders disponíveis: {bought_date} - Data da compra, {bought_hour} - Hora da compra

Criando múltiplas embeds

Você pode criar diferentes embeds para diferentes eventos:

embeds:
  bought:
    title: ':white_check_mark: Nova Compra Aprovada'
    color: '#00ff00'
    # ... campos
  
  mediation:
    title: ':warning: Pedido de Reembolso'
    color: '#ffaa00'
    # ... campos
  
  refunded:
    title: ':x: Reembolso Processado'
    color: '#ff0000'
    # ... campos

Placeholders disponíveis

Lista completa de placeholders que podem ser usados nos embeds:

PlaceholderDescriçãoExemplo
{player}Nome do jogadorPlayerName
{product}Nome do produtoDiamantes
{price}Preço pago formatadoR$ 10,00
{discount}Porcentagem de desconto10
{coupon}Código do cupom usadoPROMO10
{reference}Código de referênciaABC123XYZ
{gateway}Gateway de pagamentoMERCADOPAGO
{bought_date}Data da compra14/11/2025
{bought_hour}Hora da compra15:30:45

Personalizando notificações

Configure os webhooks

Crie webhooks no Discord e adicione as URLs no arquivo.

Escolha as cores

Defina cores diferentes para cada tipo de evento para fácil identificação.

Customize os campos

Adicione ou remova campos conforme necessário para seu servidor.

Teste as notificações

Faça uma compra de teste para verificar se as notificações estão funcionando.

Integração com yDiscordHook

Para usar a integração com o plugin yDiscordHook (mensagens no privado dos jogadores), configure no arquivo products.yml:

products:
  diamond:
    discord:
      discordhook:
        enable: true
        dm-bought-embed: 'bought'
        dm-mediation-embed: 'mediation'
        dm-refunded-embed: 'refunded'

A integração com yDiscordHook permite enviar mensagens personalizadas diretamente no Discord do jogador vinculado.

Após alterar as configurações do Discord, use /shop reload para aplicar as mudanças.

Nesta página