Pull Funds from Card

Debiting funds from the card

Before you create a transaction, be sure to Create a User, OAuth the User, and Link a Card..

API ENDPOINT

https://uat-api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans

PATH PARAMETER

user_id :
required
string

ID of sender (user)

node_id :
required
string

ID of sending node

BODY PARAMETER

to.type :
required
string

Receiving node type

to.id :
required
string

Receiving node ID

amount.amount :
required
double

Amount user wishes to send

amount.currency :
required
string

Currency of the transaction amount

extra.ip :
required
string

IP address of the user device while creating transaction

extra.supp_id :
string

ID supplied to the transaction. Allows clients to track transactions based on specific events.

extra.group_id :
string

Group ID supplied to the transaction. Allows clients to track transactions based on specific events.

extra.note :
string

Memo tagged with the transaction

extra.process_on :
integer 0

When the transaction should be processed. The value is the delta value. Which means when 1 is supplied it means that the transaction will be processed tomorrow.

extra.other.attachments :
array of strings

Array of padded base64 of attachments

fees[fee ] :
double

Fee associated with the transaction

fees[note ] :
string

Reason for the fee

fees[to].id :
string

Node ID where the fee would be credited when the transaction settled. Fee node has to be DEPOSIT-US type always

EXAMPLE REQUEST

To add an addendum to the transaction on the user's bank statement, use the 'note' field. Notes are limited to 80 characters.

POST /v3.1/users/5bc305abd83c197a45848f88/nodes/5bd2b691dc00d56658258222/trans HTTP/1.1
Host: uat-api.synapsefi.com
X-SP-USER-IP: 255.127.79.76
X-SP-USER: oauth_EOR8dloy035b9ZsDwXfUnCgBTKqmixAtFv2aMYz0|e83cf6ddcf778e37bfe3d48fc78a6502062fc
Content-Type: application/json

{
  "to": {
    "type": "DEPOSIT-US",
    "id": "5bd2b8cbf9bd8600c2a0ee9a"
  },
  "amount": {
    "amount": 100.1,
    "currency": "USD"
  },
  "extra": {
    "ip": "192.168.0.1",
    "note": "Test transaction"
  }
}
from_interchange_node = 5bd2b691dc00d56658258222
body = {
  "to": {
    "type": "DEPOSIT-US",
    "id": "5bd2b8cbf9bd8600c2a0ee9a"
  },
  "amount": {
    "amount": 100.1,
    "currency": "USD"
  },
  "extra": {
    "ip": "192.168.0.1",
    "note": "Test transaction"
  }
}

user.create_trans(from_interchange_node, body)
const fromInterchangeNodeID = “5bd2b691dc00d56658258222”;
const body = {
  "to": {
    "type": "DEPOSIT-US",
    "id": "5bd2b8cbf9bd8600c2a0ee9a"
  },
  "amount": {
    "amount": 100.1,
    "currency": "USD"
  },
  "extra": {
    "ip": "192.168.0.1",
    "note": "Test transaction"
  }
};

user.createTransaction(fromInterchangeNodeID, body);
from_node = “5bd2b691dc00d56658258222”
body = {
  "to": {
    "type": "DEPOSIT-US",
    "id": "5bd2b8cbf9bd8600c2a0ee9a"
  },
  "amount": {
    "amount": 100.1,
    "currency": "USD"
  },
  "extra": {
    "ip": "192.168.0.1",
    "note": "Test transaction"
  }
}

