Skip to main content

Send USD onchain

The GraphQL endpoint to connect to:
A valid authentication token is required in the header as a bearer token:

Get the wallet IDs and check the balances

Can run this query at any stage to confirm the change in the balances.
The "BTC" wallet balance is denominated in satoshis.
The "USD" wallet balance is in cents.

The body of the GraphQL request

query Me {
me {
defaultAccount {
wallets {
id
walletCurrency
balance
}
}
}
}
curl command to get the USD wallet ID

Estimate

Estimate how many satoshis the transaction will cost.

The body of the GraphQL request

query onChainUsdTxFee($walletId: WalletId!, $address: OnChainAddress!, $amount: CentAmount!) {
onChainUsdTxFee(walletId: $walletId, address: $address, amount: $amount) {
amount
}
}
Set the variables
curl command to estimate the transaction fee

Send a transaction in USD cents

Send a transaction onchain from your USD account with the amount denominated in USD cents.
The satoshi amount will be calculated based on the current exchange rate.

The body of the GraphQL request

mutation onChainPaymentSend($input: OnChainPaymentSendInput!) {
onChainPaymentSend(input: $input) {
errors {
message
}
status
}
}
Set the variables
curl command to send the transaction

Send a transaction in satoshis

Send a transaction onchain from your USD account with the amount denominated in satoshis.

The body of the GraphQL request

mutation onChainUsdPaymentSendAsBtcDenominated($input: OnChainUsdPaymentSendAsBtcDenominatedInput!) {
onChainUsdPaymentSendAsBtcDenominated(input: $input) {
errors {
message
}
status
}
}
Set the variables
curl command to send the transaction
tip

To test the GraphQL requests further use the GraphQL playground at api.blink.sv/graphql for mainnet or api.staging.blink.sv/graphql for staging.
Check out the Galoy API Postman collection to find examples in multiple programming languages.