Docs

# Recharge

This endpoint allows you to initiate one or more prepaid credit top-ups in a single request.

It supports optional webhook integration for asynchronous status updates, as well as passthrough metadata to help you track and match recharge operations with your internal systems.

# Send a Request

To initiate credit top-ups, send a POST request to the /v1/recharge endpoint.

Required parameters:

Parameter Required? Type Description
webhook_name no string Use this parameter if multiple webhooks were configured for your account during onboarding.
passthrough no object An object containing custom data. This is sent back in the webhook response and can be used for internal tracking.
recharges yes array An array of recharge instructions. Each entry must include:
└ phone_number yes string The recipient's phone number in an accepted format.
└ amount yes integer The amount of credit to top up.
└ fast_recharge no boolean If set to true, the system will prioritize faster processing.

# Code Samples

# Staging

curl -X POST "https://api-staging.reincarcareprepay.ro/v1/recharge" \
     -H "X-Authorization: [STAGING_API_KEY]" \
     -H "Content-Type: application/json" \
     -d '{
          "recharges": [
            {
              "phone_number": "40756859285",
              "amount": 5
            }
          ],
          "passthrough": {
            "document_id": "e777c61f-5deb-418d-8117-3934b8e19ad3"
          },
          "fast_recharge": false
         }'
try {
    const res = await fetch("https://api-staging.reincarcareprepay.ro/v1/recharge", {
        method: "POST",
        headers: {
            "X-Authorization": "[STAGING_API_KEY]",
            "Content-Type": "application/json"
        },
        body: JSON.stringify({
            recharges: [
                {
                    phone_number: "40756859285",
                    amount: 5
                }
            ],
            passthrough: {
                document_id: "e777c61f-5deb-418d-8117-3934b8e19ad3"
            },
            fast_recharge: false
        })
    })
    const json = await res.json()
    console.log(json)
} catch(err) {
    console.log(err)
}
<?php

$url = "https://api-staging.reincarcareprepay.ro/v1/recharge";
$apiKey = "[STAGING_API_KEY]";

$data = [
    "recharges" => [
        [
            "phone_number" => "40756859285",
            "amount" => 5
        ]
    ],
    "passthrough" => [
        "document_id" => "e777c61f-5deb-418d-8117-3934b8e19ad3"
    ],
    "fast_recharge" => false
];

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "X-Authorization: $apiKey",
    "Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

$response = curl_exec($ch);
curl_close($ch);

echo $response;

# Production

curl -X POST "https://api.reincarcareprepay.ro/v1/recharge" \
     -H "X-Authorization: [PROD_API_KEY]" \
     -H "Content-Type: application/json" \
     -d '{
          "recharges": [
            {
              "phone_number": "40756859285",
              "amount": 5
            }
          ],
          "passthrough": {
            "document_id": "e777c61f-5deb-418d-8117-3934b8e19ad3"
          },
          "fast_recharge": false
         }'
try {
    const res = await fetch("https://api.reincarcareprepay.ro/v1/recharge", {
        method: "POST",
        headers: {
            "X-Authorization": "[PROD_API_KEY]",
            "Content-Type": "application/json"
        },
        body: JSON.stringify({
            recharges: [
                {
                    phone_number: "40756859285",
                    amount: 5
                }
            ],
            passthrough: {
                document_id: "e777c61f-5deb-418d-8117-3934b8e19ad3"
            },
            fast_recharge: false
        })
    })
    const json = await res.json()
    console.log(json)
} catch(err) {
    console.log(err)
}
<?php

$url = "https://api.reincarcareprepay.ro/v1/recharge";
$apiKey = "[PROD_API_KEY]";

$data = [
    "recharges" => [
        [
            "phone_number" => "40756859285",
            "amount" => 5
        ]
    ],
    "passthrough" => [
        "document_id" => "e777c61f-5deb-418d-8117-3934b8e19ad3"
    ],
    "fast_recharge" => false
];

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "X-Authorization: $apiKey",
    "Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

$response = curl_exec($ch);
curl_close($ch);

echo $response;

# Response

On success, the endpoint returns:

{
  "success": true,
  "fastRecharge": false,
  "message": "Recharge orders registered.",
  "balanceDeduction": "5",
  "currency": "EUR",
  "summary": [
    {
      "arrayPosition": 0,
      "amount": 5,
      "phoneNumber": "40756859285",
      "rechargeId": "66287695-0894-43c7-a6e0-a4ac095fc996"
    }
  ]
}