Когда заказ успешно оплачен с помощью кассы Razorpay, я хочу отправить paid
(это должен быть не счет issued
, а оплаченный счет с прикрепленными order_id
и payment_id
со статусом paid
) счет-фактура для клиента. Как я могу это сделать?
Если предположить, что в панели инструментов и настройках Razorpay невозможно настроить автоматическую отправку счета paid
для оплаченного заказа.
Я пыталсясоздание счета-фактуры вручную с помощью API счетов Razorpay всякий раз, когда я получаю order.paid
webhook на моем сервере. Это имеет проблему, потому что API счетов для создания позволяет мне только создавать счет issued
и всякий раз, когда я пытаюсь отправить status
или payment_id
или order_id
в качестве полезной нагрузки.
Я получаю сообщение об ошибке, в котором говорится, что эти поля не обязательны для заполнения и, следовательно, не должны отправляться.
Тогда для того, чтобы я перевел эти счета в состояние paid
, я должен фактически произвести платеж противissued
счет, который не то, что я хочу. Я просто хочу, чтобы система Razorpay обрабатывала счета за меня при оплате заказа.
- Могу ли я что-нибудь сделать в этом случае?
- Или есть какой-либо другой продукт? в арсенале Razorpay для решения этого дела? (В альтернативном варианте также должен быть элемент управления разработчика / программирования, было бы неплохо, если бы также был элемент управления приборной панели)
- Или, к сожалению, мне, возможно, придется создать собственную систему выставления счетов?
Я быочень признателен за любую помощь.
API Razorpay для создания счета
curl -u "$RP_ID:$RP_SECRET" \
-X POST https://api.razorpay.com/v1/invoices \
-H "Content-type: application/json" \
-d '{
"type": "invoice",
"customer": {
"name": "Gaurav Kumar"
},
"line_items": [
{ "name": "Book / English August", "amount": 1000, "currency": "INR" }
],
"currency": "INR",
"order_id": "order_Da0i2ARDJvG7va",
"payment_id": "pay_Da0ihaEIRxbJMC",
"status": "paid"
}' | jq
Вывод для указанного выше запроса API
{
"error": {
"code": "BAD_REQUEST_ERROR",
"description": "order_id, payment_id, status is/are not required and should not be sent"
}
}