ACH Sale via the Payment API
Overview
The Preczn Transaction API enables secure processing of ACH debits (sometimes referred to as eCheck or Bank payments). Much a like a credit card sales transaction, using an bank account as a payment method will debit the customer's bank account in order to transfer funds to your merchants.
Making a Bank Payment
To initiate a bank payment, use the sale
transaction type. You must provide the following required fields: first name, last name, amount, bank type, account number, and routing number.
Required Fields
- firstName: (string)This should be the customer name associated with the bank account
- lastName: (string) This should be the customer last name associated with the bank account
- amount: (string) The amount to be transferred.
Under the payment method
- bankAccount - Denotes the type of payment method
- type: (enumeration) Specifies the type of bank account (e.g.,
personalChecking
,personalSavings
,corporateChecking
,corporateSavings
). - account: (string) The bank account number for the transaction.
- routing: (string) The routing number of the bank.
- bankCountry (enumeration) currently we support
USA
andCAN
bank accounts. Please reach out to us if you require support for additional countries.
- type: (enumeration) Specifies the type of bank account (e.g.,
Endpoint
POST /v1/transactions
Request Body
{
"merchantId": "{{merchantId}}",
"type": "sale",
"firstName": "{{$randomFirstName}}",
"lastName": "{{$randomLastName}}",
"payment": {
"bankAccount": {
"type": "personalChecking",
"account": "123456789",
"routing": "123456789",
"bankCountry": "USA"
}
},
"amount": 123
}
{
"merchantId": "{{merchantId}}",
"type": "sale",
"firstName": "{{$randomFirstName}}",
"lastName": "{{$randomLastName}}",
"payment": {
"token": "tkn_test_2mzqkp2r0w9mkv6a5wxrqy0kdz"
},
"amount": 123
}
Response
{
"amount": 123,
"authorization": {
"approvedAmount": 123,
"avs": "U",
"cvv": "U",
"partial": false,
"processorCode": "1",
"processorMessage": "APPROVED",
"processorTransactionId": "t1_txn_663a4dc5d1f127a7768aa3b",
"status": "P"
},
"createdOn": "2024-05-07T15:50:29Z",
"currency": "USD",
"fee": 0,
"firstName": "CLAUDIE",
"id": "txn_test_14nmvq95kv8tsszzbgbp60fsd5",
"lastName": "MITCHELL",
"merchantId": "mid_test_3qya7fmh819wqrrxg75310990c",
"payment": {
"bin": "123456789",
"last4": "4321",
"token": "tkn_test_2mzqkp2r0w9mkv6a5wxrqy0kdz",
"type": "personalChecking"
},
"plan": {
"id": "plan_test_11y7n0vpqw9yabf1jpwh52psth",
"name": "Default Processor Plan"
},
"platformId": "pfm_4s7mr6y0c09qab2y6ceb2fx0nz",
"processor": {
"id": "pfmCon_test_5k09ch15fr8nqry9tagt6dahqp",
"name": "Processor"
},
"type": "sale"
}
Status Codes
200 OK
: Transaction processed successfully.400 Bad Request
: Invalid parameters in the request.401 Unauthorized
: Authentication failure.500 Internal Server Error
: An unexpected error in the server.
Updated 5 months ago