| POST | /donations/ach |
|---|
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DonorInfo | body | DonationDonorInfo | No | Not required if MemberInfo is present on request |
| MemberInfo | body | DonationMemberInfo | No | Not required if DonorInfo is present on request |
| CampaignId | body | int? | No | Use GET /campaigns to retreive valid list of campaignIDs |
| AchRef | body | string | No | RoutingNumber and AccountNumber are not required if AchRef is provided |
| RoutingNumber | body | string | No | Required if AchRef is not provided |
| AccountNumber | body | string | No | Required if AchRef is not provided |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| GroupId | form | string | Yes | Client value for Group. String must already be configured in Billhighway system. |
| Amount | form | decimal | Yes | Amount of the payment. Must be an amount less than $10,000,000.00. |
| CurrencyCode | form | string | No | The currency the payment is being made in. Three digit currency code (see ISO 4217) for a valid currency supported by Billhighway. Defaults to USD |
| Memo | form | string | No | Notes about the donation. Maximum 70 characters. |
| DonationRecurringInfo | form | DonationRecurringInfo | No | |
| MetaData | form | JsonObject | No | Custom fields |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Frequency | form | string | Yes | How often donation is collected automaticallyAllowable Values
|
| NumberOfOccurrences | form | int | Yes | Number of recurring donation cycles. |
| FutureDonationDate | form | DateTime? | No | Allows the submitter to set a future date for the donation |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| FullName | form | string | Yes | Name of donor. Maximum 100 characters. Format must be Firstname {space} Lastname. |
| Address | form | string | Yes | Billing address. Maximum 100 characters. |
| City | form | string | Yes | Billing city. Maximum 100 characters. |
| State | form | string | Yes | Billing state. Two characters, must match valid US state code. |
| PostalCode | form | string | Yes | Credit Card billing address postal code. Maximum 10 characters. |
| EmailAddress | form | string | No | Email address of donor. Maximum 100 characters. If provided, must be valid email format. |
| Phone | form | string | No | Preferred phone number. Maximum 12 characters. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| BhUserId | form | int | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ErrorCode | form | int | No | Legacy ErrorCode |
| ErrorMessage | form | string | No | |
| IsError | form | bool | No | |
| TransactionId | form | string | No | Donation Transaction ID |
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /donations/ach HTTP/1.1
Host: devapi.billhighway.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
DonorInfo:
{
FullName: String,
Address: String,
City: String,
State: String,
PostalCode: String,
EmailAddress: String,
Phone: String
},
MemberInfo:
{
BhUserId: 0
},
CampaignId: 0,
AchRef: String,
RoutingNumber: String,
AccountNumber: String,
GroupId: String,
Amount: 0,
CurrencyCode: String,
Memo: String,
DonationRecurringInfo:
{
Frequency: String,
NumberOfOccurrences: 0,
FutureDonationDate: 0001-01-01
},
MetaData:
{
String: "String"
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ErrorCode: 0,
ErrorMessage: String,
IsError: False,
TransactionId: String
}