"Find subscription by deal" update_time not updated

When I call the API /v1/subscriptions/find/{dealId} i get a result that looks like that.

{
    "success": true,
    "data": {
        "id": xxx,
        "user_id": xxx,
        "deal_id": xxx,
        "is_active": true,
        "cycle_amount": 0,
        "cycles_count": 0,
        "infinite": false,
        "currency": "EUR",
        "start_date": "2023-03-30",
        "end_date": "2023-06-30",
        "description": null,
        "add_time": "2022-02-17 13:01:56",
     ==>"update_time": "2022-04-06 10:42:34"<==,
        "lifetime_value": 160000,
        "cadence_type": "custom",
        "final_status": null
    }
}

thats good sor far. But when i edit the payment schedule ( for example the amount of one payment) the “update_time” becomes no update.

Can anyone help me? How can i see if the payment schedule was updated before i have to get the whole payment schedule by calling /v1/subscriptions/{id}/payments

EDIT:
I can find the date I want in the payment details api/v1/subscriptions/{ID}/payments.
However, I want to see if any payments have been changed before looking in the details.

Also, all payments get the new update date, whether they have been updated or not. And: the add_time is equal to the update_time

{
    "success": true,
    "data": [
        {
            "id": xxxx,
            "subscription_id": x,
            "deal_id": x,
            "is_active": true,
            "amount": 40000,
            "currency": "EUR",
            "change_amount": 0,
            "due_at": "2023-03-30",
            "revenue_movement_type": "none",
            "payment_type": "installment",
            "description": "März 23",
            "add_time": "2022-08-23 14:24:53",
            "update_time": "2022-08-23 14:24:53"
        },
        {
            "id": xxxx,
            "subscription_id": x,
            "deal_id": x,
            "is_active": true,
            "amount": 40000,
            "currency": "EUR",
            "change_amount": 0,
            "due_at": "2023-04-30",
            "revenue_movement_type": "none",
            "payment_type": "installment",
            "description": "April  23",
            "add_time": "2022-08-23 14:24:53",
            "update_time": "2022-08-23 14:24:53"
        },
        {
            "id": xxxx,
            "subscription_id": x,
            "deal_id": x,
            "is_active": true,
            "amount": 40000,
            "currency": "EUR",
            "change_amount": 0,
            "due_at": "2023-05-31",
            "revenue_movement_type": "none",
            "payment_type": "installment",
            "description": "Mai 23",
            "add_time": "2022-08-23 14:24:53",
            "update_time": "2022-08-23 14:24:53"
        },
        {
            "id": xxxx,
            "subscription_id": x,
            "deal_id": x,
            "is_active": true,
            "amount": 40000,
            "currency": "EUR",
            "change_amount": 0,
            "due_at": "2023-06-30",
            "revenue_movement_type": "none",
            "payment_type": "installment",
            "description": "Juni 23",
            "add_time": "2022-08-23 14:24:53",
            "update_time": "2022-08-23 14:24:53"
        }
    ]
}
1 Like

We’ve seen the same issue, and when I asked support about it I got the following answer:

We have some updates from our engineers about the update_time parameter. They mentioned this is expected behaviour as those two endpoints show different items. One shows the subscription the other is payment. Once you update a payment, you don’t update the subscription, so it’s expected that the value stays the same.

I noted to them that I think this behavior is incorrect. If you create or delete a payment, the underlying subscription will get updated, but editing existing payments does not update the subscription. Also, as you noted, any change to a payment actually results in Pipedrive removing and then re-adding all payments for the subscription which is why the add/update time gets changed. If you notice, the id field on the payment will be different which is indicative of this behavior.

2 Likes

Oh, I’ am so happy to hear and of course sorry, that someone else has the same issues with the subscription and payments update date values.
The Answer you’ve got from the support is an excuse.

I can abolutly confirm your statement: When I add a payment, which changes the end_date of the corosponding subscription, the update_time changes.
But when I change the amount of a payment, which changes the lifetime_value of the subscription, the update_time does not change. But changing lifetime value ist defenitiv a change of the subscription.

I think the developers don’t care, because we are the only two customers who look at these date values.

And regarding to the payments: why do they need a vlaue named update_time , when it’s always the same as add_time ?

1 Like

We are facing the same issues on several of our Pipedrive-Clients. At least we were able to save many developers a headache by not needing to figure this out themselves, but as it currently ist the field update_time in this feature is useless. Would be great to have at least webhooks being able to get triggered when there is an update on a payment - it would already solve alot of the headache, and like this we would be able to at least log our own kind of update_time

tl;dr
either add webhooks to this feature, or change the way the update_time behaves
:pray: :pray: :pray:

1 Like