How to mark a booking as "Paid" via Admin API (JSON-RPC 2.0)? Getting -32600 Invalid request

Hello everyone,

I am currently building a custom booking flow using Google Apps Script and Stripe Checkout. I need to mark a booking as “Paid” and confirm it using the SimplyBook.me Admin API (JSON-RPC 2.0) after a successful external payment.

[The Problem] I am consistently receiving a -32600 Invalid request error when trying to update the status via the /admin endpoint using the X-Token. I have tried:

  • payment.recordPayment (with positional array parameters)

  • callPluginMethod (calling the payment plugin)

I also checked the SBPay.me Merchant API (PUT /api/payment/approve-order), but I am getting 403 Bad credentials and cannot find the SBPay.me specific API keys in my dashboard.

[My Question] Could someone provide the exact, working JSON-RPC 2.0 request body (payload) example to achieve this?

  • Target: Mark a specific booking_id as paid (e.g., amount: 1000 JPY) and ensure its status becomes “Confirmed”.

What is the correct method name and the exact structure of the params array required? Any help or a working example would be greatly appreciated!

Thank you,

Hi, sorry for delay answer.

You should use SBPay API keys.