user.create_transaction(node_id: from_node, payload: body)
$to = (object)[
   "type" => "DEPOSIT-US",
   "id" => '5c6468aa7b08ab8e4fe658d9'
];
$amount = (object)[
   "amount" => 22.1,
   "currency" => "USD"
];
$extra = (object)[
   "ip" => "IP_address_of_user_device_while_creating_transaction"
];
$body = (object)[
   "to" => $to,
   "amount" => $amount,
   "extra" => $extra
];
$nodeid = '5c3d416f7b08ab0066ee8cae';
$trans = $user->create_trans($nodeid, $body);
nodeID := “5bd2b691dc00d56658258222”
body := `{
  "to": {
    "type": "DEPOSIT-US",
    "id": "5bd2b8cbf9bd8600c2a0ee9a"
  },
  "amount": {
    "amount": 100.1,
    "currency": "USD"
  },
  "extra": {
    "ip": "192.168.0.1",
    "note": "Test transaction"
  }
}`

data, err := user.CreateTransaction(nodeID, body)

EXAMPLE RESPONSE

{
    "_id": "5bd2b986f61d8700e3eafa56",
    "_links": {
        "self": {
            "href": "https://uat-api.synapsefi.com/v3.1/users/5bc305abd83c197a45848f88/nodes/5bd2b691dc00d56658258222/trans/5bd2b986f61d8700e3eafa56"
        }
    },
    "_v": 2,
    "amount": {
        "amount": 100.1,
        "currency": "USD"
    },
    "client": {
        "id": "589acd9ecb3cd400fa75ac06",
        "name": "* SynapseFI"
    },
    "extra": {
        "asset": null,
        "created_on": 1540536709757,
        "encrypted_note": "",
        "group_id": null,
        "ip": "192.168.0.1",
        "latlon": "0,0",
        "note": "Test transaction",
        "process_on": 1540536709757,
        "same_day": false,
        "supp_id": ""
    },
    "fees": [
        {
            "fee": 0,
            "note": "Facilitator Fee",
            "to": {
                "id": "None"
            }
        }
    ],
    "from": {
        "id": "5bd2b691dc00d56658258222",
        "nickname": "My BofA Card",
        "type": "INTERCHANGE-US",
        "user": {
            "_id": "5bc305abd83c197a45848f88",
            "legal_names": [
                "Test User"
            ]
        }
    },
    "recent_status": {
        "date": 1540536709757,
        "note": "Transaction Created.",
        "status": "CREATED",
        "status_id": "1"
    },
    "timeline": [
        {
            "date": 1540536709757,
            "note": "Transaction Created.",
            "status": "CREATED",
            "status_id": "1"
        }
    ],
    "to": {
        "id": "5bd2b8cbf9bd8600c2a0ee9a",
        "nickname": "My Deposit Account",
        "type": "DEPOSIT-US",
        "user": {
            "_id": "5bc305abd83c197a45848f88",
            "legal_names": [
                "Test User"
            ]
        }
    }
}

Transaction Status

The following are different types of transaction statuses for a card processing transaction.

QUEUED-BY-SYNAPSE

-1

Transaction queued by Synapse

QUEUED-BY-RECEIVER

0

Transaction queued by Client

CREATED

1

Transaction Created

PROCESSING-DEBIT

2

Transaction Processing Debit

PROCESSING-CREDIT

3

Transaction Processing Credit

SETTLED

4

Transaction Settled

CANCELED

5

Transaction Canceled

RETURNED

6

Transaction Returned

Example Timeline

Here is an example timeline for a card transaction. Not all transactions will follow this exact timeline, so please do not build your logic based on these times. Instead, monitor transaction status and account balance.

Description
Time
Transaction Status
status_id

User creates a transaction from their card

12PM PT

CREATED

1

The transaction amount is sent from the user's card

12PM PT

PROCESSING-DEBIT

2

The transaction amount is processing.

12PM PT

PROCESSING-CREDIT

3

The transaction settles

12PM PT

SETTLED

4

Canceled and Queued Transactions

Visit our Transaction Codes resource for the full list of reasons a transaction can be queued or canceled.

To cancel a transaction yourself, DELETE transaction. Only transactions with a CREATED or QUEUED status can be canceled. Once a transaction is settled you are unable to cancel it.

RETURNED TRANSACTIONS

