Skip to content
zodiacfireworks edited this page Mar 7, 2021 · 1 revision

Planes

Consulta la documentación de Culqi en https://apidocs.culqi.com/#/planes

def get_plan_data():
    plan_data = deepcopy(Data.PLAN)
    plan_data["name"] = "plan-{0}".format(uuid4().hex[:4])

    return plan_data

Listar

plan_list = culqi.plan.list(
    data={
        "limit": 1,
    },
    headers={
        "Accept-Encoding": "identity",
    },
)

display(plan_list)
{
    "status": 200,
    "data": {
        "paging": {
            "previous": "https://api.culqi.com/v2/plans?limit=1&before=pln_test_QIFyiFRhv4wuhMxZ",
            "next": "https://api.culqi.com/v2/plans?limit=1&after=pln_test_QIFyiFRhv4wuhMxZ",
            "cursors": {
                "before": "pln_test_QIFyiFRhv4wuhMxZ",
                "after": "pln_test_QIFyiFRhv4wuhMxZ"
            },
            "remaining_items": 51
        },
        "items": [
            {
                "object": "plan",
                "id": "pln_test_QIFyiFRhv4wuhMxZ",
                "creation_date": 1615129728000,
                "name": "plan-7274",
                "amount": 1000,
                "currency_code": "PEN",
                "interval_count": 2,
                "interval": "Días",
                "limit": 10,
                "trial_days": 30,
                "total_subscriptions": 1,
                "metadata": {}
            }
        ]
    }
}

Crear

plan_data = get_plan_data()
plan = culqi.plan.create(data=plan_data)

display(plan)
{
    "status": 201,
    "data": {
        "object": "plan",
        "id": "pln_test_uXQck7r2kIOuPZL8",
        "creation_date": 1615131633000,
        "name": "plan-6b3f",
        "amount": 1000,
        "currency_code": "PEN",
        "interval_count": 2,
        "interval": "Días",
        "limit": 10,
        "trial_days": 30,
        "total_subscriptions": 0,
        "metadata": {}
    }
}

Leer

plan_id = plan["data"]["id"]
plan = culqi.plan.read(id_=plan_id)

display(plan)
{
    "status": 200,
    "data": {
        "object": "plan",
        "id": "pln_test_uXQck7r2kIOuPZL8",
        "creation_date": 1615131633000,
        "name": "plan-6b3f",
        "amount": 1000,
        "currency_code": "PEN",
        "interval_count": 2,
        "interval": "Días",
        "limit": 10,
        "trial_days": 30,
        "total_subscriptions": 0,
        "metadata": {}
    }
}

Actualizar

plan_id = plan["data"]["id"]
plan_metadata = {
    "metadata": {
        "orderId": 1234567890
    }
}
plan = culqi.plan.update(
    id_=plan_id, data=plan_metadata
)

display(plan)
{
    "status": 200,
    "data": {
        "object": "plan",
        "id": "pln_test_uXQck7r2kIOuPZL8",
        "creation_date": 1615131633000,
        "name": "plan-6b3f",
        "amount": 1000,
        "currency_code": "PEN",
        "interval_count": 2,
        "interval": "Días",
        "limit": 10,
        "trial_days": 30,
        "total_subscriptions": 0,
        "metadata": {
            "orderId": "1234567890"
        }
    }
}

Eliminar

plan_id = plan["data"]["id"]
deleted_plan = culqi.plan.delete(id_=plan_id)

display(deleted_plan)
{
    "status": 200,
    "data": {
        "id": "pln_test_uXQck7r2kIOuPZL8",
        "deleted": true,
        "merchant_message": "Se eliminó el plan con ID pln_test_uXQck7r2kIOuPZL8 exitosamente."
    }
}

Clone this wiki locally