curl --request GET \
--url https://v2.prod.halliday.xyz/payments \
--header 'Authorization: Bearer <token>'import requests
url = "https://v2.prod.halliday.xyz/payments"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://v2.prod.halliday.xyz/payments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://v2.prod.halliday.xyz/payments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://v2.prod.halliday.xyz/payments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://v2.prod.halliday.xyz/payments")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://v2.prod.halliday.xyz/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"payment_id": "<string>",
"org_id": "<string>",
"funded": true,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"initiate_fund_by": "2023-11-07T05:31:56Z",
"quoted": {
"output_amount": {
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1"
},
"fees": {
"total_fees": "<string>",
"conversion_fees": "<string>",
"network_fees": "<string>",
"business_fees": "<string>",
"currency_symbol": "USD"
},
"route": [
{
"net_effect": {
"consume": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
],
"produce": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
]
},
"pieces_info": [
{}
],
"step_index": 123
}
],
"onramp": "<string>",
"onramp_method": "CREDIT_CARD",
"latency_seconds": 123
},
"fulfilled": {
"route": [
{
"net_effect": {
"consume": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
],
"produce": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
]
},
"pieces_info": [
{}
],
"step_index": 123,
"transaction_hash": "<string>"
}
],
"output_amount": {
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1"
},
"fees": {
"total_fees": "<string>",
"conversion_fees": "<string>",
"network_fees": "<string>",
"business_fees": "<string>",
"currency_symbol": "USD"
},
"onramp": "<string>",
"onramp_method": "CREDIT_CARD"
},
"current_prices": {
"USD": "1.00",
"ethereum:0x": "4200",
"ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48": "1.00"
},
"price_currency": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"processing_addresses": [
{
"chain": "ethereum",
"address": "<string>",
"factory": "<string>"
}
],
"owner_chain": "<string>",
"owner_address": "<string>",
"destination_address": "<string>",
"withdrawals": [
{
"token_amounts": [
{
"token": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "<string>"
}
],
"recipient_address": "<string>",
"transaction_hash": "<string>",
"issues": [
{
"kind": "amount",
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"given": "<string>",
"limits": {
"min": "<string>",
"max": "<string>"
},
"source": "<string>",
"message": "<string>",
"downstream_limits": {
"min": "<string>",
"max": "<string>"
}
}
]
}
],
"client_redirect_url": "<string>",
"geolocation": {
"alpha3_country_code": "<string>",
"state_code": "<string>"
},
"declaration": {},
"completed_at": "2023-11-07T05:31:56Z",
"quote_request": {
"request": {
"kind": "FIXED_INPUT",
"fixed_input_amount": {
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1"
},
"output_asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"dest_address": "<string>",
"custom_actions": {
"actions": [
{
"type": "CallImmediateAction",
"target": "<string>",
"value": "<string>",
"calldata": "<string>"
}
],
"user_estimated_gas": "<string>"
}
},
"price_currency": "USD",
"onramps": [
"moonpay",
"coinbase"
],
"onramp_methods": [
"CREDIT_CARD",
"ACH",
"APPLE_PAY"
],
"customer_ip_address": "<string>",
"customer_id": "<string>",
"parent_payment_id": "<string>",
"label": "<string>",
"features": [],
"rev_share_name": "<string>",
"allow_unsafe_transfer_out": true,
"show_all_issues": true,
"allow_unsafe_slippage": true,
"allow_exceed_max_input_limit": true,
"use_intent_refund": true,
"hops": [
"<string>"
]
},
"customer_id": "<string>",
"label": "<string>",
"next_instruction": {
"type": "ONRAMP",
"payment_id": "<string>",
"funding_page_url": "https://app.halliday.xyz/funding/${payment_id}",
"deposit_info": [
{
"deposit_token": "base:0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"deposit_amount": "4.8",
"deposit_address": "0xaddress",
"deposit_chain": "base"
}
]
},
"issues": [
{
"kind": "amount",
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"given": "<string>",
"limits": {
"min": "<string>",
"max": "<string>"
},
"source": "<string>",
"message": "<string>",
"downstream_limits": {
"min": "<string>",
"max": "<string>"
}
}
],
"parent_payment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"errors": [
{
"kind": "other",
"message": "Missing required parameter: payment_id"
}
]
}{
"errors": [
{
"kind": "other",
"message": "Invalid API key"
}
]
}{
"errors": [
{
"kind": "other",
"message": "You do not have permission to view this payment"
}
]
}{
"errors": [
{
"kind": "other",
"message": "Payment with payment_id 'pay_abc123' not found"
}
]
}Get payment status
Get the current status of a payment, including progress through onramp/swap/offramp stages.
curl --request GET \
--url https://v2.prod.halliday.xyz/payments \
--header 'Authorization: Bearer <token>'import requests
url = "https://v2.prod.halliday.xyz/payments"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://v2.prod.halliday.xyz/payments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://v2.prod.halliday.xyz/payments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://v2.prod.halliday.xyz/payments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://v2.prod.halliday.xyz/payments")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://v2.prod.halliday.xyz/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"payment_id": "<string>",
"org_id": "<string>",
"funded": true,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"initiate_fund_by": "2023-11-07T05:31:56Z",
"quoted": {
"output_amount": {
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1"
},
"fees": {
"total_fees": "<string>",
"conversion_fees": "<string>",
"network_fees": "<string>",
"business_fees": "<string>",
"currency_symbol": "USD"
},
"route": [
{
"net_effect": {
"consume": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
],
"produce": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
]
},
"pieces_info": [
{}
],
"step_index": 123
}
],
"onramp": "<string>",
"onramp_method": "CREDIT_CARD",
"latency_seconds": 123
},
"fulfilled": {
"route": [
{
"net_effect": {
"consume": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
],
"produce": [
{
"resource": {
"asset": "<string>"
},
"amount": "<string>",
"tx_id": "<string>"
}
]
},
"pieces_info": [
{}
],
"step_index": 123,
"transaction_hash": "<string>"
}
],
"output_amount": {
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1"
},
"fees": {
"total_fees": "<string>",
"conversion_fees": "<string>",
"network_fees": "<string>",
"business_fees": "<string>",
"currency_symbol": "USD"
},
"onramp": "<string>",
"onramp_method": "CREDIT_CARD"
},
"current_prices": {
"USD": "1.00",
"ethereum:0x": "4200",
"ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48": "1.00"
},
"price_currency": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"processing_addresses": [
{
"chain": "ethereum",
"address": "<string>",
"factory": "<string>"
}
],
"owner_chain": "<string>",
"owner_address": "<string>",
"destination_address": "<string>",
"withdrawals": [
{
"token_amounts": [
{
"token": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "<string>"
}
],
"recipient_address": "<string>",
"transaction_hash": "<string>",
"issues": [
{
"kind": "amount",
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"given": "<string>",
"limits": {
"min": "<string>",
"max": "<string>"
},
"source": "<string>",
"message": "<string>",
"downstream_limits": {
"min": "<string>",
"max": "<string>"
}
}
]
}
],
"client_redirect_url": "<string>",
"geolocation": {
"alpha3_country_code": "<string>",
"state_code": "<string>"
},
"declaration": {},
"completed_at": "2023-11-07T05:31:56Z",
"quote_request": {
"request": {
"kind": "FIXED_INPUT",
"fixed_input_amount": {
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1"
},
"output_asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"dest_address": "<string>",
"custom_actions": {
"actions": [
{
"type": "CallImmediateAction",
"target": "<string>",
"value": "<string>",
"calldata": "<string>"
}
],
"user_estimated_gas": "<string>"
}
},
"price_currency": "USD",
"onramps": [
"moonpay",
"coinbase"
],
"onramp_methods": [
"CREDIT_CARD",
"ACH",
"APPLE_PAY"
],
"customer_ip_address": "<string>",
"customer_id": "<string>",
"parent_payment_id": "<string>",
"label": "<string>",
"features": [],
"rev_share_name": "<string>",
"allow_unsafe_transfer_out": true,
"show_all_issues": true,
"allow_unsafe_slippage": true,
"allow_exceed_max_input_limit": true,
"use_intent_refund": true,
"hops": [
"<string>"
]
},
"customer_id": "<string>",
"label": "<string>",
"next_instruction": {
"type": "ONRAMP",
"payment_id": "<string>",
"funding_page_url": "https://app.halliday.xyz/funding/${payment_id}",
"deposit_info": [
{
"deposit_token": "base:0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"deposit_amount": "4.8",
"deposit_address": "0xaddress",
"deposit_chain": "base"
}
]
},
"issues": [
{
"kind": "amount",
"asset": "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"given": "<string>",
"limits": {
"min": "<string>",
"max": "<string>"
},
"source": "<string>",
"message": "<string>",
"downstream_limits": {
"min": "<string>",
"max": "<string>"
}
}
],
"parent_payment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"errors": [
{
"kind": "other",
"message": "Missing required parameter: payment_id"
}
]
}{
"errors": [
{
"kind": "other",
"message": "Invalid API key"
}
]
}{
"errors": [
{
"kind": "other",
"message": "You do not have permission to view this payment"
}
]
}{
"errors": [
{
"kind": "other",
"message": "Payment with payment_id 'pay_abc123' not found"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Payment identifier to check
Controls whether the WITHDRAW_PENDING status is reported for this payment.
Response
Payment status retrieved successfully!
Organization identifier
PENDING, COMPLETE, FAILED, EXPIRED, WITHDRAW_PENDING, WITHDRAWN, TAINTED, UNCONFIRMED Whether the payment has been funded
Deadline for funding the payment.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Mapping of asset symbols to their unit prices
Show child attributes
Show child attributes
{
"USD": "1.00",
"ethereum:0x": "4200",
"ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48": "1.00"
}
Fiat asset used for pricing
"ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
Show child attributes
Show child attributes
Chain identifier for the owner
Address of the owner of the payment
Address of the destination of the payment
Withdrawals associated with this payment, or null.
Show child attributes
Show child attributes
Client redirect URL
Geolocation of the payment owner, or null.
Show child attributes
Show child attributes
Declaration object
The original quote request.
Show child attributes
Show child attributes
ID of the customer who created the payment
Optional payment label
255Instruction payload that returns the funding pages if the payment requires funding.
- Option 1
- Option 2
Show child attributes
Show child attributes
{
"type": "ONRAMP",
"payment_id": "<string>",
"funding_page_url": "https://app.halliday.xyz/funding/${payment_id}",
"deposit_info": [
{
"deposit_token": "base:0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"deposit_amount": "4.8",
"deposit_address": "0xaddress",
"deposit_chain": "base"
}
]
}
Payment validation issues
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
- Option 9
- Option 10
Show child attributes
Show child attributes
Parent payment reference

