Skip to main content

Process Cashout

POST /cashout/process

Initiates a cashout request. Validates the user’s balance, cashout parameters, and deducts the amount before creating the cashout record.
POST /cashout/process
Authentication: connected Body Parameters
type
string
required
The cashout method type (e.g., "paypal", "payoneer", "tipalti").
amount
integer
required
The amount to cash out (in cents).
provider
string
required
The payment provider ("paypal", "payoneer", or "tipalti").
Response
{
  "status": "success",
  "data": {
    "message": "Cashout processed successfully",
    "cashout_id": 12345,
    "amount": 10000,
    "type": "paypal",
    "status": "pending"
  }
}
Errors
StatusMessage
errorUser not authenticated
errorMissing required parameters: type and amount
errorInsufficient balance
errorInvalid amount
errorFailed to deduct balance

POST /cashout/link

Links a cashout method to the user’s account. Supports PayPal, Payoneer, and Tipalti with different flows for each provider.
POST /cashout/link
Authentication: connected Body Parameters (all providers)
provider
string
required
The payment provider: "paypal", "payoneer", or "tipalti".

PayPal & Payoneer

Returns a link URL that the user should follow to complete account linking.

Tipalti — Additional Parameters

payeeType
string
default:"Individual"
"Individual" or "Company".
firstName
string
required
First name (required for Individual payee).
lastName
string
required
Last name (required for Individual payee).
companyName
string
Company name (required for Company payee type).
email
string
required
Email address for the payee.
address
object
required
Address object with the following fields:
phone
string
Phone number (optional).
taxDetails
object
Tax details (optional).
paymentMethod
object
Payment method preferences (optional — can be set during onboarding).

Response — PayPal / Payoneer

{
  "status": "success",
  "data": {
    "message": "Cashout link created successfully",
    "link": "https://paypal.com/connect/...",
    "provider": "paypal",
    "method": "link"
  }
}

Response — Tipalti

{
  "status": "success",
  "data": {
    "message": "Tipalti payee account created successfully",
    "provider": "tipalti",
    "payeeId": "payee_abc123",
    "alreadyExists": false
  }
}

POST /cashout/unlink

Removes a linked cashout method from the user’s account. Currently only supports Payoneer.
POST /cashout/unlink
Authentication: connected Body Parameters
provider
string
required
The provider to unlink. Currently only "payoneer" is supported.
Response
{
  "status": "success",
  "data": {
    "message": "Payoneer cashout method unlinked successfully",
    "provider": "payoneer"
  }
}
Errors
StatusMessage
errorMissing required parameter: provider
errorInvalid provider
errorFailed to unlink cashout method. The method may not be linked or an error occurred.