Payment method columns
The columns of the two payment method imports, which link cards moved to your Stripe account to recurring gifts and to donors.
Once your previous platform has moved your donors' cards to the Stripe account connected to Givable, two imports put them to work. Both take only Stripe's ids, never card details. For the full walkthrough, see Move recurring gifts to Givable.
Before you start: you need permission to create imports, Stripe connected under Settings > Payments, and the mapping file Stripe gives you after the card transfer, with each card's new customer id (cus_...) and payment method id (pm_...). Both imports take a CSV of up to 10 MB and 20,000 rows.
Card numbers are never accepted. There's no column for a card number, security code, expiry date or bank account, and a file with anything that looks like a card number is refused.
Which import?
| You want to | Use |
|---|---|
| Give a recurring gift the card it should be charged on | Recurring gift payment methods |
| Keep a card on file for a donor who has no recurring gift | Supporter payment methods |
Neither import charges anything, and linking a card never starts a Migrating gift: that's step 5 of the move, Enable Recurrings.
Recurring gift payment methods
Each row links one card to one recurring gift. In the recurring gifts workspace, it's the Import payment methods button.
| Column | What goes in it |
|---|---|
| Processor payment method id (required) | The Stripe payment method id (pm_...), from Stripe's mapping file. |
| Processor customer id | The Stripe customer id (cus_...). Givable checks the card belongs to this customer. |
| Recurring gift Givable ID | The gift's Givable ID, for example RR2SXJW8, from the ID column on Financials > Recurring. The surest way to say which gift the card is for. |
| Amount, Frequency | Without a Givable ID, used with the donor to find the gift. |
| Donor email, Donor first name, Donor last name | Without a Givable ID, used to find the donor whose gift this is. |
| Next charge date | Leave it blank for gifts you're moving: their schedule comes from the gift itself, and a date in the past is refused. |
A row that matches no recurring gift is flagged in the preview, and one that matches more than one waits for you to choose. When you confirm, each card is checked against your organization's own Stripe accounts; a card found on none of them is rejected.
To change the card on a gift that's still Migrating, import its row again with the right payment method id.
Supporter payment methods
Each row keeps one card on file for one donor, so they can give with it from their supporter portal and at checkout, and your team can charge it when the donor asks (for example on the phone).
| Column | What goes in it |
|---|---|
| Supporter Givable ID | The donor's Givable ID, for example S4VSTYHG. Matches that exact supporter; one that names nobody fails the row. |
| Supporter Salesforce id | The donor's contact id in your CRM (15 or 18 letters and digits), for supporters synced from it. |
| Donor email, Donor first name, Donor last name, Donor phone | Used with your matching rules when there's no id. |
| Processor payment method id (required) | The Stripe payment method id (pm_...): in Stripe's mapping file, the new payment method id. |
| Processor customer id | The Stripe customer id (cus_...): in Stripe's mapping file, the new customer id. Givable checks the card belongs to this customer. |
Donors are found by Givable ID, then by a CRM id if your file has one, then by your matching rules. This import never creates a donor: a row whose donor isn't found is left out.
The card on file confirmation
Before this import runs, you confirm the Card on file confirmation: you read the statement shown, answer Where did your donors agree to keep their payment method on file? (for example, the terms on your previous platform's checkout), and tick I confirm the statement above is true for every donor in this file. It's recorded with the import, with your name and the date.
Troubleshooting
Still stuck?
We're here for you, and no question is too small. Tell us what you were trying to do and what happened, and we'll help you get it sorted.