Short version: if Congress allocates funds to a particular use, they must be spent by end of fiscal year (9/30) and not delayed for more than 45 days - this is not subject to Executive choice not to.
Congress said “give Ukraine $X etc”, so Trump was obliged to. He just pushed the limits for maximum effect, and the worst which the Democrats can accuse him of is _maybe_ delaying 3 days more than he’s allowed to. Maybe.
Not true, especially in the sphere of Foreign Affairs where conditions can change on a dime while Congressional spending allocation moves glacially. There had been major political changes in Ukrainethe election of a new, untested President, then a new majority political party since Congress supposedly voted a specific amount of money for Ukraine aid.
First of all, Congress deciding how much Foreign aid and when it must be delivered is not their function, that constitutionally is a function given to the President. Congress allocates a specific amount of money for the purpose of foreign aid, but what is done with it is a presidential prerogative.
If Congress, specifically the House, could designate which nation, when, and the amount of aid, then it would be the House, and not the President, which would be unconstitutionally making and directing Foreign Policy. We would see foreign nations lobbying Congressmen for aid. . . oh, wait we do.