Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.mannco.store/llms.txt

Use this file to discover all available pages before exploring further.

POST https://api.mannco.store/payment/{provider}
Permission: Connected + API
provider
string
required
One of: payviox (card / external checkout) or mannco (pay with your on-site balance). Other names return Invalid provider.
Initiates a payment. The server validates the body with the provider, records the transaction, and either returns a redirect URL for the user to complete payment, or a success message when the flow completes immediately.

Required for all types

type
string
required
Either balance (add credit) or items (pay for listed items).
tos_timestamp
string | number
required
Client timestamp of Terms of Service acceptance; validated server-side (must not be in the future).
Optional audit fields may be accepted: checkout_create_timestamp (client time of checkout creation).

Balance deposit

value
integer
required
Amount in cents to add (capped server-side, e.g. max 2 500 000 in implementation).
payment_method
string
Optional provider-specific payment method id.

Example

{
  "type": "balance",
  "value": 10000,
  "tos_timestamp": 1706745600,
  "payment_method": null
}

Pay for items (cart checkout)

Use with payviox (redirect to pay) or mannco (deduct account balance immediately; mannco only supports type: items, not balance top-up).
items
string
required
Comma-separated Steam assetId values for items you are purchasing (must be listed for sale, state = 1, not yours).
payment_method
string
Optional provider-specific method id.

Example

{
  "type": "items",
  "items": "987654321,987654322",
  "tos_timestamp": 1706745600
}

Responses

On success, Response("success", …) is used:
  • If the provider returns a redirect URL, you get:
{
  "err": false,
  "success": true,
  "content": {
    "url": "https://payment-provider.example/checkout/..."
  }
}
Send the user to content.url in a browser to complete payment.
  • If processing finishes without a redirect (rare / provider-dependent):
{
  "err": false,
  "success": true,
  "content": {
    "message": "Payment processed successfully"
  }
}

Error responses (typical)

MessageWhen
Provider is requiredMissing path provider
Invalid userUser missing or banned
Invalid providerUnknown provider name
Invalid request parametersvalidateRequest failed (wrong type, missing value or items)
Tos acceptance is requiredMissing tos_timestamp
Invalid TOS acceptanceBad timestamp format
Tos acceptance cannot be in the futureClock skew
Failed to save transactionDB insert failure
Failed to process paymentProvider API error
No items foundFor type: items, no matching backpack rows
Some providers may enforce extra checks (see provider class requires2FA() — API JWT still passes 2FA gate per server rules).
Webhooks from the payment provider credit balance or finalize orders on Mannco.store; your client should rely on the redirect URL and/or account balance / history endpoints after payment.