Recarga para Celular



Fluxo da recarga



  1. Para efetuar a recarga de créditos para um celular é necessário que o cliente nos informe o número de celular desejado para a recarga. Com esse número, sugerimos a operadora mais provável desejada para a recarga, porém, também permitimos que o cliente escolha a operadora desejada.

  2. Após a escolha da operadora, o cliente seleciona o valor que deseja recarregar.

  3. Ao confirmar a recarga, adicionaremos os créditos junto a operadora.


Operadoras disponíveis


  • Claro;
  • Correios;
  • Embratel;
  • Nextel;
  • Oi;
  • Tim;
  • Vivo;
  • Oi Fixo;
  • Algar Fixo;
  • Claro Fixo;
  • Surf Telecom.

Atenção

Os valores oferecidos para a recarga não são flexíveis e variam de acordo com a operadora.



Ações a serem executadas para recarga de Celular



1) Listar todos os provedores para Celular
GET https://sandbox-api.openbank.stone.com.br/api/v1/topups/mobile/providers/{cellphone}
Header request
{
    "authorization": "Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4d3NUd3BhYTRJWUZIYWV5ZFRubnRoRC1UaVlCaU9kanNmOGx6RUlMR1hVIn0.eyJqdGkiOiJiODQ0NDc4OS01ODE5LTQ4MTUtYjc1NC04MDU5NmMyYTg4MGYiLCJleHAiOjE2MTY2OTk5MjQsIm5iZiI6MCwiaWF0IjoxNjE2Njk5MDI0LCJpc3MiOiJodHRwczovL3NhbmRib3gtYWNjb3VudHMub3BlbmJhbmsuc3RvbmUuY29tLmJyL2F1dGgvcmVhbG1zL3N0b25lX2JhbmsiLCJzdWIiOiJhYzE5MGRmYy00YTBjLTQ5ODUtYmQwNi03NWE5Zjc3NjU0MTMiLCJ0eXAiOiJCZWFyZXIiLCJhenAiOiIwNjVlY2IwOC0yNDM5LTQwYzAtOGUxMy0yYjQzYzIxNzQzZTMiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiIwMjhlMjY3ZS0zMjYwLTQzNDMtODQ2ZS1hOTRkNzlmZTFjYWEiLCJhY3IiOiIxIiwic2NvcGUiOiJwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6d3JpdGUgcGF5bWVudGFjY291bnQ6Y29udGFjdDp3cml0ZSBlbnRpdHk6d3JpdGUgcGF5bWVudGFjY291bnQ6cmVhZCBwYXltZW50YWNjb3VudDp0cmFuc2ZlcnM6aW50ZXJuYWwgcGF5bWVudGFjY291bnQ6ZmVlczpyZWFkIHBheW1lbnRhY2NvdW50Omluc3RhbnRwYXltZW50IHBheW1lbnRhY2NvdW50OnBheW1lbnRzIHN0b25lX3N1YmplY3RfaWQgcGF5bWVudGFjY291bnQ6Y29udGFjdDpyZWFkIHNpZ251cDpwYXltZW50YWNjb3VudCBwYXltZW50YWNjb3VudDpib2xldG9pc3N1YW5jZSBwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6cmVhZCBwYXltZW50YWNjb3VudDpwYXlyb2xsczpyZWFkIHBheW1lbnRhY2NvdW50OnBheXJvbGxzOndyaXRlIHBheW1lbnRhY2NvdW50OnRyYW5zZmVyczpleHRlcm5hbCBlbnRpdHk6cmVhZCIsImNsaWVudElkIjoiMDY1ZWNiMDgtMjQzOS00MGMwLThlMTMtMmI0M2MyMTc0M2UzIiwiY2xpZW50SG9zdCI6IjEwLjEwLjEuMTQ5Iiwic3RvbmVfc3ViamVjdF9pZCI6ImFwcGxpY2F0aW9uOjA2NWVjYjA4LTI0MzktNDBjMC04ZTEzLTJiNDNjMjE3NDNlMyIsImNsaWVudEFkZHJlc3MiOiIxMC4xMC4xLjE0OSJ9.PlAhWLgC2W10H9emucF4obcJhwR92EogMNRIWUej4z-P-p3UaStYlaYd5Bfx4hl7da4ly62K1LEBI7LOqCFkbHMlnJfglp3dFS2M3iHZ571BNSmCff3wUiFy6zoHxFaKEUPy0V8e6mCQwFuapdIvDocA4Z4xYh049dWEwbJ2uevV3V_Q-RL3me8vykNTWGiT-dmyWvFN-XAq889_F1ZQskHsLz-ZtlrFw3XjitnLvEJbg9iyxVA7AuwnexBIQS4gU9QwMXcJjij9JowYbLu4ANUITXU01Jf5hxMYq1oSobOL3-RuGWJLoPOXkJyAbOm5hS15QgSuwp_qOU8VAEa3Yg",
    "x-stone-idempotency-key": "0001"
}
  • x-stone-idempotency-key é opcional, para mais informações consulte o Overview.
