MACTOPUP
  • introduction
  • Introduction
  • authentification
    • Compte
    • Token
      • Créer Un Compte
      • Se Connecter
  • Intégration API Airtime
    • API Détecteur Opérateur
    • API Recharge Crédit
  • Intégration API Data Bundles
    • API Opérateur Eligible Data
    • API Recharge Data Bundles
  • Guide d'intégration Airtime
    • Guide d'intégration
  • Commande Curl Airtime
    • Détecter l'opérateur
    • Recharger Crédit
  • conclusion
    • conclusion
Powered by GitBook
On this page
  1. Intégration API Data Bundles

API Opérateur Eligible Data

API permettant d'identifier les opérateurs mobiles fournissant le forfait internet.

L' API est appelée par l'url "https://mactopup.com/api/data_bundles_operator" stocké dans la variable $base_url

Cette API permet de détecter les opérateurs réseaux qui offrent des services internet en local et à l'international.

```php
<?php

$base_url  = "https://mactopup.com/api/data_bundles_operator";


$fields = array(
    
    "phone" => "44xxxxxxxx", // à remplacer par le numero de téléphone
    "isocode" => "GB", // à remplacer par l'iso code de votre pays
    "token" => "MACTOPUP_xxxxxxxxxxxxxxxxx", // à remplacer par votre token
    
);

$curl_options = array(
    CURLOPT_URL => $base_url,
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => http_build_query( $fields ),
    CURLOPT_HTTP_VERSION => 1.0,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HEADER => false
);

$curl = curl_init();
curl_setopt_array( $curl, $curl_options );
$result = curl_exec( $curl );

curl_close( $curl );
$response = json_decode($result);

echo "<pre>";
var_dump($response);
echo "</pre>";

?>
```

Remplacez les valeurs des champ "phone", "isocode" et "token" dans le tableau $fields par les informations spécifiques à votre cas.

L'API retourne des résultats en fonction du statut d'éligibilité des opérateurs dans le cadre d'activation forfait internet de l'opérateur.

En effet, deux différentes réponses API sont retournées avec le statut 200 dans le :

Case1: L'opérateur ne fournit pas de forfait internet international mais suggère la recharge temps d'antenne.

Case2: L'operateur fournit de forfait internet.

Vous pouvez facilement identifier ces opérateurs réseaux après la réponse API avec l'attribut provide_data_bundles qui devient True si l'operateur est éligible forfait internet ou False pour le cas contraire.

Réponse API Case 1: Status Success (200)

{"success":

{

"operatorId":,

"provide_data_bundles": False,

"suggested_topup": "Airtime",

"name":"EE PIN England",

"name_iso":"GB",

"pays":"England",

"network_logo_url":"https:\/\/s3.amazonaws.com\/rld-operator\/d6a80dc7-f243-47e3-9aa3-3add62238a69-size-2.png",

"min_price":330,

"max_price":50600,

"Fixed_price":[],

"currency":"XOF",

"fees_transaction_percent":"0.015"

}

}

Réponse API Case 2: Status Success (200)

{"success":

{

"operatorId":496,

"provide_data_bundles": True,

"Topup_in_progress": "Data_bundles",

"name":"DTAC Thailand",

"name_iso":"TH",

"pays":"Thailand",

"network_logo_url":"https://s3.amazonaws.com/rld-operator/e3dc3be2-07bc-422d-8e0b-27ff9e1d6829-size-1.png",

 "data_bundles_packages": {
        "data1": {
            "amount": 5137,79,
            "plan_data_bundles": "15 GB Max Speed",
            "date_expiration": "8 days"
        },
        "data2": {
            "amount": 10292,75,
            "plan_data_bundles": "30 GB Max Speed",
            "date_expiration": "15 days"
        },
        "data3": {
            "amount": 24692,63,
            "plan_data_bundles": "75 GB Max Speed",
            "date_expiration": "15 days"
        },
        
        ....
    },

"currency":"XOF",

"fees_transaction_percent":"0.016"

}

}

Remarque: Ces réponses API ne sont pas retournées simultanément, vous obtenez l'un ou l'autre selon l'opérateur réseau et ses offres.

Quelques erreurs

TOKEN_IS_REQUIRED

Cette erreur est retournée avec le status 422 lorsque la requête est formulée avec le champ token vide

INVALID_ACCOUNT ou SUSPENDED_ACCOUNT

Cette erreur es associé au status code 403

Votre compte est invalide ou inactif en cas d'inactivité pendant une longue période.

ERROR_ACCOUNT_DISABLED

Status code : 403

Une erreur interne au serveur ou une maintenance

PHONE_NUMBER_REQUIRED ou COUNTRY_CODE_REQUIRED

Status code: 400

Ces erreurs indiquent spécifiquement que vous envoyez au serveur une requête avec le champ numéro de téléphone vide ou le champ Iso code pays est vide.

TOKEN_INVALID

Status code: 401

Cette erreur s'affiche lorsque votre token ne correspond pas simplement à celui généré dans votre tableau de bord.

NOT_ELIGIBLE

Staus code: 422

Cette signifie que l'opérateur réseau associé au numéro mobile entré ne propose pas de forfait ni de airtime à travers cet API

OPERATOR_NOT_IN_SERVICE

Status code: 422

Cela veut dire que l'opérateur n'est en service actuellement, ça peut être du à une opération de maintenance initié par l'operateur concerné.

OPERATOR_UNAVAILABLE_OR_CURRENTLY

Status code: 422

L'opérateur ne fais pas parti de notre service réseau.

COULD_NOT_AUTO_DETECT_OPERATOR

Status code : 422

Cette erreur indique que le système n'arrive pas à détecter votre opérateur. Cela arrive généralement quand un numéro est mal formaté ou quand vous entrer le numéro d'une ligne fixe.

INTERNAL_ERROR_UNABLE_TO_DETECT

Status code: 500

Une erreur interne du serveur, la détection de l'opérateur a échoué

METHOD_NOT_ALLOWED

Code erreur : 405

Cette erreur survient lorsque vous essayez d'accéder à l'API directement via le lien: https://mactopup.com/api/data_bundles_operator sans soumettre une requête POST

PreviousAPI Recharge CréditNextAPI Recharge Data Bundles

Last updated 1 year ago