Journal Entry Batch issue with project and Transaction codes

Hi,

I have below Journal batch entry where one entry is for credit and another is for debit and this is created with FENXT portal. Now here if you see that I requires to set Project & Transaction Code values for Debit entry and not required for Credit entry. And this Batch saved and validated.

5c071d092a7383250135dc164c40f0bb-huge-im

Now when i retrieve this same batch through SKY api it returns the below response which is fine

{
"batch_id": 606,
"ui_batch_id": "442",
"description": "Card Transactions MM-DD-YY-#",
"batch_status": "Open",
"create_interfund_sets": true,
"create_bank_account_adjustments": false,
"source_base_url": "",
"source_system_name": "",
"journal_entries": [
{
"journal_entry_id": 117487,
"type_code": "Debit",
"line_number": 1,
"account_number": "01-5790-00",
"post_date": "2013-01-31T00:00:00",
"encumbrance": "Regular",
"journal": "Journal Entry",
"reference": "expense",
"amount": 100,
"notes": "",
"relative_source_url": "",
"distributions": [
{
"distribution_id": 133625,
"ui_project_id": "1100",
"account_class": "Unrestricted Net Assets",
"transaction_code_values": [
{
"name": "Grants",
"value": "None",
"id": 1,
"inactive": false
},
{
"name": "Spendable/Non-Spendable 2",
"value": "Spendable",
"id": 2,
"inactive": false
},
{
"name": "Performance",
"value": "",
"id": 3,
"inactive": false
},
{
"name": "The Raiser's Edge",
"value": "",
"id": 4,
"inactive": false
},
{
"name": "",
"value": "",
"id": 0,
"inactive": false
}
],
"amount": 100,
"percent": 100
}
],
"custom_fields": [],
"reverse_date": null,
"reverse_transaction_id": 0
},
{
"journal_entry_id": 117488,
"type_code": "Credit",
"line_number": 2,
"account_number": "01-2000-00",
"post_date": "2013-01-31T00:00:00",
"encumbrance": "Regular",
"journal": "Journal Entry",
"reference": "liab",
"amount": 100,
"notes": "",
"relative_source_url": "",
"distributions": [
{
"distribution_id": 133626,
"ui_project_id": "",
"account_class": "Unrestricted Net Assets",
"transaction_code_values": [
{
"name": "Grants",
"value": "",
"id": 1,
"inactive": false
},
{
"name": "Spendable/Non-Spendable 2",
"value": "",
"id": 2,
"inactive": false
},
{
"name": "Performance",
"value": "",
"id": 3,
"inactive": false
},
{
"name": "The Raiser's Edge",
"value": "",
"id": 4,
"inactive": false
},
{
"name": "",
"value": "",
"id": 0,
"inactive": false
}
],
"amount": 100,
"percent": 100
}
],
"custom_fields": [],
"reverse_date": null,
"reverse_transaction_id": 0
}
],
"date_added": "2025-01-29T14:22:31.89",
"date_modified": "2025-01-30T10:41:34.887"
}

But now when i am trying to same request through the api it requires the project, transaction code values as like below and if i am not specifying project in credit entry then it throws "You must specify a project for transactions in fund 01" error.

{
"description": "Nikunj's Test Journal Entry 6",
"create_interfund_sets": true,
"create_bank_account_adjustments": false,
"journal_entries": [
{
"type_code": "Debit",
"account_number": "01-5790-00",
"post_date": "2013-07-02T00:00:00Z",
"encumbrance": "Regular",
"journal": "Journal Entry",
"reference": "Debit reference",
"amount": 10,
"distributions": [
{
"ui_project_id": "1100",
"transaction_code_values": [
{
"name": "Grants",
"value": "None"
},
{
"name": "Spendable/Non-Spendable 2",
"value": "Spendable"
}
],
"amount": 10
}
]
},
{
"type_code": "Credit",
"account_number": "01-4900-03",
"post_date": "2013-07-02T00:00:00Z",
"encumbrance": "Regular",
"journal": "Journal Entry",
"reference": "Credit reference",
"amount": 10,
"distributions": [
{
"ui_project_id": "",
"transaction_code_values": [
{
"name": "Grants",
"value": "None"
},
{
"name": "Spendable/Non-Spendable 2",
"value": "Spendable"
}
],
"amount": 10
}
]
}
]
}


So i am not sure why without project or transaction code from portal its working and not working through the api. Please help me with this.