Autorización parcial
Introducción
La autorización parcial es un proceso de autorización (pago) en el que la cuenta bancaria del cliente no tiene fondos suficientes para cubrir el monto de la autorización, pero puede autorizarse el monto disponible en la cuenta del cliente. Esta funcionalidad puede ayudarte, por ejemplo, a recargar una billetera, aceptar un pago por adelantado o un prepago de factura.
Esta funcionalidad funciona solo para los sistemas de pago Visa y Mastercard.
Para trabajar con esta funcionalidad es necesario el permiso correspondiente. Para obtenerlo, contacta al soporte técnico.
Iniciación de autorización parcial
Para iniciar una autorización parcial, es necesario pasar en la solicitud de registro de pedido o iniciación de pago el valor features=PARTIAL_AUTHORIZATION. Este valor puede ser pasado en las siguientes solicitudes API:
- instantPayment.do
- register.do
- registerpreauth.do
- token/payment.do
- applepay/paymentDirect.do
- google/paymentDirect.do
- installmentPayment.do
- recurrentPayment.do
- industryPractice/paymentOrder.do
- samsung/payment.do
En este caso, si está habilitada la funcionalidad de autorización parcial, se debitará de la cuenta del cliente el saldo disponible.
Ejemplo de solicitud con iniciación de autorización parcial:
curl --location 'https://dev.bpcbt.com/payment/rest/instantPayment.do' \
--header 'Content-Type: application/json' \
--data '{
"userName": "test_user",
"password": "test_user_password",
"pan": "5555555555555599",
"cvc": "123",
"amount": 10001,
"expiry": "203412",
"backUrl": "https://mybestmerchantreturnurl.com",
"cardHolderName": "TEST CARDHOLDER",
"language": "en",
"failUrl": "https://mybestmerchantbackurl.com",
"features": "PARTIAL_AUTHORIZATION"
}'Visualización del resultado de autorización parcial
Para asegurarte de que la autorización parcial se completó exitosamente, puedes enviar una solicitud getOrderStatusExtended.do (a partir de la versión 41). En este caso, en la respuesta vendrá el parámetro partialAuthorization, que puede tomar los siguientes valores:
-
REQUESTED- El comerciante solicitó autorización parcial, pero la autorización aún no se ha realizado. -
PARTIAL_AMOUNT- El comerciante solicitó autorización parcial. La autorización parcial se ejecutó exitosamente ante la insuficiencia de saldo del cliente. -
FULL_AMOUNT- El comerciante solicitó autorización parcial, pero el saldo del cliente era suficiente, por lo que no se requirió la ejecución de autorización parcial y se debitó el monto completo.
Ejemplo:
{
...
"partialAuthorization": "PARTIAL_AMOUNT",
...
}También puedes ver el resultado de la autorización parcial en los detalles de la transacción en el Portal del comerciante. Ver más detalles aquí.