Skip to main content
POST
/
api
/
v3
/
payments
/
authorize
Authorize Payment
curl --request POST \
  --url https://server.stage.overflow.co/api/v3/payments/authorize \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --header 'x-client-id: <api-key>' \
  --data '
{
  "amountInCents": 5000,
  "email": "jane@example.com",
  "paymentMethod": {
    "defaultForDonor": true,
    "encryptedCardNumber": "<string>",
    "encryptedExpiryMonth": "<string>",
    "encryptedExpiryYear": "<string>",
    "encryptedSecurityCode": "<string>"
  },
  "processingChannel": "Ecommerce",
  "anonymous": false,
  "billingAddress": {
    "city": "<string>",
    "country": "<string>",
    "line1": "<string>",
    "line2": "<string>",
    "state": "<string>",
    "zip": "<string>"
  },
  "browserInfo": {
    "acceptHeader": "<string>",
    "colorDepth": 123,
    "javaEnabled": true,
    "language": "<string>",
    "screenHeight": 123,
    "screenWidth": 123,
    "timeZoneOffset": 123,
    "userAgent": "<string>"
  },
  "dedication": {
    "recipientEmail": "<string>",
    "recipientName": "<string>"
  },
  "deductible": true,
  "firstName": "Jane",
  "fundId": "fund_abc123",
  "lastName": "Donor",
  "locationId": "<string>",
  "metadata": {},
  "notes": "<string>",
  "phone": "+15555550100",
  "riskData": {
    "clientData": "<string>"
  },
  "subFundId": "<string>"
}
'
{
  "donorId": "6710f34fd5061afeec3eab57",
  "contributionId": "7710f34fd5061afeec3eab59",
  "paymentMethodId": "5710f34fd5061afeec3eab58",
  "paymentMethod": {
    "brand": "visa",
    "last4": "1111",
    "expiration": {
      "month": "<string>",
      "year": "<string>"
    }
  },
  "subscriptionId": "8810f34fd5061afeec3eab60"
}

Documentation Index

Fetch the complete documentation index at: https://docs.overflow.co/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-client-id
string
header
required

Client ID for API authentication

x-api-key
string
header
required

API Key for API authentication

Body

application/json
amountInCents
integer
required

Charge amount in cents. Use 0 for tokenize-only flows (e.g. saving a payment method without an immediate charge).

Required range: x >= 0
Example:

5000

email
string<email>
required

Donor email address.

Example:

"jane@example.com"

paymentMethod
object
required

Payment method details.

processingChannel
enum<string>
required

Determines shopper interaction type. Maps 1-to-1 to Adyen shopperInteraction.

Available options:
Ecommerce,
MailOrderTelephoneOrder,
ContinuedAuthorization
Example:

"Ecommerce"

anonymous
boolean

Whether the donation should be anonymous.

Example:

false

billingAddress
object

Billing address for the payment.

browserInfo
object

Browser information collected by the Adyen SDK.

coveredFees
object

Fee coverage details when the donor opts to cover fees.

dedication
object

Dedication details for the donation.

deductible
boolean

Whether the donation is tax-deductible. Defaults to the campaign setting when not provided, or true for nonprofit donations without a campaign. Ignored for tokenize-only ($0) flows since no contribution is created.

Example:

true

firstName
string

Donor's first name.

Example:

"Jane"

fundId
string

Fund to allocate the donation to.

Example:

"fund_abc123"

lastName
string

Donor's last name.

Example:

"Donor"

locationId
string

Location associated with the donation.

metadata
object

Arbitrary key-value metadata.

notes
string

Donor notes for the donation.

phone
string

Donor phone number.

Example:

"+15555550100"

recurring
object

Recurring schedule options. Omit for one-time charges.

riskData
object

Risk data collected by the Adyen SDK.

subFundId
string

Sub-fund to allocate the donation to.

Response

201 - application/json
donorId
string
required

Donor ID. Either the existing donor matched by email/phone, or a newly created one.

Example:

"6710f34fd5061afeec3eab57"

contributionId
string

Contribution ID. Present when a payment was charged (new-method charge or stored-method charge). Use this to correlate with webhook notifications and reference the payment in subsequent API calls.

Example:

"7710f34fd5061afeec3eab59"

paymentMethodId
string

Payment method ID. Present when a new payment method was tokenized (either as the main output of a $0 tokenize-only flow, or as a side-effect of an authorize-and-store flow). Use this ID for future charges against the stored payment method.

Example:

"5710f34fd5061afeec3eab58"

paymentMethod
object

Display details for the tokenized payment method. Present together with paymentMethodId.

subscriptionId
string

Subscription ID. Present when a recurring schedule was created. Use this to manage the recurring donation in subsequent API calls.

Example:

"8810f34fd5061afeec3eab60"