Response
200 ok

Exemplo com um celular da operadora Tim:

{
    "possible_provider": {
        "name": "Tim",
        "id": 2086,
        "products": [
            {
                "value": 1000
            },
            {
                "value": 1500
            },
            {
                "value": 2000
            },
            {
                "value": 3000
            },
            {
                "value": 4000
            },
            {
                "value": 5000
            },
            {
                "value": 6000
            },
            {
                "value": 10000
            }
        ]
    },
    "other_providers": [
      {
            "name": "Claro",
            "id": 2087
        },
        {
            "name": "Claro Fixo",
            "id": 2092
        },
        {
            "name": "Correios",
            "id": 2130
        },
        {
            "name": "CTBC CEL",
            "id": 2093
        },
        {
            "name": "ALGAR FIXO",
            "id": 2091
        },
        {
            "name": "Embratel",
            "id": 2090
        },
        {
            "name": "Claro nxt",
            "id": 2098
        },
        {
            "name": "Oi",
            "id": 2089
        },
        {
            "name": "Vivo",
            "id": 2088
        }
    ]
}
Possíveis casos de erro ao listar provedores
400 - Bad Request

Caso o cliente tenha passado um número de celular inválido ou letras no lugar dos números, por exemplo.

{
  "type": "srn:error:invalid_params"
}
401 - Unauthorized

Caso o cliente não tenha realizado a autenticação.

{
    "type": "srn:error:unauthenticated"
}
403 - Forbidden

Caso o cliente não tenha permissão para listar os provedores.

{
  "type": "srn:error:forbidden"
}

2) Listar todos os valores para o provedor
GET https://sandbox-api.openbank.stone.com.br/api/v1/topups/mobile/values/{provider-id}/{cellphone}
Header request
{
    "authorization": "Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4d3NUd3BhYTRJWUZIYWV5ZFRubnRoRC1UaVlCaU9kanNmOGx6RUlMR1hVIn0.eyJqdGkiOiJiODQ0NDc4OS01ODE5LTQ4MTUtYjc1NC04MDU5NmMyYTg4MGYiLCJleHAiOjE2MTY2OTk5MjQsIm5iZiI6MCwiaWF0IjoxNjE2Njk5MDI0LCJpc3MiOiJodHRwczovL3NhbmRib3gtYWNjb3VudHMub3BlbmJhbmsuc3RvbmUuY29tLmJyL2F1dGgvcmVhbG1zL3N0b25lX2JhbmsiLCJzdWIiOiJhYzE5MGRmYy00YTBjLTQ5ODUtYmQwNi03NWE5Zjc3NjU0MTMiLCJ0eXAiOiJCZWFyZXIiLCJhenAiOiIwNjVlY2IwOC0yNDM5LTQwYzAtOGUxMy0yYjQzYzIxNzQzZTMiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiIwMjhlMjY3ZS0zMjYwLTQzNDMtODQ2ZS1hOTRkNzlmZTFjYWEiLCJhY3IiOiIxIiwic2NvcGUiOiJwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6d3JpdGUgcGF5bWVudGFjY291bnQ6Y29udGFjdDp3cml0ZSBlbnRpdHk6d3JpdGUgcGF5bWVudGFjY291bnQ6cmVhZCBwYXltZW50YWNjb3VudDp0cmFuc2ZlcnM6aW50ZXJuYWwgcGF5bWVudGFjY291bnQ6ZmVlczpyZWFkIHBheW1lbnRhY2NvdW50Omluc3RhbnRwYXltZW50IHBheW1lbnRhY2NvdW50OnBheW1lbnRzIHN0b25lX3N1YmplY3RfaWQgcGF5bWVudGFjY291bnQ6Y29udGFjdDpyZWFkIHNpZ251cDpwYXltZW50YWNjb3VudCBwYXltZW50YWNjb3VudDpib2xldG9pc3N1YW5jZSBwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6cmVhZCBwYXltZW50YWNjb3VudDpwYXlyb2xsczpyZWFkIHBheW1lbnRhY2NvdW50OnBheXJvbGxzOndyaXRlIHBheW1lbnRhY2NvdW50OnRyYW5zZmVyczpleHRlcm5hbCBlbnRpdHk6cmVhZCIsImNsaWVudElkIjoiMDY1ZWNiMDgtMjQzOS00MGMwLThlMTMtMmI0M2MyMTc0M2UzIiwiY2xpZW50SG9zdCI6IjEwLjEwLjEuMTQ5Iiwic3RvbmVfc3ViamVjdF9pZCI6ImFwcGxpY2F0aW9uOjA2NWVjYjA4LTI0MzktNDBjMC04ZTEzLTJiNDNjMjE3NDNlMyIsImNsaWVudEFkZHJlc3MiOiIxMC4xMC4xLjE0OSJ9.PlAhWLgC2W10H9emucF4obcJhwR92EogMNRIWUej4z-P-p3UaStYlaYd5Bfx4hl7da4ly62K1LEBI7LOqCFkbHMlnJfglp3dFS2M3iHZ571BNSmCff3wUiFy6zoHxFaKEUPy0V8e6mCQwFuapdIvDocA4Z4xYh049dWEwbJ2uevV3V_Q-RL3me8vykNTWGiT-dmyWvFN-XAq889_F1ZQskHsLz-ZtlrFw3XjitnLvEJbg9iyxVA7AuwnexBIQS4gU9QwMXcJjij9JowYbLu4ANUITXU01Jf5hxMYq1oSobOL3-RuGWJLoPOXkJyAbOm5hS15QgSuwp_qOU8VAEa3Yg",
    "x-stone-idempotency-key": "0001"
}
  • x-stone-idempotency-key é opcional, para mais informações consulte o Overview.
Response
200 ok

Exemplo com um celular da operadora Tim:

{
    "product": [
        {
            "value": 1000
        },
        {
            "value": 1500
        },
        {
            "value": 2000
        },
        {
            "value": 3000
        },
        {
            "value": 4000
        },
        {
            "value": 5000
        },
        {
            "value": 6000
        },
        {
            "value": 10000
        }
    ]
}
Possíveis casos de erro ao listar valores para o provedor
400 - Bad Request

Caso o cliente tenha passado um número de celular inválido ou letras no lugar dos números, por exemplo.

{
  "type": "srn:error:invalid_params"
}
401 - Unauthorized

Caso o cliente não tenha realizado a autenticação.

{
    "type": "srn:error:unauthenticated"
}
403 - Forbidden

Caso o cliente não tenha permissão para listar os valores para o provedor.

{
  "type": "srn:error:forbidden"
}

