Autentificación
1 - En primer lugar deberán autentificarse con las credenciales administradas previamente.
curl --location --request POST 'https://a.paypertic.com/auth/realms/entidades/protocol/openid-connect/token' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'username=USER' \ --data-urlencode 'password=PASS' \ --data-urlencode 'grant_type=password' \ --data-urlencode 'client_id=16465308-1844-4abe-abe6-f184149ee740' \ --data-urlencode 'client_secret=a2d03fa3-f6c4-45e5-9792-dc0d8b51a25c'
Solicitud de formulario de adhesión
2.1 - El siguiente paso es solicitar el form de adhesión con el siguiente post usando el token obtenido previamente
curl --location --request POST 'https://api.paypertic.com/suscripciones' \ --header 'Authorization: Bearer TOKEN' \ --header 'Content-Type: application/json' \ --data-raw '{ "type": "adhesion", "notification_url": "URL_SERVICIO_DE_NOTIFICACIONES ", "currency_id": "ARS", "detail": { "external_reference": "987987", "concept_id":"987", "concept_description":"Descripcion del concepto", "amount":0 }, "payer": { "name": "lucas prueba", "email": "lucasm@pagotic.com", "identification": { "type":"DNI_ARG", "number":"11222333", "country":"ARG" } } }'
2.2 - Una vez realizado el post obtendrán el siguiente response con el FORM_URL y un ID de Adhesión
"id": "5c2d62aa-23d1-4473-8aeb-f35d412f1311"
"form_url":https://servicios.paypertic.com/formularios/v2/suscripciones/5c2d62aa-23d1-4473-8aeb-f35d412f1311 { "type": "adhesion", "validation": false, "review": false, "source": { "id": "2df926de-6772-41b9-913b-89c671b0a36a", "name": "lucasm", "type": "operator" }, "version": "61536a68e802ab62342ec345", "id": "5c2d62aa-23d1-4473-8aeb-f35d412f1311", "collector_id": "999", "collector_detail": { "name": "Entidad de Prueba", "public_email": "nombre@mail.com"}, "form_url": "https://servicios.paypertic.com/formularios/v2/suscripciones/5c2d62aa-23d1-4473-8aeb-f35d412f1311", "detail": { "amount": 0.0, "external_reference": "987987", "concept_id": "987", "concept_description": "prueba adhesion lucas" }, "currency_id": "ARS", "payer": { "name": "lucas prueba", "email": "lucasm@paypertic.com", "identification": { "type": "DNI_ARG", "number": "11222333", "country": "ARG"} }, "amount": 0.0, "status": "pending", "request_date": "2021-09-28T19:18:00+0000", "last_update_date": "2021-09-28T19:18:01+0000", "last_modified": true}
2.3 El form_url deberá ser utilizado para mostrar el formulario de adhesión al pagador para que este pueda ingresar su medio de pago.
2.4 - Una vez ingresado el medio de pago, el pagador visualizará esta pantalla.
2.5 - Mientras que la entidad recibirá el siguiente JSON en la URL brindada dentro del “Notification_url”
El mismo indica que la Adhesión ahora figura en estado ACTIVE y se encuentra habilitada para recibir pagos.
{ "type": "adhesion", "validation": false, "review": false, "source": { "id": "2a93ca9a-4a2a-4906-aff2-f7135871fa3c", "name": "paypertic-api-forms", "type": "system" }, "notifications": [ { "id": "e5759c65-b740-448c-90c6-87048f470aac", "type": "subscription", "action": "subscription.retry", "date": "2021-09-28T19:11:50+0000" }, { "id": "b2a28ee7-ac29-4065-8963-c811c12e7953", "type": "subscription", "action": "subscription.subscribe", "date": "2021-09-28T19:26:24+0000" } ], "version": "61536c5ee802ab62342ec678", "id": "634c5512-b1c8-4e48-a930-a810034af6d5", "collector_id": "2867", "collector_detail": { "name": "Entidad de prueba", "public_email": "nombre.mail" }, "notification_url": "https://testadhesiones.free.beeceptor.com", "form_url": "https://servicios.paypertic.com/formularios/v2/suscripciones/634c5512-b1c8-4e48-a930-a810034af6d5", "detail": { "amount": 0.0, "external_reference": "987987", "concept_id": "987", "concept_description": "prueba adhesion lucas" }, "currency_id": "ARS", "payment_method": { "media_payment_id": 9, "media_payment_detail": "VISA CREDIT", "last_four_digits": "0010", "first_six_digits": "450799" }, "payer": { "id": "dc62f217-7432-4be3-a333-a01980705c2c", "name": "lucas prueba", "email": "lucasm@paypertic.com", "identification": { "type": "DNI_ARG", "number": "11222333", "country": "ARG" } }, "amount": 0.0, "status": "active", "request_date": "2021-09-28T19:11:47+0000", "last_update_date": "2021-09-28T19:26:24+0000", "collector_notifications": [ { "url": "https://testadhesiones.free.beeceptor.com", "response": 429, "status": "pending", "original_request": "2021-09-28T19:11:50+0000", "last_retry": "2021-09-28T19:11:50+0000", "retry_count": 0 }, { "url": "https://testadhesiones.free.beeceptor.com", "response": 429, "status": "active", "original_request": "2021-09-28T19:26:24+0000", "last_retry": "2021-09-28T19:26:24+0000", "retry_count": 0 } ], "last_modified": true }
Solicitud de cobro a adhesiones
3.1 - Una vez obtenido el ID se deberá generar una solicitud de pago a dicha adhesión.
curl --location --request POST 'https://api.paypertic.com/suscripciones/adhesion/ID_ADHESION/pago' \ --header 'Authorization: Bearer TOKEN' \ --header 'Cache-Control: no-cache' \ --header 'Content-Type: application/json' \ --data-raw '{ "currency_id": "ARS", "external_transaction_id": 1635252306, "due_date":"2021-04-30T09:05:29-0300", "notification_url":"URL DE NOTIFICACIONES", "details": [ { "external_reference": "987987", "concept_id":"50", "concept_description":"Prueba cobro adhesion", "amount": 200 } ] }'
3.2 - Al generar el pago, el mismo pasará a estado Issued para luego pasar a In_process, y una vez procesado los pagos y obtenidas las respuestas, recibirán en el endpoint de notificaciones si el pago fue aprobado (approved) o rechazado (rejected).
Cancelar Adhesión
4.1 - En caso de querer cancelar una adhesión, deberán utilizar el siguiente POST
Donde deberá reemplazar el valor {ID} por un ID de adhesión en estado Active
curl --location -g --request POST 'https://api.paypertic.com/suscripciones/cancelar/{ID}' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer TOKEN' \ --data-raw '{ "status_detail":"Detalle de la cancelación" }'
Cancelar Pago
5.1 - Para cancelar un pago deberán utilizar el siguiente POST
Donde deberá reemplazar el valor {ID} por un ID de un pago en estado ISSUED.
Este servicio sólo podrá ser usado en pagos con estado ISSUED dado que aún no han sido enviados a procesar.
Con cualquier otro estado, la solicitud será denegada.
curl --location -g --request POST 'https://api.paypertic.com/pagos/cancelar/{ID}' \ --header 'Authorization: Bearer TOKEN' \ --header 'Cache-Control: no-cache' \ --header 'Content-Type: application/json' \ --data-raw '{ "status_detail":"Motivo de cancelación" }'