Desarrolladores/Ecosistema y recursos
CardV para Dujiao-Next
Añade CardV como proveedor en tu tienda Dujiao-Next. Importas tarjetas de regalo y recargas de juegos de CardV como productos propios y fijas tus propios precios. Cuando un cliente paga, tu tienda compra el artículo a CardV con tu saldo de CardV, y el código aparece automáticamente en la página del pedido del cliente.
#Qué necesitas
| Dujiao-Next | v1.5.0 o posterior, con la función de conexión con proveedores (menú Integration) |
| Cuenta de CardV | Una cuenta de comercio aprobada con acceso a la API activado |
| Clave de API | Una clave de API firmada del Portal de comercios (Key ID + secreto de firma) |
| Saldo | Un saldo prepagado de CardV en USD. Cada pedido que hace tu tienda se paga con él |
Ante tus clientes, el vendedor eres tú: fijas los precios, respondes a sus preguntas y te encargas de sus reembolsos.
#Paso 1: Obtén tu clave de API
Usa la clave de API que ya tienes en el Portal de comercios, en API y webhooks > Claves de API. No necesitas una clave aparte para Dujiao-Next.
- El Key ID empieza por
ck_live_. - El secreto de firma empieza por
cs_live_. Solo se muestra una vez, al crear la clave. Si ya no lo tienes, usa Regenerar secreto en la clave. El Key ID no cambia, y el secreto anterior deja de funcionar al instante.
Las claves antiguas sin Key ID no se pueden usar. En ese caso, crea una clave nueva en el Portal.

#Paso 2: Añade la conexión
En el panel de Dujiao-Next, abre Integration > Connection Management > New Connection y rellena el formulario:
| Campo | Qué introducir | Por qué |
|---|---|---|
| Name | Por ejemplo CardV (USD) | Solo lo ves tú. Incluir la moneda evita confusiones más adelante |
| Base URL | https://b2b.cardv.net/dujiao | Incluye /dujiao y nada después, sin barra final |
| API Key | Tu Key ID (ck_live_…) | |
| API Secret | Tu secreto de firma (cs_live_…) | Si editas la conexión más adelante, déjalo vacío para conservar el secreto guardado |
| Protocol | dujiao-next | |
| Callback URL | Déjalo vacío | CardV no envía callbacks. Tu tienda consulta cada pedido para obtener el resultado (consulta Cómo funciona la entrega) |
| Max Retries / Retry Intervals | Deja los valores por defecto (3 / 30,60,120) | Los reintentos solo se aplican a errores temporales |
| Exchange Rate | Un número fijo que introduces tú: el tipo de cambio real de hoy de USD a la moneda de tu tienda, un poco por encima como margen de seguridad. Usa 1 si tu tienda vende en USD | Los precios de CardV siempre están en USD. Dujiao-Next no obtiene tipos de cambio en tiempo real, y CardV no puede fijarlo por ti. El valor por defecto es 1, así que una tienda que vende en otra moneda pondría una tarjeta de 10 USD a 10 en su propia moneda |
| Price Markup (%) | Tu margen, por ejemplo 15 | El valor por defecto es 0, es decir, sin beneficio |
| Price Rounding | Round up (0.1) o Round up (integer) | Redondear hacia arriba nunca deja tu precio por debajo de tu costo |
| Auto-update price on sync | Yes | Cuando cambia un precio de CardV, tu precio de venta se recalcula en la siguiente sincronización |
El tipo de cambio y el margen se combinan así: precio de CardV × tipo de cambio × (1 + margen), y luego se redondea. Por ejemplo, con un tipo de cambio de 7.2 (solo es un ejemplo; introduce el tipo actual que consultes) y un margen del 15 %, una tarjeta de 5.78 USD se vende a 47.9.

Cuando cambie el tipo de cambio, actualízalo en la conexión y haz clic en Reapply Markup para actualizar los precios de los productos que ya importaste. Haz lo mismo cuando cambies el margen.
#Paso 3: Prueba la conexión
Haz clic en Ping en la conexión. Ping succeeded significa que tu clave funciona, y el estado de la conexión pasa a Active. Si en su lugar ves un error, consulta Solución de problemas.

#Paso 4: Importa productos
- Abre Integration > Product Mappings > Import from Upstream y elige tu conexión de CardV.
- Explora por categoría, o cambia a Flat List para elegir productos sueltos.
- Elige una categoría local, o marca Auto-create local categories. Un producto necesita una categoría para poder guardarlo.
- Importa. Cada producto conserva su título, su descripción, sus instrucciones de canje y sus valores nominales (como
10 USD).

Los productos importados quedan sin publicar. Revisa cada uno y luego activa Active en el editor del producto.

#Paso 5: Limita a un artículo por pedido
En cada producto importado, abre el editor del producto y pon Max purchase quantity en 1.
CardV entrega un artículo por pedido. Si un cliente paga dos códigos en un mismo pedido, CardV rechaza la compra y tienes que resolver ese pedido a mano. Dujiao-Next no puede recibir este límite de CardV automáticamente, así que configúralo tú.
Ya que estás en el editor, también te recomendamos:
- Visualización del stock en la tienda: elige Hide quantity. CardV compra a la marca cuando llega un pedido, así que la cifra de stock que muestra tu tienda solo significa "disponible".
- Imágenes: añade las tuyas si un producto no tiene ninguna.

