How to Override Credit Hold Verification
Overview
Sometimes business logic requires preventing sales orders from being automatically placed on Credit Hold under specific conditions. For example, a customer may have unapplied payments or credit memos that haven't been processed yet, resulting in a negative balance, but the system still triggers a credit hold.
This article shows how to override the standard credit verification logic in Acumatica to add custom conditions.
Understanding Credit Verification
In Acumatica, customer credit verification is handled by the SOOrderCustomerCredit graph extension for Sales Orders. This extension applies credit rules and places orders on hold when customers fail credit checks based on Credit Limit, Days Past Due, or both.
Overriding the Verification Logic
To add custom conditions, you need to use PXProtectedAccess to access protected methods and override the ApplyCreditVerificationResult method.
Step 1: Create Base Extension
First, create an abstract extension to expose the protected method:

Step 2: Override Verification Method
Create the main extension with your custom logic:

How It Works
When Acumatica performs credit verification and creates a CreditVerificationResult with an error (triggering Credit Hold), this extension intercepts it. If your custom conditions are met, you create a new empty CreditVerificationResult object, which prevents the credit hold from being applied.
This approach allows you to bypass automatic credit holds in specific business scenarios while maintaining overall credit control.