Purchase Points

Purchases a fixed Point bundle for your organisation. Enable API Point purchases and save your settings before making a purchase. Only treat the purchase as paid when data.top_up.status is paid.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Purchase Points

POST https://api.servertastic.com/v3/points/top-ups

Use this endpoint to purchase a fixed bundle of Points for your organisation.

Before making a purchase:

  • enable API Point purchases in your Servertastic account and save your settings;
  • make sure your organisation has a valid saved payment method; and
  • obtain your organisation API key.

You can specify a currency and saved payment method for each purchase. If currency is omitted, your organisation's saved currency is used. If payment_source_id is omitted, your default payment method is used. If you only have one saved payment method, that payment method will be used.

curl --request POST 'https://api.servertastic.com/v3/points/top-ups' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{"points": 100, "currency": "USD", "payment_source_id": "card_example", "reference": "topup-2026-001"}'

Request fields

points

Required.

Choose one of the fixed Point bundles available to your organisation:

100
250
500
1000
2500
5000
7500

Purchases remain subject to the limits configured for your organisation.

currency

Optional.

Supported values are USD, GBP and EUR.

If omitted, your organisation's saved currency is used.

payment_source_id

Optional.

Use a valid saved payment method ID belonging to your organisation. Available IDs can be retrieved using List saved payment methods.

If omitted, your default payment method is used. If you only have one saved payment method, that payment method will be used.

reference

Required.

Provide a unique reference for each Point purchase. The reference can contain up to 100 letters, numbers, dots (.), underscores (_), colons (:) or hyphens (-).

For example:

topup-2026-001

Safely retrying a purchase

The reference helps protect against duplicate charges.

If you need to retry a purchase, reuse the same reference, Point amount, currency and payment method.

If currency was omitted from the original request, keep your organisation's saved currency unchanged while retrying.

For an unknown payment result, reuse the existing reference. Do not create another purchase using a new reference.

Currency and payment method

The currency and payment method supplied in the request apply only to that purchase. They do not change the saved defaults for your organisation.

Prices are calculated by the billing provider. Do not send a price or customer ID.

Handling the response

HTTP statusMeaning
201Purchase paid and Points added
200Existing paid purchase returned
402Payment failed or is awaiting payment
403Invalid API key or API Point purchases are disabled
404API Point top-ups are not available
409Conflicting reference, limit or unresolved payment
422Invalid request, payment method or missing currency
429Purchase frequency or daily limit reached
502Payment methods are temporarily unavailable

A successful response contains data.top_up and data.points_balance.

Only treat the purchase as paid when:

top_up.status: paid

Do not rely on the HTTP response alone to determine that the Point purchase completed. Check the returned top_up.status.

If the payment result is unknown, retry using the same reference rather than creating a new purchase.

Body Params
integer
enum
required

Fixed Point bundle, subject to your organisation's purchase limits.

Allowed:
string
enum

Optional. If omitted, your organisation's saved currency is used.

Allowed:
string

Optional. A saved payment method ID belonging to your organisation. If omitted, your default payment method is used. If you only have one saved payment method, that payment method will be used.

string
required
length ≤ 100
^[A-Za-z0-9._:-]+$

Unique retry-safe reference. Reuse the same reference, points, currency and payment method when retrying.

Responses

402

Payment failed or is awaiting payment

403

Invalid API key or API Point purchases are disabled

404

API Point top-ups are not available

409

Conflicting reference, limit or unresolved payment

422

Invalid request, payment method or missing currency

429

Purchase frequency or daily limit reached

502

Payment methods are temporarily unavailable

Language
Credentials
Bearer
Organisation API key
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json