Truist Credit Transfers
Process real-time credit transfer payments to and from eligible accounts. Credit Transfers API Truist publishes an OpenAPI 3.1.0 contract (v2.6.0) for this product on the Truist Developer Center.
Process real-time credit transfer payments to and from eligible accounts. Credit Transfers API Truist publishes an OpenAPI 3.1.0 contract (v2.6.0) for this product on the Truist Developer Center.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/credit-transfers"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.1.0
info:
version: "2.6.0"
# build: "0"
title: Real Time Payment Credit Transfers
description: Truist Financial APIs for Real Time Payments Credit Transfers per ISO 20022
contact:
name: Truist API Support
url: "https://developer.truist.com/contact-us"
servers:
- url: "https://api-sandbox.truist.com/commercial"
description: Truist Financial Commercial Open Banking APIs - Sandbox environment
- url: "https://apicert.truist.com/commercial"
description: Truist Financial Commercial Open Banking APIs - Certification environment
- url: "https://api.truist.com/commercial"
description: Truist Financial Commercial Open Banking APIs - Production environment
tags:
- name: Credit Transfers Account List
description: Eligible accounts for Real Time Payment Credit Transfer
- name: Credit Transfers
description: Credit Transfers for a Real Time Payment
- name: Credit Transfers Approval/Reject
description: Approvals for Real Time Payment Credit Transfer
- name: Credit Transfers Acknowledge
description: Credit Transfer Acknowledge for an inbound credit transfer
paths:
############################################################
#
# Real Time Payment paths
#
############################################################
/v2/payments/rtp/credit-transfers:
parameters:
- $ref: "#/components/parameters/FapiInteractionIdHeader"
post:
tags:
- Credit Transfers
description: Initiate credit transfers from Truist accounts to another bank accounts
summary: Post credit transfers
operationId: createRtpCreditTransfer
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/MultipleRtpPaymentRequest"
examples:
B2B_TRANSFER:
value:
payments:
- correlationId: "3a8b3c99cfef00009615b026207b1b9e"
fromAccountId: "kljTRlVDLS9kSqyTlT"
paymentDate: "2023-10-10"
amount: 1.99
fullAmount: 1.99
discountAmount: 0
description: "Example B2B RTP"
creditor:
name: "John Doe"
accountNumber: "1236511211235999"
routingNumber: "101010101"
address:
addressLine: "1st Street"
city: "Chicago"
state: "IL"
suiteNumber: "#404"
zipCode: "10001"
legalEntityId: "A23500XXXXXCREQRTP01"
SINGLE_CONSUMER_TRANSFER:
value:
payments:
- correlationId: "3a8b3c99cfef00009615b026207b1b9e"
fromAccountId: "kljTRlVDLS9kSqyTlT"
paymentDate: "2023-10-13"
amount: 1.99
fullAmount: 1.99
discountAmount: 0
description: "Example B2C RTP"
creditor:
name: "John Doe"
accountNumber: "1236511211235999"
routingNumber: "111000111"
birthDate: "2001-01-01"
cityOfBirth: "Raleigh"
countryOfBirth: "US"
address:
addressLine: "1st Street"
city: "Chicago"
state: "IL"
suiteNumber: "404"
zipCode: "10001"
MULTIPLE_CONSUMER_TRANSFER:
value:
payments:
- correlationId: "3a8b3c99cfef00009615b026207b1b9e"
fromAccountId: "kljTRlVDLS9kSqyTlT"
paymentDate: "2023-10-13"
amount: 1.01
fullAmount: 1.99
discountAmount: 0.98
description: "Example B2C RTP 1"
creditor:
name: "John Doe1"
accountNumber: "1236511211235999"
routingNumber: "111000112"
birthDate: "2002-02-02"
cityOfBirth: "Charlotte"
countryOfBirth: "US"
address:
addressLine: "2nd Street"
city: "Bloomington"
state: "IL"
suiteNumber: "404"
zipCode: "10001"
- correlationId: "3a8b3c99cfef00009615b026207b1b9h"
fromAccountId: "mljLWlVDLS9kSqxTlF"
paymentDate: "2023-10-13"
amount: 1.02
fullAmount: 1.99
discountAmount: 0.97
description: "Example B2C RTP 2"
creditor:
name: "John Doe2"
accountNumber: "2236511211235999"
routingNumber: "111000113"
birthDate: "2003-03-03"
cityOfBirth: "Raleigh"
countryOfBirth: "US"
address:
addressLine: "3rd Street"
city: "Bloomington"
state: "IL"
suiteNumber: "404"
zipCode: "10001"
responses:
"200":
description: OK
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/RtpResponse"
examples:
"SUCCESS":
value:
payments:
- correlationId: "3a8b3c99cfef00009615b026207b1b9e"
paymentId: "202403216917266289BTOV5600958950"
"400":
description: Bad Request
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
MISSING_AMOUNT:
value:
code: "7000"
message: "Bad request, amount is missing, null or blank"
INVALID_AMOUNT:
value:
code: "8001"
message: "Bad request, amount is invalid"
MISSING_FROMACCID:
value:
code: "7001"
message: "Bad request, fromAccountId is missing, null or blank"
MISSING_PAYMENTDATE:
value:
code: "7002"
message: "Bad request, paymentDate is missing, null or blank"
MISSING_CORRELATIONID:
value:
code: "7003"
message: "Bad request, correlationId is missing, null or blank"
MISSING_CREDITOR:
value:
code: "7004"
message: "Bad request, creditor is missing"
MISSING_CREDITOR_ACCOUNTNUMBER:
value:
code: "7005"
message: "Bad request, creditor account number is missing, null or blank"
MISSING_CREDITOR_ROUTINGNUMBER:
value:
code: "7006"
message: "Bad request, creditor routing number is missing, null or blank"
MISSING_CREDITOR_ADDRESS_LINE:
value:
code: "7008"
message: "Bad request, creditor address line is missing, null or blank"
MISSING_CREDITOR_ADDRESS_STATE:
value:
code: "7009"
message: "Bad request, creditor address's state is missing, null or blank"
MISSING_CREDITOR_ADDRESS_CITY:
value:
code: "7010"
message: "Bad request, creditor address's city is missing, null or blank"
MISSING_CREDITOR_ZIPCODE:
value:
code: "7011"
message: "Bad request, creditor address's zipcode is missing, null or blank"
INVALID_CORRELATIONID:
value:
code: "7024"
message: "Bad request, correlationId is invalid"
AMOUNT_MORE_THAN_10MILLION:
value:
code: "8002"
message: "Amount shouldn't be more than 10 million"
INVALID_FULL_AMOUNT:
value:
code: "8023"
message: "Bad request, full amount is amount + discount amount"
TRANSACTION_LIMIT_EXCEEDED:
value:
code: "8027"
message: "Transaction limit is exceeded"
DAILY_LIMIT_EXCEEDED:
value:
code: "8026"
message: "Daily limit is exceeded"
INVALID_INPUT_OAS:
value:
code: "7021" # oas validation
message: "Specify OAS validation error"
USER_DAILY_LIMIT_EXCEEDED:
value:
code: "8029"
message: "Exceeded user's daily limit"
ROUTING_NUMBER_SERVICE_UNAVAILABLE:
value:
code: "8031"
message: "Routing number service is unavailable"
CLOSED_ACCOUNT:
value:
code: "8037"
message: "Payment initiation is not allowed on closed account"
"401":
$ref: "#/components/responses/401"
"403":
$ref: "#/components/responses/403"
"404":
$ref: "#/components/responses/404"
"405":
$ref: "#/components/responses/405"
"429":
$ref: "#/components/responses/429"
"409":
$ref: "#/components/responses/409"
"500":
$ref: "#/components/responses/500"
"503":
description: Service unavailable / system down for maintenance
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
SERVICE_UNAVAILABLE:
value:
code: "503"
message: Service unavailable
"504":
$ref: "#/components/responses/504"
security:
- OAuth: ["write:payments"]
get:
tags:
- Credit Transfers
description: Returns credit transfer transactions for a specific account
summary: Get credit transfers
operationId: getRealTimePaymentTransactions
parameters:
- $ref: "#/components/parameters/OffsetQuery"
- $ref: "#/components/parameters/LimitQuery"
- $ref: "#/components/parameters/PaymentIdQuery"
- $ref: "#/components/parameters/AccountIdQuery"
- $ref: "#/components/parameters/CorrelationIdQuery"
- $ref: "#/components/parameters/PaymentActionQuery"
- $ref: "#/components/parameters/StatusQuery"
- $ref: "#/components/parameters/AccountNumberQuery"
- $ref: "#/components/parameters/PaymentFromDateQuery"
- $ref: "#/components/parameters/PaymentToDateQuery"
- $ref: "#/components/parameters/FromAmountQuery"
- $ref: "#/components/parameters/ToAmountQuery"
responses:
"200":
description: OK
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Transactions"
example:
pageMetadata:
totalElements: 2
transactions:
- correlationId: "3a8b3c99cfef00009615b026207b1b9e"
paymentId: "202403216917266289BTOV5600958950"
submittedBy: "RTP Debtor Name"
paymentType: "RTP"
paymentDate: "2023-10-10T00:00:00"
expirationDate: "2023-10-11T00:00:00"
amount: 1.00
status: "completed"
statusReasonCode: "NARR"
statusReasonDescription: "Defines status of the request"
payFromAccountNumber: "*******604836"
payToAccountNumber: "2899316377837"
payToRoutingNumber: "101010101"
description: "Example B2B RTP"
recipient: "John Doe"
requiredApprovals: 1
alreadyApproved: 1
approvedBy:
- approverName: "Approver Name"
approvedDate: "2023-10-10T12:56:46"
- correlationId: "3a8b3c99cfef00009615b026207b1j9e"
paymentId: "20221128053101121T1B073712193739899"
submittedBy: "Mary Jane"
paymentType: "RTP"
frequency: "single"
paymentDate: "2023-12-01T00:00:00"
expirationDate: "2023-12-02T00:00:00"
amount: 2.00
status: "needsApproval"
statusReasonCode: "NARR"
statusReasonDescription: "Defines status of the request"
payFromAccountNumber: "*******604836"
payToAccountNumber: "2899316377838"
payToRoutingNumber: "111000111"
description: "Outbound RTP payment"
recipient: "Recipient FI Name"
requiredApprovals: 1
alreadyApproved: 0
"400":
description: Bad Request
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
MISSING_MANDOTORY_PARAMS:
value:
code: "7027"
message: >-
Bad request, mandatory query param is missing.
PaymentId, correlationId or accountId and paymentAction should be present
INVALID_LIMIT:
value:
code: "7013"
message: "Bad request, limit has invalid values"
INVALID_INPUT_PARAM_CORRELATIONID:
value:
code: "7023"
message: >-
Bad request, either correlationId or paymentId should be present.
Invalid search parameters"
INVALID_CORRELATIONID:
value:
code: "7024"
message: "Bad request, correlationId is invalid"
INVALID_OFFSET:
value:
code: "7014"
message: "Bad request, offset has invalid values"
MISSING_PAYMENTFROMDATE: # not applicable in case of paymentIds
value:
code: "7015"
message: "Bad request, paymentFromDate is missing, null or blank"
INVALID_PAYMENTFROMDATE: # not applicable in case of paymentIds
value:
code: "7016"
message: "Bad request, paymentFromDate is invalid"
MISSING_FROMAMOUNT: # not applicable in case of paymentIds
value:
code: "7017"
message: "Bad request, fromAmount is missing, null or blank"
INVALID_FROMAMOUNT: # not applicable in case of paymentIds
value:
code: "7018"
message: "Bad request, fromAmount is invalid"
MISSING_TOAMOUNT: # not applicable in case of paymentIds
value:
code: "7019"
message: "Bad request, toAmount is missing, null or blank"
INVALID_TOAMOUNT: # not applicable in case of paymentIds
value:
code: "7020"
message: "Bad request, toAmount is invalid"
INVALID_INPUT_OAS:
value:
code: "7021" # oas validation
message: "Specify OAS validation error"
"401":
$ref: "#/components/responses/401"
"404":
description: Not Found
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
INVALID_ACCOUNTID:
value:
code: "7059"
message: "Account not found"
DATA_NOT_FOUND:
value:
code: "1107"
message: "Data not found for request parameters"
RESOURCE_NOT_FOUND:
value:
code: "1101"
message: "URI does not represent a recognised resource"
"405":
$ref: "#/components/responses/405"
"429":
$ref: "#/components/responses/429"
"500":
$ref: "#/components/responses/500"
"503":
$ref: "#/components/responses/503"
"504":
$ref: "#/components/responses/504"
security:
- OAuth: ["read:payments"]
put:
tags:
- Credit Transfers
description: Cancels a credit transfer
summary: Credit transfers cancel
operationId: updatePaymentStatus
requestBody:
description: Credit transfer payment cancellation
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/CancelPaymentRequest"
example:
status: CANCEL
payments:
- 202403216917266289BTOV5600958950
responses:
"200":
description: OK
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/UpdatePaymentResponse"
examples:
SUCCESS:
value:
message: "Payment status updated"
PARTIAL_SUCCESS:
value:
message: "The payments failed processing"
payments:
- "20221128053101121T1B073712193739891"
- "20221128053101121T1B073712193739899"
"400":
$ref: "#/components/responses/400"
"401":
$ref: "#/components/responses/401"
"403":
$ref: "#/components/responses/403"
"404":
description: Not Found
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
RESOURCE_NOT_FOUND:
value:
code: "1101"
message: URI does not represent a recognized resource
"405":
$ref: "#/components/responses/405"
"500":
$ref: "#/components/responses/500"
"503":
$ref: "#/components/responses/503"
"504":
$ref: "#/components/responses/504"
security:
- OAuth: ["write:payments"]
/v2/payments/rtp/credit-transfers/accounts:
parameters:
- $ref: "#/components/parameters/FapiInteractionIdHeader"
- $ref: "#/components/parameters/AccountStatus"
get:
tags:
- Credit Transfers Account List
description: Retrieves the list of accounts eligible for credit transfers
summary: Get accounts
operationId: getEligibleCreditTransfer
responses:
"200":
description: OK
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/AccountList"
example:
accounts:
- accountId: "kljTRlVDLS9kSqyTlT"
accountType: "CHECKING"
displayName: "************604836"
bankNumber: "102"
description: "ANALYZED CHECKING"
eligibilityType: "RTP"
currentAvailableBalance: 20.40
status: OPEN
- accountId: "mljLWlVDLS9kSqxTlF"
accountType: "SAVINGS"
displayName: "************176443"
bankNumber: "302"
description: "BUSINESS 500 SAVINGS"
eligibilityType: "RTP"
currentAvailableBalance: 20.40
status: OPEN
"401":
$ref: "#/components/responses/401"
"403":
description: Forbidden
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
INSUFFICIENT_SCOPE:
value:
code: "403"
message: Invalid scope
"404":
description: Not Found
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
ACCOUNT_NOT_AVAILABLE:
value:
code: "8000"
message: "Accounts not available for the given OnlineId"
RESOURCE_NOT_FOUND:
value:
code: "1101"
message: "URI does not represent a recognised resource"
"405":
description: Method Not Allowed
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
METHOD_NOT_ALLOWED:
value:
code: "1206"
message: "Method Not Allowed"
"429":
$ref: "#/components/responses/429"
"500":
description: Internal Server Error
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
INTERNAL_SERVER_ERROR:
value:
code: "500"
message: "Internal server error"
"503":
$ref: "#/components/responses/503"
"504":
$ref: "#/components/responses/504"
security:
- OAuth: ["read:accounts"]
/v2/payments/rtp/credit-transfers/approvals:
parameters:
- $ref: "#/components/parameters/FapiInteractionIdHeader"
post:
tags:
- Credit Transfers Approval/Reject
description: Update the payment status of credit transfers
summary: Post credit transfers
operationId: createRtpCreditTransferApprove
requestBody:
description: Update approval status for a credit tranfer
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/UpdatePaymentRequest"
example:
status: APPROVE
payments:
- 20221128053101121T1B073712193739872
responses:
"200":
description: OK
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/UpdatePaymentResponse"
examples:
SUCCESS:
value:
message: "Payment status updated"
PARTIAL_SUCCESS:
value:
message: "The payments failed processing"
payments:
- "20221128053101121T1B073712193739891"
- "20221128053101121T1B073712193739899"
"400":
description: Bad Request
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
INVALID_STATUS:
value:
code: "7167"
message: "Bad request, status is invalid"
INVALID_INPUT_OAS:
value:
code: "7021" # oas validation
message: "Specify OAS validation error"
"401":
$ref: "#/components/responses/401"
"403":
$ref: "#/components/responses/403"
"404":
$ref: "#/components/responses/404"
"405":
$ref: "#/components/responses/405"
"429":
$ref: "#/components/responses/429"
"500":
$ref: "#/components/responses/500"
"503":
$ref: "#/components/responses/503"
"504":
$ref: "#/components/responses/504"
security:
- OAuth: ["write:payments"]
get:
tags:
- Credit Transfers Approval/Reject
description: Returns the pending approval list of credit transfers
summary: Get credit transfer approval list
operationId: getRealTimePaymentApprovals
parameters:
- $ref: "#/components/parameters/PaymentFromDateQuery"
- $ref: "#/components/parameters/PaymentToDateQuery"
- $ref: "#/components/parameters/FromAmountQuery"
- $ref: "#/components/parameters/ToAmountQuery"
responses:
"200":
description: OK
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/GetApprovalsPaymentResponse"
example:
transactions:
- correlationId: "3a8b3c99cfef00009615b026207b1j9e"
paymentId: "20221128053101121T1B073712193739899"
submittedBy: "RTP Debtor Name"
paymentType: "RTP"
paymentDate: "2023-12-01T00:00:00"
expirationDate: "2023-12-02T00:00:00"
amount: 1.00
status: "needsApproval"
payFromAccountNumber: "*******604836"
payFromRoutingNumber: "111000222"
payToAccountNumber: "2899316377837"
payToRoutingNumber: "111000111"
description: "Real Time Payment 1"
recipient: "Mary Jane"
requiredApprovals: 1
alreadyApproved: 0
- correlationId: "3a8b3c99cfef00009615b026207b1b9e"
paymentId: "20221128053101121T1B073712193739798"
submittedBy: "RTPCONSUMER2"
paymentType: "RTP"
frequency: "single"
paymentDate: "2023-12-01T00:00:00"
expirationDate: "2023-12-02T00:00:00"
amount: 2.00
status: "needsApproval"
payFromAccountNumber: "*******604836"
payFromRoutingNumber: "111000222"
payToAccountNumber: "2899316377838"
payToRoutingNumber: "111000111"
description: "Trans#1022"
recipient: "Recipient FI Name"
requiredApprovals: 2
alreadyApproved: 1
approvedBy:
- approverName: "Approver Name"
approvedDate: "2023-12-01T09:00:39"
"400":
description: Bad Request
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
MISSING_PAYMENTFROMDATE: # not applicable in case of paymentIds
value:
code: "7015"
message: "Bad request, paymentFromDate is missing, null or blank"
INVALID_PAYMENTFROMDATE: # not applicable in case of paymentIds
value:
code: "7016"
message: "Bad request, paymentFromDate is invalid"
MISSING_PAYMENTTODATE: # not applicable in case of paymentIds
value:
code: "7029"
message: "Bad request, paymentToDate is missing, null or blank"
INVALID_PAYMENTTODATE: # not applicable in case of paymentIds
value:
code: "7030"
message: "Bad request, paymentToDate is invalid"
MISSING_FROMAMOUNT: # not applicable in case of paymentIds
value:
code: "7017"
message: "Bad request, fromAmount is missing, null or blank"
INVALID_FROMAMOUNT: # not applicable in case of paymentIds
value:
code: "7018"
message: "Bad request, fromAmount is invalid"
MISSING_TOAMOUNT: # not applicable in case of paymentIds
value:
code: "7019"
message: "Bad request, toAmount is missing, null or blank"
INVALID_TOAMOUNT: # not applicable in case of paymentIds
value:
code: "7020"
message: "Bad request, toAmount is invalid"
GREATER_PAYMENTTODATE: # not applicable in case of paymentIds
value:
code: "7164"
message: "Bad request, paymentToDate should be greater than paymentFromDate"
INVALID_INPUT_OAS:
value:
code: "7021" # oas validation
message: "Specify OAS validation error"
"401":
$ref: "#/components/responses/401"
"403":
description: Forbidden
headers:
x-fapi-interaction-id:
$ref: "#/components/headers/x-fapi-interaction-id"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
examples:
INSUFFICIENT_SCOPE:
value:
# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bbandt-corp/refs/heads/main/openapi/bbandt-corp-commercial-credit-transfers-oas-v2-openapi.yml