API Products of the Mir payment system

Dispute API documentation

BpEngineApi Service

The BpEngineApi service provides methods for working with case samples: initiation, execution, obtaining execution options.

To execute the BpEngineApi service methods, transfer the access token parameter (X-Authorization).

GetBpItem Method

To get actions available for a case sample, call the GetBpItem method.

Method address: /webapi/v1/BpEngineApi/GetBpItem/{id}
Request type: post

REQUEST DETAILS
Key Data type Description
id* integer Case ID
getFilesInBody boolean Get files from a request
X-Authorization* string  
RESPONSE DETAILS 200
Key Data type Description
bpItem BpItem Detailed case information
success boolean Action result
errorMessage string Error text

An example of HTTP request

JSON
POST https://localhost/webapi/v1/BpEngineApi/GetBpItem/<bpItemId>  HTTP/1.1
Host: <Имя сервера Диспут+>
Connection: Keep-Alive
Content-Length: 0
Content-Type: application/json;charset=UTF-8
Accept: application/json
Accept-Encoding: gzip,deflate
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
X-Authorization: Bearer <значение маркера доступа>


An example of HTTP response

JSON
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Length: 6204
Content-Type: application/json; charset=utf-8
Expires: -1
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue, 12 May 2020 06:20:58 GMT


