balanced / billy

Billy - The open source recurring billing system, powered by Balanced.
Other
172 stars 45 forks source link

Change debit.succeeded event #89

Open rootedsoftware opened 10 years ago

rootedsoftware commented 10 years ago

In order to keep Billy events similar to balanced native events Billy should change the debit.succeeded event

Here is part of a debit.succeeded event.

"status": "succeeded", "transaction_number": "W660-650-7905", "description": "Generated by Billy from invoice IVHg6KNHnE86ZEFxXJUmny9F",

If the event was changed to include the invoice guid on a separate line then event parsing could be done more easily and efficiently. This would also be more in line with what the native debit.succeeded events always do already.

"status": "succeeded", "transaction_number": "W660-650-7905", "description": "Generated by Billy from invoice”, “invoice_guid”: “IVHg6KNHnE86ZEFxXJUmny9F",

This would make this Billy response much more like all the other events I receive from Balanced and make it much easier to find the corresponding data in my database.

To make the process even simpler it might be ideal to include the invoice id anytime a new subscription is setup, since Billy does also create an invoice when the subscription is setup.

rootedsoftware commented 10 years ago

Is this code base still being updated? I see there hasn't been any updates in a really long time.

fangpenlin commented 10 years ago

@c316 sorry I've been busy with other projects so forgot to reply this.

Adding a invoice_guid field requiring to change Balanced API, since Billy is a standalone system from Balanced API system. I would say it's not a good idea to have a new field invoice_guid. Instead, there is a meta dictionary which is designed to store application relative information. I can add a billy.invoice_guid in meta for you, so that the event will look like

{
    "status": "succeeded",
    "transaction_number": "W660-650-7905",
    "description": "Generated by Billy from invoice",
    "meta": {
        "billy.invoice_guid": "IVHg6KNHnE86ZEFxXJUmny9F"
    }
}

does it help?

rootedsoftware commented 10 years ago

Yes. Also, is Balanced planning on supporting Billy in the future, or what are the plans for it? On Sep 3, 2014 9:20 PM, "Victor Lin" notifications@github.com wrote:

@c316 https://github.com/c316 sorry I've been busy with other projects so forgot to reply this.

Adding a invoice_guid field requiring to change Balanced API, since Billy is a standalone system from Balanced API system. I would say it's not a good idea to have a new field invoice_guid. Instead, there is a meta dictionary which is designed to store application relative information. I can add a billy.invoice_guid in meta for you, so that the event will look like

{ "status": "succeeded", "transaction_number": "W660-650-7905", "description": "Generated by Billy from invoice", "meta": { "billy.invoice_guid": "IVHg6KNHnE86ZEFxXJUmny9F" }}

does it help?

— Reply to this email directly or view it on GitHub https://github.com/balanced/billy/issues/89#issuecomment-54395793.

fangpenlin commented 10 years ago

@c316 I will fix this issue recently when I have spare time. Unfortunately developing Billy is not included in short term plans. But in middle or long time, we will have some update on this project.

rootedsoftware commented 10 years ago

@victorlin also, the debit.succeeded, created and failed events on successive subscription transactions need to have the subscription GUID since there isn't any other way to know where these new debits are coming from. (unless I missed it)