Skip to main content

Void

Struct Void 

Source
pub struct Void {
    pub amount: Option<String>,
    pub created_at: Option<DateTime<Utc>>,
    pub customer_display: Option<OperationCustomerDisplay>,
    pub error: Option<PaymentError>,
    pub external_reference_id: Option<ExternalReferenceId>,
    pub metadata: Option<Metadata>,
    pub onchain_transactions: Vec<OnchainTransaction>,
    pub payment_session_id: Option<PaymentSessionId>,
    pub status: Option<PaymentActionStatus>,
    pub updated_at: Option<DateTime<Utc>>,
    pub void_id: Option<VoidId>,
}
Expand description

A release of uncaptured authorized funds back to the payer. Voids release all remaining capturable funds in a single operation, including after partial refunds as long as a capturableAmount remains.

JSON schema
{
 "description": "A release of uncaptured authorized funds back to the payer. Voids release all remaining capturable funds in a single operation, including after partial refunds as long as a capturableAmount remains.",
 "examples": [
   {
     "amount": "1.00",
     "createdAt": "2025-06-15T12:30:00.000Z",
     "metadata": {
       "customer_id": "cust_12345"
     },
     "onchainTransactions": [
       {
         "network": "base",
         "transactionHash": "0x789012345678901234567890abcdef1234567890abcdef1234567890abcdef12"
       }
     ],
     "paymentSessionId": "paymentSession_82c879c1-84e1-44ed-a8c2-1ac239cf09ad",
     "status": "succeeded",
     "updatedAt": "2025-06-15T12:31:00.000Z",
     "voidId": "void_82c879c1-84e1-44ed-a8c2-1ac239cf09ad"
   }
 ],
 "type": "object",
 "properties": {
   "amount": {
     "description": "A decimal representation of the voided amount, denominated in the session's `asset`.",
     "examples": [
       "1.00"
     ],
     "type": "string"
   },
   "createdAt": {
     "description": "The UTC ISO 8601 timestamp at which the void was created.",
     "examples": [
       "2025-06-15T12:30:00.000Z"
     ],
     "type": "string",
     "format": "date-time"
   },
   "customerDisplay": {
     "description": "Customer-facing display data for this void, shown to the payer. Present when supplied on the create void request or when the session's `orderCode` fallback applies; otherwise omitted.",
     "allOf": [
       {
         "$ref": "#/components/schemas/OperationCustomerDisplay"
       }
     ]
   },
   "error": {
     "$ref": "#/components/schemas/PaymentError"
   },
   "externalReferenceId": {
     "description": "A merchant-provided internal identifier for this void, from the merchant's own system—not visible to the payer. Present only when supplied on the create void request.",
     "examples": [
       "merchant-void-abc123"
     ],
     "allOf": [
       {
         "$ref": "#/components/schemas/ExternalReferenceId"
       }
     ]
   },
   "metadata": {
     "$ref": "#/components/schemas/Metadata"
   },
   "onchainTransactions": {
     "description": "The onchain transactions associated with this void.",
     "examples": [
       [
         {
           "network": "base",
           "transactionHash": "0x789012345678901234567890abcdef1234567890abcdef1234567890abcdef12"
         }
       ]
     ],
     "type": "array",
     "items": {
       "$ref": "#/components/schemas/OnchainTransaction"
     }
   },
   "paymentSessionId": {
     "description": "The ID of the payment session this void belongs to.",
     "examples": [
       "paymentSession_82c879c1-84e1-44ed-a8c2-1ac239cf09ad"
     ],
     "allOf": [
       {
         "$ref": "#/components/schemas/PaymentSessionId"
       }
     ]
   },
   "status": {
     "description": "The current status of the void.",
     "examples": [
       "pending"
     ],
     "allOf": [
       {
         "$ref": "#/components/schemas/PaymentActionStatus"
       }
     ]
   },
   "updatedAt": {
     "description": "The UTC ISO 8601 timestamp at which the void was last updated.",
     "examples": [
       "2025-06-15T12:31:00.000Z"
     ],
     "type": "string",
     "format": "date-time"
   },
   "voidId": {
     "description": "The unique identifier of the void.",
     "examples": [
       "void_82c879c1-84e1-44ed-a8c2-1ac239cf09ad"
     ],
     "allOf": [
       {
         "$ref": "#/components/schemas/VoidId"
       }
     ]
   }
 }
}

Fields§

§amount: Option<String>

A decimal representation of the voided amount, denominated in the session’s asset.

§created_at: Option<DateTime<Utc>>

The UTC ISO 8601 timestamp at which the void was created.

§customer_display: Option<OperationCustomerDisplay>

Customer-facing display data for this void, shown to the payer. Present when supplied on the create void request or when the session’s orderCode fallback applies; otherwise omitted.

§error: Option<PaymentError>§external_reference_id: Option<ExternalReferenceId>

A merchant-provided internal identifier for this void, from the merchant’s own system—not visible to the payer. Present only when supplied on the create void request.

§metadata: Option<Metadata>§onchain_transactions: Vec<OnchainTransaction>

The onchain transactions associated with this void.

§payment_session_id: Option<PaymentSessionId>

The ID of the payment session this void belongs to.

§status: Option<PaymentActionStatus>

The current status of the void.

§updated_at: Option<DateTime<Utc>>

The UTC ISO 8601 timestamp at which the void was last updated.

§void_id: Option<VoidId>

The unique identifier of the void.

Implementations§

Trait Implementations§

Source§

impl Clone for Void

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Void

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Void

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Void

Source§

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<&Void> for Void

Source§

fn from(value: &Void) -> Self

Converts to this type from the input type.
Source§

impl From<Void> for Void

Source§

fn from(value: Void) -> Self

Converts to this type from the input type.
Source§

impl Serialize for Void

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl TryFrom<Void> for Void

Source§

type Error = ConversionError

The type returned in the event of a conversion error.
Source§

fn try_from(value: Void) -> Result<Self, ConversionError>

Performs the conversion.

Auto Trait Implementations§

§

impl Freeze for Void

§

impl RefUnwindSafe for Void

§

impl Send for Void

§

impl Sync for Void

§

impl Unpin for Void

§

impl UnsafeUnpin for Void

§

impl UnwindSafe for Void

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more