POST /transaction/initialize
Create a new transaction
Servers
- https://api.paystack.co
Request headers
Name | Type | Required | Description |
---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
Name | Type | Required | Description |
---|---|---|---|
channels[] |
Array | No |
An array of payment channels to control what channels you want to make available to the user to make a payment with Possible values:
|
metadata |
Object | No |
Stringified JSON object of custom data |
subaccount |
String | No |
The code for the subaccount that owns the payment |
plan |
String | No |
If transaction is to create a subscription to a predefined plan, provide plan code here. This would invalidate the value provided in amount |
currency |
String | No |
The transaction currency Possible values:
|
invoice_limit |
Integer | No |
Number of times to charge customer during subscription to plan |
bearer |
String | No |
The bearer of the transaction charge Possible values:
|
callback_url |
String | No |
Fully qualified url. Use this to override the callback url provided on the dashboard for this transaction |
split_code |
String | No |
The split code of the transaction split |
transaction_charge |
Integer | No |
A flat fee to charge the subaccount for a transaction. This overrides the split percentage set when the subaccount was created |
email |
String | Yes |
Customer's email address |
amount |
Integer | Yes |
Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR |
reference |
String | No |
Unique transaction reference. Only -, ., = and alphanumeric characters allowed. |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.