It is possible using extended web service endpoint. Please find the sample customization attached.
Sample API call:
PUT {{instance}}/entity/WithRetainage/1/Bill
Sample Request body (should work with the SalesDemo data)
{
"Amount": {
"value": 0.0000
},
"ApprovedForPayment": {
"value": false
},
"Balance": {
"value": 0.0000
},
"BranchID": {
"value": "PRODWHOLE"
},
"CashAccount": {
"value": "10200"
},
"CurrencyID": {
"value": "USD"
},
"Date": {
"value": "2025-02-12T00:00:00-05:00"
},
"Description": {},
"DueDate": {
"value": "2025-03-14T00:00:00-04:00"
},
"Hold": {
"value": true
},
"IsTaxValid": {},
"LastModifiedDateTime": {
"value": "2025-03-04T16:57:17.81-05:00"
},
"LocationID": {
"value": "MAIN"
},
"PostPeriod": {
"value": "022025"
},
"Project": {
"value": "X"
},
"RetainageApply": {
"value": true
},
"RetainageDetails": {
"DefaultRetainagePercent": {
"value": 0.000000
},
"custom": {}
},
"Status": {
"value": "On Hold"
},
"TaxTotal": {
"value": 0.0000
},
"Terms": {
"value": "30D"
},
"Type": {
"value": "Bill"
},
"Vendor": {
"value": "AASERVICES"
},
"VendorRef": {
"value": "1"
}
}
On the above Request “DefaultRetainagePercent” is set to 0.
The extended endpoint point is created and Retainage details is added to the bill entity