{
   "bpItem":    {
      "cardPrefix": "<префикс номера карты>",
      "cardSuffix": "2288",
      "startTrxProperty": [      {
         "id": 0,
         "date": "11.05.2020",
         "amount": 333,
         "amountAndCurrency": "333.00 RUB",
         "cardAcceptorName": "TMS-2",
         "arn": "<АРН>",
         "initiatorName": "Тестовый банк BB",
         "respondentName": "Банк AA",
         "operatorRoleName": "Эквайрер",
         "operatorInitiator": false,
         "operationType": "Оплата",
         "transactionDate": "11.05.2020",
         "initiatorContacts": [         {
            "id": 2363,
            "bankId": "10000",
            "direction": "Диспуты",
            "phone": "555-55-55",
            "email": "email1@email.com"
         }],
         "respondentContacts": [         {
            "id": 2362,
            "bankId": "20000",
            "direction": "Диспуты",
            "phone": "555-55-55",
            "email": "email2@email.com"
         }]
      }],
      "stages":       [
                  {
            "id": 47087,
            "stageId": 4985,
            "code": "s_Start",
            "name": "Запуск БП",
            "description": "Получатель должен ответить на БП Диспут",
            "longDescription": "Получатель должен ответить на БП Диспут",
            "isActive": true,
            "autoActionDate": "2020-05-21T22:46:30",
            "fields":             [
                              {
                  "baseTypeCode": "Money",
                  "code": "f_DisputeAmount",
                  "name": "Сумма диспута",
                  "value": "333.00 RUB",
                  "valueCode": "333.00 RUB",
                  "jsonValue": "{\"amount\":333.0,\"currency\":{\"id\":1,\"numericCode\":\"643\",\"code\":\"RUB\",\"displayValue\":\"Российский рубль\",\"currencyExponent\":2}}",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": []
               },
                              {
                  "baseTypeCode": "RadioButton",
                  "code": "f_RequestReason",
                  "name": "Причина диспута",
                  "value": "Неуспешная операция",
                  "valueCode": "FailOperation",
                  "jsonValue": "",
                  "isLinkedWithTrxField": false,
                  "fieldType": "select",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": []
               },
                              {
                  "baseTypeCode": "Money",
                  "code": "f_PaymentAmount",
                  "name": "Сумма",
                  "value": "0.00 RUB",
                  "valueCode": "0.00 RUB",
                  "jsonValue": "{\"amount\":0,\"currency\":{\"id\":1,\"numericCode\":\"643\",\"code\":\"RUB\",\"displayValue\":\"Российский рубль\",\"currencyExponent\":2}}",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": [],
                  "description": "Сумма операции оплаты"
               }
            ],
            "isAutoAction": false,
            "stageCreateDate": "2020-05-11T22:46:30",
            "stageCloseDate": "2020-05-11T23:29:55",
            "startDate": "2020-05-11T23:29:55",
            "isNextStage": false,
            "userId": 2,
            "isFinal": false
         },
                  {
            "id": 282,
            "stageId": 4986,
            "isMerchantItemStage": 1,
            "code": "s_AnswerReview",
            "name": "Рассмотрение ответа",
            "description": "Получатель исполнил БП Диспут. Инициатор может передать диспут в арбитраж если исполнение не отвечает правилам",
            "longDescription": "Получатель исполнил БП Диспут. Инициатор может передать диспут в арбитраж если исполнение не отвечает правилам",
            "isActive": false,
            "autoActionDate": "9999-12-31T00:00:00",
            "fields":             [
                              {
                  "baseTypeCode": "Select",
                  "code": "f_AdjReason",
                  "name": "Причина",
                  "value": "Операция отменена Участником в ответ на БП Диспут",
                  "valueCode": "7302",
                  "jsonValue": "",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": [],
                  "description": "Причина сообщения"
               },
                              {
                  "baseTypeCode": "String",
                  "code": "f_AdjType",
                  "name": "",
                  "value": "Сумма возмещения меньше суммы диспута, поэтому БП перешел на этап \"Рассмотрение ответа\"",
                  "valueCode": "Сумма возмещения меньше суммы диспута, поэтому БП перешел на этап \"Рассмотрение ответа\"",
                  "jsonValue": "",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": [],
                  "cssClass": "red"
               },
                              {
                  "baseTypeCode": "Money",
                  "code": "f_AdjAmount",
                  "name": "Сумма возмещения",
                  "value": "33.00 RUB",
                  "valueCode": "33.00 RUB",
                  "jsonValue": "{\"amount\":33,\"currency\":{\"id\":1,\"numericCode\":\"643\",\"code\":\"RUB\",\"displayValue\":\"Российский рубль\",\"currencyExponent\":2}}",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": []
               },
                              {
                  "baseTypeCode": "Money",
                  "code": "f_DisputeAmountDiff",
                  "name": "Остаток суммы диспута",
                  "value": " 300,00 RUB",
                  "valueCode": " 300,00 RUB",
                  "jsonValue": "{\r\n  \"amount\": 300.0,\r\n  \"currency\": {\r\n    \"id\": 1,\r\n    \"numericCode\": \"643\",\r\n    \"code\": \"RUB\",\r\n    \"displayValue\": \"Российский рубль\",\r\n    \"currencyExponent\": 2\r\n  }\r\n}",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "visible": true,
                  "documentsInfo": []
               },
                              {
                  "baseTypeCode": "Text",
                  "code": "f_Reason",
                  "name": "Обоснование суммы",
                  "value": "test",
                  "valueCode": "test",
                  "jsonValue": "",
                  "isLinkedWithTrxField": false,
                  "fieldType": "text",
                  "readOnly": true,
                  "controlWidth": "300px",
                  "visible": true,
                  "documentsInfo": []
               }
            ],
            "isAutoAction": false,
            "stageCreateDate": "2020-05-11T23:29:55",
            "stageCloseDate": "0001-01-01T00:00:00",
            "startDate": "2020-05-11T23:29:55",
            "isNextStage": false,
            "userId": 106,
            "userName": "appletest_withcontrol",
            "isFinal": false,
            "controlActionStatus": "Waiting"
         }
      ],
      "participantFields":       [
                  {
            "baseTypeCode": "String",
            "code": "pf_1",
            "name": "InBucket",
            "value": "",
            "isLinkedWithTrxField": false,
            "readOnly": false,
            "visible": false
         },
                  {
            "baseTypeCode": "String",
            "code": "pf_762",
            "name": "IsUnread",
            "value": "false",
            "isLinkedWithTrxField": false,
            "readOnly": false,
            "visible": false
         },
                  {
            "baseTypeCode": "String",
            "code": "pf_766",
            "name": "InBucket",
            "value": "",
            "isLinkedWithTrxField": false,
            "readOnly": false,
            "visible": false
         },
                  {
            "baseTypeCode": "Digits",
            "code": "pf_949",
            "name": "Каст1",
            "value": "",
            "isLinkedWithTrxField": false,
            "readOnly": false,
            "visible": true
         }
      ],
      "bpName": "Диспут",
      "bpVersionId": 564,
      "observerList": ["appletest_withcontrol"],
      "isCurentUserObserver": false,
      "userName": "aa_FIO",
      "stageDescription": "Получатель должен ответить на БП Диспут",
      "amount": 333,
      "isReversalExists": false,
      "operatorRole": "Acquirer",
      "id": 10526,
      "paymentSystem": "МИР",
      "dateCreated": "2020-05-11T22:46:30",
      "bpCode": "DP",
      "code": "DP-20-545"
   },
   "success": true
}

