twomice / com.joineryhq.eventbrite Goto Github PK
View Code? Open in Web Editor NEWLicense: Other
License: Other
For example, if EB API provides a 'home' address for the Attendee, but CiviCRM has no active 'home' locationType.
TODO:
If the appropriate locationType is unavailable (non-existent or disabled), use the default location type.
@josephlacey and I were surprised today to get this and several other similar error messages in the queue runner:
"Could not find EventbriteLink 'Event' record for order 959231762 with 'event_id': 57234242159; cannot process Order.";
Joseph had just purchased a ticket for on event (which we'll call "Testing Copy Event"), which itself was copied from the main event, which we'll call "Main Live Event". We were expecting to see three entries in the queue table from that purchase: one order.updated and two attendee.updated. We also expected that if we ran the queue runner job, those queue entries would be found and processed.
Instead we found that no queue entries were successfully processed, and several entries encountered this error or an equivalent one (i.e., with different values for orderId and eventId).
Event ID for "Testing Copy Event" is: 63000711825
Event ID for "Main Live Event" is: 57234242159
Question: Why after purchasing a ticket for "Testing Copy Event" (ID = 63000711825) are we getting errors for an order that says it's for "Main Live Event" (ID = 57234242159)?
My issue is even though I have
I am still getting this error on my civicrm when i submit the private token of my api
Error establishing webhook configuration via Eventbrite API. Eventbrite said: 403: NOT_AUTHORIZED: This user is not able to use legacy user endpoints, please use the organization equivalent.
EventBrite includes the billing state and country in all orders even though there's no associated billing record, e.g. in pay later scenarios or attendees paid for by other attendees.
When you go to /civicrm/admin/eventbrite/settings
It just says: "The requested page could not be found."
/civicrm/admin/eventbrite
works but the table shows:
$link.title | Settings | Eventbrite API key; debug settings. |
---|---|---|
$link.title | Events | Configurations for specific events. |
Running CiviCRM 5.32.2
We have a client with several years worth of events in Eventbrite. We are exploring this extension so that they can integrate Eventbrite with Civi as apart of their events workflow. We have the API key set in Civi, and it is pulling in events, however it is unclear what the metric is for the events that are listed?
The list of Eventbrite events to chose from in CiviCRM is limited to 50 events. The number of events available to choose from is undesirable, however is something that we can work around by importing past events into CiviCRM with a different method, however none of the events in the list are current. The 50 in the list are from many years ago.
This extension does not seem very viable if it only lists events from the past up to 50, and seems like a bug that could be fixed by changing the way Civi queries the Eventbrite API.
I set up the integration. Everything looks good but I am not receiving any data from Eventbrite.
The scheduled job logs do not show any errors.
EventBrite configurations allow for Hidden ticket types that in some cases don't need to be sync'ed over to Civi. Currently if there's no configuration mapping for a ticket type in EventBrite, the sync will create a record in Civi without an attendee role. We should ignore Ticket Types if there's no mapped Attendee Role.
Hi, - I will start working on cleaned up commits and some PRs later today but my new code is here:
https://github.com/ananelson/com.joineryhq.eventbrite/
You can see an example of a customization extension here making use of the new hooks here:
https://github.com/batsimprov/batseventbrite
Adding listeners:
https://github.com/batsimprov/batseventbrite/blob/develop/batseventbrite.php#L155
Listener code:
https://github.com/batsimprov/batseventbrite/tree/develop/CRM/Batseventbrite/Listener
It should accurately reflect the configured Participant Role for each Ticket Type.
When an Attendee ("ticket holder") signs into Eventbrite and changes their name, what should happen? What about when the purchaser of a multi-ticket order changes the name of one of the ticket holders?
Currently the extension makes a best effort to handle this in a reasonable and cautious way, with a basic operating philosophy:
The task in this issue is to document the ideal general logic involved in these name-change situations, and to ensure the extension is doing what's documented.
The extension should do as follows:
On Monday, John Smith purchases an EB ticket in his own name. CiviCRM learns of it, and performs these actions:
On Tuesday, John Smith logs into Eventbrite and changes the name on his ticket to Jack Smith. CiviCRM learns of it and performs these actions:
On Monday, John Smith purchases an EB ticket in his own name, and one ticket for Mary Smith, in one order. CiviCRM learns of it, and performs these actions:
On Tuesday, John Smith logs into Eventbrite and changes the name on Mary's ticket to Susan Smith. CiviCRM learns of it and performs these actions:
On Monday, John Smith purchases an EB ticket in his own name, and one ticket for Mary Smith, in one order. CiviCRM learns of it, and performs these actions:
On Tuesday, John Smith logs into Eventbrite and changes the name on his own ticket to Jack Smith. CiviCRM learns of it and performs these actions:
* link: The extension maintains a record of links between various CiviCRM entities and Eventbrite entities. CiviCRM also maintains links between various entities. The appropriate meaning of this word should be inferred by whether or not one of two linked entities is an Eventbrite entity.
on the settings page /civicrm/admin/eventbrite/settings?reset=1 , I get an error that
Notice: Undefined index: webhooks in CRM_Eventbrite_Form_Settings->_confirmWebhookOnFormLoad() (line 296 of modules/civicrm_ext/com.joineryhq.eventbrite/CRM/Eventbrite/Form/Settings.php).
and it says
Error establishing webhook configuration via Eventbrite API. Eventbrite said: 403: NOT_AUTHORIZED: This user is not able to use legacy user endpoints, please use the organization equivalent.
I have added Personal Oauth token and created an organization on eventbrite.
Wondering if anyone else has encountered this and already found a solution?
Optimally, the solution would iterate through the pages of potential events, or provide a search qualifier to limit the results.
I tried a few quick hack attempts to filter by active state or future dates, but could not seem to get this to filter, it just seems to return the first 50 results it gets.
Any insight appreciated. thank you
At present, if an EB order is received for a ticket type which has not been configured in CiviCRM (on an event that IS configured in CiviCRM), the integration behavior is at best unpredictable and possibly nonsensical. Consider these use cases:
Given: Ticket Type "A" is configured; Ticket Type "B" is not.
UC1. A multi-ticket order contains 1 "A" ticket and one "B" ticket. The "A" ticket should become a Partiicpant, and the Contribution will show full payment for both tickets. Should the "B" become a participant of some type? If not, will staff wonder why the "A" ticket was so expensive?
UC2. Another order is for for 1 "B" ticket. Should a contribution be created? (Probably not.) Should a participant be created? (Probably not.) Most confusing would be if a contribution is created but not the participant.
Possible solutions:
S1. Add all tickets regardless of Ticket Type. If the Ticket Type is not configured, use the event's default Participant Role.
Considering UC1, I'm not sure if there's another solution that makes sense. @josephlacey, any thoughts?
Our event was set up to use eventbrite to accept payments with on "offline" option to pay by check. (More info on setup here: https://www.dropbox.com/s/2vcf0s6f36r9tbq/SETUP.docx?dl=0)
When someone registered for the event and chose this option, the contribution was created in civi as "completed".
Offline payments should be created as "Pending" so that the organization can mark it completed only when it is actually paid.
But it doesn't.
This may just be my not understanding how this should work, but we've been utterly unable to get participants imported into Civi via the scheduled job. We've worked through issues with the API key (thanks to axelady who provided assistance in issue #23) and are seeing the event and ticket options when configuring, but... no participants. Is there a secret sauce step that's required, either in Eventbrite or Civi?
Per @joemcl's comment, the task at hand is to improve user experience by alerting user when a linked event has no linked ticket types, which are required for any data to be transferred.
Apparently a linked Ticket Type is required in the settings - which makes sense, and I had to create a ticket type in the Eventbrite event - but that wasn't obvious until I tried to figure out why attendees were not syncing. Once I selected the ticket type, then the attendees were pulled in when running the Scheduled Job manually. So, a suggestion - don't let users save a new Event in Settings unless a Ticket Type is linked :) .
See the setup here: https://www.dropbox.com/s/2vcf0s6f36r9tbq/SETUP.docx?dl=0
In EventBrite:
In Civi:
Steps:
Actual:
User is registered for the civi event (good). The total amount the user paid was 2X, but the registration fee in Civi is recorded as just X
Expected:
Registration fee should be the total 2X (alternatively, create two registrations for the same event with fee of X).
EventBrite allows partial refunds, in cases where folks might overpay or don't get group discounts. These don't update their correlative Civi record.
As in title:
If the Eventbrite order is submitted without credit card payment, i.e., "pay by check", then the corresponding contribution in CiviCRM should have a status of "pending." (Currently it will have a status of "Completed".)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.