#Cómo funciona la entrega
- El cliente paga en tu tienda.
- Tu tienda envía la compra a CardV, y CardV cobra el importe de tu saldo de CardV.
- Tu tienda consulta el pedido en CardV. En nuestras pruebas, el código llegó en menos de un minuto.
- El código aparece en la página del pedido del cliente como
Code,PIN(si la tarjeta tiene uno) yExpires(si la tarjeta tiene fecha de caducidad). Siempre es un código, nunca un enlace.
Recargas directas. Algunos productos se abonan directamente en la cuenta del cliente en el juego o la aplicación. Al pagar, el cliente rellena los datos que necesita el producto, como un ID de jugador o un número de teléfono. Cuando la recarga termina, la página del pedido del cliente muestra Top-up completed.
Si CardV no puede entregar. CardV reembolsa el pedido a tu saldo de CardV, y tu tienda marca la compra como cancelada. Después, reembolsas o ayudas al cliente en tu tienda.


#Qué no está disponible
La lista de importación solo muestra los productos que tu tienda puede vender a través de esta conexión:
- Solo valores nominales fijos. No aparecen las tarjetas en las que el cliente escribe su propio importe.
- No aparecen: recargas de saldo móvil, productos de pago y billeteras, cripto y tarjetas de pago prepago.
- Solo códigos. No aparecen los productos que solo se pueden entregar como enlace.
Los precios que ves son tus propios precios de CardV en USD.
#Lista de IP permitidas
Si configuras una lista de IP permitidas en el Portal de comercios, añade la dirección IP pública del servidor donde funciona tu tienda Dujiao-Next. Si no, CardV rechaza todas las solicitudes que vengan de él. La misma clave, la misma lista de IP y los mismos límites de solicitudes se aplican a la API de CardV y a Dujiao-Next.
#Solución de problemas
Estos mensajes aparecen en el panel de Dujiao-Next, tras Ping, durante la importación o en una compra en Procurement Orders.
| Mensaje | Causa | Qué hacer |
|---|---|---|
status 401 (invalid_signature): signature verification failed | El API Secret es incorrecto, o lo regeneraste en el Portal | Copia el secreto de firma actual en la conexión |
status 403 (invalid_api_key): api key is invalid or disabled | El API Key no es un Key ID (ck_live_…), o la clave está desactivada | Usa el Key ID de una clave activa |
status 403 (user_disabled): merchant API access is not enabled | Tu cuenta aún no está aprobada para acceder a la API | Completa la revisión del negocio en el Portal |
status 403 (forbidden): source IP is not allowed for this merchant | Tu lista de IP permitidas no incluye el servidor de tu tienda | Añade la dirección IP pública del servidor en el Portal |
status 401 (timestamp_expired): timestamp expired | El reloj de tu servidor tiene un desfase de más de 60 segundos | Activa la sincronización automática de la hora (NTP) en el servidor |
status 404 seguido de una página web | La Base URL es incorrecta; normalmente le falta /dujiao | Usa https://b2b.cardv.net/dujiao |
CardV wallet balance is insufficient | Tu saldo de CardV no cubre la compra. El pedido del cliente sigue pagado | Recarga tu saldo de CardV y luego haz clic en Retry en la compra, en Procurement Orders |
quantity must be 1: CardV accepts one item per order | Un cliente pidió más de un artículo de un producto | Pon Max purchase quantity en 1 (Paso 5) y luego resuelve el pedido a mano |
sku is invalid or not available | El producto ya no está disponible en CardV | Ejecuta una sincronización en la asignación. Los productos que CardV ya no ofrece se retiran de la venta |
status 429 (rate_limited) | Demasiadas solicitudes en un minuto | Tu tienda reintenta sola. Reduce la frecuencia de sincronización si sigue pasando |
#Preguntas frecuentes
¿Necesito una clave de API nueva para Dujiao-Next? No. Usa la clave de API firmada que ya tienes. Si también usas la clave para tu propia integración con la API de CardV, ambas comparten los mismos límites de solicitudes.
¿Por qué dejo vacía la Callback URL? CardV no envía callbacks a las tiendas. Tu tienda Dujiao-Next consulta cada pedido por su cuenta hasta que el resultado es definitivo.
¿Qué pasa cuando cambian los precios de CardV? Con Auto-update price on sync activado, tus precios de venta se recalculan con tu tipo de cambio y tu margen en la siguiente sincronización. Si está desactivado, tu tienda sigue vendiendo al precio anterior.
¿Dónde veo estos pedidos en CardV? En la página Pedidos del Portal de comercios. La columna Su ID de pedido empieza por dujiao: seguido del número de subpedido de Dujiao-Next (por ejemplo dujiao:DJ…-01). Si configuraste webhooks de CardV, también se envían para estos pedidos.

¿Puedo cambiar los títulos, las descripciones y las imágenes de los productos? Sí. La sincronización actualiza los precios y la disponibilidad. No sobrescribe tus títulos ni tus imágenes.
¿Puedo vender importes personalizados? Todavía no a través de Dujiao-Next. Solo están disponibles los valores nominales fijos.
#Soporte
Escribe a [email protected] indicando tu Merchant ID, el número de pedido de Dujiao-Next y el mensaje de error. El uso de CardV se rige por nuestros Términos del servicio.
¿Dudas sobre tu integración? Escribe a [email protected] con tu Merchant ID y el ID del pedido o de la solicitud.