## Integrated Pre-Authorisation — Closing & Voiding ## Closing a Pre-Authorisation Closing a pre-auth finalises the transaction and charges the customer the specified amount. ### Event-Based Method ```c# IPreAuthCompletionResult ClosePreAuth( string completionReference, int amount, string? merchantID = null, string? terminalID = null ) ``` ### Task-Based Method ```c# Task ClosePreAuthAsync( string completionReference, int amount, string? merchantID = null, string? terminalID = null ) ``` ## Voiding a Pre-Authorisation Voiding a pre-auth releases the hold on the customer’s funds without charging them. ### Event-Based Method ```c# IPreAuthCompletionResult VoidPreAuth( string completionReference, string? merchantID = null, string? terminalID = null ) ``` ### Task-Based Method ```c# Task VoidPreAuthAsync( string completionReference, string? merchantID = null, string? terminalID = null ) ``` Closing or voiding a pre-authorisation does not require the terminal to be connected.