API de Planes
Ver en POSTMAN
Recurso para obtener los planes dados de alta en Increase Pay o crear nuevos planes
Cómo probar
Recuerda usar la Base URL de Sandbox para hacer pruebas:
https://gateway.increase.app/pay-sandbox/public/v1/
URL Producción: https://gateway.increase.app/pay/public/v1/
Recordar siempre enviar en los headers Content-Type: application/json
Crear un plan
POST
https://gateway.increase.app/pay/public/v1/plans
Parámetro | Tipo | Descripción | Requerido | Permite update |
---|---|---|---|---|
product_id | String | Id del producto asociado | si | no |
type | String | tipo de plan ("Flat", "VariableFlat", "Usage", "Graduated", "Volume") | si | no |
name | String | nombre del plan | si | si |
cycle_amount | Int | cantidad de ciclos | si | no |
cycle_unit | String | unidad de la cantidad de ciclos | si | no |
country | String | País en ISO 3166-1 alpha-3 | si | no |
collect_methods | Object | Objeto de configuración de medios de pago que seran ofrecidos al cliente | si | si |
automatic_subscription_request_approval | Boolean | Indica si las suscripciones se aprueban automaticamente para este plan o requiere aprobacíon manual | si | no |
charge_after_period | Boolean | Indica si debe cobrarse al inicio o al final del período. | no | no |
amount | String | monto a cobrar para planes fijos o por volumen. Ejemplo: 100.0 | no | si |
currency | String | Moneda en formato ISO 4217. Ej: ARS | no | no |
trial_period_days | Int | Período de prueba por defecto | no | si |
tiers | Array | Niveles, solo para planes escalonados | no | no |
taxes | Array | Impuestos asociados | no | si |
one_time_costs | Array | Pagos únicos asociados. | no | si |
discounts | Array | Descuentos asociados | no | si |
external_id | String | Id para tu aplicación. | no | si |
success_url | String | URL de exito (https://www.tuempresa.com/gracias) | no | si |
charge_proportional | String | Indica en que momento se factura el cargo proporcional, si se factura junto al siguiente ciclo se debe enviar "after_first_period" y si se factura al instante debera enviar "before_first_period" | no | no |
grace_period_setting | Int | Número de ciclos incobrables en el cual quiero que la suscripción cambie de estado automáticamente, ya sea a pausada o cancelada. Ejemplo: grace_period_setting = null hace que la feature esté desactivada, es decir, una suscripción activa no cambia de estado a menos que haya intervención manual. grace_period_setting = 2 es lo mismo que decir "a la 2da Invoice en estado uncollectible , quiero que la suscripción deje de estar activa" | no | si |
status_after_grace_period | String | Valores posibles: ["paused", "canceled"]. Default: "paused". Estado al cual quiero que la suscripción cambie automaticamente una vez que la cantidad de ciclos incobrables sea igual a grace_period_setting . | no | si |
start_day | Int | Indica el dia del mes en que inicia el ciclo de facturacion | no | no |
start_hour | Int | Indica la hora de cobro del plan | no | no |
status | String | Indica si el plan estará habilitado. Valores posibles: ["enabled", "disabled"] | no | si |
Al crear un plan con sucess_url
luego de que el cliente complete su medio de pago y se suscriba a dicho plan será redirigido de manera automática a la URL. Enviaremos también customer_id
, subscription_id
y payment_method_id
La hora de cobro del plan serán valores entre 0 a 23
, el valor de la hora pertenece al país que tiene el plan asignado, la hora de cobro solo funciona si los collect_methods que tiene el plan asignado son del tipo card
. Por defecto si no se envia start_hour se va a configurar en 13 UTC
lo que equivale a:
País | Hora del país | Hora UTC | Zona horaria |
---|---|---|---|
ARG | 10 | 13 | GMT-3 |
PER | 8 | 13 | GMT-5 |
COL | 8 | 13 | GMT-5 |
CHL | 10 | 13 | GMT-3 |
URY | 10 | 13 | GMT-3 |
ECU | 8 | 13 | GMT-5 |
PRY | 10 | 13 | GMT-3 |
CRI | 7 | 13 | GMT-6 |
Los diferentes type
que podras enviar al momento de crear tu plan son:
Parámetro | Tipo | Descripción |
---|---|---|
Flat | String | Plan fijo |
VariableFlat | String | Plan variable, en este tipo de plan el amount debera enviarse en 0.0 |
Usage | String | Plan por unidad |
Graduated | String | Plan escalonado o escalonado con base |
Volume | String | Plan por volumen |
Collect methods
El objeto collect_methods
admite solo un id por payment_category (card, cbu o ticket).
{
"card": [{"id": "..."}],
"cbu": [{"id": "..."}],
"ticket": []
}
Adicionales
Todos los adicionales discounts
, one_time_costs
, taxes
son de tipo array y admiten multiples ids de cada tipo.
"discounts": [
{
"id": "00000000-0000-0000-0000-000000000001"
}
],
"one_time_costs": [
{
"id": "00000000-0000-0000-0000-000000000001"
}
],
"taxes": [
{
"id": "00000000-0000-0000-0000-000000000001"
}
]
Ejemplo
- Request body
- Response
{
"name": "New plan cbu",
"charge_after_period": false,
"type": "flat",
"cycle_unit": "monthly",
"cycle_amount": 1,
"amount": "2500",
"tiers": null,
"trial_period_days": 10,
"automatic_subscription_request_approval": true,
"external_id": "123asd12asd123-as1231-3",
"success_url": "http://success_url.com",
"start_day": null,
"start_month": null,
"start_hour": 13,
"status": "enabled",
"charge_proportional": null,
"grace_period_setting": null,
"status_after_grace_period": "paused",
"currency": "ARS",
"country": "ARG",
"product_id": "sdasd123-123123-123sdasd123",
"taxes": [
{
"id": "asdasd-1231asd-11233"
}
],
"discounts": [
{
"id": "asdasd-1231asd-11234"
}
],
"one_time_costs": [
{
"id": "asdasd-1231asd-11235"
}
],
"collect_methods": {
"card": [],
"cbu": [{
"id": "asdasd-1231asd-112351"
}],
"ticket": []
}
}
{
"id": "0c57bc90-a6dd-4040-b97f-e05d24d2c7a4",
"name": "test",
"amount": "0.0",
"currency": "ARS",
"cycle_unit": "monthly",
"cycle_amount": 1,
"type": "Volume",
"country": "argentina",
"collect_methods": {
"card": [{
"id": "7936a685-9eaa-4b33-be44-df4240c17412",
"name": "collect method 3",
"type": "mercadopago_connect",
"status": "enabled",
"country": "ARG",
"max_payment_retries": 0,
"retry_period_time": 0,
"retry_period_unit": "days",
"payment_categories": ["card"],
"currencies": [
"ARS"
],
"public_key": "AAAAAAAAAA",
}],
"cbu": [{
"id": "2ae4e61c-0382-4c67-86d0-85fd205823b3",
"name": "collect method 3",
"type": "supervielle",
"status": "enabled",
"country": "ARG",
"max_payment_retries": 0,
"retry_period_time": 0,
"retry_period_unit": "days",
"payment_categories": ["cbu"],
"currencies": [
"ARS"
],
"metadata": {
"company_code": "12345",
"cuit": "20109753395",
"id_size": 11
}
}],
"ticket": []
},
"external_id": null,
"trial_period_days": 7,
"tiers": [
{
"minimum": 1,
"maximum": 10,
"amount": "10.0",
"amount_type": "per_unit"
},
{
"minimum": 11,
"amount": "8.0",
"amount_type": "per_unit"
}
],
"discounts": [
{
"id": "00000000-0000-0000-0000-000000000001",
"external_id": null,
"name": "laboriosam fuga",
"type": "flat",
"amount": "97494.46",
"currency": "ARS",
"duration": "periodic",
"cycle_unit": "monthly",
"cycle_amount": 1,
"created_at": "2020-03-27T17:23:11-03:00",
"description": null
}
],
"one_time_costs": [
{
"id": "00000000-0000-0000-0000-000000000001",
"external_id": null,
"name": "consequatur cumque",
"amount": "18.61",
"currency": "ARS"
}
],
"taxes": [
{
"id": "00000000-0000-0000-0000-000000000001",
"type": "flat",
"name": "blanditiis fugit",
"amount": "15090.15",
"region": null,
"created_at": "2020-03-27T17:23:11-03:00",
"country": null,
"description": null,
"external_id": null
}
],
"charge_after_period": false,
"product_id": "00000000-0000-0000-0000-000000000001",
"start_day": 1,
"status": "enabled",
"charge_proportional": "after_first_period",
"automatic_subscription_request_approval": true,
"grace_period_setting": null,
"status_after_grace_period": null,
"checkout_link": "https://pay.increase.app/checkout/8898b790-b8f4-44d0-b2db-10c4a881da63?plan_id=0c57bc90-a6dd-4040-b97f-e05d24d2c7a4&product_id=089859fc-5ed8-49fd-8749-aebcd3168b1d",
"success_url": "https://increase.app/gracias"
}
Obtener todos los planes
GET
https://gateway.increase.app/pay/public/v1/plans
Parámetros optativos
Parámetro | Tipo | Descripción | Requerido |
---|---|---|---|
Page | Integer | Indica la página a obtener resultados. | no |
per_page | Integer | Cantidad de resultados por página (Máximo 40). | no |
type | String | tipo de suscripción | no |
product_id | String | id del producto | no |
status | String | Indica si el plan esta hábilitado | no |
Resoponse
{
"data": [
{
"id": "00000000-0000-0000-0000-000000000001",
"name": "possimus occaecati",
"amount": "30.36",
"currency": "ARS",
"cycle_unit": "monthly",
"cycle_amount": 1,
"type": "flat",
"country": "Argentina",
"external_id": null,
"trial_period_days": 7,
"tiers": [],
"discounts": [],
"one_time_costs": [],
"taxes": [],
"charge_after_period": false,
"product_id": "00000000-0000-0000-0000-000000000001",
"automatic_subscription_request_approval": true,
"grace_period_setting": null,
"status_after_grace_period": null,
"checkout_link": "https://pay.increase.app/checkout/8898b790-b8f4-44d0-b2db-10c4a881da63?plan_id=0c57bc90-a6dd-4040-b97f-e05d24d2c7a4&product_id=089859fc-5ed8-49fd-8749-aebcd3168b1d",
"success_url": "https://increase.app/gracias"
}
],
"current_page": 1,
"per_page": 20,
"total_pages": 1,
"total_elements": 1
}
Obtener un plan específico
GET
https://gateway.increase.app/pay/public/v1/plans/<id>
Parámetros
Parámetro | Tipo | Descripción | Requerido |
---|---|---|---|
id | String | id del plan | si |
Response
{
"id": "d3fbf57a-d67a-49fe-af94-cd3881720935",
"name": "New plan",
"amount": "2500.0",
"currency": "ARS",
"cycle_unit": "monthly",
"cycle_amount": 1,
"type": "flat",
"country": "ARG",
"external_id": "41b24ea0-8cf5-48fa-a206-05db619a5231",
"trial_period_days": 10,
"tiers": [],
"charge_after_period": false,
"product_id": "8e0bda25-c446-48a9-aab0-a9a7adc396fd",
"start_day": null,
"charge_proportional": null,
"grace_period_setting": null,
"status_after_grace_period": "paused",
"automatic_subscription_request_approval": true,
"checkout_link": "https://gateway.increase.app/pay-sandbox/checkout/v1/short_urls/PTtJGF",
"success_url": "",
"collect_methods": {
"cbu": [],
"card": [
{
"id": "d2a7fd90-a8da-4276-8fee-2b5f91edab61",
"name": "Mercadopago Connect",
"type": "mercadopago_connect",
"status": "enabled",
"country": "ARG",
"max_payment_retries": 0,
"retry_period_time": 0,
"retry_period_unit": "days",
"currencies": [
"ARS"
],
"payment_categories": [
"card"
],
"public_key": "APP_USR-29d56597-5025-449c-883c-00b8a6c4c89c",
"metadata": {
"expiration_days": 30,
"offline_payments_enabled": false
}
}
],
"ticket": []
},
"locked": false,
"taxes": [
{
"id": "9cacf4ba-080f-4120-a84e-6b824e92fe39",
"type": "flat",
"name": "New tax",
"amount": "130.0",
"region": null,
"created_at": "2021-09-30T15:04:36-03:00",
"country": "ARG",
"description": "Tax description updated",
"external_id": "9e8bc664-dd8f-4477-8336-0d2663536c86"
}
],
"discounts": [
{
"id": "bd9a61bd-c7f1-4920-a832-a43a5084b6f1",
"external_id": "e2dfa853-aba1-4512-846c-c10e42143135",
"name": "New discount",
"type": "flat",
"amount": "130.0",
"currency": "ARS",
"duration": "periodic",
"cycle_unit": "monthly",
"cycle_amount": 10,
"created_at": "2021-09-30T14:54:56-03:00",
"description": "A description of the discount"
}
],
"one_time_costs": [
{
"id": "716d64f8-1b2f-4bf7-b2ba-3da72382244a",
"external_id": "994702d6-63b1-43ad-acd0-53686675bf65",
"type": "flat",
"name": "New one time cost",
"description": "A description of the one time cost",
"amount": "1300.0",
"country": "ARG",
"currency": "ARS"
}
]
}
Actualizar un plan específico
PUT
https://gateway.increase.app/pay/public/v1/plans/<id>
- Request body
- Response
{
"name": "New plan updated",
"amount": "2500",
"external_id": "41b24ea0-8cf5-48fa-a206-05db619a5231",
"success_url": "http://success.com",
"status": "enabled",
"taxes": [
{
"id": "41b24ea0-8cf5-48fa-a206-05db619a5232"
}
],
"discounts": [
{
"id": "41b24ea0-8cf5-48fa-a206-05db619a5233"
}
],
"one_time_costs": [
{
"id": "41b24ea0-8cf5-48fa-a206-05db619a5235"
}
],
"collect_methods": {
"card": [],
"cbu": [
{
"id": "41b24ea0-8cf5-48fa-a206-05db619a5239"
}
],
"ticket": []
},
"grace_period_setting": null,
"status_after_grace_period": "paused"
}
{
"id": "d3fbf57a-d67a-49fe-af94-cd3881720935",
"name": "New plan updated",
"amount": "2500.0",
"currency": "ARS",
"cycle_unit": "monthly",
"cycle_amount": 1,
"type": "flat",
"country": "ARG",
"external_id": "41b24ea0-8cf5-48fa-a206-05db619a5231",
"trial_period_days": 10,
"tiers": [],
"charge_after_period": false,
"product_id": "8e0bda25-c446-48a9-aab0-a9a7adc396fd",
"start_day": null,
"status": "enabled",
"charge_proportional": null,
"automatic_subscription_request_approval": true,
"checkout_link": "https://gateway.increase.app/pay-sandbox/checkout/v1/short_urls/PTtJGF",
"success_url": "",
"collect_methods": {
"cbu": [],
"card": [
{
"id": "d2a7fd90-a8da-4276-8fee-2b5f91edab61",
"name": "Mercadopago Connect",
"type": "mercadopago_connect",
"status": "enabled",
"country": "ARG",
"max_payment_retries": 0,
"retry_period_time": 0,
"retry_period_unit": "days",
"currencies": [
"ARS"
],
"payment_categories": [
"card"
],
"public_key": "APP_USR-29d56597-5025-449c-883c-00b8a6c4c89c",
"metadata": {
"expiration_days": 30,
"offline_payments_enabled": false
}
}
],
"ticket": []
},
"locked": true,
"taxes": [
{
"id": "9cacf4ba-080f-4120-a84e-6b824e92fe39",
"type": "flat",
"name": "New tax",
"amount": "130.0",
"region": null,
"created_at": "2021-09-30T15:04:36-03:00",
"country": "ARG",
"description": "Tax description updated",
"external_id": "9e8bc664-dd8f-4477-8336-0d2663536c86"
}
],
"discounts": [
{
"id": "bd9a61bd-c7f1-4920-a832-a43a5084b6f1",
"external_id": "e2dfa853-aba1-4512-846c-c10e42143135",
"name": "New discount",
"type": "flat",
"amount": "130.0",
"currency": "ARS",
"duration": "periodic",
"cycle_unit": "monthly",
"cycle_amount": 10,
"created_at": "2021-09-30T14:54:56-03:00",
"description": "A description of the discount"
}
],
"one_time_costs": [
{
"id": "716d64f8-1b2f-4bf7-b2ba-3da72382244a",
"external_id": "994702d6-63b1-43ad-acd0-53686675bf65",
"type": "flat",
"name": "New one time cost",
"description": "A description of the one time cost",
"amount": "1300.0",
"country": "ARG",
"currency": "ARS"
}
]
}