AMS
AMS Topup API DocsBD Region V2.5
Base URL:https://fftopupapi.shop/api
HomeSign In
Server:
BD (Bangladesh - UniPin Automation)
High-Speed Engine (2–5s)|Uptime: 99.98%
API NavigationV2.5
Overview
Gateway
UniPin TopUp (BD)
UPBD / BDMB
UniPin Voucher Check
Status/History
Player Check (UID)
FREE 100%
Authentication
API Keys
Credits & /status
Quota
Callbacks & Webhooks
Async
Error Codes
Zero-Loss
Key Notes & Rules
Important
Reseller Automation

Execute instant UniPin voucher top-ups (UPBD & BDMB) with high concurrency, rate-limit protection, and zero quota loss on errors.

Go to Dashboard
BANGLADESH (BD) FREE FIRE APISTEALTH ENGINE READY (2–5s)

BD UniPin Automation Gateway

High-speed programmatic gateway for Free Fire top-ups in Bangladesh. Supports instant UniPin Vouchers (BDMB / UPBD) with batch execution, Automatic format detection, and 100% Free Live Player UID lookup.

Execution Speed
2–5 Seconds Execution
Direct engine automation
Voucher Auto-Detect
UPBD & BDMB Supported
Zero manual denomination config
Zero Quota Loss
100% Quota Protected
0 Hits Deducted on Any Error

UniPin TopUp (BD Server)

Redeem BD UniPin physical vouchers and digital codes (BDMB / UPBD) directly into BD region player accounts.

POST /api/topup
BD Region Only Requirement:UniPin codes (BDMB and UPBD) can strictly only be redeemed on Free Fire accounts located in the Bangladesh region. Attempting to top-up accounts registered in other regions will return ONLY_FOR_BD_REGION without consuming your voucher.
POST/api/topup1 Hit Deducted on Success

Request Body Parameters (JSON)

FieldTypeRequiredDescription & Example
playerid (or uid)stringYesTarget Free Fire player UID (e.g. "5162333961").
code (or voucherCode)string | arrayYesUniPin voucher code(s). Supports up to 5 codes comma-separated (e.g. "BDMB-01...,BDMB-02...") or an array of strings. Auto-detects package denomination.
orderidstringOptionalYour unique order reference for idempotency and tracking (e.g. "ORDER-10029").
UniPin TopUp Example:
curl -X POST "https://fftopupapi.shop/api/topup" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY_HERE" \
  -d '{
    "orderid": "test-001",
    "playerid": "5162333961",
    "code": "BDMB-T-S-00123456,BDMB-T-S-00123457"
  }'

UniPin Voucher Status & History Check

Check if a voucher has been consumed, verify its denomination, and retrieve its exact redemption timestamp if processed through the gateway.

POST /api/unipin/check (0 QUOTA)
Request Payload (JSON)
{
  "code": "BDMB-T-S-00123456"
}
Status Response (200 OK)
{
  "success": true,
  "status": "VALID",
  "isConsumed": false,
  "code": "BDMB-T-S-00123456",
  "voucherType": "BDMB (UniPin Mobile)",
  "denomination": "115 Diamonds",
  "estimatedDiamonds": 115,
  "redeemedAt": null,
  "redeemedByUid": null,
  "message": "Voucher is valid and ready for top-up redemption."
}

Player Check / UID Lookup

Query live Free Fire game servers to retrieve the real in-game player name and region prior to taking client money.

100% FREE (0 QUOTA)
POST/api/validate-uidorGET/api/validate-uid?uid=...or/api/uid-check?uid=...
Request Payload (JSON)
{
  "uid": "5162333961"
}
Success Response (200 OK)
{
  "success": true,
  "valid": true,
  "data": {
    "uid": "5162333961",
    "playerName": "🔥_ProShooter_BD_🔥",
    "region": "BD",
    "status": "ACTIVE_PLAYER"
  }
}

Authentication (ALL SERVERS)

Secure programmatic access via API keys.

Method 1: Custom Header (Recommended)
X-API-Key: YOUR_API_KEY
Method 2: Bearer Token
Authorization: Bearer YOUR_API_KEY
Method 3: Query Param
?apiKey=YOUR_API_KEY

Credits & /status (Quota Inquiries)

Check your live remaining quota balance, plan tier, and active concurrency limits.

GET /api/user/status
Status Response (200 OK)
{
  "status": "success",
  "keyName": "Primary Reseller Bot",
  "remainingHits": 14920,
  "totalHits": 20000,
  "rateLimitRps": 10,
  "activePlan": "ENTERPRISE_VIP",
  "expiresAt": "2027-01-01T00:00:00.000Z",
  "uptime": "99.98%"
}

Error Codes & Quota Protection Rules

Strict Zero-Loss Quota Guarantee: Quota hits are deducted ONLY upon confirmed success on UniPin gateways. Zero hits are charged for network drops, invalid UIDs, or wrong regions.

