customer/v1/payment
[POST] customer/v1/payment
Submit a payment
Send payments via the payment endpoint from a customer's account to an internal (intra-fintech) or external account. For intra-fintech payments, funds are transferred between accounts within a matter of seconds. Other payments to external accounts require settlement. For payments to/from an external bank account, a positive amount
indicates funding for the account initiating the call, and a negative amount
value indicates sending money from the account initiating the call. For internal (intra-fintech) payments, the amount
must be positive and indicates sending money from the account initiating the call. All payment requests are made in the lowest possible denomination of a currency; eg a funding request for $1.00 USD will be sent as 100
.
Device identification is optional, but it is passed to the compliance monitoring system for help with case management (refunds, fraud, etc.).
Example [POST] Request
{{avenu_base_url}}/customer/v1/payment
{
"paymentType": "",
"recipientAccount": {
"customerAccountNumber": "", //only used for AVENU paymentType
"achAccountNumber": "", //only used for ACH paymentType
"achRoutingNumber": "", //only used for ACH paymentType
},
"amount": "",
"currency": "",
"scheduledDate": "",
"numberOfPayments": "",
"paymentsInterval": "",
"memo": "",
"firstName" : "",
"middleInitial" : "",
"lastName" : "",
"address" : "",
"city" : "",
"state" : "",
"zipCode" : "",
"country" : "",
"deviceIdentity": {
"deviceId": "",
"deviceType": "",
"deviceName": "",
"deviceOperatingSystem": "",
"deviceIPAddress": "",
"deviceLocation": "",
"deviceLongitude": "",
"deviceLatitude": "",
"deviceUser": "",
"deviceIMEINumber" : "",
"deviceTorEnabled" : "",
"deviceFirstSeen" : "",
"deviceLastSeen" : ""
}
}
Input Parameters
Parameter | Format | Required | Details |
---|---|---|---|
"paymentType" | String | Y | The type of payment for the transaction. See |
"customerAccountNumber" | String | N | Numerical only |
"achAccountNumber" | String | N | Numerical only |
"achRoutingNumber" | String | N | Numerical only |
"amount" | Long | Y | Funding amount in lowest currency e.g. cents. Cannot be 0. |
"currency" | String; Three-letter | Y | |
"scheduledDate" | String; | Y | |
"numberOfPayments" | Integer | N | |
"paymentsInterval" | String | N | |
"memo" | String | N | |
"firstName" | String | Y | |
"middleInitial" | String; Max and Min length to be set to 1 | N | |
"lastName" | String | Y | |
"address" | String | N | |
"city" | String | N | |
"state" | String | N | |
"zipCode" | String; valid number of length 5 | N | |
"country" | String; | ||
"deviceId" | String | N | |
"deviceType" | String | N | |
"deviceName" | String | N | |
"deviceOperatingSystem" | String | N | |
"deviceIPAddress" | String | N | |
"deviceLocation" | String | N | |
"deviceLongitude" | String | N | |
"deviceLatitude" | String | N | |
"deviceUser" | String | N | |
"deviceIMEINumber" | String | N | |
"deviceTorEnabled" | Boolean | N | |
"deviceFirstSeen" | String; | N | |
"deviceLastSeen" | String; | N |
Example Response
{
"payment": {
"paymentType": "",
"recipientAccount": {
"customerAccountNumber": "",
"achAccountNumber": "",
"achRoutingNumber": "",
},
"amount": xxx,
"currency": "usd",
"scheduledDate": "",
"numberOfPayments": "",
"paymentsInterval": "",
"memo": "",
"firstName" : "",
"middleInitial" : "",
"lastName" : "",
"address" : "",
"city" : "",
"state" : "",
"zipCode" : "",
"country" : "",
},
"paymentId": "xxxx",
"sender": "",
"status": "",
"dateCreated": "",
"dateUpdated": "",
}
Response Elements
(In addition to elements found in input parameters)
Element | Details |
---|---|
paymentId | UUID payment identifier |
sender | Sender account number |
status | Status of payment at end of transaction. See Payments Overview. |
dateCreated | Transaction processed date in format ISO 8601 YYYY-MM-DD. |
dateUpdated | Date of last status update in format ISO 8601 YYYY-MM-DD |
Error Codes
Code | Message |
---|---|
1001 | "Missing required field" |
1002 | "Invalid data structure" |
1003 | "Invalid data" |
[GET] customer/v1/payment
Get payment details
The payment details endpoint returns data specific to a unique paymentId
.
Example [GET] Request
{{avenu_base_url}}/customer/v1/payment/{{paymentId}}
Request Parameter
Parameter | Format | Required |
---|---|---|
"paymentId" | String | Y |
Example Response
{
"payment": {
"paymentType": "",
"recipientAccount": {
"customerAccountNumber": "",
"achAccountNumber": "",
"achRoutingNumber": "",
},
"amount": xxx,
"currency": "",
"scheduledDate": "",
"numberOfPayments": "",
"paymentsInterval": "",
"memo": "",
"firstName" : "",
"middleInitial" : "",
"lastName" : "",
"address" : "",
"city" : "",
"state" : "",
"zipCode" : "",
"country" : ""
},
"paymentId": "",
"status": "",
"dateCreated": "",
"dateUpdated": "",
"returnCode": "",
"publicTraceNumber": ""
}
Response Elements
Element | Details |
---|---|
paymentType | The type of payment for the transaction. See Payments Overview |
recipientAccount | Array with details of the account receiving the payment |
customerAccountNumber | Account number of the recipient |
achAccountNumber | ACH account number of the recipient |
amount | The amount of the payment in the lowest currency. e.g. cents |
currency | The currency of the payment |
scheduledDate | Scheduled payment date in format ISO 8601 YYYY-MM-DD |
numberOfPayments | The number of payments if recurring |
paymentsInterval | The frequency of payments if recurring |
memo | Any memo attached to the payment |
firstName | The Recipient account owner first name |
middleInitial | The Recipient account owner middle initial |
lastName | The Recipient account owner last name |
address | The Recipient account owner address |
city | The Recipient account owner city |
state | The Recipient account owner state |
zipCode | The Recipient account owner ZIP code |
country | The Recipient account owner country |
paymentId | The identification number for the payment. |
status | The current status of the transaction. See Payments Overview |
dateCreated | Transaction processed date in format ISO 8601 YYYY-MM-DD |
dateUpdated | Date of last status update in format ISO 8601 YYYY-MM-DD |
returnCode | Value set for ACH Returns only |
publicTraceNumber | Value set for ACH transactions only |
Updated 2 months ago