Desenvolvedores/Ecossistema e recursos
CardV para Dujiao-Next
Adicione a CardV como fornecedor na sua loja Dujiao-Next. Você importa gift cards e recargas de jogos da CardV como produtos seus e define seus próprios preços. Quando o cliente paga, a sua loja compra o item da CardV com o seu saldo CardV, e o código aparece automaticamente na página do pedido do cliente.
#O que você precisa
| Dujiao-Next | v1.5.0 ou posterior, com o recurso de conexão com fornecedores (menu Integration) |
| Conta CardV | Uma conta de lojista aprovada, com acesso à API ativado |
| Chave de API | Uma chave de API assinada do Portal do lojista (ID da chave + segredo de assinatura) |
| Saldo | Saldo CardV pré-pago em USD. Todo pedido que a sua loja faz é pago com ele |
Perante os seus clientes, o vendedor é você: você define os preços, responde às dúvidas deles e cuida dos reembolsos.
#Passo 1: Obtenha sua chave de API
Use a chave de API que você já tem no Portal do lojista, em API e webhooks > Chaves de API. Você não precisa de uma chave separada para o Dujiao-Next.
- O ID da chave começa com
ck_live_. - O segredo de assinatura começa com
cs_live_. Ele é exibido só uma vez, quando a chave é criada. Se você não o tiver mais, use Gerar novo segredo na chave. O ID da chave continua o mesmo, e o segredo antigo para de funcionar na hora.
Chaves antigas sem ID da chave não podem ser usadas. Nesse caso, crie uma chave nova no Portal.

#Passo 2: Adicione a conexão
No painel do Dujiao-Next, abra Integration > Connection Management > New Connection e preencha o formulário:
| Campo | O que informar | Por quê |
|---|---|---|
| Name | Por exemplo CardV (USD) | Só você vê. Incluir a moeda evita confusão mais tarde |
| Base URL | https://b2b.cardv.net/dujiao | Inclua /dujiao e nada depois, sem barra no final |
| API Key | Seu ID da chave (ck_live_…) | |
| API Secret | Seu segredo de assinatura (cs_live_…) | Ao editar a conexão depois, deixe em branco para manter o segredo salvo |
| Protocol | dujiao-next | |
| Callback URL | Deixe em branco | A CardV não envia callbacks. A sua loja consulta cada pedido para obter o resultado (veja Como funciona a entrega) |
| Max Retries / Retry Intervals | Mantenha os padrões (3 / 30,60,120) | As novas tentativas valem só para erros temporários |
| Exchange Rate | Um número fixo que você mesmo digita: a cotação real de hoje de USD para a moeda da sua loja, um pouco acima como margem de segurança. Use 1 se a sua loja vende em USD | Os preços da CardV são sempre em USD. O Dujiao-Next não busca cotações em tempo real, e a CardV não pode definir isso por você. O padrão é 1, então uma loja que vende em outra moeda listaria um cartão de 10 USD por 10 na própria moeda |
| Price Markup (%) | Sua margem, por exemplo 15 | O padrão é 0, ou seja, sem lucro |
| Price Rounding | Round up (0.1) ou Round up (integer) | Arredondar para cima nunca deixa o seu preço abaixo do seu custo |
| Auto-update price on sync | Yes | Quando um preço da CardV muda, o seu preço de venda é recalculado na próxima sincronização |
A cotação e a margem se combinam assim: preço CardV × cotação × (1 + margem), depois arredondado. Por exemplo, com uma cotação de 7.2 (apenas um exemplo; informe a cotação atual que você consultar) e uma margem de 15%, um cartão de 5.78 USD é vendido por 47.9.

Quando a cotação mudar, atualize-a na conexão e clique em Reapply Markup para atualizar os preços dos produtos que você já importou. Faça o mesmo quando mudar a margem.
#Passo 3: Teste a conexão
Clique em Ping na conexão. Ping succeeded significa que a sua chave funciona, e o status da conexão muda para Active. Se aparecer um erro, veja Solução de problemas.

#Passo 4: Importe produtos
- Abra Integration > Product Mappings > Import from Upstream e escolha a sua conexão CardV.
- Navegue por categoria, ou mude para Flat List para escolher produtos avulsos.
- Escolha uma categoria local, ou marque Auto-create local categories. O produto precisa de uma categoria para poder ser salvo.
- Importe. Cada produto mantém título, descrição, instruções de resgate e valores de face (como
10 USD).

Os produtos importados ficam fora da vitrine. Confira cada um e depois ative Active no editor do produto.

#Passo 5: Limite a um item por pedido
Em cada produto importado, abra o editor do produto e defina Max purchase quantity como 1.
A CardV entrega um item por pedido. Se um cliente pagar dois códigos em um mesmo pedido, a CardV recusa a compra e você precisa resolver esse pedido manualmente. O Dujiao-Next não consegue receber esse limite da CardV automaticamente, então configure-o você mesmo.
Já no editor, também recomendamos:
- Exibição de estoque na vitrine: escolha Hide quantity. A CardV compra da marca quando chega um pedido, então o número de estoque que a sua loja mostra significa apenas "disponível".
- Imagens: adicione as suas se o produto não tiver nenhuma.

#Como funciona a entrega
- O cliente paga na sua loja.
- A sua loja envia a compra para a CardV, e a CardV debita o seu saldo CardV.
- A sua loja consulta o pedido na CardV. Nos nossos testes, o código chegou em menos de um minuto.
- O código aparece na página do pedido do cliente como
Code,PIN(quando o cartão tem um) eExpires(quando o cartão tem data de validade). É sempre um código, nunca um link.
Recargas diretas. Alguns produtos são creditados direto na conta do cliente no jogo ou no app. No checkout, o cliente preenche os dados que o produto exige, como um ID de jogador ou um número de telefone. Quando a recarga termina, a página do pedido do cliente mostra Top-up completed.
Se a CardV não conseguir entregar. A CardV reembolsa o pedido no seu saldo CardV, e a sua loja marca a compra como cancelada. Depois, você reembolsa ou ajuda o cliente na sua loja.


#O que não está disponível
A lista de importação mostra apenas os produtos que a sua loja pode vender por esta conexão:
- Somente valores de face fixos. Cartões em que o cliente digita o próprio valor não aparecem.
- Não aparecem: recargas de crédito de celular, produtos de pagamento e carteiras, cripto e cartões de pagamento pré-pagos.
- Somente códigos. Produtos que só podem ser entregues como link não aparecem.
Os preços que você vê são os seus próprios preços CardV em USD.
#Lista de IPs permitidos
Se você configurar uma lista de IPs permitidos no Portal do lojista, adicione o endereço IP público do servidor que roda a sua loja Dujiao-Next. Caso contrário, a CardV recusa todas as requisições dele. A mesma chave, a mesma lista de IPs e os mesmos limites de requisições valem para a API da CardV e para o Dujiao-Next.
#Solução de problemas
Estas mensagens aparecem no painel do Dujiao-Next, após o Ping, durante a importação ou em uma compra em Procurement Orders.
| Mensagem | Causa | O que fazer |
|---|---|---|
status 401 (invalid_signature): signature verification failed | O API Secret está errado, ou você gerou um novo no Portal | Copie o segredo de assinatura atual para a conexão |
status 403 (invalid_api_key): api key is invalid or disabled | O API Key não é um ID da chave (ck_live_…), ou a chave está desativada | Use o ID de uma chave ativa |
status 403 (user_disabled): merchant API access is not enabled | A sua conta ainda não foi aprovada para acesso à API | Conclua a análise do negócio no Portal |
status 403 (forbidden): source IP is not allowed for this merchant | A sua lista de IPs permitidos não inclui o servidor da sua loja | Adicione o endereço IP público do servidor no Portal |
status 401 (timestamp_expired): timestamp expired | O relógio do seu servidor está mais de 60 segundos fora | Ative a sincronização automática de horário (NTP) no servidor |
status 404 seguido de uma página web | A Base URL está errada, geralmente sem /dujiao | Use https://b2b.cardv.net/dujiao |
CardV wallet balance is insufficient | O seu saldo CardV não cobre a compra. O pedido do cliente continua pago | Recarregue o seu saldo CardV e depois clique em Retry na compra, em Procurement Orders |
quantity must be 1: CardV accepts one item per order | Um cliente pediu mais de um item de um produto | Defina Max purchase quantity como 1 (Passo 5) e depois resolva o pedido manualmente |
sku is invalid or not available | O produto não está mais disponível na CardV | Execute uma sincronização no mapeamento. Produtos que a CardV não oferece mais saem da vitrine |
status 429 (rate_limited) | Requisições demais em um minuto | A sua loja tenta de novo sozinha. Diminua a frequência de sincronização se continuar acontecendo |
#Perguntas frequentes
Preciso de uma nova chave de API para o Dujiao-Next? Não. Use a chave de API assinada que você já tem. Se você também usa a chave na sua própria integração com a API da CardV, as duas compartilham os mesmos limites de requisições.
Por que deixo a Callback URL em branco? A CardV não envia callbacks para lojas. A sua loja Dujiao-Next consulta cada pedido por conta própria até o resultado ser final.
O que acontece quando os preços da CardV mudam? Com Auto-update price on sync ativado, os seus preços de venda são recalculados com a sua cotação e a sua margem na próxima sincronização. Com ele desativado, a sua loja continua vendendo pelo preço antigo.
Onde vejo esses pedidos na CardV? Na página Pedidos do Portal do lojista. A coluna Seu ID de pedido começa com dujiao: seguido do número do subpedido do Dujiao-Next (por exemplo dujiao:DJ…-01). Se você configurou webhooks da CardV, eles também são disparados para esses pedidos.

Posso mudar os títulos, as descrições e as imagens dos produtos? Sim. A sincronização atualiza preços e disponibilidade. Ela não sobrescreve os seus títulos nem as suas imagens.
Posso vender valores personalizados? Ainda não pelo Dujiao-Next. Só estão disponíveis valores de face fixos.
#Suporte
Escreva para [email protected] com o seu Merchant ID, o número do pedido no Dujiao-Next e a mensagem de erro. O uso da CardV está sujeito aos nossos Termos de Serviço.
Dúvidas sobre a integração? Envie um e-mail para [email protected] com seu Merchant ID e o ID do pedido ou da requisição.