Методы P2P создают операцию и возвращают в ответе номер платежного средства для осуществления перевода денег клиентом. После совершения перевода денег будет отправлен стандартный callback.
В случае успешного создания операции в ответ придет статус WAITING_FOR_EXTERNAL_AUTH с номером и типом платежного средства. Итоговый статус операции определяется позже, по результату проверки перевода на стороне провайдера, и приходит в callback.
Поддерживаемые платежные средства
-
банковская карта
-
номер телефона
-
номер счета
-
внешняя страница провайдера
Тестовый банк
Моделирование различных сценариев возможно с помощью передачи различных номеров телефона плательщика во входящих параметрах. В случае тестового платежа с полученными реквизитами ничего делать не надо, операция завершится автоматически. Результат операции придет в callback.
Тестовые номера телефонов:
| payer.phone | результат |
|---|---|
1111110000 |
перевод по номеру телефона, успешное завершение |
2222220000 |
перевод на внешней странице, успешное завершение |
3333330000 |
перевод по номеру карты, успешное завершение |
4444440000 |
перевод по номеру счета, успешное завершение |
3333330005 |
перевод по номеру карты, успешное завершение через 5 секунд |
3333330100 |
перевод по номеру карты, отказ после совершения перевода |
1000000900 |
перевод по номеру телефона, зачислена половина суммы операции |
6555550100 |
отказ при создании операции: платежное средство не поддерживается |
Примеры запросов и ответов
Банковская карта
POST /card/1-1/operations/p2p HTTP/1.1
x-RequestId: acc-test-b767c6f0-5ce6-439b-b9b3-b5ab7c9ac9d0
x-RequestId: acc-test-b767c6f0-5ce6-439b-b9b3-b5ab7c9ac9d0
W1-Signature: NoOrY2h2YxQ0QN5LuqAPrPlwUl4F4HcECEPi8HBYRXMACQRas0Q0yb5lKy7iJmYCuVtdGs4giiQ6d/CNX4G68fEYd3lafDNB4xImhPBzOb0lEjb4BVExvG0XzxG4GaE1+MjocihjXphcPoLlyLFFCcom4Sa3rfYr5eylyUxjdeSr2qrFRTM5F4w0RfNhjZTAsHALdxe3+fDbVl8O53Wm8Kum56yUfwHzXYQmV8euWP19eSzXgysZM+qz0lEZl2KOdAOp70XEcMI6K7GyqGRMVVmE/SQctcypf2GBJE0Or9/x9okOLCdR4lO1SbSLmCpZjmZFeII9KSgCjErNA2X0Tg==
Content-Type: application/json
Host: payment.flexo.systems
Content-Length: 520
{
"notification" : {
"url" : "http://127.0.0.1:8080/test/callback/default/",
"version" : 1
},
"externalId" : "ext#74-1791069080466",
"amount" : {
"amount" : 10.55,
"currency" : "USD"
},
"payer" : {
"paymentMethod" : null,
"info" : {
"phone" : "3333330000",
"ip" : "127.0.0.1",
"email" : "name@example.com"
}
},
"merchantParameters" : {
"param1" : "anything you want for callback",
"param2" : null,
"param3" : null
},
"pageParameters" : null
}
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
Content-Length: 362
{
"operationId" : "1-1-a-64",
"status" : "WAITING_FOR_EXTERNAL_AUTH",
"type" : "P2P",
"externalId" : "ext#74-1791069080466",
"params" : { },
"actions" : {
"required" : [ ]
},
"externalPaymentParameters" : {
"card" : {
"pan" : "4000000000000002",
"bank" : {
"name" : "BBANK"
},
"receiver" : null
}
}
}
Банковский счет
POST /card/1-1/operations/p2p HTTP/1.1
x-RequestId: acc-test-53be6eff-c529-4010-bd13-5f3346ea9527
x-RequestId: acc-test-53be6eff-c529-4010-bd13-5f3346ea9527
W1-Signature: DiTFP0QKd0PSla+Oisd6Ogbc7yIEpNvHTlksxveeIh4re4bqzFajbVHVVJ9lM92WXs5fbubK/8P6mrAyor/gfruHX2uVB2LWWiTHU4k3i4yt91GWZyMm4VO2PXqm4MUD1w3CErjQn82kVfUtCh7bn9N241AAlVc4W4jY/tj6IvBp1M6hhcO0e4aG+waqb79i+3nR0/KTaxG97f1okFz6myZrN9GDnlm26l5zFM8UaWNt1pG4GKx9uyVHiYl9hJdeIwdTPbmPgwfk3MaMsgOchuL7HTk5QR9iQ3rvBZEyRZ7si0PxgVL9G1qCodVSlsbuY6+PoLOnyZXwT7klt8C+cQ==
Content-Type: application/json
Host: payment.flexo.systems
Content-Length: 520
{
"notification" : {
"url" : "http://127.0.0.1:8080/test/callback/default/",
"version" : 1
},
"externalId" : "ext#85-1791069095765",
"amount" : {
"amount" : 10.55,
"currency" : "USD"
},
"payer" : {
"paymentMethod" : null,
"info" : {
"phone" : "4444440000",
"ip" : "127.0.0.1",
"email" : "name@example.com"
}
},
"merchantParameters" : {
"param1" : "anything you want for callback",
"param2" : null,
"param3" : null
},
"pageParameters" : null
}
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
Content-Length: 398
{
"operationId" : "1-1-a-75",
"status" : "WAITING_FOR_EXTERNAL_AUTH",
"type" : "P2P",
"externalId" : "ext#85-1791069095765",
"params" : { },
"actions" : {
"required" : [ ]
},
"externalPaymentParameters" : {
"account" : {
"number" : "20000000000000000004",
"bank" : {
"name" : "CBANK",
"country" : "IT"
},
"receiver" : null
}
}
}
Номер телефона
POST /card/1-1/operations/p2p HTTP/1.1
x-RequestId: acc-test-009d5540-94dc-4dec-8e6b-6ca75d73f6d4
x-RequestId: acc-test-009d5540-94dc-4dec-8e6b-6ca75d73f6d4
W1-Signature: PIerF6/iUdfY84l+dEY4kU11FWCqnGmoDzQUgg2P7NREp36zie4l3DLoc01lY+xT+b6rusGcBPKx03oMMpNNFaVEE/Cp/GqG3QqPv5t9/HkaVvXjnDmZkSyhmokxkpo1dpI0JodmlNyVYxvhHXf1qc9dAbdooyPUkR4GDqrYCtw7tD92CRTnIhkV2DQU8ABpAZByV1yB0eqAIi1XhCOmOB7JRAUT2a7TqUBWjpFuzfFde8BJpiX9evOOBJD4KIO9/74KVuDOmbF3VKtRAKg1iR8T6ZnHPjxBrq0DZIsDYrbfDQF8hvKR4J18R3M61CWPn0OsaDfa3oWkvvmqR4BQQA==
Content-Type: application/json
Host: payment.flexo.systems
Content-Length: 520
{
"notification" : {
"url" : "http://127.0.0.1:8080/test/callback/default/",
"version" : 1
},
"externalId" : "ext#76-1791069084592",
"amount" : {
"amount" : 10.55,
"currency" : "USD"
},
"payer" : {
"paymentMethod" : null,
"info" : {
"phone" : "1111110000",
"ip" : "127.0.0.1",
"email" : "name@example.com"
}
},
"merchantParameters" : {
"param1" : "anything you want for callback",
"param2" : null,
"param3" : null
},
"pageParameters" : null
}
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
Content-Length: 414
{
"operationId" : "1-1-a-66",
"status" : "WAITING_FOR_EXTERNAL_AUTH",
"type" : "P2P",
"externalId" : "ext#76-1791069084592",
"params" : { },
"actions" : {
"required" : [ ]
},
"externalPaymentParameters" : {
"phone" : {
"number" : "1231231",
"bank" : {
"name" : "ABANK",
"country" : "ES"
},
"receiver" : {
"name" : "IVAN I"
}
}
}
}
Внешняя платежная страница
POST /card/1-1/operations/p2p HTTP/1.1
x-RequestId: acc-test-a234e6b9-3fb3-45d6-9f6a-e0053687e95c
x-RequestId: acc-test-a234e6b9-3fb3-45d6-9f6a-e0053687e95c
W1-Signature: wxF7dKLDVqB+W5mMaoRQzrU5bwNQy+mgZR6rFhf8GL8gllF5WFcFCBx44czKeWViPM3LPsLEG2fuTo7x6PIxvgRs2O8k/54dKhqDFwWgciOxwf2BpdIThgbrIwp8/eF/FqfMrN3Py0JecirvoaKcACd5CC0AbnI9gcF1hJlkSR2WJUuRLTxw0oyNoutiIPHJjGdHSUaEb1C6WbLXrJVHm1afVcE5GCtvsSrSOtoVfmymtwSEtyatwbU9zUCWuGSFiXFhRfKtE0PU6mJABM3sVcsEuita37MqtvVxme/PecjtxvPijsEXV4Njpk5e1Wv3vVM4bgMbxy8FfR3CqiIVkw==
Content-Type: application/json
Host: payment.flexo.systems
Content-Length: 667
{
"notification" : {
"url" : "http://127.0.0.1:8080/test/callback/default/",
"version" : 1
},
"externalId" : "ext#80-1791069089685",
"amount" : {
"amount" : 10.55,
"currency" : "USD"
},
"payer" : {
"paymentMethod" : null,
"info" : {
"phone" : "2222220000",
"ip" : "127.0.0.1",
"email" : "name@example.com"
}
},
"merchantParameters" : {
"param1" : "anything you want for callback",
"param2" : null,
"param3" : null
},
"pageParameters" : {
"urlOnSuccess" : "https://www.example.com/success",
"urlOnDecline" : "https://www.example.com/failure",
"description" : "description"
}
}
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
Content-Length: 305
{
"operationId" : "1-1-a-71",
"status" : "WAITING_FOR_EXTERNAL_AUTH",
"type" : "P2P",
"externalId" : "ext#80-1791069089685",
"params" : { },
"actions" : {
"required" : [ ]
},
"externalPaymentParameters" : {
"externalPage" : {
"url" : "https://www.example.com/pay"
}
}
}