Configuração
Conheça as várias opções de configuração.
O plugin deve funcionar sem necessidade de configuração adicional, mas se você precisar alterar o comportamento do plugin, você está no lugar certo.
Após alterar a configuração, é necessário reiniciar o servidor.
Estrutura de arquivos
Abaixo está um exemplo de como é a estrutura de arquivos do plugin. Clique em uma pasta para expandi-la.
Configuração do plugin (config.yml)
O arquivo config.yml é o coração do plugin, onde você controla todos os aspectos do sistema de pagamentos. Abaixo estão todas as opções disponíveis com explicações detalhadas.
debug-mode
Ativa ou desativa o modo de depuração. Quando ativado, o plugin registrará informações detalhadas no console para ajudar a identificar problemas.
# Determina o funcionamento da depuração. Valores válidos: [false, true]
debug-mode: falseMantenha desativado em produção, pois pode gerar muitos logs e afetar a performance.
database
Define como e onde os dados das transações serão armazenados. O plugin suporta três tipos de armazenamento:
- SQLITE: Armazena dados em um arquivo local. Ideal para servidores pequenos.
- MYSQL: Conecta a um servidor MySQL externo. Recomendado para servidores médios.
- HIKARI: Usa pool de conexões para MySQL. Recomendado para servidores grandes por melhor performance.
database:
# Determina o tipo de banco de dados. Valores válidos: [SQLITE, MYSQL, HIKARI (recomendado)]
storage-type: SQLITE
# Dados para conexão ao banco de dados MYSQL.
data:
# Endereço de conexão do banco de dados. [EX: 127.0.0.1]
host: localhost
# Porta de conexão do banco de dados. [EX: 3306]
port: 3306
# Nome do banco de dados a ser conectado. [EX: minecraft]
database: ''
# Usuário de conexão. [EX: root]
username: ''
# Senha do usuário de conexão: [EX: 123]
password: ''Se usar SQLITE, não precisa preencher os dados de conexão. O arquivo será criado automaticamente em plugins/yPayments/data.db.
general
Configurações gerais do sistema de pagamentos. Estes valores controlam a frequência de verificação de pagamentos e o tempo de alertas.
general:
# Delay para checagem da notificação de pagamento (automático)
# Em segundos
notification-delay: 10
# Delay para checagem da aprovação de pagamento (automático)
# Em segundos
verification-delay: 30
# Delay para checagem da notificação de pagamento (manual)
# Em segundos
manual-delay: 30
# Delay para realizar novas compras por um mesmo jogador
# Em segundos
buy-delay: 30
# Embed do yDiscorHook para enviar a cobrança no privado
dm-charge-embed: 'ypayments_private'
# Embed do yDiscordHook para enviar a pré-compra no privado
dm-pre-charge-embed: 'ypayments_pre_charge'
# Tempo para enviar a mensagem de alerta de coleta
# em minutos
alert-message-time: 600Como funciona o sistema de verificação:
- notification-delay: Intervalo de checagem para novos pagamentos pendentes. Valores menores = aprovação mais rápida, mas maior uso de recursos.
- verification-delay: Intervalo de verificação para confirmar pagamentos aprovados pelos gateways.
- manual-delay: Intervalo para pagamentos que requerem confirmação manual (ex: transferências bancárias).
- buy-delay: Intervalo realizar novas compras por um mesmo jogador.
- dm-charge-embed: Embed enviado no privado quando a cobrança é criada.
- dm-pre-charge-embed: Embed enviado no privado antes da cobrança, durante a pré-compra.
- alert-message-time: A cada 600 minutos (10 horas), jogadores com produtos não coletados recebem um lembrete.
Para servidores com muitas transações, mantenha notification-delay em 10 segundos. Para servidores menores, pode aumentar para 30-60 segundos.
mercado-pago
Configuração do MercadoPago para pagamentos via PIX, cartão de crédito e outras formas brasileiras.
mercado-pago:
secret: ''
id: ''
notification-url: 'https://ystoreteste.000webhostapp.com/notification_mp.php'Como obter as credenciais:
- Acesse o Painel do MercadoPago
- Crie uma aplicação
- Copie o Access Token (secret) e o Public Key (id)
- Configure uma URL de notificação (webhook) para receber atualizações automáticas
É obrigatório configurar suas credenciais do MercadoPago para usar este método de pagamento. Deixe os campos vazios se não for usar.
picpay
Configuração do PicPay para pagamentos instantâneos via aplicativo.
picpay:
picpay-token: ''
seller-token: ''
notification-url: 'https://ystoreteste.000webhostapp.com/notification_picpay.php'Como obter as credenciais:
- Crie uma conta empresarial no PicPay
- Acesse o painel de desenvolvedores
- Gere seu PicPay Token e Seller Token
paypal
Configuração do PayPal para pagamentos internacionais.
paypal:
email: ''
notification-url: 'https://ystoreteste.000webhostapp.com/notification_paypal.php'Configuração:
- email: Email da conta PayPal que receberá os pagamentos
- notification-url: URL para receber notificações IPN (Instant Payment Notification)
O PayPal cobra taxas mais altas para transações internacionais. Recomendado principalmente para servidores com jogadores do exterior.
coinbase
Configuração do Coinbase para pagamentos com criptomoedas (Bitcoin, Ethereum, etc).
coinbase:
version: '2018-03-22'
api-key: ''Como obter a API Key:
- Acesse Coinbase Commerce
- Crie uma conta e verifique sua identidade
- Gere uma API Key nas configurações
- A versão '2018-03-22' é a versão estável da API
Pagamentos em criptomoedas podem ter variação de preço. O valor é fixado no momento da criação da cobrança.
stripe
Configuração do Stripe para pagamentos internacionais com cartão de crédito.
stripe:
secret-key: ''
success-url: 'https://ystoreplugins.com.br'Configuração:
- secret-key: Chave secreta obtida no painel do Stripe
- success-url: URL para onde o jogador será redirecionado após o pagamento bem-sucedido
Limitações:
- Valor mínimo de R$ 0,50 por transação (limitação da plataforma Stripe)
short-io
Configuração do encurtador de links Short.io. Usado principalmente para links do PayPal, deixando-os mais limpos e fáceis de compartilhar.
short-io:
enabled: true
# Deixe vazio para usar o da yStore
secret-key: ''
# Deixe vazio para usar o da yStore
domain: ''Como funciona:
- Links do PayPal são muito longos:
https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=... - Com Short.io ficam assim:
https://seu.dominio/abc123
Configuração opcional:
- Deixe os campos vazios para usar o encurtador padrão da yStore
- Ou configure suas próprias credenciais no Short.io para usar seu domínio personalizado
npc
Sistema de NPC interativo para abrir a loja. Cria um personagem no spawn que os jogadores podem clicar para acessar a loja.
npc:
skin: 'Pitombaa'
hologram:
offset: 3.4
hologram:
- '&6&lLOJA VIRTUAL'
- '&7Seu site agora ingame!'
- '[item]EMERALD'Configuração do NPC:
- skin: Nick de um jogador do Minecraft cuja skin será usada no NPC
- offset: Distância em blocos entre o NPC e o holograma (3.4 = 3.4 blocos acima)
- hologram: Linhas de texto exibidas acima do NPC
Recursos do holograma:
- Use códigos de cor (&a, &b, etc) normalmente
- Use
[item]MATERIALpara exibir itens flutuantes (ex:[item]EMERALD,[item]DIAMOND)
Como usar:
- Configure a skin e o texto do holograma
- Use
/shop setnpcna localização desejada - Para remover, use
/shop delnpc
Requer DecentHolograms ou HolographicDisplays instalado para exibir o holograma.
lores
Sistema de descrições (lore) para mapas de QR-Code. Quando um pagamento é gerado via PIX ou PicPay, o jogador pode receber um mapa com QR-Code no inventário.
lores:
map:
- ''
- ' &fGerado em: &7{date} às {hour}'
- ' &fProduto: &b{product}'
- ' &fReferência: &b{reference}'
- ''
transaction-not-completed:
- ''
- ' &aBotão &fESQUERDO &apara atualizar.'
- ' &aBotão &fDIREITO &apara pegar o mapa.'
- ''Lores disponíveis:
- map: Lore exibida no mapa quando a transação está completa
- transaction-not-completed: Lore exibida quando o pagamento ainda está pendente
Placeholders disponíveis:
| Placeholder | Descrição | Exemplo |
|---|---|---|
{date} | Data de geração | 14/11/2025 |
{hour} | Hora de geração | 15:30:45 |
{product} | Nome do produto | Diamantes |
{reference} | Código da transação | ABC123XYZ |
Interação com mapas pendentes:
- Botão esquerdo: Atualiza o status da transação
- Botão direito: Remove o mapa antigo e gera um novo (se ainda pendente)
status
Formatação visual dos diferentes status de transações. Define as cores e símbolos usados nos menus e mensagens.
status:
approved: '&aAprovado'
processing: '&bProcessando...'
pending: '&ePendente...'
canceled: '&cCancelado'
refunded: '&cReembolsado'
in-mediation: '&dEm mediação...'Status explicados:
| Status | Cor | Descrição |
|---|---|---|
| approved | Verde | Pagamento confirmado e produtos liberados |
| processing | Azul | Pagamento sendo processado pelo gateway |
| pending | Amarelo | Aguardando pagamento do comprador |
| canceled | Vermelho | Pagamento cancelado ou expirado |
| refunded | Vermelho | Pagamento reembolsado ao comprador |
| in-mediation | Roxo | Disputa aberta, em análise pelo gateway |
Transações com status refunded ou in-mediation executam comandos de sanção configurados em cada produto. Use isso para remover benefícios ou banir jogadores fraudulentos.
Ordem de configuração recomendada
Para configurar o plugin pela primeira vez, siga esta ordem:
Configure o banco de dados
Escolha SQLITE para começar ou MYSQL/HIKARI se já tiver um servidor de banco configurado.
Configure os gateways
Adicione as credenciais dos métodos de pagamento que você vai usar (MercadoPago, PicPay, PayPal, etc).
Ajuste os delays
Mantenha os valores padrão inicialmente. Ajuste depois conforme a demanda do servidor.
Configure produtos
Crie seus produtos no arquivo products.yml antes de testar compras.
Teste pagamentos
Faça compras de teste com valores baixos para verificar se tudo está funcionando.
Comece configurando apenas um gateway de pagamento (recomendamos MercadoPago para servidores brasileiros) e adicione os outros gradualmente.