Data types

BpItem

Code Data types Description
cardPrefix string The first 4 digits of the card number
cardSuffix string Last 4 digits of the card number
startTrxProperty array of BpStartTrxProperty A set of fields for start BP
stages array of BpItemStage Stage BP
participantFields array of BpField Custom fields of the participants
bpName string Type BP
bpVersionId integer  
observerList array of string Observer list
isCurentUserObserver boolean flag Current user Observer
userName string User Name
stageDescription string Stage Description
amount number  
isReversalExists boolean is Reversal Exists
operatorRole boolean Operation initiator
id integer Identificator BP
paymentSystem string of paymentSystem Payment system
dateCreated string BP create date 
bpCode string of bpCode Code BP
code string Index BP
 

BpStartTrxProperty

Code Data types Description
id integer System field
date string

Operation date (for clearing) 

Date of processing (for auth)

amount number Transaction amount
amountAndCurrency string Amount and Currency
cardAcceptorName string Card Acceptor Name
arn string  
initiatorName string Initiator name
respondentName string Respondent name
operatorRoleName string Name operator role
operatorInitiator boolean Operation initiator 
operationType string Type operation
transactionDate string Transaction date
initiatorContacts array of BankContact  
respondentContacts array of BankContact  
 

BankContact

Code Data types Description
id integer System field
bankId string Identificator Bank
bic string  
direction string Type BP
phone string  
email string  
 

BpItemStage

Code Data types Description
id integer System field
stageId integer Stage identificator
isMerchantItemStage integer is Merchant Item Stage
code string System name of the stage
name string Name of the stage
description string  
longDescription string  
isActive boolean  
autoActionDate string Auto action date
fields array of BpField  
isAutoAction boolean is Auto Action
stageCreateDate string Change date BP
stageCloseDate string Close date BP
startDate string Start date BP
isNextStage boolean  
userId integer User Id
userName string User name
isFinal boolean Flag (Stage is final)
controlActionStatus array of controlActionStatus Status of actions between Merchant and Acquirer
controlActionActionDate string Date сonfirmation or decline by the Acquirer the actions Merchant
 

BpField

Code Data types Description
baseTypeCode string Data type
code string  
name string Field name
value string Field value
valueCode string  
jsonValue string Field value in format json 
isLinkedWithTrxField boolean  
fieldType string  
readOnly boolean Flag  (is  read only)
controlWidth string  
minLength integer  
maxLength integer  
mask string  
visible boolean  
documentsInfo array of Document Attachment
description string  
cssClass string  
 

Document

Code Data types Description
id string System field
creationDate string Attachment date
creator string  
name string File name
content string Content in base 64

Enumerations

paymentSystem

Value
MasterCard
Visa
МИР
 

controlActionStatus

Value Description

Waiting

 

AcceptedByAcquirer Merchant action was accepted by acquirer
DeclinedByAcquirer Merchant action was declined by acquirer
NotRequired Not Required

AutoAction

 

 

bpCode

Value Description
DP Disput
FR Fraud
COM Complaint
GF Good Faith