3) Simular uma recarga de Celular
POST https://sandbox-api.openbank.stone.com.br/api/v1/topups/mobile/dry-run
Header request
{
    "authorization": "Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4d3NUd3BhYTRJWUZIYWV5ZFRubnRoRC1UaVlCaU9kanNmOGx6RUlMR1hVIn0.eyJqdGkiOiJiODQ0NDc4OS01ODE5LTQ4MTUtYjc1NC04MDU5NmMyYTg4MGYiLCJleHAiOjE2MTY2OTk5MjQsIm5iZiI6MCwiaWF0IjoxNjE2Njk5MDI0LCJpc3MiOiJodHRwczovL3NhbmRib3gtYWNjb3VudHMub3BlbmJhbmsuc3RvbmUuY29tLmJyL2F1dGgvcmVhbG1zL3N0b25lX2JhbmsiLCJzdWIiOiJhYzE5MGRmYy00YTBjLTQ5ODUtYmQwNi03NWE5Zjc3NjU0MTMiLCJ0eXAiOiJCZWFyZXIiLCJhenAiOiIwNjVlY2IwOC0yNDM5LTQwYzAtOGUxMy0yYjQzYzIxNzQzZTMiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiIwMjhlMjY3ZS0zMjYwLTQzNDMtODQ2ZS1hOTRkNzlmZTFjYWEiLCJhY3IiOiIxIiwic2NvcGUiOiJwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6d3JpdGUgcGF5bWVudGFjY291bnQ6Y29udGFjdDp3cml0ZSBlbnRpdHk6d3JpdGUgcGF5bWVudGFjY291bnQ6cmVhZCBwYXltZW50YWNjb3VudDp0cmFuc2ZlcnM6aW50ZXJuYWwgcGF5bWVudGFjY291bnQ6ZmVlczpyZWFkIHBheW1lbnRhY2NvdW50Omluc3RhbnRwYXltZW50IHBheW1lbnRhY2NvdW50OnBheW1lbnRzIHN0b25lX3N1YmplY3RfaWQgcGF5bWVudGFjY291bnQ6Y29udGFjdDpyZWFkIHNpZ251cDpwYXltZW50YWNjb3VudCBwYXltZW50YWNjb3VudDpib2xldG9pc3N1YW5jZSBwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6cmVhZCBwYXltZW50YWNjb3VudDpwYXlyb2xsczpyZWFkIHBheW1lbnRhY2NvdW50OnBheXJvbGxzOndyaXRlIHBheW1lbnRhY2NvdW50OnRyYW5zZmVyczpleHRlcm5hbCBlbnRpdHk6cmVhZCIsImNsaWVudElkIjoiMDY1ZWNiMDgtMjQzOS00MGMwLThlMTMtMmI0M2MyMTc0M2UzIiwiY2xpZW50SG9zdCI6IjEwLjEwLjEuMTQ5Iiwic3RvbmVfc3ViamVjdF9pZCI6ImFwcGxpY2F0aW9uOjA2NWVjYjA4LTI0MzktNDBjMC04ZTEzLTJiNDNjMjE3NDNlMyIsImNsaWVudEFkZHJlc3MiOiIxMC4xMC4xLjE0OSJ9.PlAhWLgC2W10H9emucF4obcJhwR92EogMNRIWUej4z-P-p3UaStYlaYd5Bfx4hl7da4ly62K1LEBI7LOqCFkbHMlnJfglp3dFS2M3iHZ571BNSmCff3wUiFy6zoHxFaKEUPy0V8e6mCQwFuapdIvDocA4Z4xYh049dWEwbJ2uevV3V_Q-RL3me8vykNTWGiT-dmyWvFN-XAq889_F1ZQskHsLz-ZtlrFw3XjitnLvEJbg9iyxVA7AuwnexBIQS4gU9QwMXcJjij9JowYbLu4ANUITXU01Jf5hxMYq1oSobOL3-RuGWJLoPOXkJyAbOm5hS15QgSuwp_qOU8VAEa3Yg",
    "x-stone-idempotency-key": "0001"
}
  • x-stone-idempotency-key é opcional, para mais informações consulte o Overview.
