Skip to Content
Menu
This question has been flagged
2 Replies
10308 Views

I've recently purchased and install a stripe gateway for Odoo POS that allows a card details to be entered. While I'm still trying to get a response from the developers, I'm asking for help to diagnose the following problem.

After selecting product in POS, and going to payment, I enter the card details and seek to process. When I do this I get the following error.

2019-11-10 00:18:56,681 24444 INFO ? werkzeug: 192.168.10.252 - - [10/Nov/2019 00:18:56] "GET /point_of_sale/static/src/sounds/error.wav HTTP/1.0" 200 -
2019-11-10 00:18:56,689 24444 WARNING odoodb odoo.http: No CSRF validation token provided for path '/pos/web/'

Odoo URLs are CSRF-protected by default (when accessed with unsafe
HTTP methods). See
https://www.odoo.com/documentation/9.0/reference/http.html#csrf for
more details.

* if this endpoint is accessed through Odoo via py-QWeb form, embed a CSRF
token in the form, Tokens are available via `request.csrf_token()`
can be provided through a hidden input and must be POST-ed named
`csrf_token` e.g. in your form add:

<input type="hidden" name="csrf_token" t-att-value="request.csrf_token()"/>

* if the form is generated or posted in javascript, the token value is
available as `csrf_token` on `web.core` and as the `csrf_token`
value in the default js-qweb execution context

* if the form is accessed by an external third party (e.g. REST API
endpoint, payment gateway callback) you will need to disable CSRF
protection (and implement your own protection if necessary) by
passing the `csrf=False` parameter to the `route` decorator.

2019-11-10 00:18:56,689 24444 INFO odoodb werkzeug: 192.168.10.252 - - [10/Nov/2019 00:18:56] "POST /pos/web/?debug=1 HTTP/1.0" 400 -
2019-11-10 00:19:03,326 24444 WARNING odoodb odoo.modules.module: module https:: module not found
2019-11-10 00:19:03,342 24444 WARNING odoodb odoo.modules.module: module https:: module not found
2019-11-10 00:19:03,431 24444 WARNING odoodb odoo.modules.module: module https:: module not found
2019-11-10 00:19:03,480 24444 WARNING odoodb odoo.modules.module: module https:: module not found
2019-11-10 00:19:03,953 24444 WARNING odoodb odoo.modules.module: module https:: module not found
2019-11-10 00:19:03,953 24444 WARNING odoodb odoo.modules.module: module https:: module not found

The details of the system are as follows.

Odoo 10 Community Version, running behind a NGINX proxy to handle SSL. The site has been running for nearly 12 months with no other csrf problems.

I only partially understand the problem and am struggling to know where to look. I seems to me http calls are being made instead of https calls. However, my site is running https correctly, the web.base.url settings is https://....

I also have a standard Stripe gateway in place for normal eCommerce and this is working fine.

Can anyone assist in helping to find a solution. The addin I'm using is stripe_pos_payment (version  10.0.0.1) by DRC Systems India Pvt. Ltd. Is it something with my nginx proxy, some python stripe module configuration, or a bug in the addin?

Thanks


Avatar
Discard
Best Answer

Hi Erik!

Did you find the solution?

Thanks

Avatar
Discard
Best Answer

Hi Eric,

CSRF generally doesn't have anything to will SSL or module set up, the issue will likely be with the stripe_pos_payment module. 

To test, when you get to the screen where you enter the details (the last screen before the error occurs) if you right click and inspect element, you will be able to check if there is a hidden input for csrf_token, something like:

<input type="hidden" name="csrf_token" value="random string"/>

If there's nothing like that, it's a module error.

Avatar
Discard
Related Posts Replies Views Activity
1
Sep 24
1512
3
Sep 24
2556
0
Aug 24
556
0
Apr 24
183
0
Sep 24
667