По переходу операции в конечный статус на адрес, переденный в запросе в поле notification.url отправляется нотификация.
-
метод: POST
-
в заголовке передается подпись. Правила формирования
-
публичный ключ для проверки подписи:
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs7NA6ot9a53nxGYelM89
o1imFac04hED3sS8cwzFxi2rxUNQXl2tEiWIHzGy2sEFLDfeN2lvEVCONl7pXlDP
fpFPBNPy6zfSRMq32t319MDOkykBRTRE4GDlU+MPm/u/UOGuHSaFLKKKXVZVyk6o
9K+hI9UfVE5FNjF04vWBrgcnwWQ9+hqNE9EhqxELoQdhbcUz3PnBkjWRKlBXnUBo
9HrboTaRUr+YkyTh6Kh/afQHreKXy8yA0arTT4mpeb5PL06g0B9Ejn4m+wHPN8DW
feY8U8QImoaDT5n+ngxMpqIXv2kokPBATlpno3uj9fKcxivqvEbtNrAA5wRM17Bq
WwIDAQAB
-----END PUBLIC KEY-----
Пример уведомления (версия 2)
POST /test/emptycallback HTTP/1.1
W1-Signature: APlbhz3H0FxiD2W9fD4IQBRCDvOyJh5mwYbrNDGWpowyJBIqNy1s9k1qievoJvm14ddoM1t8RAlwWbLbDQDNECoXJgzup9PffoL/KgSnsSuxxUPHwXhk8Dit21HrUI1GiRY56h2eRjk1njE/75h7RDmR5cGCSDA5fosFUXWbTYakw0Aywl9WFTkblRooKEbSNuGuyQ6gEJKNGd1L2+668KHuCLaWgIaaKFgJMxMt9xrlSKAkKlWpHgk7FyQSkSxit6Fvnh0F96Ja6Jrar4dTsyRqkaEgfgvuCsY++VI2dCWOQRF/OIMPEalgpMzMM4CMqd7ofmkD61r2dDEAsj7d1A==
Content-Type: application/json
Host: payment.flexo.systems
Content-Length: 805
{
"id" : "1-6-a-34",
"type" : "REFUND",
"status" : "SUCCEEDED",
"externalId" : "ext#42-1775227387068",
"amounts" : {
"amount" : {
"amount" : 5.0,
"currency" : "USD"
},
"payerAmount" : {
"amount" : 7.5,
"currency" : "USD"
},
"merchantFee" : {
"amount" : 0.0,
"currency" : "USD"
},
"payerFee" : {
"amount" : 2.5,
"currency" : "USD"
},
"settlementAmount" : {
"amount" : -5.0,
"currency" : "USD"
}
},
"registeredMethods" : [ ],
"merchantParameters" : {
"param1" : "anything you want for callback",
"param2" : null,
"param3" : null
},
"transactions" : [ {
"type" : "REFUND",
"status" : "SUCCEEDED",
"maskedPan" : "411111XXXXXX1111",
"rejectReason" : null
} ]
}
HTTP/1.1 404 Not Found
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Привер уведомления (версия 3)
POST /test/emptycallback HTTP/1.1
W1-Signature: sCfYZiUh4UTx+UMuyOYKoSqUVBJF7GPooO5/Lpt2D/lvmNZqM5JZPCo7OqpyuFGdEfTueB71bNrCDj2OjkAuRgMJHY/CDhzbLgFWszLXMkWNUapbD8jOz2lWRa8khGwzAzOKnDyrnfPjQRJlB8eMwUsnevWeGiTswOarm0dJLAfxu+YsjewZLja/KXpL6G70SRVXYG7bGqHtjL7y5T2j8C+JcacVsHWiat7281uhPXgNLKi9jtQkGPELb57LuJAnzGnStuIE4repj3Mli35tW8oZTGox0ExmEEuBOXqFPxcW4ytoarZx1JKWeOPtH7ouWO6sjCVCEqG3M4lxHMK2cg==
Content-Type: application/json
Host: payment.flexo.systems
Content-Length: 928
{
"id" : "1-1-a-20",
"type" : "PURCHASE",
"status" : "SUCCEEDED",
"externalId" : "ext#25-1775227365886",
"chargedAmounts" : {
"amount" : {
"amount" : 10.57,
"currency" : "USD"
},
"payerAmount" : {
"amount" : 10.57,
"currency" : "USD"
},
"merchantFee" : {
"amount" : 0.0,
"currency" : "USD"
},
"payerFee" : {
"amount" : 0.0,
"currency" : "USD"
},
"settlementAmount" : {
"amount" : 10.57,
"currency" : "USD"
}
},
"registeredMethods" : [ {
"entity" : {
"id" : "payoutToken-411111-something-1111"
},
"type" : "PAYOUT_TOKEN"
} ],
"merchantParameters" : {
"param1" : "anything you want for callback",
"param2" : null,
"param3" : null
},
"transactions" : [ {
"type" : "PURCHASE",
"status" : "SUCCEEDED",
"maskedPan" : "411111XXXXXX1111",
"rejectReason" : null
} ]
}
HTTP/1.1 404 Not Found
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers