Skip to content
Translated page. The English version is the source of truth.

POST /apiv2/billing/limits ​

Tạo, thay đổi, tắt và bật các hạn mức của chính bạn bên trong hạn mức tín dụng do Netts thiết lập. Các hạn mức do Netts thiết lập không thể thay đổi bằng các endpoint này. Một phần của thanh toán trả sau.

Endpoint ​

EndpointChức năng
POST /apiv2/billing/limitstạo hạn mức của chính bạn
PUT /apiv2/billing/limits/{id}?scope=accountthay đổi giá trị của nó
POST /apiv2/billing/limits/{id}/disable?scope=accounttắt nó — hạn mức ngừng áp dụng, không có gì bị xóa
POST /apiv2/billing/limits/{id}/enable?scope=accountbật lại nó

{id} là id của hạn mức từ limits. scope=account là bắt buộc đối với các thay đổi.

Tiêu đề yêu cầu ​

Tiêu đềBắt buộcMô tả
X-API-KEYcóKhóa API với quyền limits.write
X-Real-IPcóMột địa chỉ từ danh sách trắng của khóa
Idempotency-Keycómột chuỗi duy nhất, 8–128 ký tự, một chuỗi cho mỗi thay đổi
Content-Typecóapplication/json

Idempotency-Key giúp việc thử lại an toàn. Lặp lại một yêu cầu với cùng một khóa và cùng một nội dung — ví dụ sau khi hết thời gian chờ (timeout) — và bạn sẽ nhận lại phản hồi gốc; thay đổi không bị thực hiện hai lần. Cùng một khóa với nội dung khác sẽ bị từ chối với lỗi 409 idempotency_conflict.

expectedRevision bảo vệ bạn khỏi việc ghi đè lên thay đổi mà bạn chưa thấy. Gửi revision bạn đã đọc lần gần nhất (0 khi bạn tạo hạn mức). Nếu hạn mức đã thay đổi trong khoảng thời gian đó, yêu cầu sẽ bị từ chối với 409 revision_conflict — hãy đọc lại limits và thử lại.

Tạo một hạn mức ​

TrườngLoạiBắt buộcMô tả
productCodechuỗi hoặc nullkhôngenergy_1h, energy_5m, bandwidth, activation, aml_check; null hoặc bỏ qua cho hạn mức tổng thể của bạn
periodchuỗicóoutstanding, day, week hoặc order
valuechuỗicósố tiền, theo loại tiền tệ của hạn mức Netts, không được cao hơn hạn mức đó
expectedRevisionsố nguyêncó0

Bạn có thể có một hạn mức của riêng mình cho mỗi sản phẩm và chu kỳ. Loại tiền tệ được lấy từ hạn mức của Netts — không có trường tiền tệ.

bash
curl -s -X POST 'https://netts.io/apiv2/billing/limits' \
  -H 'X-API-KEY: your-api-key' \
  -H 'X-Real-IP: 203.0.113.10' \
  -H 'Idempotency-Key: 6f1c2b8e-limit-5m-day' \
  -H 'Content-Type: application/json' \
  -d '{"productCode": "energy_5m", "period": "day", "value": "200", "expectedRevision": 0}'
json
{
  "success": true,
  "data": {
    "id": 5,
    "scope": "account",
    "origin": "client",
    "productCode": "energy_5m",
    "period": "day",
    "enabled": true,
    "limit": { "unit": "USD", "value": "200.000000" },
    "equivalent": { "unit": "TRX", "value": "604.514867" },
    "revision": 1,
    "fx": { "usdPerTrx": "0.33084276", "at": "2026-10-19T20:24:23.449930+00:00" },
    "fxStatus": "ok"
  },
  "timestamp": "2026-10-19T20:30:02+00:00"
}

Hạn mức được áp dụng ngay lập tức cho đơn hàng tiếp theo.

Thay đổi một hạn mức ​

bash
curl -s -X PUT 'https://netts.io/apiv2/billing/limits/5?scope=account' \
  -H 'X-API-KEY: your-api-key' \
  -H 'X-Real-IP: 203.0.113.10' \
  -H 'Idempotency-Key: 6f1c2b8e-limit-5m-300' \
  -H 'Content-Type: application/json' \
  -d '{"value": "300", "expectedRevision": 1}'
TrườngLoạiBắt buộcMô tả
valuechuỗicósố tiền mới, không được cao hơn hạn mức của Netts
expectedRevisionsố nguyêncórevision hiện tại của hạn mức

Phản hồi có cùng định dạng như trên, với revision được tăng thêm một.

Bật hoặc tắt một hạn mức ​

bash
curl -s -X POST 'https://netts.io/apiv2/billing/limits/5/disable?scope=account' \
  -H 'X-API-KEY: your-api-key' \
  -H 'X-Real-IP: 203.0.113.10' \
  -H 'Idempotency-Key: 6f1c2b8e-limit-5m-off' \
  -H 'Content-Type: application/json' \
  -d '{"expectedRevision": 2}'

Nội dung yêu cầu chỉ có expectedRevision. /enable hoạt động theo cách tương tự. Một hạn mức bị tắt vẫn nằm trong danh sách với "enabled": false và có thể được bật lại sau; dư nợ và các khoản phí của bạn không bị ảnh hưởng.

Những điều bạn không thể làm ​

  • Thay đổi hoặc tắt hạn mức có "origin": "netts" hoặc hạn mức của khóa — 403 netts_limit_readonly, ngay cả khi muốn giảm hạn mức.
  • Thiết lập giá trị cao hơn hạn mức của Netts — 422 above_account_limit.
  • Tạo hạn mức thứ hai cho cùng một sản phẩm và chu kỳ — 409 limit_exists; hãy thay đổi hạn mức hiện có để thay thế.
  • Tạo hạn mức trước khi Netts thiết lập hạn mức tín dụng cho tài khoản của bạn — 409 no_account_limit.
  • Bật hạn mức có loại tiền tệ khác với hạn mức Netts hiện tại — 422 unit_mismatch; hãy đặt giá trị mới trước.

Lỗi ​

HTTPcodeÝ nghĩa
400invalid_request, invalid_amountthiếu một trường hoặc trường có định dạng sai
400idempotency_key_required, invalid_idempotency_keykhông có Idempotency-Key, hoặc không đủ 8–128 ký tự
401-1, -2khóa bị thiếu hoặc không hợp lệ, hoặc IP không nằm trong danh sách trắng — được trả về bởi cổng API, xem định dạng phản hồi
403forbiddenkhóa không có quyền limits.write
403postpaid_disabledthanh toán trả sau đang tạm dừng: không thể thay đổi hạn mức
403netts_limit_readonlyhạn mức được thiết lập bởi Netts
404not_foundkhông có hạn mức như vậy trên tài khoản của bạn
409revision_conflict, limit_exists, idempotency_conflict, no_account_limitxem ở trên
422above_account_limit, product_not_postpaid, unit_mismatchgiá trị vượt quá hạn mức của Netts, sản phẩm không xác định, loại tiền tệ của hạn mức Netts đã thay đổi

Tất cả các mã được liệt kê trong thanh toán trả sau.