Look API
前往频道在 Telegram
Канал с лучшими практиками и советами по работе с API для создания веб-приложений. Узнавайте о последних трендах и новых инструментах, которые помогут вам сделать ваше приложение лучше и умнее. Для связи: @telegran_ads_bot
显示更多1 906
订阅者
-124 小时
-837 天
-39430 天
帖子存档
1 906
🧾 Риски
За последние 7 дней доля платежей с “stale status” снизилась на 15% после перехода на подтверждение статусов через callback от процессинга. Backend принимает POST /v1/webhooks/gateway/callback {eventId,paymentId,newStatus,ts} с X-Signature, валидирует, делает upsert по eventId и отвечает 200 сразу. Воркeр затем вызывает PATCH /v2/payments/{paymentId} {status:newStatus} с Authorization: Bearer и публикует в очередь payment.status.changed. Итог: статусы не расходятся между сервисами даже при повторах.
Look API
1 906
📡 Госквитки
За последние 7 дней число отклонений по ЕДО в интеграции с ФНС снизилось на 12% после того, как мы перешли на подпись запросов и строгую идемпотентность. Backend принимает POST /v1/webhooks/edo/fns {docId,uuid,status,ts} с X-Signature, валидирует, делает upsert по uuid, затем отправляет PUT /v2/registry/documents/{docId}/status {status} с Authorization: Bearer. Ответ 200 сразу, воркер догоняет при timeouts. Итог: регистры сходятся, а расхождения уменьшаются.
Look API
1 906
📡 Госквитки
За последние 7 дней число отклонений по ЕДО в интеграции с ФНС снизилось на 12% после того, как мы перешли на подпись запросов и строгую идемпотентность. Backend принимает POST /v1/webhooks/edo/fns {docId,uuid,status,ts} с X-Signature, валидирует, делает upsert по uuid, затем отправляет PUT /v2/registry/documents/{docId}/status {status} с Authorization: Bearer. Ответ 200 сразу, воркер догоняет при timeouts. Итог: регистры сходятся, а расхождения уменьшаются.
Look API
1 906
📊 OAuth-статусы
За последние 7 дней число тикетов в поддержке по “не найден заказ” снизилось на 23% после перехода на OAuth-синхронизацию статусов через внешний order API. Backend получает событие: POST /v2/webhooks/order {orderId,event:"DELIVERED",ts} с X-Signature; делает idempotency по orderId+event, затем вызывает GET /orders/{orderId} с Bearer из /v2/oauth/token (client_credentials) и обновляет запись. Ответ 200 сразу, async воркер догоняет POST /crm/v1/orders/status {orderId,status}. Итог: меньше расхождений и быстрее закрытие кейсов.
Look API
1 906
🧱 Репост
За последние 7 дней доля платежей с “duplicate reference” снизилась на 0,3% после того, как worker стал повторять запрос по транзакции только при 409. Клиент шлёт POST /v1/api/ledger/transfer {idempotency_key,fromAccount,toAccount,amount,currency} с X-Idempotency-Key; backend делает upsert по idempotency_key и возвращает 201, а при повторе — 200 с тем же transferId. Если внешний клиринг даёт 409, backend повторяет один раз и отвечает финально 200. Итог: микросервисы сходятся и меньше разъездов в учёте.
Look API
1 906
🧱 Репост
За последние 7 дней доля платежей с “duplicate reference” снизилась на 0,3% после того, как worker стал повторять запрос по транзакции только при 409. Клиент шлёт POST /v1/api/ledger/transfer {idempotency_key,fromAccount,toAccount,amount,currency} с X-Idempotency-Key; backend делает upsert по idempotency_key и возвращает 201, а при повторе — 200 с тем же transferId. Если внешний клиринг даёт 409, backend повторяет один раз и отвечает финально 200. Итог: микросервисы сходятся и меньше разъездов в учёте.
Look API
1 906
📥 Оплата сейчас
За последние 7 дней доля платежей, где верификация не прошла с первого раза, выросла на 0,4% после смены требований антифрода. Принимаем webhook: POST /v1/webhooks/antifraud {attemptId,paymentId,ruleId,result,ts} + X-Signature(HMAC); backend сверяет подпись, делает idempotency upsert по attemptId и отправляет POST /v1/payments/{paymentId}/status {status:"blocked"}; ответ 200 сразу, а worker позже пушит POST /v1/ledger/entries {docId,paymentId,amount,reasonId}. Итог: блокировки и проводки не расходятся даже при повторах.
Look API
1 906
📥 Оплата сейчас
За последние 7 дней доля платежей, где верификация не прошла с первого раза, выросла на 0,4% после смены требований антифрода. Принимаем webhook: POST /v1/webhooks/antifraud {attemptId,paymentId,ruleId,result,ts} + X-Signature(HMAC); backend сверяет подпись, делает idempotency upsert по attemptId и отправляет POST /v1/payments/{paymentId}/status {status:"blocked"}; ответ 200 сразу, а worker позже пушит POST /v1/ledger/entries {docId,paymentId,amount,reasonId}. Итог: блокировки и проводки не расходятся даже при повторах.
Look API
1 906
📉 Метрика: за 7 дней доля payment-ов с ретраями выросла на 0,8% из‑за сетевых таймаутов.
Принимаем webhook от процессинга: POST /v1/webhooks/payments/callback {event_id,paymentId,amount,currency,status,ts} с X-Signature(HMAC); backend проверяет подпись, делает idempotency upsert по event_id и затем вызывает POST /ledger/v1/entries {docId:paymentId,line:amount}. Response 200 возвращаем сразу, а async worker догоняет POST /crm/v1/payments/sync. Итого: статусы сходятся без дублей.
Look API
1 906
📉 Метрика: за 7 дней доля payment-ов с ретраями выросла на 0,8% из‑за сетевых таймаутов.
Принимаем webhook от процессинга: POST /v1/webhooks/payments/callback {event_id,paymentId,amount,currency,status,ts} с X-Signature(HMAC); backend проверяет подпись, делает idempotency upsert по event_id и затем вызывает POST /ledger/v1/entries {docId:paymentId,line:amount}. Response 200 возвращаем сразу, а async worker догоняет POST /crm/v1/payments/sync. Итого: статусы сходятся без дублей.
Look API
1 906
📉 На прошлых 7 днях задержки выгрузки отчётов в бухучёт выросли на 18% из‑за повторов batch’ов при ретраях. Отправляем CRM→backend запрос: POST /crm/v1/clients/upsert {externalId,inn,contacts} с OAuth, backend делает upsert по externalId и пишет событие в очередь: publish crm.client.updated. Worker шлёт в финдиректа: POST /gl/v1/journal/lines {docId,lineId,amount}. Итог: меньше дублей в данных и быстрее закрытие месяца.
Look API
1 906
🧾 Отклонения по сверке банковских выписок за 7 дней выросли на 0,7% из‑за повторов событий. Принимаем webhook POST /v1/webhooks/iso20022 {messageId,txId,amount,currency,status,ts} с X-Signature (HMAC); backend проверяет подпись и делает upsert по messageId, затем дергает GET /v1/registry/participants/{txId} и кладёт запись в очередь kafka payments.posted. Worker обновляет microledger по txId и возвращает 200 даже на дубль. Итог: меньше расхождений и стабильнее дата-обмен в финтехе.
Look API
1 906
💳 Платёжный провайдер за 7 дней отклонил 1,2% транзакций из‑за просроченных токенов. Мы шлём авторизацию через API key: POST /v1/oauth/token {grant_type:"client_credentials"}; получаем access_token; дальше POST /v1/payments {paymentId,amount,currency,source} с заголовком Authorization. Ответ 201 кладём в idempotency по paymentId и при 401 делаем повтор токена 1 раз. Итог: меньше ручных разборов и быстрее фиксация расхождений.
Look API
1 906
💳 Платёжный провайдер за 7 дней отклонил 1,2% транзакций из‑за просроченных токенов. Мы шлём авторизацию через API key: POST /v1/oauth/token {grant_type:"client_credentials"}; получаем access_token; дальше POST /v1/payments {paymentId,amount,currency,source} с заголовком Authorization. Ответ 201 кладём в idempotency по paymentId и при 401 делаем повтор токена 1 раз. Итог: меньше ручных разборов и быстрее фиксация расхождений.
Look API
1 906
🧾 За 7 дней доля chargeback’ов по картам выросла на 0,6% после смены формата callback от процессинга. Приём делаем так: POST /v1/webhooks/cards/callback {event_id,pan_token,amount,status,ts} с X-Signature (HMAC), backend проверяет подпись, делает idempotency upsert по event_id и дергает GET /v1/entitlements/transactions/{event_id}?fields=hold. Worker по статусу отправляет POST /v1/fraud/signals {transactionId,signal} и возвращаем 200. Итог: события не дублируют риск-оценку и быстрее фиксируются расхождения.
Look API
1 906
📊 7 дней: конверсия верификации KYC снизилась на 0,9% из‑за таймаутов внешнего реестра. В backend принимаем OAuth redirect: POST /v1/webhooks/kyc/callback {requestId,status} + подпись, сверяем claim:sub с клиентом, делаем idempotency upsert по requestId и дергаем GET /v1/registry/persons/{inn}?fields=limits. Worker выставляет POST /v1/decisions/risk {decisionId,reason}. Итог: статусы KYC приходят без дублей и быстрее восстанавливают конверсию.
Look API
1 906
📉 Просрочки по зарплатным выплатам выросли на 2,3% за последние 7 дней из‑за расхождения статусов между HR и процессингом. Backend принимает OAuth2 callback: POST /v1/webhooks/payroll {payrollId,status} + подпись, сверяет JWT claims, делает idempotency upsert по event_id, затем дергает GET /v1/crm/candidates/{id} для маппинга и отвечает 200; async worker обновляет Финансовый ledger через POST /v1/ledger/entries. Итог: статусы синхронизируются без дублей и задержек.
Look API
1 906
📈 Сбоев в обмене EDI с логистикой за 7 дней было 37: часть заказов не доходила до склада. Ставим webhook delivery/events: POST /v1/webhooks/shipments с подписью, backend сверяет X-Request-Id по таблице идемпотентности, маппит на внутренний DTO и отправляет в очередь Kafka topic shipment.completed. Worker вызывает REST: POST /erp/orders/{id}/status {status:"SHIPPED"} и логирует correlation_id. Итог: доставка статусов без дублей и разъездов данных.
Look API
1 906
💳 Выручка просела на 1,8% из‑за отклонённых платежей в последние 7 дней. В production принимаем webhook от процессинга: POST /v1/webhooks/payment {id, status, amount} с подписью, backend проверяет HMAC, сохраняет event_id в таблицу идемпотентности и ставит задачу в очередь для финального движения денег. Ответ 200, а при дубле баланс не меняется. Итог: меньше расхождений и быстрее разбор инцидентов.
Look API
1 906
🧾 Fintech-статусы
За последние 7 дней в проде у нас было 412 просроченных выплат из‑за таймаутов между провайдером и банком. Мы принимаем webhook /payments/status: POST /v1/webhooks/payment-status с подписью X-Signature (HMAC от тела), backend проверяет payload и idempotency-key, затем дергает GET /v1/ledger/transactions/{paymentId} и возвращает 200. Итог: повторные события не меняют баланс, а мониторинг ловит расхождения до ручных сверок.
Look API
