Skip to content

API reference

Payouts

Withdraw your seller balance. Dashboard session only.

2 operationsBase URL https://packetexchange.io/api/v1Postman collection

List your payout requests

GET/api/v1/payouts

Access
Dashboard session. API keys are refused with 403. Use a login access token.
Rate limit
100 requests per second (the default)

Your 100 most recent payouts, newest first.

Response 200

  • datarequired

    object[]

  • idrequired

    string (uuid) · data[].id

  • methodrequired

    string · data[].method

    One of crypto, wire
  • amountUsdrequired

    money · data[].amountUsd

    USD as a decimal string with exactly 6 places, e.g. "0.012500".
  • statusrequired

    string · data[].status

    One of pending, processing, completed, rejected
  • cryptoTokenrequired

    string | null · data[].cryptoToken

  • cryptoNetworkrequired

    string | null · data[].cryptoNetwork

  • cryptoAddressrequired

    string | null · data[].cryptoAddress

  • cryptoTxHashrequired

    string | null · data[].cryptoTxHash

  • wireBankDetailsrequired

    object | null · data[].wireBankDetails

  • adminNoterequired

    string | null · data[].adminNote

    Note from the team when processing, e.g. a rejection reason
  • createdAtrequired

    string (date-time) · data[].createdAt

    ISO-8601 timestamp (UTC)
  • processedAtrequired

    string (date-time) | null · data[].processedAt

    ISO-8601 timestamp (UTC)

Errors

  • 400VALIDATION_ERROR, INVALID_INPUT or BAD_REQUEST. For VALIDATION_ERROR, error.details is an array of { path, message }.
  • 401UNAUTHORIZED: missing, invalid, expired or revoked credential.
  • 403FORBIDDEN: not allowed - a scoped key lacks the scope, or the endpoint is session-only.
  • 429RATE_LIMITED: slow down and retry after the Retry-After seconds.
  • 500INTERNAL_ERROR: unexpected failure. Quote X-Request-Id to support.

Request a payout of your seller balance

POST/api/v1/payouts

Access
Dashboard session. API keys are refused with 403. Use a login access token.
Rate limit
100 requests per second (the default)
Moves money
Requests a payout of your balance.

Withdraws from the withdrawable part of your balance (card top-ups inside the chargeback hold window are excluded). Crypto payouts need cryptoAddress; wire payouts need wireBankDetails. Requires a verified identity (403 KYC_REQUIRED). The amount is reserved immediately and the team processes the request.

Request body (application/json)

  • methodrequired

    string

    One of crypto, wire
  • amountUsdrequired

    number

    50 to 1000000
  • cryptoToken

    string

    max 10 chars
  • cryptoNetwork

    string

    max 20 chars
  • cryptoAddress

    string

    max 120 chars
  • wireBankDetails

    object

Response 200

  • datarequired

    object

    Same fields as Payout, shown earlier on this page.

Errors

  • 400VALIDATION_ERROR, INVALID_INPUT or BAD_REQUEST. For VALIDATION_ERROR, error.details is an array of { path, message }.
  • 401UNAUTHORIZED: missing, invalid, expired or revoked credential.
  • 403FORBIDDEN: not allowed - a scoped key lacks the scope, or the endpoint is session-only.
  • 409CONFLICT (or a code-specific 409): the change clashes with existing state.
  • 429RATE_LIMITED: slow down and retry after the Retry-After seconds.
  • 500INTERNAL_ERROR: unexpected failure. Quote X-Request-Id to support.
  • AlsoKYC_REQUIRED