Automation Command Button in Payment Selector Section OR Payment Processor Option

Unless I missed an update I believe currently we do not have a way to add a command button on the right hand side of the payment screen only along the bottom.

This is primarily for the booking system integration ive been working on.
Ideally what I would like to be able to do is have a payment button like ‘CHARGE TO ROOM’ which will execute the REST script to post the charges to the booking site.
However I want to build in some form of validation/confirmation before being marked as paid.
Am not sure if payment processors is going to be the solution or not but this is ideally my planed workflow

  1. Ticket Created etc etc (usual ordering workflow)
  2. Entity Selected (Rooms)
  3. Settle/Payment Screen
  4. Payment type of charge to room (this however will not be an entity account as payment will be processed externally so will be an additional payment type)
  5. BEFORE room post payment is set to ticket the script posts the payment.
  6. The REST returns a confirmation response with ‘CHARGE ID’

At this point the flow splits Accepted prefixed A and failed F (just encase internet cuts out and post fails)

A7. Charge ID returned and marked against payment/ticket
A8. Ticket marked as payed by room charge within samba

D7. Is no response/charge failed script fails and no charge id is returned
D8. ask question prompt shows message saying charge faild, options to try again (repeat charge process with either accepted or failed)
D9. ‘Try Again’ = tries to post again repreating from step 5
D10. ‘Manual Charge Option’ - payment within samba as charge to room is processed and marked as manual charge selected.
D11. As manual charge is selected a specific room charge receipt is printed CLEARLY showing it is for manual charge which is manually processed directly in the booking system.

Is payment processor the way to go?
Would prefer to have the ROOM POST button on the same side as the payment buttons but guess on the normal bottom section would suffice if its not possible.

You’ll definitely use payment processors and a payment type. Specifically Execute Script processor. How you’ll register that payment on accounting side?

So the actual marking as paid would be held until the script is finished?
How would the script return whether or not to process the payment?

I was going to just make an additional payment method of charged to room which would be ignored from the reconciliation process.
FYI the intention is to also post the general ‘NON ROOM’ sales into their system at work period close using a bulk charge post API they have configured for me in the sales accounts.
This would also ‘transfer’ payment values into there payment accounts
The plan is to configure a report to return departmental/product group sales totals for NON ROOM post payments and charge them collectively using the rest/api.
This would mean in theory mean samba reporting would mainly be used for stock reporting rather than sales/payments.

Sorry, just found there is pre/post/confirmation fields in the settings, not sure on how to use yet but think that answers that question. Any good tutorials on script payment processor?

Check @QMcKay’s Payment Description script to see how it displays a confirmation and cancels payment process when cancel button is selected.

edit:Link updated.

You can assign sales to room account (like we do for customers) and credit them to a single account called Integration Account or something else. So you’ll be able to track how much you’ve integrated per room and in total. We can talk about this more after you solve integration part.

1 Like

Thanks, got myself a little worried while thinking about it earlier.
The new owners other hotel (using that booking system but alternate POS software - ICR Touch i think) had problems with there not being any form of confirmation/validation and charges being ‘lost’ so wanted to be sure if there was any issues with connectivity or perhaps an update on booking system side messed up the charge process due to say a json formatting adjustment it was made very clear straight away.
As a result of the lack of confirmation/charging feedback has caused them to abandon the intergration and just process the room charges manually all the time to be sure all charges are made

Payment processors primarily implemented to allow payment integrations. You can retry few times until expected result received and just break if there is no connection or it fails for a reason.

1 Like

Publicly available, complete, and up-to-date, here …