Bumping and tagging a couple more BTCPay peeps who seem relatively active.
@Dennis @ndeet
View quoted note →
Login to reply
Replies (10)
Yeah, just ask the question or come to our mattermost and ask there.
Thanks @ndeet. What’s the best way to get/set the quantity for products? Unless I missed it, I don’t see a way in the API docs.
Right now there's no separate endpoint for that. You'd need to fetch the current POS settings, find the product, adjust its quantity and repost the complete settings to the update POS endpoint.
BTCPay Greenfield API (v1)
There is no products api at all. A typical integration would create an invoice on BTCPay with thetotal order amount, similar as you do with traditional payment providers.
Ah thanks so much Dennis! Good to know there’s a way. I’ll give this a shot. 🤙
Yup, that’s what I’m doing now but inventory amounts need to be decremented. Sounds like what Dennis said will work tho.
On another note, is there an easier alternative to these methods of deploying? I would like to try and add the endpoint if I can.


Ah ok so you try to use point of sale as some kind of ecommerce shop. As Dennis said, you need to setwhole JSON of products via template parameter. This will quickly run into limitations, maybe better use a shop we have integrations to already, no need to code.
For deployment, easiest is docker deployment which is even more simplifyed on lunanode.
Alternatively use 3rd party host but has drawbacks
BTCPay Server Documentation | BTCPay Server
BTCPay Server Official Documentation
Introduction | BTCPay Server
BTCPay Server Official Documentation
Third-party hosting | BTCPay Server
BTCPay Server Official Documentation
Thanks! Yes, working on a custom e-commerce shop. It’s a small list of items so hopefully this’ll be sufficient for now. Is this the limitation you had in mind?
So the items should be sent back in the PUT request with the same structure except under the “template” key. Is that right?


Did not try but yes, should be like that. payload structure like in the UI when you switch to code view.
A bit weird that in payload it's template but in the response it returns item array 🧐