Wallet API: Deposits
Table of Endpoints
Name | Method | Endpoint | Legacy Scope | CDP API Key Scope |
---|---|---|---|---|
Deposit Funds | POST | /v2/accounts/:account_id/deposits | wallet:deposits:create | transfer |
Commit Deposit | POST | /v2/accounts/:account_id/deposits/:deposit_id/commit | wallet:deposits:create | transfer |
List Deposits | GET | /v2/accounts/:account_id/deposits | wallet:deposits:read | view |
Show Deposit | GET | /v2/accounts/:account_id/deposits/:deposit_id | wallet:deposits:read | view |
Overview
The Deposit resource represents a deposit of funds using a payment method (e.g., a bank). Each committed deposit also has an associated transaction.
You can start a withdrawal with the flag, commit: false
, which is useful if you want to display a deposit before executing. Deposits made with commit
set to false
will not complete nor receive an associated transaction until a separate commit request is made.
Parameter | Description |
---|---|
id string | Resource ID |
status string, enumerable | Status of the deposit. Valid values: created , completed , canceled |
payment_method hash | Associated payment method (e.g., a bank) |
transaction hash | Associated transaction (e.g., a bank, fiat account) |
amount money hash | Amount |
subtotal money hash | Amount without fees |
fee money hash | Fees associated to this deposit |
created_at timestamp | |
updated_at timestamp | |
resource string, constant deposit | |
resource_path string | |
committed boolean | Has this deposit been committed? |
payout_at timestamp, optional | When a deposit isn't executed instantly, it receives a payout date for the time it will be executed |
Example Deposit Resource
{
"id": "67e0eaec-07d7-54c4-a72c-2e92826897df",
"status": "completed",
"payment_method": {
"id": "83562370-3e5c-51db-87da-752af5ab9559",
"resource": "payment_method",
"resource_path": "/v2/payment-methods/83562370-3e5c-51db-87da-752af5ab9559"
},
"transaction": {
"id": "441b9494-b3f0-5b98-b9b0-4d82c21c252a",
"resource": "transaction",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactions/441b9494-b3f0-5b98-b9b0-4d82c21c252a"
},
"amount": {
"amount": "10.00",
"currency": "USD"
},
"subtotal": {
"amount": "10.00",
"currency": "USD"
},
"created_at": "2015-01-31T20:49:02Z",
"updated_at": "2015-02-11T16:54:02-08:00",
"resource": "deposit",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits/67e0eaec-07d7-54c4-a72c-2e92826897df",
"committed": true,
"fee": {
"amount": "0.00",
"currency": "USD"
},
"payout_at": "2015-02-18T16:54:00-08:00"
}
Deposit Funds
Deposits user-defined amount of funds to a fiat account.
HTTP Request
POST https://api.coinbase.com/v2/accounts/:account_id/deposits
Scopes
wallet:deposits:create
Arguments
Parameter | Type | Required | Description |
---|---|---|---|
amount | string | Required | Deposit amount |
currency | string | Required | Currency for the amount |
payment_method | string | Required | ID of payment method to be used for the deposit. List Payment Methods: GET /payment-methods |
commit | boolean | Optional | If false , this deposit is not immediately completed. Use the commit call to complete it. Default value: true |
Examples
Request
- Shell
- Ruby
- Python
- JavaScript
curl https://api.coinbase.com/v2/accounts/82de7fcd-db72-5085-8ceb-bee19303080b/deposits /
-X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer abd90df5f27a7b170cd775abf89d632b350b7c1c9d53e08b340cd9832ce52c2c' \
-d '{
"amount": "10",
"currency": "USD",
"payment_method": "83562370-3e5c-51db-87da-752af5ab9559"
}'
require 'coinbase/wallet'
client = Coinbase::Wallet::Client.new(api_key: <api key>, api_secret: <api secret>)
deposit = client.deposit('2bbf394c-193b-5b2a-9155-3b4732659ede',
{"amount" => "10",
"currency" => "USD",
"payment_method" => "83562370-3e5c-51db-87da-752af5ab9559"})
from coinbase.wallet.client import Client
client = Client(<api_key>, <api_secret>)
deposit = client.deposit('2bbf394c-193b-5b2a-9155-3b4732659ede',
amount="10",
currency="USD",
payment_method="83562370-3e5c-51db-87da-752af5ab9559")
var Client = require('coinbase').Client;
var client = new Client({'apiKey': 'API KEY',
'apiSecret': 'API SECRET'});
client.getAccount('2bbf394c-193b-5b2a-9155-3b4732659ede', function(err, account) {
account.deposit({"amount": "10",
"currency": "USD",
"payment_method": "83562370-3e5c-51db-87da-752af5ab9559"}, function(err, tx) {
console.log(tx);
});
});
Response (201)
{
"data": {
"id": "67e0eaec-07d7-54c4-a72c-2e92826897df",
"status": "created",
"payment_method": {
"id": "83562370-3e5c-51db-87da-752af5ab9559",
"resource": "payment_method",
"resource_path": "/v2/payment-methods/83562370-3e5c-51db-87da-752af5ab9559"
},
"transaction": {
"id": "441b9494-b3f0-5b98-b9b0-4d82c21c252a",
"resource": "transaction",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactions/441b9494-b3f0-5b98-b9b0-4d82c21c252a"
},
"amount": {
"amount": "10.00",
"currency": "USD"
},
"subtotal": {
"amount": "10.00",
"currency": "USD"
},
"created_at": "2015-01-31T20:49:02Z",
"updated_at": "2015-02-11T16:54:02-08:00",
"resource": "deposit",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits/67e0eaec-07d7-54c4-a72c-2e92826897df",
"committed": true,
"fee": {
"amount": "0.00",
"currency": "USD"
},
"payout_at": "2015-02-18T16:54:00-08:00"
}
}
Commit Deposit
Completes a deposit that is created in commit: false
state.
HTTP Request
POST https://api.coinbase.com/v2/accounts/:account_id/deposits/:deposit_id/commit
Scopes
wallet:deposits:create
Arguments
None
Examples
Request
- Shell
- Ruby
- Python
- JavaScript
curl https://api.coinbase.com/v2/accounts/82de7fcd-db72-5085-8ceb-bee19303080b/deposits/a333743d-184a-5b5b-abe8-11612fc44ab5/commit /
-X POST \
-H 'Authorization: Bearer abd90df5f27a7b170cd775abf89d632b350b7c1c9d53e08b340cd9832ce52c2c' \
require 'coinbase/wallet'
client = Coinbase::Wallet::Client.new(api_key: <api key>, api_secret: <api secret>)
deposit = client.commit_deposit('2bbf394c-193b-5b2a-9155-3b4732659ede',
'a333743d-184a-5b5b-abe8-11612fc44ab5')
from coinbase.wallet.client import Client
client = Client(<api_key>, <api_secret>)
deposit = client.commit_deposit('2bbf394c-193b-5b2a-9155-3b4732659ede',
'a333743d-184a-5b5b-abe8-11612fc44ab5')
var Client = require('coinbase').Client;
var client = new Client({'apiKey': 'API KEY',
'apiSecret': 'API SECRET'});
client.getAccount('2bbf394c-193b-5b2a-9155-3b4732659ede', function(err, account) {
account.getDeposit('a333743d-184a-5b5b-abe8-11612fc44ab5', function(err, tx) {
tx.commit(function(err, resp) {
console.log(resp);
});
});
});
Response (200)
{
"data": {
"id": "67e0eaec-07d7-54c4-a72c-2e92826897df",
"status": "created",
"payment_method": {
"id": "83562370-3e5c-51db-87da-752af5ab9559",
"resource": "payment_method",
"resource_path": "/v2/payment-methods/83562370-3e5c-51db-87da-752af5ab9559"
},
"transaction": {
"id": "441b9494-b3f0-5b98-b9b0-4d82c21c252a",
"resource": "transaction",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactions/441b9494-b3f0-5b98-b9b0-4d82c21c252a"
},
"amount": {
"amount": "10.00",
"currency": "USD"
},
"subtotal": {
"amount": "10.00",
"currency": "USD"
},
"created_at": "2015-01-31T20:49:02Z",
"updated_at": "2015-02-11T16:54:02-08:00",
"resource": "deposit",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits/67e0eaec-07d7-54c4-a72c-2e92826897df",
"committed": true,
"fee": {
"amount": "0.00",
"currency": "USD"
},
"payout_at": "2015-02-18T16:54:00-08:00"
}
}
List Deposits
Lists fiat deposits for an account.
Deposits are only listed for fiat accounts and wallets. To list deposits associated with a crypto account/wallet, use List Transactions.
HTTP Request
GET https://api.coinbase.com/v2/accounts/:account_id/deposits
Scopes
wallet:deposits:read
Examples
Request
- Shell
- Ruby
- Python
- JavaScript
curl https://api.coinbase.com/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits \
-H 'Authorization: Bearer abd90df5f27a7b170cd775abf89d632b350b7c1c9d53e08b340cd9832ce52c2c'
require 'coinbase/wallet'
client = Coinbase::Wallet::Client.new(api_key: <api key>, api_secret: <api secret>)
deposits = client.list_deposits('2bbf394c-193b-5b2a-9155-3b4732659ede')
from coinbase.wallet.client import Client
client = Client(<api_key>, <api_secret>)
txs = client.get_deposits('2bbf394c-193b-5b2a-9155-3b4732659ede')
var Client = require('coinbase').Client;
var client = new Client({'apiKey': 'API KEY',
'apiSecret': 'API SECRET'});
client.getAccount('2bbf394c-193b-5b2a-9155-3b4732659ede', function(err, account) {
account.getDeposits(function(err, txs) {
console.log(txs);
});
});
Response
{
"pagination": {
"ending_before": null,
"starting_after": null,
"limit": 25,
"order": "desc",
"previous_uri": null,
"next_uri": null
},
"data": [
{
"id": "67e0eaec-07d7-54c4-a72c-2e92826897df",
"status": "completed",
"payment_method": {
"id": "83562370-3e5c-51db-87da-752af5ab9559",
"resource": "payment_method",
"resource_path": "/v2/payment-methods/83562370-3e5c-51db-87da-752af5ab9559"
},
"transaction": {
"id": "441b9494-b3f0-5b98-b9b0-4d82c21c252a",
"resource": "transaction",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactions/441b9494-b3f0-5b98-b9b0-4d82c21c252a"
},
"amount": {
"amount": "10.00",
"currency": "USD"
},
"subtotal": {
"amount": "10.00",
"currency": "USD"
},
"created_at": "2015-01-31T20:49:02Z",
"updated_at": "2015-02-11T16:54:02-08:00",
"resource": "deposit",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits/67e0eaec-07d7-54c4-a72c-2e92826897df",
"committed": true,
"fee": {
"amount": "0.00",
"currency": "USD"
},
"payout_at": "2015-02-18T16:54:00-08:00"
}
]
}
Show Deposit
Get one deposit by deposit Id.
HTTP Request
GET https://api.coinbase.com/v2/accounts/:account_id/deposits/:deposit_id
Scopes
wallet:deposits:read
Examples
Request
- Shell
- Ruby
- Python
- JavaScript
curl https://api.coinbase.com/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits/67e0eaec-07d7-54c4-a72c-2e92826897df /
-H 'Authorization: Bearer abd90df5f27a7b170cd775abf89d632b350b7c1c9d53e08b340cd9832ce52c2c'
require 'coinbase/wallet'
client = Coinbase::Wallet::Client.new(api_key: <api key>, api_secret: <api secret>)
deposit = client.list_deposit('2bbf394c-193b-5b2a-9155-3b4732659ede',
'dd3183eb-af1d-5f5d-a90d-cbff946435ff')
from coinbase.wallet.client import Client
client = Client(<api_key>, <api_secret>)
deposit = client.get_deposit('2bbf394c-193b-5b2a-9155-3b4732659ede',
'dd3183eb-af1d-5f5d-a90d-cbff946435ff')
var Client = require('coinbase').Client;
var client = new Client({'apiKey': 'API KEY',
'apiSecret': 'API SECRET'});
client.getAccount('2bbf394c-193b-5b2a-9155-3b4732659ede', function(err, account) {
account.getDeposit('dd3183eb-af1d-5f5d-a90d-cbff946435ff', function(err, tx) {
console.log(tx);
});
});
Response
{
"data": {
"id": "67e0eaec-07d7-54c4-a72c-2e92826897df",
"status": "completed",
"payment_method": {
"id": "83562370-3e5c-51db-87da-752af5ab9559",
"resource": "payment_method",
"resource_path": "/v2/payment-methods/83562370-3e5c-51db-87da-752af5ab9559"
},
"transaction": {
"id": "441b9494-b3f0-5b98-b9b0-4d82c21c252a",
"resource": "transaction",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactions/441b9494-b3f0-5b98-b9b0-4d82c21c252a"
},
"amount": {
"amount": "10.00",
"currency": "USD"
},
"subtotal": {
"amount": "10.00",
"currency": "USD"
},
"created_at": "2015-01-31T20:49:02Z",
"updated_at": "2015-02-11T16:54:02-08:00",
"resource": "deposit",
"resource_path": "/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/deposits/67e0eaec-07d7-54c4-a72c-2e92826897df",
"committed": true,
"fee": {
"amount": "0.00",
"currency": "USD"
},
"payout_at": "2015-02-18T16:54:00-08:00"
}
}