# Charges
Charges are payments executed against Debt Accounts.. They can run immediately, be scheduled into the future, or in some cases, may be processed without the need for associated Debt Accounts.. This flexibility allows for swift, ad-hoc transactions, making it convenient for various financial operations and accommodating different payment scenarios.
# Create Charge
POST https://<org-uuid>.production.tratta.io/api/v1/charges
curl https://<org-uuid>.production.tratta.io/api/v1/charges \
-H "Authorization: Bearer eyJ0eXA3asdk..." \
-d debt_account_external_id="123456" \
-d amount="700" \
-d scheduled_at="2023-03-01" \
-d email="example@example.com" \
-d card[card_holder]="Card Holder" \
-d card[card_number]="4242424242424242" \
-d card[card_expiration_month]="12" \
-d card[card_expiration_year]="23" \
-d card[card_security_code]="123"
-X POST
# Parameters
amount required|numeric
The amount of payment.
scheduled_at optional|date|after_or_equal:today
Date when the charge should be scheduled at.
debt_account_external_id required without no account|exists
External debt account id generated in the 3rd party application.
linked_debt_account optional|boolean
Specifies whether the transaction should be associated with a specific debt account or not. It allows you to process a charge without linking it to a particular debt account in the system. If you pass debt_account_external_id
with linked_debt_account=false
then it will create a charge without linking it to an debt account.
email optional|email
Email address of the customer.
send_email optional|boolean
Specifies whether or not to send the confirmation email to the customer.
payment_method_id required without card/ach|exists
Specifies the UUID of the existing payment method.
card json object with paramters
- card_holder
required without payment_method_id/ach
- card_number
required without payment_method_id/ach|valid card number
- card_expiration_month
required without payment_method_id/ach|numeric|between:1,12
- card_expiration_year
required without payment_method_id/ach|last 2 digits of a year
- card_security_code
optional
- card_postal_code
optional|5 digits
ach json object with parameters
account_holder
required without payment_method_id/card
account_type
required without payment_method_id/card|in:checking, savings
Checking or Savings account type.
ownership_type
optional in:personal, business
Specifies the ownership type of the account. Default is
personal
.If
business
is selected, the SEC code will be set toCCD
. Otherwise,WEB
will be used.routing_number
required without payment_method_id/card|valid routing number
account_number
required without payment_method_id/card|min:4|max:17
account_zip
required without payment_method_id/card|5 digits
Specifies the Postal code of the account.
account_state
required without payment_method_id/card
billing_address_id optional|exists
Specifies the UUID of the billing address.
billing_address json object with parameters
- name
optional|string
- city
optional|string
- state
optional|string
- postal_code
required with billing address object|5 digits
- country
optional|string
- line1
optional|string
- line2
optional|string
- is_primary
optional|boolean
# Other validations
- Debt Account
status
must be active. - Charge
amount
must be greater than Organization'smin_payment_amount
Rule. Default value is $5 and lower than Debt Account'scurrent_balance
.
# Returns
A json with data
property that contains created charge
object.
immediate charge
When scheduled_at is not provided or it is today
.
{
"id": "b4ff53e3-3124-4690-9df0-c7613f6f5494",
"reference_number": "3153686308",
"payment_method_type": "card",
"card": {
"card_holder": "Test Holder",
"card_number": "4242",
"card_type": "Visa",
"card_zip": "10001",
"expiration_month": "12",
"expiration_year": "23"
},
"payment_method": null,
"billing_address": {
"name": "Test Name",
"city": "New York",
"postal_code": "10001",
"country": null,
"line1": "5the Ave",
"line2": null,
"state": "New York"
},
"amount": 1000,
"total_amount": "1000",
"payment_date": "02/28/2023",
"success": true,
"fees": []
}
scheduled charge
When scheduled_at is after today
.
{
"id": "3ca1119d-5e08-4e41-8a9f-7272e755003a",
"payment_method_type": "card",
"payment_method": {
"id": "839a0a09-5f51-45aa-a0e3-00261112109d",
"type": "card",
"card_token": {
"card_holder": "Test Holder",
"card_number": "4242",
"expiration_month": "12",
"expiration_year": "23",
"card_type": "Visa",
"card_zip": "10001"
},
"is_primary": false,
"has_active_payment_plan": false,
"created_at": "2023-02-28 13:21:16"
},
"scheduled_at": "2023-03-01",
"successfully_charged_at": null,
"amount": 1000
}