P
P
photosho2018-07-29 11:02:08
1C-Bitrix
photosho, 2018-07-29 11:02:08

Why are some orders not marked as paid?

Some orders in Bitrix are not marked as paid when paying through the robokassa module. The analysis of the file "result_rec.php" showed the interruption of the script on the following condition:

if (roundEx(CSalePaySystemAction::GetParamValue("SHOULD_PAY"), 2) == roundEx($out_summ, 2)...)

Orders with more than 1 item are not marked as paid, and these values ​​should not be equal. The first is taken from the "Product price" field, the second - from the "Amount" field. Where does this condition come from and what does it imply? Perhaps it's something I don't understand?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
P
photosho, 2018-07-29
@photosho

The problem was that the cost of the order was set incorrectly when it was created (the order was created manually) - the quantity of goods was not taken into account. As a result, the values ​​of the fields "Order amount" and "Payment > Cost > Amount payable" were different.

L
lolhunter, 2018-07-29
@lolhunter

Not marked where? In the admin?
There is a bug/feature.
If the AMOUNT of the order does not match the amount of payment, the payment is paid, and the order is marked as unpaid until the amounts match.
Check the payment document - it may contain all the quantities in one piece.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question