Introducing Acumatica Cloud ERP: 2026R2
Technical discussions focused on Web Services and APIs for developers
Recently active
Hello,We would like to know what are the options (and costs involved, if any) to have access to a Sandbox Accumatica instance where we can develop and test integrations via web API calls. It would be like a NFR licenses companies use to offer to development partners.We don't plan to sell any specific Acumatica plugins or applications but only to provide consulting services for companies already using Acumatica and demanding integrations with other platforms.Also, we don't want to be reseller or a company that implements Acumatica so I think ISV level partnership isn't necessary.Thank you,Fernando.
Until two weeks ago my integration was working. But for the last two weeks (since March 7th, 2026) I can't make it succeed no more.For context:I'm also downloading many other tables. Sometimes we get 5xx but with retries is enough. For many other integrations (other clients) things are working fine.The problem:As I need to download all the Journals, I'm applying this strategy:I define a date range to $filter: 30 days. Within that range, I paginate with $top=1000 + $skip to fetch all the journals in the period. Then I choose the previous period and repeat (moving backwards until there are no previous journals).I could retrieve a couple of pages, then I started getting timeouts from my side after waiting 10 minutes for a request to finish. Even retrying 5 times. No success. Example request:HTTP Request: GET my.acumatica.com/entity/Default/24.200.001/JournalTransaction?%24filter=LastModifiedDateTime+ge+datetimeoffset%272026-02-15T15%3A46%3A19.303Z%27+and+LastModifiedDateTime+lt+datetimeof
Hello Team, I am getting error while order creation sending with payment details via api.Request- Description:While creating a Sales Order with payment via API, the system throws an error during AR Payment creation. The payment is being passed in the payload, including Cash Account and Payment Method, but the system is not recognizing the Cash Account and fails validation.Error Message:Inserting 'AR Payment' record raised at least one error. Please review the errors.CashAccountID: 'Cash Account' cannot be empty.Steps to Reproduce: Create a Sales Order via API. Include Payment details in the request (PaymentMethod = CASH, CashAccount = 10250). Submit the request.
I’m looking for instructions or an example on how to set the “Apply Retainage” checkbox on an AR Invoice via an API. It’s very easy to do in the UI and works exactly how we’d like. We’ve enabled the Retainage features, and extended the Invoice endpoint to include RetainageApply and RetainagePct fields; however, they’re not not being triggered when sent as “:true” etc. through the API. Checking other sources online has lead to solutions that didn’t actually work, or were related to AP bills. Any help would be appreciated!
Has anyone done an integration between the WMS solution Deposco & Acumatica?
Hello,I am trying to create order with payment details, but I am getting error “Inserting 'AR Payment' record raised at least one error. Please review the errors.\nCashAccountID: 'Cash Account' cannot be empty” even I am sending payment method to my payload. In my acumatica, I have two branches- BLASTLINE and STANIOS. For blasline, I didnt get any error when I am passing payment details. But when I am changing the branch with Stanios, it start giving me above error. Please help me in that. order creation payload- Thank you RegardsNamrata
Hello. I’m trying to create a REST call to update a Sales Order record, and at the same time (if possible) to create a Change Order related to it.In my instance, the Change Orders are here, under this tab inside the Sales Order: The reason why I need to create this record, along with my update to the Sales Order, is that my instance currently has a validation which requires to create a Change Order every time that the Sales Order is updated. For example, In the UI I see this prompt: Without this record, the changes made to the SO aren’t saved to the database. Thanks, any advice would be greatly appreciated.
Hello everyone, I wanted to share a small but important detail about REST API behavior differences between Classic UI and Modern UI. I think the general expectation is that UI changes do not/should not affect API behavior. But it’s not completely true. The REST API behavior does depend on the UI of the mapped screen. The order of containers in which REST API processes the request is bound to the order these containers are defined in aspx.E.g. if you have the following mapping structure the order of writing Details and TaxDetails depends on which of these containers is defined first in the aspx of the screen.{"DocType": {"value":"Invoice"}, "RefNbr": {"value":"012345"}"Details": [...]"TaxDetails": [...]}When a user switches UI to the modern one, we do not have aspx anymore. But now, the order will be taken from the typescript definition of the screen. The same rule applies - the first container defined in the typescript will be processed first by the API. That may cause an issue. If th
I am curious if anyone else is using claude code to help with integrations with Acumatica. Specifically Skills and Agents that assist in building with the REST API.
Hello. I’m using the Acumatica API to update one field inside the Sales Order entity.This field is ‘Terms’, a relationship field in which users can select a Credit Terms record, to set it as parent.I was using my Default web service endpoint, version 23.200.001. I made a Query to a Sales Order to see if the ‘Terms’ field was returned, but it wasn’t returned.So, I created a new Web Service Endpoint, extending the Default one. Then I went to the Sales Order entity and added a new entry for the Terms field, like in this picture: Currently we have these Terms records available:Now when I use my custom endpoint ‘SalesOrderTerms’, and execute a GET to query one Sales Order, the Terms are returned. All fine until here.But, when I try to execute a PUT call to update the Terms field, the field is not updated. This is my call:Method: PUTURL: https://<host-name>/entity/SalesOrderTerms/23.200.001/SalesOrder?$filter=OrderNbr%20eq%20'013381'Payload:{ "Terms": { "value": "NET20"
Hello, I am new to Acumatica and I am facing this same issue when integrating with service using the web service endpoints, for the Inventory Adjustment.So, a service that should call this api end point only has the inventory id and how much qty with a reason code, and no other data.So when looking at how Acumatica does the process of inventory Adjustments, I was confused with the ReceiptNbr.When testing the service on my local instance using Postman:this request works but I don’t know how can I find this value when sending the put request.How will my api call determine which ReceiptNbr to use for a specific InventoryID, cause if I don’t put this I get an error:error I am getting when not putting the receiptNbr in my put end-point So, I would love if someone already faced this issue and can tell me what solution they implemented.Or is there something I am missing so I don’t have to put ReceiptNbr in the request, and how Acumatica can figure it out?
Hi Everyone, I’m trying to add the Bank Deposit (CA305000) to a custom endpoint, however I’m struggling with getting the payment details to populate.I have no issue with adding the Header or the charges, but I’ve tried a bunch of different ways of adding the payments without any success.Below is how I have the endpoint at the moment however I have tried it with the AddPaymentDetail not being nested within AddPayment as well as trying to add the payments directly through Payments.When I submit a request the record will create however the payment detail will be emptyThe closest I can got to having it look like it is trying to add the payments is if I omit the DocModule property of $.AddPayment.Payments[*] then I receive the following error.Any help here would be greatly appreciated.
Hi,Building an integration with Shopify for a client. I am using custom fields to store the order ID keys and there is a PXCheckUnique in place on this field to prevent duplication. #region UsrMAXXShopifyOrderID [PXDBString(30)] [PXCheckUnique( Where = typeof(Where<SOOrderExt.usrMAXXShopifyOrderID, Equal<Current<SOOrderExt.usrMAXXShopifyOrderID>>>))] [PXUIField(DisplayName = "Shopify Order ID", Enabled = false)] public string UsrMAXXShopifyOrderID { get; set; } public abstract class usrMAXXShopifyOrderID : PX.Data.BQL.BqlString.Field<usrMAXXShopifyOrderID> { } #endregionThis validation works as expected in the UIHowever, if an identical request is made then in the response all Usr fields that are on the SOOrder object are null and the order is created without any of these fields created. (There is a Usr field on the SOLine that is still populated)I have done integrations for other clients
Hi all,I’m currently trying to receive the owner data of a shipment using the REST API.The response of GET /entity/Default/24.200.001/Shipment/<ShipmentNbr> contains the contact ID:... "OverrideFreightPrice": { "value": false }, "Owner": { "value": "56" }, "PackageCount": { "value": 4 }...However, I can’t request more information about the contact.The owner of a shipment is an employee. But the REST endpoint /entity/Default/24.200.001/Employee does not contain the ContactID.Is there any other endpoint that can be used?Thanks in advance!
Has anyone built out a Toast Integration in the marketplace?
Does anyone have an equation that can turn a negative to a positive amount in integrations. Our client integrates several thousand transactions and a handful (maybe a hundred) sometimes have a negative amount in the Debit and Credit field. This is happening because of how they are entered in the originating system. I have tried a few equations but keep getting errors. =IIf( [Debit Amount]>0, [Debit Amount], [Debit Amount]*-1)Cannot perform the ‘*’ Operation on System.String and System.Int32. I have tried double and decimal formats and still get this error. =ABS([Credit Amount])An error has occurred while the Abs(Identifier(Debit Amount)) function was being executed: ‘Type mismatch in the argument 1 of the Abs() function: Expected on of the Integer types.’ I have tried the Int32, double, and string types. I use this in excel. Not sure if the function actually works in Acumatica but thought I’d give it a try.
I have an Inventory with underscore eg. TEST_1 with the same description.If i make a request with ?$filter=InventoryId eq ‘TEST_1’ it cannot find it but it can find it with ?$filter=Description eq ‘TEST_1’. I CAN also find with ?$filter=InventoryId eq ‘TEST_1’ it but when I query a GI with Odata, but not with Rest API.This is the case for all items with underscore, any ideas? My segmented keys for items are question marks and not underscores.
According to Shopify Support Team, Shopify's API access tokens for merchants using the client credentials grant will expire every 24 hours starting January 2026.And Legacy custom app connections still rely on static API access tokens and secret keys without a refresh flow.Since the Acumatica public app uses OAuth for authentication, the token refresh mechanism would typically be part of the OAuth flow, however, the available Acumatica documentation and Shopify release notes do not detail any Shopify-specific token refresh implementation on the connector side.Please confirm whether the Acumatica connector handles the 24-hour token refresh automatically or if manual intervention is required.
Having issues trying to Import the Acumatica Endpoint as a Postman collection.It was working in previous but now it appears to start making the collection, then it disappears and shows Import Failed.I’m thinking it is to do with the size of the collection as I can create a small custom Endpoint and it imports using the JSON/Swagger/URL data, but trying to use the full Default endpoint fails. Any other ideas or workarounds to try?
When creating a new record - is it possible to exclude certain fields from the response?
I’m working on a utility that can bulk test the configuration mapping software we’ve written, which converts a design from our design tool to an Acumatica configuration. Right now the only way I’ve been able to test is by adding a line item to a sales order with the proper SKU, and then reviewing the generated configuration on that line item once our software runs. This becomes very time consuming when I’m testing in bulk, and it would be much simpler if I could pull down only the blank configuration template by SKU and revision number, and let our software fill that out. I saw that there is a “Test Configuration” tool when editing a configuration from the Configuration Maintenence screen, but I don’t see an API endpoint that can give me that data. Any help to point me in the right direction would be greatly appreciated.
In Acumatica, on screen AR302000, I have a Closed payment that I want to change to Voided Payment using the APIs. In the UI, the process is simple: we click VOID, then REMOVE HOLD, and the document becomes voided.The VOID button triggers the action /24.200.001/Payment/VoidCheck, and the REMOVE HOLD button triggers /24.200.001/Payment/ReleaseFromHold.I called these two APIs sequentially. The first one returned 204, but the second one failed because the payment is not placed on hold after running VoidCheck, meaning Acumatica does not allow ReleaseFromHold.Here is the payload I’m sending for the first API call:json{ "entity": { "ReferenceNbr": { "value": "000025" } }}And here is the payload I’m sending for the second API call:json{ "entity": { "id": "eed4ab6d-ccd5-f011-a83a-6045bd6d244f", "ReferenceNbr": { "value": "000025" }, "Hold": { "value": true // I also have tried false }, "Type": {
I am using REST API to insert a record. Normally, when you manually insert the record from the UI screen, we have custom logic to throw a warning by using e.Cache.RaiseExceptionHandling and PXSetPropertyException and PXErrorLevel.Warning. This allows the user to insert the record with no issues and then later on when they click a “Validate” button in the workflow of that screen our logic will decide what to do.The problem is that when inserting this same record using REST API we do not see that warning reflected back in the JSON response. It seems that the only way to see the error reflected back is to actually have an error be thrown rather than just a warning.It would be pretty simple to just save this warning to a field and then add that field to our endpoint.BUT I would like to know if there are any better ways to do this?
In our application we are creating Purchase Order Receipts and they had been working fine, but we had not used this function for 6 months or so and are using it again. We are getting this errorGuzzleHttp\Exception\ClientException: Client error: `PUT https://prestigesalonproducts.acumatica.com/entity/ORDIO/20.200.001/PurchaseReceipt` resulted in a `422 Unprocessable Entity` response: {"id":"15468762-cac9-ee11-65424-12a215648465216","rowNumber":1,"note":null,"error":"'POAccrualAcctID' cannot be empty.; Here is our codereturn [ 'note' => $receipt->comment, 'VendorID' => ['value' => $po->vendor_id], 'PostPeriod' => ['value' => now()->format('mY')], 'Details' => collect($receipt->products)->map(function ($product, $key) use ($po) { return [ 'InventoryID' => ['value' => $product->inventory_id], 'ReceiptQty' => ['value' => $product->qty],
If I have a script that is polling an API from an external system and then transforming the data and writing to Acumatica - what is the best free way to host that script so it can run on a schedule?So far it runs in my VM in the background but I want to know if there are any better or fully free options.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.