StatusError ReasonEndpointQuota CostExplanation & Recommended Action
200 OKSUCCESSAll1 Hit (Topup) / 0 (Check)Transaction completed and diamonds delivered successfully.
400 Bad RequestCONSUMED_VOUCHER/api/topup0 Hits*Voucher already used/redeemed earlier. *Anti-abuse rule: 1 penalty hit per 2 invalid/consumed attempts.
400 Bad RequestINVALID_VOUCHER/api/topup0 Hits*Voucher serial or PIN is malformed, too short, or incorrect format (Invalid or missing digits).
400 Bad RequestONLY_FOR_BD_REGIONAll0 HitsTarget Free Fire account is registered outside Bangladesh (UniPin BD vouchers strictly require BD server).
404 Not FoundPLAYER_NOT_FOUND/api/validate-uid, /api/uid-check0 HitsAccount does not exist on Garena Free Fire servers (Invalid Player UID).
400 Bad RequestINVALID_UID / MISSING_UIDAll0 HitsUID parameter is empty or length is not between 8 to 12 numeric digits.
401 UnauthorizedINVALID_API_KEYAll0 HitsX-API-Key header is missing, incorrect, or key was revoked from dashboard.
403 ForbiddenKEY_SUSPENDED / KEY_EXPIREDAll0 HitsAPI Key has reached its expiry date or status was manually suspended by reseller/admin.
403 ForbiddenIP_NOT_WHITELISTEDAll0 HitsCaller server IP address is not included in the API Key IP whitelist security policy.
429 Rate LimitQUOTA_EXHAUSTEDAll0 HitsAssigned quota balance reached 0 hits. Recharge quota from reseller/admin panel.
429 Rate LimitRATE_LIMIT_EXCEEDEDAll0 HitsRequests exceeded configured RPS threshold (max 5-10 req/sec). Implement exponential backoff.
500 Server ErrorSERVER_ERRORAll0 HitsDatabase connection drop or server exception. Quota is protected; safely retry.
502 / 400 Bad GatewayWORKER_ERROR/api/topup0 HitsUniPin/Garena payment gateway timeout. Auto-alert sent to admin; Zero-Loss quota guarantee active.

Developer Integration: JSON Error Responses

Click an error reason below to view the exact JSON payload returned by the API:

// HTTP 400 Bad Request
// Scenario: UniPin voucher code was already used earlier
{
  "success": false,
  "errorReason": "CONSUMED_VOUCHER",
  "message": "UniPin Voucher is ALREADY USED / CONSUMED (This voucher was previously redeemed).",
  "quotaDeducted": false,
  "remainingHits": 150,
  "penaltyApplied": "1 hit penalty deducted for every 2 used or invalid vouchers."
}

How to Handle Errors in Your Website / App (JavaScript Example):

const res = await fetch('https://fftopupapi.shop/api/topup', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json', 'X-API-Key': 'YOUR_KEY' },
  body: JSON.stringify({ uid: '1234567890', voucherCode: 'BDMB-1-S-12345678 1234-5678-9012' })
});

const data = await res.json();

if (!data.success) {
  // Handle specific errors easily using data.errorReason:
  switch (data.errorReason) {
    case 'CONSUMED_VOUCHER':
      alert('Voucher was already redeemed! Please provide a fresh voucher.');
      break;
    case 'INVALID_VOUCHER':
      alert('Invalid voucher code. Please verify the serial and PIN digits.');
      break;
    case 'ONLY_FOR_BD_REGION':
      alert('Target Free Fire account is not registered in Bangladesh.');
      break;
    case 'PLAYER_NOT_FOUND':
      alert('Player UID was not found on Free Fire servers.');
      break;
    case 'QUOTA_EXHAUSTED':
      alert('API quota exhausted! Please contact admin to recharge.');
      break;
    default:
      alert(data.message || 'Top-up failed, please try again.');
  }
}

Key Notes & Integration Guidelines

Crucial rules and recommendations modeled after ucbot.net documentation notes.

1. UniPin Batch Execution (Max 5)

You can pass up to 5 UniPin codes in a single request, comma-separated (e.g. "code": "BDMB1,BDMB2"). Any invalid or used codes will fail individually without failing the entire order.

2. Voucher Formats Supported

Our platform automatically detects and processes both BDMB (UniPin Mobile) and UPBD voucher serials and PINs instantly with zero manual configuration.

3. HTTP Timeout Settings (30 Seconds)

Our stealth automation engine performs real-time browser interaction with UniPin gateways in 2–5 seconds. Set your client HTTP request timeout to at least 30 seconds to avoid premature dropoffs.

4. Idempotency with orderid

Always generate and transmit a unique orderid with every top-up request. If a network disruption occurs, retrying the identical orderid prevents double-charging or duplicate voucher redemption.