JavaScript
import Whop from '@whop/sdk';
const client = new Whop({
apiKey: process.env['WHOP_API_KEY'], // This is the default and can be omitted
});
const deposit = await client.deposits.create({ destination: 'string' });
console.log(deposit.account_id);curl --request POST \
--url https://api.whop.com/api/v1/deposits \
--header 'Content-Type: application/json' \
--data '
{
"destination": "<string>",
"amount": 123,
"metadata": {},
"network": "<string>"
}
'import requests
url = "https://api.whop.com/api/v1/deposits"
payload = {
"destination": "<string>",
"amount": 123,
"metadata": {},
"network": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.whop.com/api/v1/deposits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'destination' => '<string>',
'amount' => 123,
'metadata' => [
],
'network' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.whop.com/api/v1/deposits"
payload := strings.NewReader("{\n \"destination\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {},\n \"network\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.whop.com/api/v1/deposits")
.header("Content-Type", "application/json")
.body("{\n \"destination\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {},\n \"network\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.whop.com/api/v1/deposits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {},\n \"network\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"account_id": "<string>",
"hosted_url": "<string>",
"metadata": {},
"methods": {
"bank": {
"currencies": [
{
"account_number": "<string>",
"currency": "<string>",
"deposit_bank_address": "<string>",
"deposit_bank_name": "<string>",
"deposit_beneficiary_name": "<string>",
"deposit_reference": "<string>",
"rails": [
"<string>"
],
"routing_number": "<string>",
"swift_bic": "<string>"
}
]
},
"crypto": [
{
"deposit_address": "<string>",
"icon_url": "<string>",
"name": "<string>",
"supported_currencies": [
{
"icon_url": "<string>",
"name": "<string>"
}
]
}
]
},
"object": "deposit",
"amount": "<string>"
}{
"error": {
"message": "<string>",
"type": "<string>"
}
}Deposits
Create Deposit
Resolves a deposit destination and returns the on-chain addresses that can fund it. No authentication is required; any business can be resolved by its account ID. A caller authenticated as a user can additionally resolve their own user account.
POST
/
deposits
JavaScript
import Whop from '@whop/sdk';
const client = new Whop({
apiKey: process.env['WHOP_API_KEY'], // This is the default and can be omitted
});
const deposit = await client.deposits.create({ destination: 'string' });
console.log(deposit.account_id);curl --request POST \
--url https://api.whop.com/api/v1/deposits \
--header 'Content-Type: application/json' \
--data '
{
"destination": "<string>",
"amount": 123,
"metadata": {},
"network": "<string>"
}
'import requests
url = "https://api.whop.com/api/v1/deposits"
payload = {
"destination": "<string>",
"amount": 123,
"metadata": {},
"network": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.whop.com/api/v1/deposits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'destination' => '<string>',
'amount' => 123,
'metadata' => [
],
'network' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.whop.com/api/v1/deposits"
payload := strings.NewReader("{\n \"destination\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {},\n \"network\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.whop.com/api/v1/deposits")
.header("Content-Type", "application/json")
.body("{\n \"destination\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {},\n \"network\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.whop.com/api/v1/deposits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {},\n \"network\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"account_id": "<string>",
"hosted_url": "<string>",
"metadata": {},
"methods": {
"bank": {
"currencies": [
{
"account_number": "<string>",
"currency": "<string>",
"deposit_bank_address": "<string>",
"deposit_bank_name": "<string>",
"deposit_beneficiary_name": "<string>",
"deposit_reference": "<string>",
"rails": [
"<string>"
],
"routing_number": "<string>",
"swift_bic": "<string>"
}
]
},
"crypto": [
{
"deposit_address": "<string>",
"icon_url": "<string>",
"name": "<string>",
"supported_currencies": [
{
"icon_url": "<string>",
"name": "<string>"
}
]
}
]
},
"object": "deposit",
"amount": "<string>"
}{
"error": {
"message": "<string>",
"type": "<string>"
}
}Body
application/json
Response
deposit created
Account ID of the destination owner. Null for raw wallet address destinations.
URL of the hosted deposit page. Only present for business destinations.
Metadata from the request.
Available deposit methods for destination.
Show child attributes
Show child attributes
Available options:
deposit Requested deposit amount.
⌘I