Body Request
{
  "account_id": "e4043bb5-542b-46f6-bcbc-0e63d37e1c47",
  "amount": 1000,
  "cellphone": "21971592768",
  "provider_id": "2086"
}
Response
202 Accepted
{
    "amount": 1000,
    "account_id": "e4043bb5-542b-46f6-bcbc-0e63d37e1c47",
    "provider_id": "2086",
    "cellphone": "21971592768"
}
Possíveis casos de erro ao simular recarga
400 - Bad Request

Caso o cliente tenha passado um valor de recarga inválido:

{
   "type": "srn:error:invalid_amount",
   "title": "Given amount is less than or equal to zero"
}

Caso o cliente tenha passado um número de celular inválido ou letras no lugar dos números, por exemplo.

{
  "type": "srn:error:invalid_params"
}

Caso o cliente não tenha saldo suficiente para realizar a transação:

{
    "type": "srn:error:not_enough_funds"
}
401 - Unauthorized

Caso o cliente não tenha realizado a autenticação.

{
    "type": "srn:error:unauthenticated"
}
403 - Forbidden

Caso o cliente não tenha permissão para realizar a simulação de recarga.

{
  "type": "srn:error:forbidden"
}

4) Executar uma recarga de Celular
POST https://sandbox-api.openbank.stone.com.br/api/v1/topups/mobile
Header request
{
    "authorization": "Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4d3NUd3BhYTRJWUZIYWV5ZFRubnRoRC1UaVlCaU9kanNmOGx6RUlMR1hVIn0.eyJqdGkiOiJiODQ0NDc4OS01ODE5LTQ4MTUtYjc1NC04MDU5NmMyYTg4MGYiLCJleHAiOjE2MTY2OTk5MjQsIm5iZiI6MCwiaWF0IjoxNjE2Njk5MDI0LCJpc3MiOiJodHRwczovL3NhbmRib3gtYWNjb3VudHMub3BlbmJhbmsuc3RvbmUuY29tLmJyL2F1dGgvcmVhbG1zL3N0b25lX2JhbmsiLCJzdWIiOiJhYzE5MGRmYy00YTBjLTQ5ODUtYmQwNi03NWE5Zjc3NjU0MTMiLCJ0eXAiOiJCZWFyZXIiLCJhenAiOiIwNjVlY2IwOC0yNDM5LTQwYzAtOGUxMy0yYjQzYzIxNzQzZTMiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiIwMjhlMjY3ZS0zMjYwLTQzNDMtODQ2ZS1hOTRkNzlmZTFjYWEiLCJhY3IiOiIxIiwic2NvcGUiOiJwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6d3JpdGUgcGF5bWVudGFjY291bnQ6Y29udGFjdDp3cml0ZSBlbnRpdHk6d3JpdGUgcGF5bWVudGFjY291bnQ6cmVhZCBwYXltZW50YWNjb3VudDp0cmFuc2ZlcnM6aW50ZXJuYWwgcGF5bWVudGFjY291bnQ6ZmVlczpyZWFkIHBheW1lbnRhY2NvdW50Omluc3RhbnRwYXltZW50IHBheW1lbnRhY2NvdW50OnBheW1lbnRzIHN0b25lX3N1YmplY3RfaWQgcGF5bWVudGFjY291bnQ6Y29udGFjdDpyZWFkIHNpZ251cDpwYXltZW50YWNjb3VudCBwYXltZW50YWNjb3VudDpib2xldG9pc3N1YW5jZSBwYXltZW50YWNjb3VudDpwYXltZW50bGlua3M6cmVhZCBwYXltZW50YWNjb3VudDpwYXlyb2xsczpyZWFkIHBheW1lbnRhY2NvdW50OnBheXJvbGxzOndyaXRlIHBheW1lbnRhY2NvdW50OnRyYW5zZmVyczpleHRlcm5hbCBlbnRpdHk6cmVhZCIsImNsaWVudElkIjoiMDY1ZWNiMDgtMjQzOS00MGMwLThlMTMtMmI0M2MyMTc0M2UzIiwiY2xpZW50SG9zdCI6IjEwLjEwLjEuMTQ5Iiwic3RvbmVfc3ViamVjdF9pZCI6ImFwcGxpY2F0aW9uOjA2NWVjYjA4LTI0MzktNDBjMC04ZTEzLTJiNDNjMjE3NDNlMyIsImNsaWVudEFkZHJlc3MiOiIxMC4xMC4xLjE0OSJ9.PlAhWLgC2W10H9emucF4obcJhwR92EogMNRIWUej4z-P-p3UaStYlaYd5Bfx4hl7da4ly62K1LEBI7LOqCFkbHMlnJfglp3dFS2M3iHZ571BNSmCff3wUiFy6zoHxFaKEUPy0V8e6mCQwFuapdIvDocA4Z4xYh049dWEwbJ2uevV3V_Q-RL3me8vykNTWGiT-dmyWvFN-XAq889_F1ZQskHsLz-ZtlrFw3XjitnLvEJbg9iyxVA7AuwnexBIQS4gU9QwMXcJjij9JowYbLu4ANUITXU01Jf5hxMYq1oSobOL3-RuGWJLoPOXkJyAbOm5hS15QgSuwp_qOU8VAEa3Yg",
    "x-stone-idempotency-key": "0001",
    "x-stone-challenge-solution": "81080d67-aac9-415b-868f-4403243201d3"
}
  • x-stone-idempotency-key é opcional, para mais informações consulte o Overview.
  • x-stone-challenge-solution é obrigatório, clique aqui para ter acesso ao fluxo de autorização do challenge
