This object represents payments and credits. Payments represent real money that were paid back by borrowers. Credits are adjustments made on a loan. Credits lower balances similar to payments. Credits can be issued by customer service representatives or supervisors.
Create a transaction. Permissions required depend on the object type passed:
type | permission |
---|---|
One Time Payment | transaction:create.onetimepayment |
Service Credit | transaction:create.servicecredit |
Down Payment | transaction:create.downpayment |
Created
Request Timeout
{- "type": "oneTime",
- "drawId": "string",
- "isExternal": true,
- "externalId": "string",
- "status": "scheduled",
- "failureReason": "insufficientFunds",
- "paymentInstrumentId": "string",
- "amount": 0,
- "scheduledDate": "2019-08-24",
- "effectiveDate": "2019-08-24",
- "effectiveTimeOfDay": {
- "hour": 23,
- "minute": 59,
- "second": 0
}, - "enablePrepayments": true,
- "holdDaysEndDate": "2019-08-24",
- "consentDocumentId": "string",
- "caseId": "string"
}
{- "status": 0,
- "message": "string",
- "data": {
- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z",
- "externalId": "string",
- "status": "scheduled",
- "timestamps": {
- "effectiveDate": "2019-08-24",
- "originalEffectiveDate": "2019-08-24",
- "scheduledDate": "2019-08-24",
- "displayDate": "2019-08-24",
- "initiatedAt": "2019-08-24T14:15:22Z",
- "pendingAt": "2019-08-24T14:15:22Z",
- "succeededAt": "2019-08-24T14:15:22Z",
- "failedAt": "2019-08-24T14:15:22Z",
- "canceledAt": "2019-08-24T14:15:22Z",
- "inDisputeAt": "2019-08-24T14:15:22Z",
- "chargebackAt": "2019-08-24T14:15:22Z",
- "appliedAt": "2019-08-24T14:15:22Z"
}, - "transactionType": "payment",
- "paymentDetails": {
- "type": "ach",
- "reason": "autoPay",
- "fromInstrumentId": "string",
- "fromInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}, - "toInstrumentId": "string",
- "toInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}
}, - "actualAmount": 0,
- "scheduledAmount": 0,
- "currency": "string",
- "serviceCreditDetails": {
- "type": "serviceAgent",
- "sponsor": "loanOwner",
- "reason": "oneTimePayment"
}, - "chargebackDetails": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}, - "processingFeeAmount": 0,
- "processingFeeType": "net",
- "processorTransactionId": "string",
- "processorReversalId": "string",
- "processorReconciliationId": "string",
- "avsResult": "s",
- "failureReason": "insufficientFunds",
- "failureDescriptionShort": "string",
- "failureDescriptionLong": "string",
- "processorFailureReason": "string",
- "processorFailureDetails": null,
- "achReturnCode": "strin",
- "reversedByTransactionId": "string",
- "reversedByTransactionExternalId": "string",
- "reversedByTransactionIds": [
- {
- "id": "string",
- "externalId": "string"
}
], - "reversesTransactionId": "string",
- "reversesTransactionExternalId": "string",
- "reversedAmount": 0,
- "effectiveAmount": 0,
- "parentTransactionId": "string",
- "autopayPlanId": "string",
- "autopayPaymentIds": [
- 0
], - "createdBy": {
- "id": "string",
- "name": "string"
}, - "cancelReason": "invalidPaymentMethod",
- "enablePrepayments": true,
- "holdDaysEndDate": "2019-08-24",
- "metaData": { },
- "customDisplayName": "string",
- "isExternal": true,
- "isVirtual": true,
- "paidPrincipalAmount": 0,
- "paidInterestAmount": 0,
- "paidFeesAmount": 0,
- "paidOverAmount": 0
}
}
Collection of Transactions
{- "total": 0,
- "count": 0,
- "nextUrl": "string",
- "previousUrl": "string",
- "data": [
- {
- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z",
- "externalId": "string",
- "status": "scheduled",
- "timestamps": {
- "effectiveDate": "2019-08-24",
- "originalEffectiveDate": "2019-08-24",
- "scheduledDate": "2019-08-24",
- "displayDate": "2019-08-24",
- "initiatedAt": "2019-08-24T14:15:22Z",
- "pendingAt": "2019-08-24T14:15:22Z",
- "succeededAt": "2019-08-24T14:15:22Z",
- "failedAt": "2019-08-24T14:15:22Z",
- "canceledAt": "2019-08-24T14:15:22Z",
- "inDisputeAt": "2019-08-24T14:15:22Z",
- "chargebackAt": "2019-08-24T14:15:22Z",
- "appliedAt": "2019-08-24T14:15:22Z"
}, - "transactionType": "payment",
- "paymentDetails": {
- "type": "ach",
- "reason": "autoPay",
- "fromInstrumentId": "string",
- "fromInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}, - "toInstrumentId": "string",
- "toInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}
}, - "actualAmount": 0,
- "scheduledAmount": 0,
- "currency": "string",
- "serviceCreditDetails": {
- "type": "serviceAgent",
- "sponsor": "loanOwner",
- "reason": "oneTimePayment"
}, - "chargebackDetails": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}, - "processingFeeAmount": 0,
- "processingFeeType": "net",
- "processorTransactionId": "string",
- "processorReversalId": "string",
- "processorReconciliationId": "string",
- "avsResult": "s",
- "failureReason": "insufficientFunds",
- "failureDescriptionShort": "string",
- "failureDescriptionLong": "string",
- "processorFailureReason": "string",
- "processorFailureDetails": null,
- "achReturnCode": "strin",
- "reversedByTransactionId": "string",
- "reversedByTransactionExternalId": "string",
- "reversedByTransactionIds": [
- {
- "id": "string",
- "externalId": "string"
}
], - "reversesTransactionId": "string",
- "reversesTransactionExternalId": "string",
- "reversedAmount": 0,
- "effectiveAmount": 0,
- "parentTransactionId": "string",
- "autopayPlanId": "string",
- "autopayPaymentIds": [
- 0
], - "createdBy": {
- "id": "string",
- "name": "string"
}, - "cancelReason": "invalidPaymentMethod",
- "enablePrepayments": true,
- "holdDaysEndDate": "2019-08-24",
- "metaData": { },
- "customDisplayName": "string",
- "isExternal": true,
- "isVirtual": true,
- "paidPrincipalAmount": 0,
- "paidInterestAmount": 0,
- "paidFeesAmount": 0,
- "paidOverAmount": 0
}
]
}
success
{- "status": 0,
- "message": "string",
- "data": {
- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z",
- "externalId": "string",
- "status": "scheduled",
- "timestamps": {
- "effectiveDate": "2019-08-24",
- "originalEffectiveDate": "2019-08-24",
- "scheduledDate": "2019-08-24",
- "displayDate": "2019-08-24",
- "initiatedAt": "2019-08-24T14:15:22Z",
- "pendingAt": "2019-08-24T14:15:22Z",
- "succeededAt": "2019-08-24T14:15:22Z",
- "failedAt": "2019-08-24T14:15:22Z",
- "canceledAt": "2019-08-24T14:15:22Z",
- "inDisputeAt": "2019-08-24T14:15:22Z",
- "chargebackAt": "2019-08-24T14:15:22Z",
- "appliedAt": "2019-08-24T14:15:22Z"
}, - "transactionType": "payment",
- "paymentDetails": {
- "type": "ach",
- "reason": "autoPay",
- "fromInstrumentId": "string",
- "fromInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}, - "toInstrumentId": "string",
- "toInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}
}, - "actualAmount": 0,
- "scheduledAmount": 0,
- "currency": "string",
- "serviceCreditDetails": {
- "type": "serviceAgent",
- "sponsor": "loanOwner",
- "reason": "oneTimePayment"
}, - "chargebackDetails": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}, - "processingFeeAmount": 0,
- "processingFeeType": "net",
- "processorTransactionId": "string",
- "processorReversalId": "string",
- "processorReconciliationId": "string",
- "avsResult": "s",
- "failureReason": "insufficientFunds",
- "failureDescriptionShort": "string",
- "failureDescriptionLong": "string",
- "processorFailureReason": "string",
- "processorFailureDetails": null,
- "achReturnCode": "strin",
- "reversedByTransactionId": "string",
- "reversedByTransactionExternalId": "string",
- "reversedByTransactionIds": [
- {
- "id": "string",
- "externalId": "string"
}
], - "reversesTransactionId": "string",
- "reversesTransactionExternalId": "string",
- "reversedAmount": 0,
- "effectiveAmount": 0,
- "parentTransactionId": "string",
- "autopayPlanId": "string",
- "autopayPaymentIds": [
- 0
], - "createdBy": {
- "id": "string",
- "name": "string"
}, - "cancelReason": "invalidPaymentMethod",
- "enablePrepayments": true,
- "holdDaysEndDate": "2019-08-24",
- "metaData": { },
- "customDisplayName": "string",
- "isExternal": true,
- "isVirtual": true,
- "paidPrincipalAmount": 0,
- "paidInterestAmount": 0,
- "paidFeesAmount": 0,
- "paidOverAmount": 0
}
}
Updated
Request Timeout
{- "externalId": "string",
- "status": "scheduled",
- "timestamps": {
- "scheduledDate": "2019-08-24",
- "displayDate": "2019-08-24",
- "initiatedAt": "2019-08-24T14:15:22Z",
- "pendingAt": "2019-08-24T14:15:22Z",
- "succeededAt": "2019-08-24T14:15:22Z",
- "failedAt": "2019-08-24T14:15:22Z",
- "canceledAt": "2019-08-24T14:15:22Z",
- "inDisputeAt": "2019-08-24T14:15:22Z",
- "chargebackAt": "2019-08-24T14:15:22Z"
}, - "transactionType": "payment",
- "paymentDetails": {
- "type": "ach",
- "reason": "autoPay",
- "fromInstrumentId": "string",
- "fromInstrument": {
- "instrumentType": "bankAccount"
}, - "toInstrumentId": "string",
- "toInstrument": {
- "instrumentType": "bankAccount"
}
}, - "actualAmount": 0,
- "scheduledAmount": 0,
- "currency": "string",
- "serviceCreditDetails": {
- "type": "serviceAgent",
- "sponsor": "loanOwner",
- "reason": "oneTimePayment"
}, - "chargebackDetails": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}, - "processingFeeAmount": 0,
- "processingFeeType": "net",
- "processorTransactionId": "string",
- "processorReversalId": "string",
- "processorReconciliationId": "string",
- "avsResult": "s",
- "failureReason": "insufficientFunds",
- "processorFailureReason": "string",
- "processorFailureDetails": null,
- "achReturnCode": "strin",
- "parentTransactionId": "string",
- "autopayPlanId": "string",
- "autopayPaymentIds": [
- 0
], - "cancelReason": "invalidPaymentMethod",
- "enablePrepayments": true,
- "holdDaysEndDate": "2019-08-24",
- "metaData": { },
- "customDisplayName": "string",
- "isExternal": true,
- "isVirtual": true,
- "paidPrincipalAmount": 0,
- "paidInterestAmount": 0,
- "paidFeesAmount": 0,
- "paidOverAmount": 0
}
canceled
A Transaction
Request Timeout
Locked
{- "status": "scheduled",
- "scheduledDate": "2019-08-24",
- "amount": 0,
- "externalId": "string",
- "caseId": "string"
}
{- "status": 0,
- "message": "string",
- "data": {
- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "deletedAt": "2019-08-24T14:15:22Z",
- "externalId": "string",
- "status": "scheduled",
- "timestamps": {
- "effectiveDate": "2019-08-24",
- "originalEffectiveDate": "2019-08-24",
- "scheduledDate": "2019-08-24",
- "displayDate": "2019-08-24",
- "initiatedAt": "2019-08-24T14:15:22Z",
- "pendingAt": "2019-08-24T14:15:22Z",
- "succeededAt": "2019-08-24T14:15:22Z",
- "failedAt": "2019-08-24T14:15:22Z",
- "canceledAt": "2019-08-24T14:15:22Z",
- "inDisputeAt": "2019-08-24T14:15:22Z",
- "chargebackAt": "2019-08-24T14:15:22Z",
- "appliedAt": "2019-08-24T14:15:22Z"
}, - "transactionType": "payment",
- "paymentDetails": {
- "type": "ach",
- "reason": "autoPay",
- "fromInstrumentId": "string",
- "fromInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}, - "toInstrumentId": "string",
- "toInstrument": {
- "instrumentType": "bankAccount",
- "accountNumberLastFour": null
}
}, - "actualAmount": 0,
- "scheduledAmount": 0,
- "currency": "string",
- "serviceCreditDetails": {
- "type": "serviceAgent",
- "sponsor": "loanOwner",
- "reason": "oneTimePayment"
}, - "chargebackDetails": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}, - "processingFeeAmount": 0,
- "processingFeeType": "net",
- "processorTransactionId": "string",
- "processorReversalId": "string",
- "processorReconciliationId": "string",
- "avsResult": "s",
- "failureReason": "insufficientFunds",
- "failureDescriptionShort": "string",
- "failureDescriptionLong": "string",
- "processorFailureReason": "string",
- "processorFailureDetails": null,
- "achReturnCode": "strin",
- "reversedByTransactionId": "string",
- "reversedByTransactionExternalId": "string",
- "reversedByTransactionIds": [
- {
- "id": "string",
- "externalId": "string"
}
], - "reversesTransactionId": "string",
- "reversesTransactionExternalId": "string",
- "reversedAmount": 0,
- "effectiveAmount": 0,
- "parentTransactionId": "string",
- "autopayPlanId": "string",
- "autopayPaymentIds": [
- 0
], - "createdBy": {
- "id": "string",
- "name": "string"
}, - "cancelReason": "invalidPaymentMethod",
- "enablePrepayments": true,
- "holdDaysEndDate": "2019-08-24",
- "metaData": { },
- "customDisplayName": "string",
- "isExternal": true,
- "isVirtual": true,
- "paidPrincipalAmount": 0,
- "paidInterestAmount": 0,
- "paidFeesAmount": 0,
- "paidOverAmount": 0
}
}
In some cases a borrower might chargeback/dispute a payment that they made in the past. Only transactions in succeeded
status can be charged back.
If the payment/transaction isExternal=true
, the caller can post chargeback in two ways:
inDispute
or chargeback
directly. The chargeback amount defaults to the full amount of the transaction.
The system will create a chargeback object automatically. This option is the easiest way to tell the system about a chargeback.Create transaction chargeback
endpoint. This option allows the caller to provide more details about the chargeback.
This option should be used for multiple partial chargebacks. Keep in mind that a transaction can have multiple chargebacks and reversals.It's important to not mix the options above because it can create edge cases and confusion.
If the payment/transaction is isExternal=false
, the caller cannot change the transaction status to inDispute
or chargeback
nor create chargeback(s)
via Create transaction chargeback
endpoint. Chargebacks will be received directly from the payment processor.
Chargeback
Request Timeout
{- "chargebackStatus": "open",
- "amount": 0,
- "caseId": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}
{- "status": 0,
- "message": "string",
- "data": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}
}
Chargebacks
{- "data": [
- {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}
]
}
Chargeback
{- "status": 0,
- "message": "string",
- "data": {
- "id": "string",
- "amount": 0,
- "description": "string",
- "externalCaseNumber": "string",
- "reasonCode": "string",
- "category": "string"
}
}
Backdate a transaction. Can only be applied to transactions with status=succeeded
or status=pending
. Can be applied to payments or service credits.
Backdated
Backdated
Request Timeout
Locked
{- "effectiveDate": "2019-08-24",
- "effectiveTimeOfDay": {
- "hour": 23,
- "minute": 59,
- "second": 0
}, - "caseId": "string"
}
{- "message": "Loan is locked for updates. Please try again."
}