If you do a Trace on the Client you’ll see a call to Customer.Update bo with the following payload. Yo should be able to easily piggy back off this to run your logic and do your checkbox checking.
Notice that an attachment on ShipTo will have a Record Added RowMod=“A” on ShipAttach table, vs a Customer attachment would have a Record Added RowMod=“A” on CustomerAttach table.
{
"method": "POST",
"url": "https://TLD.EPICOR.SERVER/epicorkineticgold/api/v1/Erp.BO.CustomerSvc/Update",
"queryParams": {},
"headers": {
"Content-Type": "application/json",
"callSettings": "{\"Company\":\"C001\",\"Plant\":\"040\"}",
"x-epi-request-etag": "true",
"x-epi-extension-serialization": "full-metadata",
"Accept": "application/json, text/plain, */*"
},
"body": {
"ds": {
"CustomerFSPriceList": [],
"MXCustomerFiscalText": [],
"CustBank": [],
"CustBillTo": [],
"CustChild": [],
"CustDfltDocType": [],
"CustIC": [],
"CustLabExpRate": [],
"CustMandate": [],
"CustMFBill": [],
"CustomCrdPool": [],
"Customer": [],
"CustomerAttch": [],
"CustomerDiscPriceLst": [],
"CustomerDocs": [],
"CustomerDocsSH": [],
"CustomerPriceLst": [],
"CustRestriction": [],
"CustUPSEmail": [],
"EntityGLC": [],
"GlbCustCred": [],
"MangCust": [],
"NAMember": [],
"Partner": [],
"PECustWhldHist": [],
"ShipTo": [],
"ShipToAttch": [
{
"Company": "C001",
"CustNum": 3643,
"ShipToNum": "1",
"DrawingSeq": 0,
"XFileRefNum": 0,
"SysRevID": 0,
"SysRowID": "00000000-0000-0000-0000-000000000000",
"ForeignSysRowID": "00000000-0000-0000-0000-000000000000",
"DrawDesc": "BOM2.xlsx.Errors.txt",
"FileName": "a5d8fbf3-8086-ef11-a827-000d3acf90ae;\\C001\\ApInv\\ShipTo\\BOM2.xlsx.Errors.txt",
"PDMDocID": "",
"DocTypeID": "ApInv",
"RowMod": "A"
}
],
"ShipToDiscPriceLst": [],
"ShipToLabExpRate": [],
"ShipToMFBill": [],
"ShipToPriceLst": [],
"ShipToRestriction": [],
"ShipToSrch": [],
"ShipToUPSEml": [],
"TaxExempt": []
}
}
}