AccKit Reseller API v1

Automate purchasing and reselling AccKit stock from your own shop or software.

Base URL: https://acckit.com/api/v1
Format: JSON  ·  Currency: USD  ·  Auth: api_key

Every response is JSON. Failures return {"status": false, "msg": "..."}.

Your API key

Every account gets a personal key automatically at registration. Log in to see yours right here, or open Account page → section API. No account yet? Register free.

1. Authentication

All actions on your account (balance, buy, orders) require your personal api_key, sent as a request parameter. Get or regenerate it on your Account page. Keep it secret — anyone with the key can spend your balance.

Balance model: top up your wallet on the site (USD). Each purchase deducts price × quantity from your balance. Check it anytime via /balance.

2. Endpoints

GET /categories

List all visible categories and their products (id, name, price, stock). Public — no key needed.

curl "https://acckit.com/api/v1/categories"

Language (optional). Product names and descriptions come back in the language you picked on your API settings page — just add your api_key so we know it is you. The response shape is exactly the same either way: same fields, same order, same types. Leave it out and you get the site default.

curl "https://acckit.com/api/v1/categories?api_key=YOUR_API_KEY"

GET /category/{id}

List the products inside one category. Public. Accepts the same optional api_key for language.

curl "https://acckit.com/api/v1/category/211?api_key=YOUR_API_KEY"

POST /balance

ParamTypeRequiredDescription
api_keystringyesYour API key
curl -X POST "https://acckit.com/api/v1/balance" \
  -d "api_key=YOUR_API_KEY"

# → {"status": true, "balance": 125.50}

POST /buy

Purchase products. Balance is checked and deducted automatically; delivery is instant.

ParamTypeRequiredDescription
api_keystringyesYour API key
id_productnumberyesProduct/category id (from /categories)
quantitynumberyesHow many to buy
curl -X POST "https://acckit.com/api/v1/buy" \
  -d "api_key=YOUR_API_KEY" -d "id_product=211" -d "quantity=2"

# → {"status": true, "order_id": 12345, "data": { ...order... }}
# Then fetch the delivered accounts with /order below.

On failure you get e.g. {"status": false, "msg": "Insufficient balance!"} or "Quantity exceeds available stock".

POST /order

Get one order's detail and the delivered accounts.

ParamTypeRequiredDescription
api_keystringyesYour API key
order_idnumberyesReturned by /buy
curl -X POST "https://acckit.com/api/v1/order" \
  -d "api_key=YOUR_API_KEY" -d "order_id=12345"

# → {
#   "id": 12345, "quantity": 2, "price": 1.62, "total_price": 3.24,
#   "type": "ACC RECEIVES PAGE BM", "created_at": "...",
#   "data": [ {"uid": "...", "full_info": "uid|pass|2fa|mail|...", "link_backup": "..."}, ... ]
# }

POST /orders

Your order history (paginated, 10 per page — add ?page=2).

curl -X POST "https://acckit.com/api/v1/orders" -d "api_key=YOUR_API_KEY"

POST /import admin/supplier only

Add or update a stock line for a product. Requires an admin api_key.

ParamTypeRequiredDescription
api_keystringyesAdmin API key
id_productnumberyesProduct/category id
textstringyesAccount line, e.g. uid|pass|2fa|mail|...

3. OTP — rent a phone number, receive the SMS code

Base: https://acckit.com/api/v1/otp  ·  Currency: VND (integer)  ·  Rate limit: 240 req/min per api_key

Auth: the same api_key at the top of this page — nothing extra to set up. Rent a real number in 190+ countries and read its SMS verification code. You pay when a number is issued; if no SMS arrives within the hold time (15 min normal server · 20 min VIP) the order auto-refunds 100% to your wallet. One number receives one code.

Flow: /servers → pick a row → /buy with that row's operator + provider → poll /check every 3–5 s until status is RECEIVED (code arrived) or REFUNDED (no SMS — money back).

GET /otp/countries

All available countries. Public — no key needed.

curl "https://acckit.com/api/v1/otp/countries"

# → {"status":true,"data":[{"country":"philippines","name":"Philippines","prefix":"+63","iso":"ph"}, ...]}

GET /otp/services

Services available in one country, with the cheapest price and total stock. Public.

curl "https://acckit.com/api/v1/otp/services?country=philippines"

# → {"status":true,"data":[{"service":"facebook","price_from":3200,"qty":143,"vip":true}, ...]}

GET /otp/servers

Every server selling country + service, cheapest first. Public. tier: vip = higher delivery rate, longer hold. rate (when present) = provider success statistic.

curl "https://acckit.com/api/v1/otp/servers?country=philippines&service=facebook"

# → {"status":true,"data":[
#      {"operator":"virtual21","provider":"fivesim","tier":"normal","hold":15,"price":3200,"qty":93,"rate":92.5},
#      {"operator":"any","provider":"herosms","tier":"vip","hold":20,"price":5400,"qty":50} ]}

POST /otp/buy

Charges your wallet and issues a number. Price is taken from the server row — nothing you send can change it.

ParamTypeRequiredDescription
api_keystringyesYour API key
countrystringyesFrom /otp/countries
servicestringyesFrom /otp/services
operatorstringyesFrom the chosen /otp/servers row
providerstringyesSame row (fivesim / herosms)
curl -X POST "https://acckit.com/api/v1/otp/buy" \
  -d "api_key=YOUR_API_KEY" -d "country=philippines" -d "service=facebook" \
  -d "operator=virtual21" -d "provider=fivesim"