Below are the possible return codes you can get upon creating a transaction.

Code
Description

IR00

Success

IR01

More information is needed from the card issuer

IR02

Refer to card issuer's unique transaction rules

IR03

Not recognized as a valid merchant

IR04

Card not activated for transaction use

IR05

Suspicious activity; do not honor this card's transactions

IR06

Error during transaction process

IR07

Card has unique conditions; currently not activated for transaction use

IR08

Needs more identification to process the transaction

IR09

Transaction requested; currently in progress

IR10

Transaction amount partially approved

IR11

Approved but not processed

IR12

Transaction invalid

IR13

Transaction amount invalid

IR14

Card number does not exist

IR15

Card issuer does not exist

IR16

Approved

IR17

Customer cancelled/reversed payment

IR18

The customer reversed the transaction: chargeback

IR19

Please retry the transaction

IR20

Response from the card processor was invalid

IR21

Transaction formatted incorrectly (Potential reversal detected)

IR22

Suspected malfunction, reversal

IR23

Transaction fee was unacceptable

IR24

File update not supported by receiver

IR25

Unable to locate record on file

IR26

Duplicate file update record, no action taken

IR27

File update field edit error

IR28

Field update record locked out

IR29

File update not successful, contact the acquirer

IR30

Transaction formatted incorrectly(Potential reversal detected)

IR31

