5 % отказов API перевода платежей Razorpay (RazorpayException BAD_REQUEST_ERROR: указанный идентификатор не существует)JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 5 % отказов API перевода платежей Razorpay (RazorpayException BAD_REQUEST_ERROR: указанный идентификатор не существует)

Сообщение Anonymous »

Я использую Razorpay Java SDK (https://github.com/razorpay/razorpay-java) для сбора платежей от пользователей и их перевода на разные банковские счета с помощью функции «Маршрут» Razorpay. Происходит следующее: когда пользователь совершает платеж, сумма сначала добавляется в мой кошелек Razorpay, а затем переводится на соответствующий банковский счет (в соответствии с определенными правилами), который я уже добавил в качестве связанных учетных записей. У меня возникают сбои при переводе платежей на 5%, когда в день совершается более 1000 транзакций. Если сумма не будет переведена вручную на соответствующий банковский счет (возможны человеческие ошибки) в течение определенного периода времени, сумма будет переведена на мой банковский счет, и это проблема.
Я я использую этот фрагмент кода для перевода суммы (

Код: Выделить всё

razorpay-java-1.4.3
)

Код: Выделить всё

Map paymentPayload = (Map) payload.get("payload");
Map payment = (Map) paymentPayload.get("payment");
Map paymentEntity = (Map) payment.get("entity");

String paymentId = String.valueOf(paymentEntity.get("id"));

RazorpayClient razorpay = new RazorpayClient(razorpayMID, razorpaySecretKey);

JSONObject createOrderRequest = new JSONObject();
JSONObject request = new JSONObject();
JSONArray transfers = new JSONArray();

createOrderRequest.put(AMOUNT, amountToBeTransferred);
createOrderRequest.put(CURRENCY, "INR");
createOrderRequest.put("account", accountId);
transfers.put(createOrderRequest);
request.put("transfers", transfers);

List razorpayTransfers = razorpay.payments.transfer(paymentId, request);
Метод передачи в последней строке завершается с ошибкой: RazorpayException BAD_REQUEST_ERROR: указанный идентификатор не существует
Тело JSON API передачи (полезная нагрузка):

Код: Выделить всё

{
"account_id": "acc_awsd",
"contains": [
"payment"
],
"created_at": 1721298486,
"entity": "event",
"event": "payment.captured",
"payload": {
"payment": {
"entity": {
"acquirer_data": {
"rrn": "0987654321"
},
"amount": 1101233,
"amount_refunded": 0,
"bank": null,
"base_amount": 1101233,
"captured": true,
"card_id": null,
"contact": "+911234567890",
"created_at": 1721298485,
"currency": "INR",
"description": "qwerty",
"email": "[johndoe@gmail.com](mailto:johndoe@gmail.com)",
"entity": "payment",
"error_code": null,
"error_description": null,
"error_reason": null,
"error_source": null,
"error_step": null,
"fee": 0,
"id": "pay_xyz",
"international": false,
"invoice_id": null,
"method": "upi",
"notes": {
"amountPaid": "1100000",
"convenienceCharges": "1233",
"proformaOrderId": "123",
"proformaOrderNo": "456",
"regNo": "112233",
"selectedPaymentMethod": "upi",
"studentId": "445566",
"tenantId": "999",
"type": "payment"
},
"order_id": "order_abc",
"refund_status": null,
"reward": null,
"status": "captured",
"tax": 0,
"upi": {
"payer_account_type": "bank_account",
"vpa": "johndoe@abc"
},
"vpa": "johndoe@abc",
"wallet": null
}
}
}
}
Примечание: заменена вся конфиденциальная информация.
Сообщение об ошибке бесполезно, поскольку идентификатор платежа действителен. Что пытается сказать сообщение об ошибке? Идентификатор платежа еще не записан в системе Razorpay?
Мы пытались обратиться в службу поддержки Razorpay, но не получили никакой помощи по этому вопросу. Кто-нибудь еще сталкивался с этой проблемой раньше? Если да, то как вы преодолели эту проблему? (https://github.com/razorpay/razorpay-java/issues/321)

Подробнее здесь: https://stackoverflow.com/questions/788 ... ad-request
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»