When you`re hired on an hourly contract, every Monday your client will be billed for the time tracked in the previous week.
When a fixed price contract is formed, the client will be able to open a milestone for you. You will need to use the milestone to send the completed work to your client, once the agreed project/tasks are finished.
To learn more about getting started on Upwork and how it works, check out our resources Here. Thank you.
Hourly contracts are always billed to the client and paid to the freelancer on a weekly basis, so that doesn't really work if you agree with the client that they will only pay you once a month.
One possible solution would be for your client to set up a milestone for each month's payment amount for each month they want you to work for them and you then could submit for payment of that milestone on the agreed day each month. The client can then immediately release payment to you, but they will also have at least 14 days after your submission before payment is automatically released to you. Or they could delay actual payment to you even longer.
Make sure each milestone is fully funded before you start work each month. If a milestone isn't fully funded, there is the possibility the client can cancel the project at any time and you will then have no recourse to ever get paid through Upwork.
Don't start work on a new milestone until the client has released all previous milestones for full payment to you.
If there is a better option for you, I'm sure someone else here will let you know.