This guide is for your web developer. It explains how to send (POST) donor and payment details from your website into our donation form.
What are my options for processing payments?
There are three ways to process payments with us:
Our donation forms. Link to them, or open them as a pop-up on your website.
Our API. Use our payment system with your own hosted donation page.
Our iframe. Process donations on your site without making your own form PCI-compliant.
How do I use the iframe?
The simplest way: create a MYSITE form and install it as an iframe on your website. See Create a MYSITE donation form and Donation Form — Embedding Guide.
To integrate the iframe into your own platform or web app:
Pass parameters to the iframe with POST, not GET.
Always include a parameter named
postwith the value1.You can POST these donor and payment fields: https://docs.google.com/document/d/1I6w9BihB0VtQXdZTSSm3rKT-WX5TcyP470VXTD040Ts/edit?usp=sharing
Where do I send the POST?
Send the POST data to this address:
https://<secure-donation-domain>/en/give/makedonation?MakeDonation=1&AmutaGovId=XXXXXX&fb=1&successurl=https://example.com/thank-you
Replace
XXXXXXwith the charity ID (EIN or registration number) of the organization receiving the donation.fb=1shows only the middle part of the form, without the side panels.successurlis where the donor goes after a successful payment. If you leave it out, the donor sees our standard confirmation message inside the iframe.
If you built your integration before forms moved to /give/, your /pay/ or /donate/ address may still work. We recommend switching to /give/.
Which languages can the iframe use?
Replace /en in the address with one of these:
Code | Language |
| English |
| Hebrew |
| French |
| Spanish |
| Arabic |
| Russian |
Which fields does the iframe show?
By default, the iframe shows only the credit card fields. It also shows any required field you didn't post: currency, frequency, sum, email or name.
To show other fields anyway, POST a showcontrols parameter with a comma-separated list:
Value | Shows |
| Currency selector |
| Frequency (one-time / monthly) |
| Installments selector |
| First and last name |
| Phone number |
Example: showcontrols=currency,frequency.
Can I pass custom fields?
Yes. Add custom fields to the query string, up to 10, like this: CF1=xxxxx&CF2=yyyyy.
How do I get the payment details back?
Add variables to your successurl. After the payment is confirmed, we send the donor to that address with the values filled in:
&successurl=https://example.com/thank-you?tsum={sum}&tcurrency={currency}&tfname={fname}&tlname={lname}&tfrequency={frequency}&ttrid={trid}&tdonid={donid}&inst={installments}
Placeholder | Returns |
| Payment sum |
| Currency as a 3-letter code, for example |
| First name |
| Last name |
|
|
| The donation ID in our system |
| Number of installments the donor chose, or |
Rules for successurl:
Start the variables after
successurlwith?, and separate them with&.URL-encode everything after
successurl=.Put
successurllast in the address.
How do I test?
Test charity ID: 580000016
Test credit card: 9111564510908888
Before testing, send us the email address and IP address you'll test from. Our fraud system may block repeated donations from the same email or IP. We'll add you to our safe list.
Need access to a demo charity account? Contact support.
For a page showing how different parameters change the iframe, ask support.
