Как работать с оплатами в API

Рассказываем, как добавлять оплаты в заказы, изменять статус и привязывать внешние транзакции автоматически
Автор Юлія Бакум
Обновлено 2 месяца назад

Создавая заказ или карточку в воронке через API, вы можете сразу передать детали платежа: метод оплаты, сумму, статус и т.д. Иногда оплата поступает позже или отменяется со временем и нужно изменить статус или добавить новый платеж — решение для подобных случаев мы рассмотрим в данной статье.

Как добавить новую оплату в заказ

Чтобы добавить платеж в созданный ранее заказ нужно:

  1. Получить {orderId} заказа (№ заказа в CRM), к которому планируете добавить платеж. Вы получаете его в параметре «id» в ответе после создания заказа или можете получить список заказов, используя фильтры, чтобы найти нужный и сохранить его «id»;
  2. Отправить запрос для добавления новой оплаты в существующий заказ, указав детали платежа в формате JSON. Пример URL для заказа №8:
    POST https://openapi.keycrm.app/v1/order/8/payment.

Платеж будет сразу добавлен в этот заказ, а в ответе вы получите «id» именно этого платежа.

Как добавить новую оплату в карточку в воронке

Чтобы добавить платеж в созданную ранее карточку нужно:

  1. Получить {cardId} карточки в воронке (pipeline_id в CRM), к которой планируете добавить платеж. Вы получаете его в параметре «id» в ответе после создания карточки или можете получить список карточек используя фильтры, чтобы найти подходящую и сохранить ее «id»;
  2. Отправить запрос для добавления новой оплаты к существующей карточке указав детали платежа в формате JSON. Пример URL для карточки ID 8:  
    POST https://openapi.keycrm.app/v1/pipelines/cards/8/payment.

Платеж будет сразу добавлен в карточку, а в ответе вы получите «id» именно этого платежа.

Как изменить статус оплаты

В заказе может быть несколько оплат от покупателя, поэтому каждый платеж имеет свой уникальный идентификатор - {paymentId}.

Чтобы внести изменения в добавленную ранее оплату в заказе, вам нужно: 

  1. Получить {paymentId} оплаты, которую нужно изменить. Вы получаете его в параметре «id» в ответе после создания заказа с оплатой, добавления оплаты или можете получить заказ с include=payments в запросе, чтобы найти нужный платеж и сохранить его «id»;
  2. Отправить запрос на обновление оплаты в заказе, указав нужный статус: paid, not_paid, canceled и комментарий при необходимости. Пример URL для заказа №8 и платежа в нем по id=2211: 
    PUT https://openapi.keycrm.app/v1/order/5/payment/2211.
Обратите внимание! Идентификатор оплаты в заказе не равен идентификатору метода платежа (тип оплаты в системе)

Как изменить статус оплаты в карточке воронки

В карточке может быть несколько оплат от клиента и поэтому каждый платеж имеет свой уникальный идентификатор – {paymentId}.

Чтобы внести изменения в добавленную ранее оплату, вам нужно: 

  1. Получить {paymentId} оплаты, которую нужно изменить. Вы получаете его в параметре «id» в ответе после создания карточки с оплатой, добавления оплаты или можете получить карточку с include=payments в запросе, чтобы найти нужный платеж и сохранить его «id»;
  2. Отправить запрос на обновление оплаты в карточке, указав нужный статус:  paid, not_paid, canceled и комментарий при необходимости. Пример URL для карточки id 8 и платежа в ней с id=2211: 
    PUT https://openapi.keycrm.app/v1/pipelines/cards/8/payment/2211.
Обратите внимание! Идентификатор оплаты в карточке не равен идентификатору метода платежа (тип оплаты в системе)

Как автоматически привязывать внешние транзакции к платежам

Подключив платежные сервисы для импорта транзакций, вы получаете в системе список всех поступлений средств на ваши счета. А с помощью API можете автоматизировать привязку платежей к заказам или карточкам в воронках, к которым они относятся. 

Для этого вам нужно:

  • Сначала узнать id оплаты (paymentId) в CRM, к которой нужно привязать внешнюю транзакцию, просмотрите статью выше. Оплата должна быть в статусе «Не оплачено»;
  • Убедиться, что нужная вам транзакция уже загрузилась в кабинет и не привязана к другому заказу или карточке в воронке;
  • Если у вас есть идентификатор транзакции от платежного сервиса, вы можете сразу добавить внешнюю транзакцию к оплате, передав его в параметре «transaction_uuid»;
  • Если в деталях транзакций хранится номер заказа/счета/ФИО плательщика и т.д, вы можете получить список загруженных транзакций с этими данными в параметре description. По которым найдите нужную и добавьте внешнюю транзакцию к оплате, передав ее «id» в параметре «transaction_id».

После привязки транзакции к оплате статус оплаты изменится на «Оплачено». Сумма, дата и время, а также комментарий оплаты будут изменены в соответствии с информацией, указанной в транзакции.

Теги: оплаты апи, оплаты API, оплачен автоматически, оплата с сайта, платеж по апи, привязать транзакцию, привязать платеж, API внешние транзакции, транзакции по апи
Оцените эту статью