Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JSON de/serialization error #42

Open
DeanOutlaw opened this issue Aug 1, 2022 · 1 comment
Open

JSON de/serialization error #42

DeanOutlaw opened this issue Aug 1, 2022 · 1 comment

Comments

@DeanOutlaw
Copy link

Using the createPayRun in the AU payroll SDK sample returns error
Error occurred during JSON de/serialization. Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'Paycycle.API.DTO.AU.PayRun.UpdatePayRunRequest' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.
To fix this error either change the JSON to a JSON array (e.g. [1,2,3]) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List<T>) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object.
Path 'PayrollCalendarID', line 1, position 21.
I copied the example code directly into my script and replaced the setPayrollCalendarID and other settings.

@michaelphipps
Copy link

I realise this is old, but the answer might help someone else.

createPayRun is expecting an array of payruns, not a single payrun. Wrap the payrun in an array, and it should work.

$payRunResult = $obj->payrollAuApi->createPayRun($obj->tenant_id, [$payRun]);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants