Guías técnicas¶
Existen varios servicios API para facilitar la integración rápida y sencilla con la red Dash para servicios que incluyen:
- Transmisión de transacciones
- Tasas de cambio
- Conversión de monedas
- Generación de facturas
Servicios API¶
Esta documentación también está disponible como un PDF.
Los servicios de API generalmente se aprovechan para eliminar ese requisito de ejecutar tu propia infraestructura para admitir las interacciones de cadena de bloques. Esto incluye mecanismos tales como:
- Formar y transmitir una transacción a la red.
- Generación de direcciones usando Billeteras HD.
- Procesamiento de pagos usando WebHooks.
Hay una variedad de opciones para respaldar estos métodos, con el diferenciador clave como el modelo de fijación de precios y las funciones compatibles. La siguiente lista de proveedores de API intenta delinear estas características/diferenciadores claves y también incluye un enlace a la documentación relacionada.
Insight¶
https://github.com/dashevo/insight-api
El Insight REST API de fuente abierta te proporciona una forma conveniente, potente y sencilla de leer datos de la red de Dash y crear tus propios servicios con ella.
- Características: Transmisión de transacciones, notificaciones de WebSocket.
- Modelo de precios: Gratis / Fuente abierta
- Documentación: https://github.com/dashevo/insight-api
BlockCypher¶
BlockCypher es un simple RESTful JSON API para interactuar con cadenas de bloques, que puede ser accedido a través de HTTP o HTTPS desde el dominio api.blockcypher.com.
- Características: Transmisión de transacción, Billetera HD / Generación de direcciones, Retono de llamadas de WebSocket y WebHook, así como el reenvío de pagos. BlockCypher no maneja llaves privadas.
- Modelo de precios: Por llamada API, 5000 Solicitudes -> $85.00 por mes (https://accounts.blockcypher.com/plans)
- Documentación: https://www.blockcypher.com/dev/dash/
ChainRider¶
ChainRider es un servicio en la nube que provee un conjunto de REST API para el manejo y exploración de monedas digitales
- Caracteristicas: Consultas Blockchain, Notificaciones de Eventos, Transmisión de Transacciones, Procesamiento de Pago, etc.
- Modelo de Precios: Prueba gratis, pago por llamada de API
- Documentación: https://www.chainrider.io/docs/dash
GoCoin¶
La plataforma GoCoin hace que tomar Dash sea tan fácil como instalar un complemento. El procesamiento de pagos ya está implementado para todas las principales plataformas de compras. GoCoin se centra en ayudar a los comerciantes en nichos relacionados con la privacidad e industrias específicas, y maneja todos los riesgos de transacción para todos los pagos de tus clientes.
- Características: Facturación, Tipos de cambio, Retorno de llamadas de WebHook. GoCoin posee llaves privadas en su servidor, lo que permite al comerciante retirar fondos en criptomonedas o convertir a Fiat.
- Integraciones: WooCommerce, Magento, Prestashop, VirtueMart, ZenCart, OpenCart, OSCommerce, UberCart, nopCommerce, WHMCS, NATS4, Shopify.
- Modelo de precios: 1% comisión de procesamiento (https://gocoin.com/fees)
- Documentación: https://gocoin.com/docs
CoinPayments¶
CoinPayments es una pasarela de pago integrada para las criptomonedas, como Dash. Los complementos del carrito de compras están disponibles para todos los webcarts populares que se usan hoy en día. CoinPayments puede ayudarte a configurar un nuevo sistema de pagos o integrarse con tu sistema de pago preexistente.
- Características: Facturación, Tipos de cambio, Retorno de llamadas de WebHook. CoinPayments tiene llaves privadas en su servidor, lo que permite al comerciante retirar fondos en criptomonedas o convertir a Fiat.
- Integraciones: aMember Pro, Arastta, Blesta, BoxBilling, Drupal, Ecwid, Hikashop, Magento, OpenCart, OSCommerce, PrestaShop, Tomato Cart, WooCommerce, Ubercart, XCart, ZenCart
- Modelo de precios: 0.5% comisión de preocesamiento (https://www.coinpayments.net/help-fees)
- Documentación: https://www.coinpayments.net/apidoc
Recursos SDK¶
Esta documentación también está disponible en un PDF.
Los SDK (kits de desarrollo de software) se utilizan para acelerar el diseño y el desarrollo de un producto para la red Dash. Estos recursos pueden usarse para interactuar con un proveedor de API o para la creación de aplicaciones independientes.
Guía de desarrollador de Dash¶
https://dash-docs.github.io/en/developer-guide
La Guía de desarrollador de Dash tiene como objetivo proporcionar la información que se necesita para comprender Dash y comenzar a crear aplicaciones basadas en Dash. Para hacer el mejor uso de esta documentación, es mejor que instales la versión actual de Dash Core, ya sea desde el origen o desde un ejecutable precompilado.
- Documentación: https://dash-docs.github.io/en/developer-guide
Dashcore¶
Dashcore es una bifurcación de Bitcore y funciona como un nodo completo de Dash — tus aplicaciones se ejecutan directamente en la red persona persona. Para el desarrollo de aplicaciones de billetera, se han agregado índices adicionales en Dash para consultar saldos de direcciones, historial de transacciones y salidas no gastadas.
- Plataforma: NodeJS / Javascript
- Documentación: https://bitcore.io/api/lib
- Libreria de repositorio: https://github.com/dashevo/dashcore-lib
- Nodo de repositorio: https://github.com/dashevo/dashcore-node
DashJ¶
https://github.com/HashEngineering/dashj
DashJ es una librería para trabajar con el protocolo Dash. Puede mantener una billetera, enviar/recibir transacciones (incluye InstantSend) sin necesidad de una copia local de Dash Core, y tiene muchas otras características avanzadas. Esta implementado en Java pero puede ser usado desde cualquier
- Plataforma: Java
- Documentación: https://bitcoinj.github.io/getting-started
- Example application: https://github.com/tomasz-ludek/pocket-of-dash
NBitcoin¶
https://github.com/MetacoSA/NBitcoin
NBitcoin es la biblioteca más completa de Bitcoin para la plataforma .NET, y se ha modificado para incluir soporte para Dash. Implementa todas las propuestas de mejora más relevantes para Bitcoin (PIF) y para Dash (DIP). También proporciona acceso de bajo nivel a los primitivos de Dash para que puedas construir fácilmente tu aplicación sobre ella.
- Plataforma: .NET
- Documentación: https://programmingblockchain.gitbooks.io/programmingblockchain/content/
- Repositorio: https://github.com/MetacoSA/NBitcoin
BlockCypher¶
BlockCypher también ofrece clientes SDK.
- Plataforma: Ruby, Python, Java, PHP, Go, NodeJS
- Repositorios: https://www.blockcypher.com/dev/dash/#blockcypher-supported-language-sdks
InstantSend¶
Esta documentación también está disponible en un PDF.
InstantSend es una función proporcionada por la red Dash que permite que las transacciones de con 0 confirmaciones sean aceptadas de forma segura por los comerciantes y otros proveedores de servicios. Asegurado por la red de masternodes, este mecanismo elimina el riesgo de un «gasto doble» al bloquear las entradas de transacción para una transacción determinada en un nivel de protocolo.
Transacciones InstantSend vs. Transacciones estándares¶
Desde una perspectiva de integración, solo existen pequeñas diferencias entre una Transacción InstantSend y una Transacción Estándar. Ambos tipos de transacciones se forman de la misma manera y se firman usando el mismo proceso; la diferencia clave es la estructura de comisiones y los requisitos de entrada para InstantSend.
- Estructura de comisiones: InstantSend utiliza una comisión “por-entrada” de 0.0001 DASH por entrada.
- Requisitos de entrada: todas las entradas para una transacción de InstantSend deben tener al menos 6 confirmaciones.
En el caso de que una transacción determinada no cumpla con ambos criterios, se revertirá a una transacción estándar.
Recibir transacciones InstantSend¶
Las transacciones de InstantSend se manejan de la misma manera que una transacción estándar, generalmente a través de JSON-RPC, Insight API o un script/servicio de notificación interno que está configurado a nivel de servidor.
JSON-RPC: los siguientes comandos RPC incluirán información relacionada con InstantSend. Dentro de la respuesta encontrarás un campo «InstantLock» el estado de una transacción determinada. Este valor verdadero/falso (booleano) indicará si se ha observado una InstantSend.
- Obtener transacción: https://dash-docs.github.io/en/developer-reference#gettransaction
- Enlistar transacciones: https://dash-docs.github.io/en/developer-reference#listtransactions
- ListSinceBlock: https://dash-docs.github.io/en/developer-reference#listsinceblock
Insight API: la Insight API se puede utilizar para detectar transacciones de InstantSend y enviar notificaciones a los clientes que usan WebSockets. La API también se puede sondear manualmente para recuperar información de la transacción, incluido el estado de InstantSend.
Notificación de script: Dash Core Daemon se puede configurar para ejecutar un script externo siempre que se observe una transacción de InstantSend relacionada con esa billetera. Esto se configura agregando la siguiente línea al archivo dash.conf:
instantsendnotify=/path/to/concurrent/safe/handler %s
Ten en cuenta que solo las direcciones importadas a la billetera serán monitoreadas para transacciones InstantSend.
Transmitir Transacciones InstantSend¶
Las Transacciones InstantSend se pueden construir y difundir utilizando un enfoque similar a las Transacciones Estándar. Siempre que se cumplan la Estructura de comisiones de InstantSend y los Requisitos de entrada, se puede transmitir una InstantSend usando JSON-RPC o Insight API como una Transacción sin procesar.
JSON-RPC: El comando RPC «SendRawTransaction» se puede utilizar para transmitir una transacción sin procesar con InstantSend. Al utilizar este comando, asegúrate de establecer ambos parámetros opcionales como «verdadero»
sendrawtransaction "hexstring" ( permite comisiones altas instantsend )
sendrawtransaction "hexstring" true true
Más información: https://dash-docs.github.io/en/developer-reference#sendrawtransaction
Insight API: las transacciones sin procesar también se pueden transmitir como InstantSend utilizando Insight API. En este caso, todo lo que se requiere es PUBLICAR la transacción sin procesar con la ruta
/tx/sendix
.Más información: https://github.com/dashevo/insight-api#instantsend-transaction
Recursos adicionales¶
Los siguientes recursos proporcionan información adicional sobre InstantSend y están destinados a ayudar a proporcionar una comprensión más completa de las tecnologías subyacentes.
Vending Machines¶
Community member moocowmoo has released code to help merchants build their own vending machine and set it up to receive Dash InstantSend payments. The Dashvend software can also be used to create any sort of payment system, including point-of-sale systems, that can accept InstantSend payments.
Precio de tickers¶
Puedes agregar un widget de ticket de precio simple a tu sitio web usando el simple generador de fragmentos de código de CoinGecko.
Similar widgets with different designs are available from CoinLib, WorldCoinIndex and Cryptonator, while an API providing similar information is available from DashCentral.
QR Codes¶
Many wallets are capable of generating QR codes which can be scanned to simplify entry of the Dash address. Printing these codes or posting the on your website makes it easy to receive payment and tips in Dash, both online and offline.
- In Dash Core, go to the Receive tab, generate an address if necessary, and double-click it to display a QR code. Right click on the QR code and select Save Image to save a PNG file.
- In Dash for Android, tap Request Coins and then tap the QR code to display a larger image. You can screenshot this to save an image.
- In Dash for iOS, swipe to the left to display the Receive Dash screen. A QR code and address will appear. You can screenshot this to save an image.
- To generate a QR code from any Dash address, visit CWA QR Code Generator and simply paste your Dash address to generate an image.