$0 subscription payments not coming through invoice.payment.add

I have subscribed to “invoice.payment.add” but none of the first time subscriptions are coming through. It’s either $0 or $1 but these are not coming through. Is there anything else I have to lookout for ?

Verify that the status comes back as ‘Verified’ (as apposed to Unverified…see image)

No, my hook is verified.
Data is coming through - but it looks like all the data is not through. For example $0 or $1 subscriptions. I am not sure what to look out for. When we sell subscriptions, the first month is for $0. But I don’t know where to look out for $0. One of our subscriptions is like this :

stdClass Object
(
    [id] => xxxxx
    [test] => 
    [amount] => 97
    [currency] => 
    [gateway] => AUTHORIZE
    [type] => CAPTURE
    [status] => Successful Transaction
    [errors] => 
    [orders] => Array
        (
            [0] => stdClass Object
                (
                    [id] => xxxxx
                    [title] => GIC 97 - Every month for 12 months
                    [status] => PAID
                    [recurring] => 
                    [total] => 97
                    [contact] => stdClass Object
                        (
                            [id] => xxxxx
                            [email] => xxxxx@xxxxx.com
                            [first_name] => xxxxx
                            [last_name] => xxxxx
                            [company_name] => xxxxx
                            [job_title] => 
                        )

                    [notes] => 
                    [terms] => 
                    [creation_date] => 2019-03-27T07:33:01.000Z
                    [modification_date] => 2019-03-27T07:33:01.000Z
                    [order_date] => 2019-03-27T04:00:00.000Z
                    [lead_affiliate_id] => 0
                    [sales_affiliate_id] => 0
                    [total_paid] => 97
                    [total_due] => 97
                    [shipping_information] => stdClass Object
                        (
                            [id] => xxxxx
                            [first_name] => xxxxx
                            [middle_name] => 
                            [last_name] => xxxxx
                            [company] => xxxxx
                            [phone] => xxxxx
                            [street1] => null
                            [street2] => null
                            [city] => null
                            [state] => null
                            [zip] => null
                            [country] => null
                        )

                    [refund_total] => 0
                    [allow_payment] => 
                    [order_items] => Array
                        (
                            [0] => stdClass Object
                                (
                                    [id] => xxxxx
                                    [name] => GIC 97
                                    [description] =>  
                                    [type] => Subscription
                                    [notes] => 
                                    [quantity] => 1
                                    [cost] => 0
                                    [price] => 97
                                    [discount] => 
                                    [product] => stdClass Object
                                        (
                                            [id] => 407
                                            [name] => GIC 97
                                            [sku] => 
                                            [description] => 
                                            [shippable] => 
                                            [taxable] => 
                                        )

                                )

                        )

                )

        )

    [contact_id] => xxxxx
    [transaction_date] => 2019-03-27T03:33:01.000-04:00
    [gateway_account_name] => xxxxx
    [order_ids] => xxxxx
    [collection_method] => PAYMENT_GATEWAY
    [payment_id] => xxxxx
)

I have just confirmed with my colleague , there have been no $0 subscriptions (first payment) that have come through via invoice.payment.add webhook. I have logged all transactions to a file from the webhook for the last 3 days.

Ah, ok, mis-understood the context. So in IS any $0 item does NOT count as a payment so the payment.add would not trigger. You may want to look at the order.add or subscription.add (or even invoice.add) and check for the $0 items that way because they will not be generating new payment records. If there isn’t any actual amount paid then it isn’t actually a payment.

1 Like

invoice.add doesn’t have an API URL.

{"event_key":"invoice.add","object_type":"invoice","object_keys":[{"apiUrl":"","id":xxxxxx,"timestamp":"2019-04-11T14:42:16Z"}],"api_url":""}

why do you need the api url? It doesn’t have a purpose but to link to the next instance which you can get a multiple of ways.

Do get the invoice / order details.

Use the id passed and make the api call to get them using the id?

That url is only for the next item in a series, which wouldn’t be the case here