Body Request
{
  "account_id": "e4043bb5-542b-46f6-bcbc-0e63d37e1c47",
  "amount": 1000,
  "cellphone": "21971592768",
  "provider_id": "2086"
}
Response
200 ok
{
    "id": "d909dee9-a834-4d35-926f-7939890e9b17",
    "receipt": "          PROTOCOLO 0006450144\n1          01/04/2021        17:37\nTERM 228005 AGENTE 228005 AUTE 05430\n----------------------------------------\nAUTO 975886                     RECARGA\n\nPRODUTO: CLARO\nTELEFONE:  11 941497981\nNSU OPERADORA: 610761\nDATA:  01/04/2021 17:37\nVALOR: R$  10,00\n\nVIVO TURBO: INTERNET + LIGACOES E SMS\nILIMITADOS PARA VIVO (CEL E FIXO, USANDO\nO 15)APENAS R$9,99 POR SEMANA. LIGUE\n*9003 E CADASTRE SE!\n----------------------------------------\n\n",
    "transaction_id": "aeac8eea-ebac-45c5-b429-5a3781b949ce"
}
Possíveis casos de erro ao realizar recarga
400 - Bad Request

Caso o cliente tenha passado um valor de recarga inválido:

{
  "type": "srn:error:invalid_amount",
  "title": "Given amount is less than or equal to zero"
}

Caso o cliente tenha passado um número de celular inválido ou letras no lugar dos números, por exemplo.

{
  "type": "srn:error:invalid_params"
}

Caso o cliente não tenha saldo suficiente para realizar a transação:

{
  "type": "srn:error:not_enough_funds"
}
401 - Unauthorized

Caso o cliente não tenha realizado a autenticação.

{
    "type": "srn:error:unauthenticated"
}
403 - Forbidden

Caso o cliente não tenha permissão para realizar a recarga.

{
  "type": "srn:error:forbidden"
}



Última modificação: 06.04.2021