Create a transaction within a company
POST/auth/consumer-user/company/:company_id/transactions
This API call is a standard authenticated transaction request that should be made after the payment for donations has been processed. It is essential to include the donation amount in this call to enable Cents to monitor and provide analytics for the donations and each company platform. If certain fields were previously provided in a pre-transaction call, you can omit those fields in this context. However, when excluding those fields, it is crucial to include the 'reconciliation_id' with the same value as it was in the pre-transaction call. If the 'reconciliation_id' is not provided, all the data that was not sent during the pre-transaction call must be included here. The primary purpose of the 'reconciliation_id' is to merge the pre-transaction data with the transaction data, ensuring a seamless integration and accurate record-keeping.
Request
Path Parameters
Unique ID of the company in scope.
- application/json
Body
required
Donation amount (in the smallest currency unit, so 1000 is 10.00€)
Donation currency
Cents id of the charity
Cause unique name (in the namespace of the charity)
Possible values: [draft, to_be_payed, failed]
Transaction status
Payment method id to be used for this transactions. This field is needed only in the scenarios where there are multiple payment options available and the payment method to be used has to be stored in cents.
External ID (generated by the company) used to reconcilate transaction with the pre_transaction
Responses
- 201
- 401
- 402
- 422
successful operation
- application/json
- Schema
- Example (from schema)
Schema
cents id of the transaction
Payment gateway id, the payment gateway unique name identifier is put at the begining of the string (this is inserted by cents according to the logged user)
Cents id of the company
Transaction amount
Transaction amount
Transaction currency
Cents id of the charity
Cause unique name (in the namespace of the charity)
Donation amount (in the smallest currency unit, so 1000 is 10.00€)
Donation percentage if available (in integer format, so 3% is 3)
Donation currency
Transaction created date
Transaction updated date
Cents id of consumer user (if we have data of it)
Consumer user name (if we have data of it)
Consumer user email (if we have data of it)
Consumer user email anonymized flag (if email is anonymized or not)
Consumer user phone number (if we have data of it)
billable_address
object
required
Payment method id used for this transactions.
Possible values: [pre_transaction, draft, to_be_payed, paid, refunded, disputed, failed]
Transaction status
Refunded amount
External ID (generated by the company) used to reconcilate transaction with the pre_transaction
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"external_id": "STRIPE_59782679127678169827",
"company_id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
"order_amount": 153.86,
"total_amount": 155.66,
"currency": "EUR",
"charity_id": "123e4567-e89b-12d3-a456-426614174000",
"donation_cause": "cause1",
"donation_amount": 250,
"donation_percentage": 3,
"donation_currency": "EUR",
"created_date": "2023-05-13",
"updated_date": "2023-05-17",
"consumer_user_id": "3f33b5e7-a94b-4f86-92e5-b1f7c1a7c68b",
"consumer_user_full_name": "John Doe",
"consumer_user_email": "john@email.com",
"consumer_user_email_anonymized": false,
"consumer_user_phone": 393334445555,
"billable_address": {
"street_address": "via Roma 5",
"city": "Milan",
"region_state": "Lombardia",
"zip_code": "20100",
"country": "Italy"
},
"payment_method": "0f63c9aa-35cc-48f9-af7d-30bfb62172ad",
"transaction_status": "paid",
"refunded_amount": 0,
"reconciliation_id": "COMPANY_458732297419738721976"
}
Unauthorized
Payment Required
Invalid input