Transaction must be initiated in person, bank not sup[ported by switch"

IR32

Completed partially, reversal

IR33

Expired card, pick-up

IR34

Suspected fraud, pick-up

IR35

Card acceptor must contact acquirer, pick-up

IR36

Restricted card, pick-up

IR37

Merchant must contact the card security

IR38

PIN tried too many times; request a new card or try again later

IR39

No credit account tied to credit card

IR40

Function requested can not be carried out

IR41

Lost card: request a new card

IR42

Account tied to card is not universal

IR43

Stolen card: request a new card

IR44

Investment account not on required

IR45 - IR50

Reserved for ISO use

IR51

Card does not have sufficient funds for the transaction(NSF Card)

IR52

Checking account not associated with the card

IR53

Savings account not associated with the card

IR54

Card Expired: request a new card

IR55

Pin tried is incorrect

IR56

No record of the validity of the card

IR57

Transaction not permitted to cardholder

IR58

Transaction denied by acceptor(Potential chargeback detected)

IR59

Fraud suspected

IR60

Merchant must contact the card acquirer

IR61

Transaction exceeds withdrawal limit

IR62

Card restricted

IR63

Card information compromised(Potential chargeback detected)

IR64

Original amount incorrect, reversal

IR65

Current transactions exceeds withdrawal frequency limit

IR66

Merchant must contact the card acquirer

IR67

Hard capture

IR68

Response received too late, reversal

IR69 - IR74

Reserved for ISO

IR75

Allowable number of PIN tries exceeded

IR76

Key synchronization error

IR77

Reserved for private use

IR78

Customer not eligible for POS

IR79

Invalid digital signature

IR80

Stale date transaction

IR81

Issuer requested standin

IR82

Count exceeds limit

IR83

Reserved for private use

IR84

Time limit for pre-authorization reached

IR85

Issuer has no reason to decline the transaction (Account Verification)

IR86

Cannot verify PIN

IR87

Check already posted

IR88

Card information not on file

IR89

Security code verification failed

IR90

Card cutoff is in progress

IR91

Card change in progress or not taking effect

IR92

Intermediate network/financial institution is unknown

IR93

Transaction is in violation of the law and will not be completed

IR94

Duplicate transaction

IR95

Error with transaction reconciliation

IR96

System error during transaction

IR97

Reserved for national use

IR98

Reserved for national use

IR99

Card network error during transaction

IR100 - IR126

Reserved for ISO

IR127

SEC is invalid

IR128

Address and verification check data is required for this transaction

IR129

Security code date is required for the transaction

IR130

Transaction not permitted to cardholder

IR131

Transaction not permitted to cardholder

IR132

Country of the card issuer is blocked by this merchant

IR133

Incorrect MAC was sent

IR134

Standard Entry Class requirements were not met

IR135

System error during transaction

IR136

Account length error

IR137

Card information error

IR138

Security code format error

IR139

Internal authorization error

IR140

Card product code is blocked

IR141

Attempt to process a BRIC transaction on a prior PIN based transaction

IR142

CyberSource Time Out Connection to CyberSource timed out

IR143

CARD_ENT_METH supplied is not valid or required additional data not provided as defined

IR144

CARD_ID is not valid

IR145

Required PIN block not present

IR146

Card Bin is not valid for pinless routing

IR147

Signature store did not complete

IR148

Debit PIN transactions must be swiped

IR149

DB proxy response was not processed within the time out period

IR150

Transaction declined by merchant to security code mismatch

IR151

Transaction not allowed as per a validation rule

IR152

Processing gateway full: poll again later

IR153

Authorization life cycle unacceptable

IR154

Authorization life cycled expired

IR155

Card authentication failed

IR156

Fraudulent transaction prior to embossed valid date

IR157

Credit not received

IR158

Allowable PAN entries warning -- approved

IR159

Transaction approved with card overdraft protection

IR160

Security code is invalid

IR161

Internal transaction processing error

IR162

Check not acceptable for cash

IR163

Check not acceptable

IR164

Check deposit limit exceeded

IR165

Cash back limit exceeded

IR166

Check amount does not match courtesy amount

IR167

PIN not selected for card

IR168

PIN already selected for card

IR169

Unmatched voucher information

IR170

Card number entered too many times

IR171

Expiration date not valid for card

IR172

Card status is set to inactive

IR173

Expiration date mismatch: request a new card

IR174

Item suspected for stop pay

IR175

Account associated with card was closed

IR176

Account associated with card is ineligible for the transaction

IR177

Duplicate transaction

IR178

No account associated with card on file

IR179

Unable to locate card

IR180

Transaction denied

IR181

Transaction settled via ACH

IR182

Cross-reference card not found

IR183

Category limit exceeded

IR184

Transaction limit exceeded

IR185

Daily limit exceeded

IR186

Monthly limit exceeded

IR187

Invalid secret code

IR188

Pin key sync error

IR189

Bad security code

IR190

Transaction ordered to be stopped

IR191

Transaction authorization revoked

IR192

Stop reoccurring payments

IR193

Card lost: do not honor

IR194

Account associated with the card is closed

IR195

Account associated with the card is inactive

IR196

Card has unique conditions: do not honor

IR197

Purchase only approval for purchase with cash back transaction

IR198

Card does not have sufficient funds for the transaction fees (NSF Card)

IR199

Card chip failed during transaction

IR200

PIN compromised

Credit Cards vs Debit Cards

In some cases, debit card processing may be preferable over credit card processing.

Funding Deposit Accounts with a credit card may be considered a cash advance by some credit card companies.

Purchasing Crypro may not be supported by some credit cards.

Subscribe to Webhooks

We recommend that you subscribe to webhooks to stay updated on the status of transactions.

Transaction Fees

By default, we deduct transaction fees from the transaction. To send the recipient 100% of the funds, designate the account you want to debit fees from.

Or take an additional fee for yourself and designate the DEPOSIT-US node you want to send fees to.

Idempotent Requests

POST calls support idempotency for safely retrying requests without accidentally performing the same operation twice. For example, if a request to create a transaction fails due to a network connection error, you can retry the request with the same idempotency key to guarantee that only a single charge is created.

To perform an idempotent request, attach a unique key to any POST request made to the API via the X-SP-IDEMPOTENCY-KEY: <key> header.

Idempotency keys expire after 24 hours.

Pull Funds from Card


Debiting funds from the card

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.