Here is the syntax for the patch function:
Patch(SP_List_Name, {column1: number, column2: "string", column3: true, etc...});
What this does is it will create a new entry in your SP list and will pass the values inside the { } into the columns you defined in the { } as well.
Things to keep in mind:
1) required columns must be present in the Patch statement or they will throw an error. (also remember that the title column on a new SP list is by default required so either change that or make sure you patch title)
2) if you want to edit an entry that already exists, patch can be used to do that as well but requires a slightly different syntax
3) Patching complex columns is a complete pain and I avoid using them in SP at all costs. I use text and number types only when possible.
If you want to give the user a unique number for their submission, you could always use the ID column that SP auto-generates. This is a unique int value that can be returned to Power Apps after the item is created in SP using the following syntax:
Set(newItem, Patch(SP_List_Name, Defaults(SP_List_Name), {column1: number, column2: "string", column3: true, etc...}));
The only difference is the set and defaults functions. Set is creating a global variable called newItem and will store the item returned from SP using the Defaults function. Once you add this, the user will click the button, the patch statement will execute and create a new item in the SP list and then will return that item to PA and store it in newItem. You can then show "newItem.ID" and it will be the unique ID number for their line item they just submitted. You can use this to fetch that item later like this: Lookup(SP_List_Name, ID = newItem.ID) and it will return the entire item from SP including the data they entered into the app as well as auto-generated columns from SP.
If this solves your problem please mark as the solution! If not help me understand what you need better and I will take another crack at it! =^D