Hello
I'm working on an AP integration in Acumatica 2025 R2 using a custom payment method (CUSTOM)
I'm encountering an issue with the native Void functionality on the Checks and Payments screen (AP302000).
Issue:
When I attempt to void a released AP payment using the CUSTOM payment method, Acumatica executes the native VoidCheck() method and creates the Voided Check (VCK) document in the cache. However, the new document is not saved to the database.
The same native void functionality works correctly when using a standard Acumatica payment method.
Current implementation:
I have a graph extension for APPaymentEntry with the following override, which simply calls the native method without any additional processing:
public delegate IEnumerable VoidCheckDelegate(PXAdapter adapter);
[PXOverride]
public IEnumerable VoidCheck(
PXAdapter adapter,
VoidCheckDelegate base_VoidCheck)
{
APPayment payment = Base.Document.Current;
if (payment == null)
return base_VoidCheck(adapter);
if (payment.PaymentMethodID == "CUSTOM")
{
PXTrace.WriteInformation(
"Testing native void for custom payment.");
return base_VoidCheck(adapter);
}
return base_VoidCheck(adapter);
}Debugging findings:
After the native VoidCheck() executes, I can see the newly created VCK document with the following values:
-
DocType: VCK
-
PaymentMethodID: CUSTOM
-
VoidAppl: true
-
Released: false
-
Hold: true
-
Status: H (On Hold)
-
CacheStatus: Inserted
However, the document is not persisted to the database.

I also tried calling Base.Save.Press() after the native void execution, but received the following error:
"Your changes cannot be saved due to the status of the record stored in the APPayment.status field. Modify the record so that its status changes, and then save it."
Questions:
-
Does the native
APPaymentEntry.VoidCheck()workflow support custom payment types, or are there additional workflow configurations required for a custom payment type such asEBZ? -
Why would the new VCK document have
Status = HandHold = true, but still fail validation when saving? -
Is there a recommended way to extend the native void document creation or workflow initialization for a custom payment method without replacing or overriding the native
VoidCheckProc()logic? -
Is there a specific workflow configuration or validation in AP302000 that I should investigate?
My goal is to retain the standard Acumatica void functionality and avoid duplicating native void processing.
Any guidance would be appreciated.
Thanks!