NAV Navbar
shell php
  • Introdução
  • Criptomoedas
  • Transação
  • Notificação
  • Introdução

    Redecoin fornece uma API simples, eficiente e segura para integração do seu e-commerce/sistema com o gateway de pagamentos para bitcoin/criptomoedas da Redecoin.

    Especificações:
    URL: https://api.redecoin.com/v2/
    Tipo: API RESTful
    Versão: 2.0
    Protocolo de comunicação: HTTPS
    Método para requisições: GET
    Formato das respostas: JSON

    Dúvidas?

    Entre em contato com o suporte técnico.
    E-mail/skype: [email protected]

    Criptomoedas

    Exemplo de requisição:

    curl -X GET -G \
    "https://api.redecoin.com/v2/company/cryptocurrency" \
    -d "token_company=9979b355-67b4-4a5f-8367-4ced0f94b93e" 
    

    Exemplo de resposta da API:

    
    {
      "status": 100,"resp":
        [
          {
            "code": "BTC",
            "name": "Bitcoin",
            "images": [
              "https://api.redecoin.com/coins/default/BTC200x200.png",
              "https://api.redecoin.com/coins/default/BTC200x200.bmp"
            ]
          }
        ]
      }
    

    Para listar as criptomoedas escolhidas no cadastro da empresa para aceitar no seu e-commerce/sistema, utilize o endpoint:
    company/cryptocurrency

    Forneça via método GET as informações abaixo:

    Campo Tipo Descrição
    token_company string Token da empresa gerado no cadastro.


    Resposta da API:

    Campo Tipo Descrição
    code string Código da criptomoeda.
    name string Nome da criptomoeda.
    images array Lista de logotipos disponíveis referente a criptomoeda.

    Transação

    Criar transação

    Exemplo de requisição

     curl -X GET -G \
    "https://api.redecoin.com/v2/transaction/create" \
    -d "token_company=9979b355-67b4-4a5f-8367-4ced0f94b93e" \
    -d "base_currency=BRL" \
    -d "val_base=100.00" \
    -d "cryptocurrency=BTC" \
    -d "[email protected]" \
    -d "refer_id=1928377"
    
    $params = array();
    $params["token"] = "9979b355-67b4-4a5f-8367-4ced0f94b93e";
    $params["amount"] = 100.00;
    $params["iso4217"] = "BRL";
    $params["email_client"] = "[email protected]";
    $params["refer_id"] = "ID de referência";
    
    $order_redecoin = file_get_contents("https://api.redecoin.com/v1/transacao/criar/?" . implode('&', 
        array_map(
            function ($v, $k) { return sprintf("%s=%s", $k, urlencode($v)); },
              $params,
              array_keys($params)
          )
        )
      );
    
    if ($order_redecoin = json_decode($order_redecoin, true)) {
      $order_redecoin["resp"]["valBtc"] = number_format($order_redecoin["resp"]["valBtc"], 8);
    
      var_export($order_redecoin);
      // return $order_redecoin  
      /*
      array (
        'status' => 100,
        'resp' => 
        array (
          'valBtc' => '0.00741401',
          'address' => '1B7LjPva2Vr3fvYx5at3fkUdGz74ZWuwZy',
          'token' => '1f7f24be-431b-4db1-9615-27d447b573c0',
          'qrcode' => 'https://s3-sa-east-1.amazonaws.com/redecoin/address/1B7LjPva2Vr3fvYx5at3fkUdGz74ZWuwZy.png',
        ),
      )
      */
    }
    

    Exemplo de resposta

    
    {
      "status": 100,"resp":
        {
          "cryptocurrency": "BTC",
          "val_crypto":0.0077226,
          "address":"1EU2BftanrNhvoRuQv8LkUp2j9o7caJm1q",
          "token_transaction":"eb15921f-450d-4eb5-916d-1e01c0b17388",
          "qrcode":"https://api.redecoin.com/address/1EU2BftanrNhvoRuQv8LkUp2j9o7caJm1q.png"
        }
      }
    

    Para criar uma transação com bitcoin/criptomoeda envie uma requisição para o endpoint: transaction/create

    Forneça via método GET os parâmetros abaixo:

    Campo Tipo Descrição
    token_company string Token da empresa gerado no cadastro.
    base_currency string Moeda usada como base para gerar a transação. Disponível apenas BRL.
    val_base float Valor em Reais usado como base para gerar a transação.
    cryptocurrency string Criptomoeda em que a transação será gerada. Exemplo: BTC.
    ☍ lista de criptomoedas disponíveis
    email_client string E-mail do cliente que está realizando a compra.
    refer_id string Opcional - Identificador do pedido que será enviado junto com a notificação quando a transação alterar de status.
    token_value string Opcional - Token utilizado para garantir o valor consultado anteriormente no serviço de ☍ Valor antecipado da transação

    Resposta da API:

    Efetuada a requisição, a transação terá sido criada e a API responderá com as informações abaixo em formato JSON

    Campo Tipo Descrição
    status integer Status da requisição. ☍ lista de status
    cryptocurrency string Criptomoeda em que a transação foi gerada.
    val_crypto float Valor em criptomoeda para o consumidor realizar o pagamento
    address string Endereço de pagamento para o consumidor realizar o pagamento
    qrcode string Link da imagem com o QR code contendo o endereço de pagamento e valor a ser pago em criptomoeda. Em formato pronto para ser lido em app's de carteiras de criptomoedas para pagamento.
    token_transaction string Token único que identifica esta transação na Redecoin.

    Lista de status da requisição

    Valor Descrição
    100 Sucesso.
    110 Sucesso. token_value informado está expirado, o valor em criptomoeda foi recalculado.
    120 Sucesso. token_value inválido.
    310 token_company não informado.
    320 token_company inválido.
    410 E-mail do cliente não informado.
    420 cryptocurrency inválido ou não disponível.
    421 base_currency inválido ou não disponível.
    422 val_base inválido.
    423 cryptocurrency não aceita nesta empresa.
    510 Venda temporariamente desabilitada.
    600 Erro ao criar transação.

    Valor antecipado da transação

    Exemplo de requisição:

    curl -X GET -G \
    "https://api.redecoin.com/v2/value" \
    -d "token_company=9979b355-67b4-4a5f-8367-4ced0f94b93e" \ 
    -d "base_currency=BRL" \ 
    -d "val_base=100.00"   \
    -d "cryptocurrency=BTC"
    
    $params = array();
    $params["token"] = "9979b355-67b4-4a5f-8367-4ced0f94b93e";
    $params["val_brl"] = 100.00;
    
    $amount = file_get_contents("https://api.redecoin.com/v1/amount/?" . implode('&', 
        array_map(
            function ($v, $k) { return sprintf("%s=%s", $k, urlencode($v)); },
              $params,
              array_keys($params)
          )
        )
      );
    
    if ($amount = json_decode($amount, true)) {
      $amount["resp"]["val_btc"] = number_format($amount["resp"]["val_btc"], 8);
    
      var_export($amount);
    
    }
    

    Response

    {
      "status": 100,"resp":
        {
          "val_crypto": 0.003389831,
          "val_quotation":29500.00,
          "token_value":"ac27412t-680f-3rn7-536b-2r20v3p26266"
        }
      }
    

    Para calcular o valor equivalente em criptomoeda do pedido que está em andamento no seu e-commerce de forma antecipada, antes de finalizar o pedido e criar uma transação, use o endpoint value.

    Forneça via método GET os parâmetros abaixo:

    Campo Tipo Descrição
    token_company string Token da empresa gerado no cadastro.
    base_currency string Moeda que terá o valor convertido para criptomoeda. Disponível apenas BRL.
    val_base float Valor que será convertido para criptomoeda.
    cryptocurrency float Criptomoeda em que deseja ser calculado o valor equivalente. Exemplo: BTC
    ☍ lista de criptomoedas disponíveis

    Resposta da API:

    Campo Tipo Descrição
    status integer Status da requisição. ☍ lista de status
    val_crypto float Valor calculado na criptomoeda solicitada.
    val_quotation string Valor da cotação da criptomoeda utilizado para a conversão.
    token_value string Token identificador desta consulta. Envie este token no momento de criar a transação para garantir que o valor em criptomoeda calculado nessa consulta seja mantido.

    Lista de status da requisição

    Valor Descrição
    100 Sucesso.
    310 token_company não informado.
    320 token_company inválido.
    420 cryptocurrency inválido ou não disponível.
    421 base_currency inválido ou não disponível.
    422 val_base inválido.
    423 cryptocurrency não aceito nesta empresa.
    600 Erro ao consultar.

    Consultar transação

    Exemplo de requisição:

    curl -X GET -G \
    "https://api.redecoin.com/v2/transaction/list" \
    -d "secret_key=ard3r79n2ghls42tgplgfd4c8f495a9b8019bbd7e6afac0b0493c938e0fc83ce" 
    
    $params = array();
    $params["secret_key"] = "ba5ff3394df7742b2b9r62d5a2f52C95d349ab3cd3293e8a88fdc159f7a5764c";
    $params["pagina"] = 1;
    $params["limite"] = 50;
    $params["token"] = "9979b355-67b4-4a5f-8367-4ced0f94b93e";
    
    $amount = file_get_contents("https://api.redecoin.com/v1/transacao/listar/?" . implode('&', 
        array_map(
            function ($v, $k) { return sprintf("%s=%s", $k, urlencode($v)); },
              $params,
              array_keys($params)
          )
        )
      );
    
    if ($amount = json_decode($amount, true)) {
    
      var_export($amount);
    
    }
    

    Exemplo de resposta:

    
    '{
      "status":100,"resp":
          [
            {
              "company_id":11,
              "company_name": "Empresa teste", 
              "val_quotation": 29.500,
              "base_currency": "BRL",
              "val_base": 100.00,
              "cryptocurrency": "BTC",
              "val_crypto": 0.003389831,
              "val_liquid_input": 97.40,
              "postback": "minhaloja.com.br/redecoin/notificacao.php",
              "refer_id": "1928377",
              "status_transaction": "aprovado",
              "date_payment": "2018-05-01 18:50:10",
              "val_pay": 0.003389831,
              "token_transaction": "eb15921f-450d-4eb5-916d-1e01c0b17388",
              "date_created": "2018-05-01 18:45:30",
              "address": "1EU2BftanrNhvoRuQv8LkUp2j9o7caJm1q"
            }
          ]
      }'
    

    Para consultar uma transação use o endpoint transaction/list.

    Forneça via método GET os parâmetros abaixo:

    Campo Tipo Descrição
    secret_key string Chave secreta de segurança da empresa.
    token_transaction string Opcional - Token único que identifica uma transação na Redecoin. Consulte uma transação específica informando este token.
    page integer Opcional - Página que será listada.
    limit integer Opcional - Limite de registros por página.

    Resposta da API:

    Campo Tipo Descrição
    status integer Status da requisição. ☍ lista de status
    company_id integer Código de identificação da empresa.
    company_name string Nome da empresa.
    val_quotation string Valor da cotação da criptomoeda no momento da venda.
    base_currency string Moeda usada como base para gerar a transação.
    val_base float Valor em Reais usado como base para gerar a transação.
    cryptocurrency string Criptomoeda em que a transação foi gerada.
    val_crypto float Valor em criptomoeda para o consumidor realizar o pagamento.
    val_liquid_base float Valor em Reais usado como base para gerar a transação descontando as taxas da Redecoin.
    postback string Url que a Redecoin enviará a notificação a cada alteração de status desta transação.
    refer_id string Identificador do pedido informado no momento da criação da transação.
    status_transaction string Status da transação. ☍ lista de status
    date_payment datetime Data e hora que o cliente realizou o pagamento.
    val_pay float Valor pago pelo cliente.
    token_transaction string Token único que identifica esta transação na Redecoin.
    date_created date_created Data e hora em que a transação foi criada.
    address string Endereço de pagamento para o consumidor realizar o pagamento.

    Lista de status da requisição

    Valor Descrição
    100 Sucesso
    330 secret_key não informado
    335 secret_key inválido
    425 token_transaction inválido
    426 page inválido
    427 limit inválido
    600 Erro ao consultar

    Cancelar transação

    Exemplo de requisição:

    curl -X GET -G \
    "https://api.redecoin.com/v2/transaction/cancel" \
    -d "secret_key=ard3r79n2ghls42tgplgfd4c8f495a9b8019bbd7e6afac0b0493c938e0fc83ce" \ 
    -d "token_transaction=eb15921f-450d-4eb5-916d-1e01c0b17388" 
    

    Exemplo de resposta:

    
    {
      "status": 100,"resp": {}
    }
    

    Para cancelar uma transação use o endpoint transaction/cancel.

    Forneça via método GET os parâmetros abaixo:

    Campo Tipo Descrição
    secret_key string Chave secreta de segurança da empresa.
    token_transaction string Token único que identifica uma transação na Redecoin.
    full_refund string(S,N) Opcional - Devolver valor total pago ao ao cliente. Habilitado somente mediante solicitação, mais infos:
    ☍ Políticas de cancelamento

    Resposta da API:

    Campo Tipo Descrição
    status integer Status da requisição. ☍ lista de status

    Lista de status da requisição

    Valor Descrição
    100 Cancelado com sucesso.
    330 secret_key não informado.
    335 secret_key inválido
    425 token_transaction inválido
    440 Não é possível cancelar uma transação com este status.
    520 Empresa não habilitada para devolução do valor integral no momento desta transação.
    525 Sem saldo para cancelar.
    600 Erro ao cancelar

    Notificação

    Sempre que a transação for paga ou tiver seu status alterado, uma notificação será enviada para uma URL definida no cadastro da empresa informando o novo status da transação.

    A URL informada receberá um POST contendo os parâmetros abaixo:

    Campo Tipo Descrição
    secret_key string Chave secreta de segurança da empresa.
    refer_id string Identificador do pedido informado no momento da criação da transação.
    token_transaction string Token único que identifica esta transação na Redecoin.
    status_transaction string Status da transação. ☍ lista de status
    base_currency string Moeda usada como base para gerar a transação.
    val_base float Valor em Reais usado como base para gerar a transação.
    cryptocurrency string Criptomoeda em que a transação foi gerada.
    val_crypto float Valor em criptomoeda para o consumidor realizar o pagamento.

    Status da transação

    Abaixo a lista com todos os status que uma transação pode assumir:

    Valor Descrição
    registrado Status inicial. A transação foi criada e está aguardando pagamento.
    recebendo_pagamento Pagamento enviado, mas aguardando as confirmações da rede.
    aprovado Pagamento recebido.
    negado Pagamento recebido fora do tempo permitido. O consumidor receberá um e-mail com instruções para devolução do valor pago.
    pago_abaixo O pagamento realizado é abaixo do valor esperado, um e-mail será encaminhado ao consumidor com instruções para pagamento do valor faltante.
    cancelado A transação foi cancelada pela empresa. Se foi paga, um e-mail será encaminhado ao consumidor com instruções para devolução do valor pago.