Can BlackBaud store the credit card data for recurring payments ?

Hi support !

I am going to accept recurring payments from users.

But it is complicated from a security standpoint to store credit card data on my server.

Does BlackBaud (BB) have any approach of storing credit cards ?

For example: I can create BB user, then attach his credit card via BB and use user's saved card in BB for payments. Is it somehow possible via BB ?

Thanks in advance !

Comments

  • Hi Emily,


    You can tokenize card data through the Payments API (see post here and here for background. If you are looking into the Blackbaud Checkout option, review this thread on the card_token workflow as well as Store card). From there, you would record that card token in your application and reference the value when the transaction is needs to be charged. 





     
  • Hey Emily,


    Blackbaud definitely has a way of doing that, but it requires you have a Blackbaud Merchant Services account.


    Once you do, you can use the Payments API. It supports two different ways of exchanging the donor's card info for a "card token" that you can use for recurring payments:

    1. Blackbaud Checkout -- this is the recommended solution since your servers never even see the sensitive card data.

    2. Payments API's Create Card Token endpoint -- this is recommended if you have a custom form or workflow for retrieving information from the donor and want to pass the card info to us at a specific point via an endpoint call. While more flexible, the downside is that the card data touches your servers and you'll have to deal with PCI.


    One final note is that if the client has RE NXT, you could also leverage the Gift API to create a recurring gift but I'm less familiar with that API.


    I hope this gets you pointed in the right direction.
  • Shoot, Alexia beat me to it ?
  • Alexia Chapparone:

    Hi Emily,


    You can tokenize card data through the Payments API (see post here and here for background. If you are looking into the Blackbaud Checkout option, review this thread on the card_token workflow as well as Store card). From there, you would record that card token in your application and reference the value when the transaction is needs to be charged. 





     

    Hi Alexia ! Is it possible to tokenize card and then use 1 card_token for 12 transactions ?

    For example:

    1. user enters his card on BB checkout form

    2. I get card token via "Store card info" https://developer.blackbaud.com/skyapi/apis/payments/checkout/supported-transactions#store-card-info and save card token in my database

    3. every month during the year I use the saved card token to create a transaction. Will it work ?


    ATB

  • Hi Emily,


    Yes you have the workflow right. The same card_token would be referenced for all future transactions associated with that saved card. 




     
  • Hi  Alexia ! Thanks for your response. I will test this approach.

    One more question: is there any way to discard card_token and remove card data ? Can card_token be expired after some time ?

    ATB
  • Mina Mistry
    Mina Mistry Blackbaud Employee
    Seventh Anniversary Kudos 2 Name Dropper Participant
    Hi Emily


    At this time there is no way to force the deletion or removal of a card token via our API.  


    Thanks