pub struct CreateDisbursementRequest {
pub amount: String,
pub asset: Asset,
pub compliance: Option<DisbursementCompliance>,
pub customer_display: Option<CreateDisbursementRequestCustomerDisplay>,
pub external_reference_id: Option<CreateDisbursementRequestExternalReferenceId>,
pub metadata: Option<Metadata>,
pub reason: Option<String>,
pub source: DisbursementSource,
pub target: DisbursementTarget,
}Expand description
A request to create a disbursement.
JSON schema
{
"description": "A request to create a disbursement.",
"examples": [
{
"amount": "25.00",
"asset": "usdc",
"compliance": {
"recipient": {
"address": {
"city": "Austin",
"countryCode": "US",
"line1": "456 Oak Ave",
"postCode": "78701",
"state": "TX"
},
"name": "Jane Smith"
}
},
"customerDisplay": {
"merchantName": "Acme Store",
"referenceCode": "REF-ABC123"
},
"externalReferenceId": "disbursement-2026-04-1234",
"metadata": {
"customer_id": "cust_12345",
"order_id": "order_67890"
},
"reason": "Goodwill disbursement for delayed shipment.",
"source": {
"accountId": "account_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"asset": "usdc"
},
"target": {
"coinbaseUserId": "coinbase_user_abc123"
}
}
],
"type": "object",
"required": [
"amount",
"asset",
"source",
"target"
],
"properties": {
"amount": {
"description": "A decimal representation of the amount to disburse, denominated in `asset`.",
"examples": [
"25.00"
],
"type": "string"
},
"asset": {
"description": "The symbol of the asset for the disbursement amount.",
"examples": [
"usdc"
],
"allOf": [
{
"$ref": "#/components/schemas/Asset"
}
]
},
"compliance": {
"description": "Compliance context for this disbursement. Carries recipient information required by some entity configurations to meet regulatory requirements.",
"writeOnly": true,
"allOf": [
{
"$ref": "#/components/schemas/DisbursementCompliance"
}
]
},
"customerDisplay": {
"description": "Display information shown to the recipient for this disbursement. If `referenceCode` is omitted, one is generated.",
"allOf": [
{
"$ref": "#/components/schemas/OperationCustomerDisplay"
},
{
"type": "object",
"properties": {
"merchantName": {
"description": "The merchant name to display to the recipient. When provided, this overrides the default merchant name configured for your entity. If omitted or empty, the default name is used. Useful when a merchant operates multiple storefronts or brands under a single entity.",
"examples": [
"Acme Store"
],
"type": "string",
"maxLength": 128,
"x-audience": "public"
}
},
"x-audience": "public"
}
]
},
"externalReferenceId": {
"description": "An identifier from your system for tracking this disbursement. Not shown to the recipient. Must not contain personally identifiable information (PII) or payment credentials.",
"examples": [
"disbursement-2026-04-1234"
],
"type": "string",
"maxLength": 256
},
"metadata": {
"$ref": "#/components/schemas/Metadata"
},
"reason": {
"description": "Human-readable reason for the disbursement.",
"examples": [
"Goodwill disbursement for delayed shipment."
],
"type": "string"
},
"source": {
"description": "The source from which to fund the disbursement.",
"examples": [
{
"accountId": "account_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"asset": "usdc"
}
],
"allOf": [
{
"$ref": "#/components/schemas/DisbursementSource"
}
]
},
"target": {
"description": "The target receiving the disbursement.",
"examples": [
{
"coinbaseUserId": "coinbase_user_abc123"
}
],
"allOf": [
{
"$ref": "#/components/schemas/DisbursementTarget"
}
]
}
}
}Fields§
§amount: StringA decimal representation of the amount to disburse, denominated in asset.
asset: AssetThe symbol of the asset for the disbursement amount.
compliance: Option<DisbursementCompliance>Compliance context for this disbursement. Carries recipient information required by some entity configurations to meet regulatory requirements.
customer_display: Option<CreateDisbursementRequestCustomerDisplay>§external_reference_id: Option<CreateDisbursementRequestExternalReferenceId>An identifier from your system for tracking this disbursement. Not shown to the recipient. Must not contain personally identifiable information (PII) or payment credentials.
metadata: Option<Metadata>§reason: Option<String>Human-readable reason for the disbursement.
source: DisbursementSourceThe source from which to fund the disbursement.
target: DisbursementTargetThe target receiving the disbursement.
Implementations§
Source§impl CreateDisbursementRequest
impl CreateDisbursementRequest
pub fn builder() -> CreateDisbursementRequest
Trait Implementations§
Source§impl Clone for CreateDisbursementRequest
impl Clone for CreateDisbursementRequest
Source§impl Debug for CreateDisbursementRequest
impl Debug for CreateDisbursementRequest
Source§impl<'de> Deserialize<'de> for CreateDisbursementRequest
impl<'de> Deserialize<'de> for CreateDisbursementRequest
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<&CreateDisbursementRequest> for CreateDisbursementRequest
impl From<&CreateDisbursementRequest> for CreateDisbursementRequest
Source§fn from(value: &CreateDisbursementRequest) -> Self
fn from(value: &CreateDisbursementRequest) -> Self
Converts to this type from the input type.
Source§impl From<CreateDisbursementRequest> for CreateDisbursementRequest
impl From<CreateDisbursementRequest> for CreateDisbursementRequest
Source§fn from(value: CreateDisbursementRequest) -> Self
fn from(value: CreateDisbursementRequest) -> Self
Converts to this type from the input type.
Source§impl TryFrom<CreateDisbursementRequest> for CreateDisbursementRequest
impl TryFrom<CreateDisbursementRequest> for CreateDisbursementRequest
Source§type Error = ConversionError
type Error = ConversionError
The type returned in the event of a conversion error.
Source§fn try_from(value: CreateDisbursementRequest) -> Result<Self, ConversionError>
fn try_from(value: CreateDisbursementRequest) -> Result<Self, ConversionError>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for CreateDisbursementRequest
impl RefUnwindSafe for CreateDisbursementRequest
impl Send for CreateDisbursementRequest
impl Sync for CreateDisbursementRequest
impl Unpin for CreateDisbursementRequest
impl UnsafeUnpin for CreateDisbursementRequest
impl UnwindSafe for CreateDisbursementRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more