I'm trying to pull in Stripe transactions into Tessitura via my own integration and can't seem to figure out what entity/resource to work with. I've tried "Contributions" as the only one that actually allows me to "Post" to, (which shows it only applies to some "interceptor" plugin only), and do not know how to get a sample payment to show up for a constituent... Any help would be great! Thanks in advance!
Cliff Bailey said:You don't use the account ID in the call itself. The session authenticates, using the account's username and password, and the account is accessed that way. In other words, the API knows which account based on the username supplied, not an account number supplied.
Thanks for clarifying that. I'd only implied it in my comment about authenticating the session.
Sorry about the confusion. I'm not talking about the Account Id. I'm trying to associate a payment record and have it show up on a CONSTITUENT record. So I need to create a contribution record in Tessitura and have it show up on the constituent record so that we know that this constituent gave us $X on Y date.
When I'm saying account ID I mean the ID associated with a constituent record.
There is no API call to simply associate payments with a bulk of constituent records. You have to use the API to actually make the financial transaction for each account. Each constituent record would need to be authenticated via username and password before those kinds of transactions can happen via the API.
You can't just tie a payment to a constituent record. It has to be *for* something. An order or contribution for example.
If you want to put a bulk of payments/contributions into Tessitura you'll probably want to use the contribution import utility.
Hi Susan,
This is a Developers Tessitura Community forum - not someone sending out emails. If you are receiving them via support@iwave.com it is likely because that address is subscribed to receive email notifications from the forum somehow. Tessitura should be able to remove the address if you don't have a tessituranetwork.com account under that address.
Thanks,David
I see. So each constituent record has a username/password that I have to login as via the api (i.e. create a session with), and then add to their cart etc? I understand the payment has to be for something, and in this case they would all be contributions they made. I didn't realize each constituent has a username/password... This is a bit bizarre to me that I would have to login as a constituent to add a contribution to that constituent's record via the API. So basically we can't really import contributions into Tessitura via the API, because we will never know each constituent's credentials. Does that sound right?
Hi Tunc,
That sounds right based on what I've seen; hopefully this sort of thing will be addressed in a future release. This is one reason why we use a stored procedure to import contributions from Stripe.
Each record doesn't necessarily have a username and password, but that's how the API allows for taking payments for them. So if they didn't have one, it would need to be created.
But yeah, in the end the API isn't meant for bulk importing of financial transactions. They've got a contribution import utility and order import utility for that.
The API is more for supporting normal website functionality. There aren't a lot of reasons for bulk importing of contributions for the average website.
This is good to know. We sell memberships for our retail store out of Shopify POS and are looking at starting a project to create a constituent in Tessitura and pass the contribution/payment info via the API. Sounds like we might have to look into that username and password to make it work...
Since the user's password won't be available to you, there are other methods of authenticating a session that only require an email or username. Endpoints like
https://www.tessituranetwork.com/REST_v151/TessituraService/HELP/API/POST_WEB_SESSION_SESSIONKEY_L_4.HTM
and
https://www.tessituranetwork.com/REST_v151/TessituraService/HELP/API/POST_WEB_SESSION_SESSIONKEY_L_7.HTM
might be helpful. I know with the Guest Checkout endpoint, you can check the constituent Id on the session after authenticating. If a user under that email does not exist, the ConstituentId on the session will be 0.
Following that, another consideration is if the patrons that made these donations event exist in Tessitura when you're importing them. If not, you'll probably need to create accounts for them using the registration endpoint. To me it seems unlikely that the scenario mentioned in the OP would be such a happy path that everyone who's made contributions in some system that is not Tessitura, would exist in Tessitura.
Still, I'm not even certain going through a scripted "purchase path" using the WEB API to import data is the way to go about this. I'm not familiar with it, the import utilities mentioned earlier seem like the way to go. That, or a custom SQL process in Tessitura.