Credit Card Transactions¶
Requests authenticate with the Authorization: Bearer {clientID}:{apiKey} header. The examples below read the host and credentials from $TAPI_HOST, $TAPI_CLIENT_ID and $TAPI_API_KEY — see Running the Examples.
Sandbox base URL: https://api-sandboxdash.norcapsecurities.com — the examples read it from $TAPI_HOST.
Endpoints¶
POST /v3/ccFundMovePOST /v3/ccFundMovementPOST /v3/deleteCreditCardPOST /v3/getCCFundMoveHistoryPOST /v3/getCCFundMoveInfoPOST /v3/getLinkedCreditCardPOST /v3/linkCreditCardPOST /v3/requestForVoidCCTransactionPOST /v3/updateCreditCard(deprecated)POST /v3/updateLinkedCreditCard
POST /v3/ccFundMove¶
Billed in production
This method is billed in production. Sandbox calls are not billed. See the Fee Schedule.
This method is used to perform an online credit card transaction. Transactions are batch processed each business day at 6pm ET. The maximum amount per transaction is determined by the credit card transaction limit configured for your client account. This method creates a payment for the exact trade amount. If a payment needs to be created for a specific amount that does not match the trade amount, see ccFundMovement.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
tradeId | integer | Yes | Trade ID that is generated by the API once a trade is created (createTrade). A trade must be created before the 'ccFundmove' method can be performed. |
createdIpAddress | string | Yes | IP Address associated with the ccFundMove method call. |
Example Request¶
curl -X POST "$TAPI_HOST/v3/ccFundMove" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A49501 \
-d tradeId=66564702 \
-d createdIpAddress=10.0.0.1
Response¶
| Field | Type | Description |
|---|---|---|
transactionDetails | string | Array of transaction details of the credit card number |
Example Response¶
POST /v3/ccFundMovement¶
Billed in production
This method is billed in production. Sandbox calls are not billed. See the Fee Schedule.
This method is used to perform an online credit card transaction. Transactions are batch processed each business day at 6pm ET. The maximum amount per transaction is determined by the credit card transaction limit configured for your client account. Unlike ccFundMove, this method includes an amount field which allows for a payment amount differing from the trade amount.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
tradeId | string | Yes | Trade ID that is generated by the API once a trade is created (createTrade). A trade must be created before the 'ccFundmovement' method can be performed. |
amount | string | Yes | Amount |
createdIpAddress | string | Yes | IP Address associated with the ccFundMovement method call. |
Example Request¶
curl -X POST "$TAPI_HOST/v3/ccFundMovement" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A49501 \
-d tradeId=66564702 \
-d amount=1000 \
-d createdIpAddress=10.0.0.1
Response¶
| Field | Type | Description |
|---|---|---|
transactionDetails | string | Array of transaction details of the ccFundMovement |
Example Response¶
POST /v3/deleteCreditCard¶
This method is used to delete a credit card that is saved to an account.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
Example Request¶
curl -X POST "$TAPI_HOST/v3/deleteCreditCard" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A34554
Response¶
| Field | Type | Description |
|---|---|---|
creditcardDetails | string | Success Message |
Example Response¶
POST /v3/getCCFundMoveHistory¶
This method is used to retrieve the information for all credit card transactions that have been created for a specific account.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
Example Request¶
curl -X POST "$TAPI_HOST/v3/getCCFundMoveHistory" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A77952
Response¶
| Field | Type | Description |
|---|---|---|
creditcardDetails | string | Array of cc fund move details for an account that includes all information for the fund moves created for the matched account |
Example Response¶
{
"statusCode": "101",
"statusDesc": "Ok",
"creditcardDetails": [
{
"accountId": "A49501",
"tradeId": "880696248",
"offeringId": "81272",
"totalAmount": "1000.000000",
"vantivTransactionId": "83296928383696653",
"vantivTransactionMessage": "Approved",
"vantivTokenMessage": "Account number was successfully registered",
"RefNum": null,
"errors": null,
"transactionstatus": "Approved",
"fundStatus": "Pending",
"createdDate": "2018-06-16 05:49:10"
},
{
"accountId": "A49501",
"tradeId": "623303227",
"offeringId": "44238",
"totalAmount": "5.000000",
"vantivTransactionId": null,
"vantivTransactionMessage": null,
"vantivTokenMessage": null,
"RefNum": null,
"errors": null,
"transactionstatus": "Pending",
"fundStatus": "Pending",
"createdDate": "2018-07-06 11:35:45"
},
{
"accountId": "A49501",
"tradeId": "385938050",
"offeringId": "44238",
"totalAmount": "1.000000",
"vantivTransactionId": null,
"vantivTransactionMessage": null,
"vantivTokenMessage": null,
"RefNum": null,
"errors": null,
"transactionstatus": "Pending",
"fundStatus": "Pending",
"createdDate": "2018-07-06 11:59:16"
}
]
}
POST /v3/getCCFundMoveInfo¶
This method is used to get all information for a specific 'ccfundmove'. The Account ID and Reference Number must be specified as a request parameter to get all information.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
RefNum | string | Yes | Reference Number that is generated by the API once a credit card transaction is initiated (ccFundMove) |
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
Example Request¶
curl -X POST "$TAPI_HOST/v3/getCCFundMoveInfo" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d RefNum=685427152 \
-d accountId=A12345
Response¶
| Field | Type | Description |
|---|---|---|
creditcardDetails | string | Returns the fund move details as an array |
Example Response¶
{
"statusCode": "101",
"statusDesc": "Ok",
"creditcardDetails": [
{
"accountId": "A3085808",
"tradeId": "1001589823",
"offeringId": "1682053",
"totalAmount": "5.880000",
"vantivTransactionId": "pi_3PvM83EVkJAnh8Jr0ICjWgvb",
"vantivTransactionMessage": "Approved",
"vantivTokenMessage": "{u0022idu0022:u0022pi_3PvM83EVkJAnh8Jr0ICjWgvbu0022,u0022objectu0022:u0022payment_intentu0022,u0022amountu0022:588,u0022amount_capturableu0022:0,u0022amount_detailsu0022:{u0022tipu0022:[]},u0022amount_receivedu0022:588,u0022applicationu0022:null,u0022application_fee_amountu0022:null,u0022automatic_payment_methodsu0022:null,u0022canceled_atu0022:null,u0022cancellation_reasonu0022:null,u0022capture_methodu0022:u0022automaticu0022,u0022chargesu0022:{u0022objectu0022:u0022listu0022,u0022datau0022:[{u0022idu0022:u0022ch_3PvM83EVkJAnh8Jr0soZ0BSnu0022,u0022objectu0022:u0022chargeu0022,u0022amountu0022:588,u0022amount_capturedu0022:588,u0022amount_refundedu0022:0,u0022applicationu0022:null,u0022application_feeu0022:null,u0022application_fee_amountu0022:null,u0022balance_transactionu0022:u0022txn_3PvM83EVkJAnh8Jr0zHlUYeWu0022,u0022billing_detailsu0022:{u0022addressu0022:{u0022cityu0022:null,u0022countryu0022:null,u0022line1u0022:null,u0022line2u0022:null,u0022postal_codeu0022:u002212345u0022,u0022stateu0022:null},u0022emailu0022:null,u0022nameu0022:u0022Chelsea Eltingu0022,u0022phoneu0022:null},u0022calculated_statement_descriptoru0022:u0022NCPS* KIRSTENu0022,u0022capturedu0022:true,u0022createdu0022:1725467543,u0022currencyu0022:u0022usdu0022,u0022customeru0022:u0022cus_Qmvz3ydZTcpu5zu0022,u0022descriptionu0022:null,u0022destinationu0022:null,u0022disputeu0022:null,u0022disputedu0022:false,u0022failure_balance_transactionu0022:null,u0022failure_codeu0022:null,u0022failure_messageu0022:null,u0022fraud_detailsu0022:[],u0022invoiceu0022:null,u0022livemodeu0022:false,u0022metadatau0022:[],u0022on_behalf_ofu0022:null,u0022orderu0022:null,u0022outcomeu0022:{u0022network_statusu0022:u0022approved_by_networku0022,u0022reasonu0022:null,u0022risk_levelu0022:u0022normalu0022,u0022risk_scoreu0022:19,u0022seller_messageu0022:u0022Payment complete.u0022,u0022typeu0022:u0022authorizedu0022},u0022paidu0022:true,u0022payment_intentu0022:u0022pi_3PvM83EVkJAnh8Jr0ICjWgvbu0022,u0022payment_methodu0022:u0022card_1PvM7oEVkJAnh8Jr07K2LVOYu0022,u0022payment_method_detailsu0022:{u0022cardu0022:{u0022amount_authorizedu0022:588,u0022authorization_codeu0022:null,u0022brandu0022:u0022visau0022,u0022checksu0022:{u0022address_line1_checku0022:null,u0022address_postal_code_checku0022:u0022passu0022,u0022cvc_checku0022:u0022passu0022},u0022countryu0022:u0022USu0022,u0022exp_monthu0022:2,u0022exp_yearu0022:2028,u0022extended_authorizationu0022:{u0022statusu0022:u0022disabledu0022},u0022fingerprintu0022:u00226RMcKpMpFjVdyWGju0022,u0022fundingu0022:u0022creditu0022,u0022incremental_authorizationu0022:{u0022statusu0022:u0022unavailableu0022},u0022installmentsu0022:null,u0022last4u0022:u00224242u0022,u0022mandateu0022:null,u0022multicaptureu0022:{u0022statusu0022:u0022unavailableu0022},u0022networku0022:u0022visau0022,u0022network_tokenu0022:{u0022usedu0022:false},u0022overcaptureu0022:{u0022maximum_amount_capturableu0022:588,u0022statusu0022:u0022unavailableu0022},u0022three_d_secureu0022:null,u0022walletu0022:null},u0022typeu0022:u0022cardu0022},u0022receipt_emailu0022:null,u0022receipt_numberu0022:null,u0022receipt_urlu0022:u0022https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xS3Y1SmNFVmtKQW5oOEpyKJeX4rYGMgYWi7qUY_M6LBakdagGRDJw5eip_6S5OgOfDnYwD-FyeFibLj41APoCofxEi8xtvlmd4K5du0022,u0022refundedu0022:false,u0022refundsu0022:{u0022objectu0022:u0022listu0022,u0022datau0022:[],u0022has_moreu0022:false,u0022total_countu0022:0,u0022urlu0022:u0022/v1/charges/ch_3PvM83EVkJAnh8Jr0soZ0BSn/refundsu0022},u0022reviewu0022:null,u0022shippingu0022:null,u0022sourceu0022:{u0022idu0022:u0022card_1PvM7oEVkJAnh8Jr07K2LVOYu0022,u0022objectu0022:u0022cardu0022,u0022address_cityu0022:null,u0022address_countryu0022:null,u0022address_line1u0022:null,u0022address_line1_checku0022:null,u0022address_line2u0022:null,u0022address_stateu0022:null,u0022address_zipu0022:u002212345u0022,u0022address_zip_checku0022:u0022passu0022,u0022brandu0022:u0022Visau0022,u0022countryu0022:u0022USu0022,u0022customeru0022:u0022cus_Qmvz3ydZTcpu5zu0022,u0022cvc_checku0022:u0022passu0022,u0022dynamic_last4u0022:null,u0022exp_monthu0022:2,u0022exp_yearu0022:2028,u0022fingerprintu0022:u00226RMcKpMpFjVdyWGju0022,u0022fundingu0022:u0022creditu0022,u0022last4u0022:u00224242u0022,u0022metadatau0022:[],u0022nameu0022:u0022Chelsea Eltingu0022,u0022tokenization_methodu0022:null,u0022walletu0022:null},u0022source_transferu0022:null,u0022statement_descriptoru0022:null,u0022statement_descriptor_suffixu0022:u0022kirstenu0022,u0022statusu0022:u0022succeededu0022,u0022transfer_datau0022:null,u0022transfer_groupu0022:null}],u0022has_moreu0022:false,u0022total_countu0022:1,u0022urlu0022:u0022/v1/charges?payment_intent=pi_3PvM83EVkJAnh8Jr0ICjWgvbu0022},u0022client_secretu0022:u0022pi_3PvM83EVkJAnh8Jr0ICjWgvb_secret_chU9tcbz6YBrn0oNxbo1aSi1xu0022,u0022confirmation_methodu0022:u0022automaticu0022,u0022createdu0022:1725467543,u0022currencyu0022:u0022usdu0022,u0022customeru0022:u0022cus_Qmvz3ydZTcpu5zu0022,u0022descriptionu0022:null,u0022invoiceu0022:null,u0022last_payment_erroru0022:null,u0022latest_chargeu0022:u0022ch_3PvM83EVkJAnh8Jr0soZ0BSnu0022,u0022livemodeu0022:false,u0022metadatau0022:[],u0022next_actionu0022:null,u0022on_behalf_ofu0022:null,u0022payment_methodu0022:null,u0022payment_method_configuration_detailsu0022:null,u0022payment_method_optionsu0022:{u0022cardu0022:{u0022installmentsu0022:null,u0022mandate_optionsu0022:null,u0022networku0022:null,u0022request_three_d_secureu0022:u0022automaticu0022}},u0022payment_method_typesu0022:[u0022cardu0022],u0022processingu0022:null,u0022receipt_emailu0022:null,u0022reviewu0022:null,u0022setup_future_usageu0022:null,u0022shippingu0022:null,u0022sourceu0022:u0022card_1PvM7oEVkJAnh8Jr07K2LVOYu0022,u0022statement_descriptoru0022:null,u0022statement_descriptor_suffixu0022:u0022kirstenu0022,u0022statusu0022:u0022succeededu0022,u0022transfer_datau0022:null,u0022transfer_groupu0022:null}",
"RefNum": "108627539",
"errors": "error code",
"transactionstatus": "Approved",
"fundStatus": "Returned",
"createdDate": "2024-11-16 00:24:47"
}
]
}
POST /v3/getLinkedCreditCard¶
Use this API to get the credit card information through TransactAPI's integration with Stripe.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API |
Example Request¶
curl -X POST "$TAPI_HOST/v3/getLinkedCreditCard" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A49501
Response¶
| Field | Type | Description |
|---|---|---|
creditcardDetails | string | Linked Credit Card Information |
Example Response¶
POST /v3/linkCreditCard¶
Use this API to add credit card information through TransactAPI's integration with Stripe Payment Processing.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API |
Example Request¶
curl -X POST "$TAPI_HOST/v3/linkCreditCard" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A49501
Response¶
| Field | Type | Description |
|---|---|---|
accountDetails | string | Response URL |
Example Response¶
POST /v3/requestForVoidCCTransaction¶
This method is used to update the pending Credit Card transaction to void. This can only be used on a transaction that is in a "Pending" status. "Pending" transactions are submitted for processing at 6:00 PM Eastern Time every business day.
A successful void sends the requestForVoidCCTransaction webhook, not updateCCFundMoveStatus. Subscribe to both methods to see every status change on a transaction — see Webhooks.
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
RefNum | string | Yes | Reference Number that is generated by the API once a credit card transaction is initiated (ccFundMove ) |
Example Request¶
curl -X POST "$TAPI_HOST/v3/requestForVoidCCTransaction" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d RefNum=313889266
Response¶
| Field | Type | Description |
|---|---|---|
investorExternalAccountDetails | string | Status Updated Successfully. Note: although this is a credit card endpoint, the response key is named investorExternalAccountDetails. |
Example Response¶
POST /v3/updateCreditCard¶
Deprecated. This endpoint no longer updates credit card information. All requests return status code 999. Use POST /v3/updateLinkedCreditCard instead.
Example Response¶
POST /v3/updateLinkedCreditCard¶
This method returns a URL for the hosted form where an investor updates the credit card linked to an account (linkCreditCard).
Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
Example Request¶
curl -X POST "$TAPI_HOST/v3/updateLinkedCreditCard" \
-H "Authorization: Bearer $TAPI_CLIENT_ID:$TAPI_API_KEY" \
-d accountId=A49501
Response¶
| Field | Type | Description |
|---|---|---|
accountDetails | string | Response URL (https://api-sandboxdash.norcapsecurities.com/admin_v3/LinkCreditCard?params=[param_value] ) |