# → {"status":true,"order":{"id":214,"phone":"+639xxxxxxxxx","status":"WAITING","code":null,"text":null,
#     "product":"facebook","country":"philippines","operator":"virtual21","price":3200,
#     "expires_at":"18:45:00 15/08/2026","expires_ts":1765791900,"expires_at_iso":"2026-08-15T18:45:00+07:00",
#     "vip":false,"hold":15}}

Failures: {"status":false,"msg":"Số dư không đủ!"} (top up), or "sold_out":true — that country/service just ran out; you were refunded, pick another.

GET /otp/check

Poll the order until done. Params: api_key, id (also works as POST).

curl "https://acckit.com/api/v1/otp/check?api_key=YOUR_API_KEY&id=214"

# code arrived →
# {"status":true,"order":{"id":214,"status":"RECEIVED","code":"384729","text":"384729 is your Facebook code", ...}}

POST /otp/cancel

Cancel before a code arrives → number released, money refunded. Orders that already received a code cannot be cancelled. Params: api_key, id.

POST /otp/balance

curl -X POST "https://acckit.com/api/v1/otp/balance" -d "api_key=YOUR_API_KEY"

# → {"status":true,"balance":152000,"currency":"VND"}

Order status values

StatusMeaning
PENDINGOrder created, number being issued
WAITINGNumber issued — submit it and wait for the SMS
RECEIVEDCode arrived — read code / text
REFUNDEDNo SMS in time or cancelled — full amount back in wallet

Error messages may be localized (Vietnamese / English). Poll no faster than every 3 s per order — 240 req/min per key is enforced.

4. SMM — Buff Like, Follow, View & Social Interactions

Base URL: https://acckit.com/api/v1/smm  ·  Currency: VND (integer)  ·  Standard: REST API & Universal SMM Panel v2

Auth: the same api_key (or key parameter). Automate ordering Facebook, TikTok, Instagram, YouTube, Telegram, Twitter / X, Shopee interactions with instant processing.

We support BOTH modern RESTful endpoints and the universal SMM Panel v2 standard (POST https://acckit.com/api/v1/smm) used by automated bots, python scripts, and reseller panels.

GET /smm/services (or POST with action=services)

List all available SMM services, server IDs, pricing per 1,000, min/max limits, refill and cancel support. Public — key optional.

curl "https://acckit.com/api/v1/smm/services"

# → [
#   {"service": 1251, "name": "Facebook Like Bài Viết [Tốc độ cao]", "type": "Default", "category": "Facebook Like Bài Viết", "rate": 8500, "min": 50, "max": 50000, "refill": true, "cancel": true},
#   {"service": 2122, "name": "Youtube Subscribers [Chất lượng cao]", "type": "Default", "category": "YouTube Subscribers", "rate": 65000, "min": 100, "max": 10000, "refill": true, "cancel": false}
# ]

POST /smm/buy (or /smm/order or action=add)

Create a new SMM interaction order. Balance is automatically deducted.

ParamTypeRequiredDescription
api_key / keystringyesYour personal API key
service_id / servicenumberyesService ID from /services
linkstringyesTarget link (post, video, profile, channel)
quantitynumberyesQuantity to buff
curl -X POST "https://acckit.com/api/v1/smm/buy" \
  -d "api_key=YOUR_API_KEY" \
  -d "service_id=1251" \
  -d "link=https://www.facebook.com/permalink.php?story_fbid=123&id=456" \
  -d "quantity=500"

# → {"status": true, "message": "Tạo đơn Buff thành công!", "order_id": 1234, "charge": 4250, "balance": 95750, "currency": "VND"}
# (If using standard action=add: returns {"order": 1234})

POST /smm/status (or GET, or action=status)

Check the realtime processing status and remaining count of an order.

ParamTypeRequiredDescription
api_key / keystringyesYour personal API key
order_id / ordernumber/stringyesOrder ID (or comma-separated IDs for batch status)
curl -X POST "https://acckit.com/api/v1/smm/status" \
  -d "api_key=YOUR_API_KEY" \
  -d "order_id=1234"

# → {
#   "status": true, "order_id": 1234, "order_status": "In progress",
#   "start_count": "150", "remains": "200", "charge": 4250, "currency": "VND"
# }
# (If using standard action=status: returns {"charge": "4250", "start_count": "150", "status": "In progress", "remains": "200", "currency": "VND"})

POST /smm/cancel (or action=cancel)

Request order cancellation and automatic proportional refund for unfulfilled quantity (for packages supporting cancellation).

ParamTypeRequiredDescription
api_key / keystringyesYour personal API key
order_id / ordernumberyesOrder ID to cancel
curl -X POST "https://acckit.com/api/v1/smm/cancel" \
  -d "api_key=YOUR_API_KEY" \
  -d "order_id=1234"

# → {"status": true, "message": "Hủy đơn hàng thành công. Đã hoàn +2,125đ vào tài khoản.", "order_id": 1234, "refund_amount": 2125, "new_balance": 97875}

POST /smm/balance (or action=balance)

Check your current account wallet balance.

curl -X POST "https://acckit.com/api/v1/smm/balance" -d "api_key=YOUR_API_KEY"

# → {"status": true, "balance": 97875, "formatted": "97,875đ", "currency": "VND"}

5. Errors & Codes

MessageMeaning
Invalid api_key / Incorrect API keyKey missing or wrong
Insufficient balance! / Not enough balanceTop up your wallet
Quantity exceeds available stockNot enough stock
Order not found / Incorrect order IDWrong order_id (or not yours)
Invalid link formatTarget link does not match platform or service requirement
Service does not support cancelCancellation not supported for this server

Questions? Contact support on the site. © 2026 acckit.com