Pull From Card

Step 1: Create a Sender Identity

warning

This API is available for Disbursement use cases only. If you have additional questions, contact Support.

The first step to pull (or debit) funds is creating an Identity resource. Each Identity represents either a person or a business. We use this resource to associate cards and payouts. This structure makes it simple to manage and reconcile payment instruments and payout history. Accounting of funds is done using the Identity so it's recommended to have an Identity per recipient of funds. Additionally, the Identity resource is optionally used to collect KYC information.

Copy
Copied
curl https://finix.sandbox-payments-api.com/identities \
    -H "Content-Type: application/vnd.json+api" \
    -u USte61SqeNkAZnpfavK3fQNG:bd98703c-d72c-458e-8873-4295f5bac713 \
    -d '
	{
	    "tags": {
	        "key": "value"
	    },
	    "entity": {
	        "phone": "7145677612",
	        "first_name": "Amy",
	        "last_name": "Curry",
	        "email": "Amy@gmail.com",
	        "personal_address": {
	            "city": "San Mateo",
	            "country": "USA",
	            "region": "CA",
	            "line2": "Apartment 7",
	            "line1": "741 Douglass St",
	            "postal_code": "94114"
	        }
	    }
	}'

Example Response:

Copy
Copied
{
  "id" : "ID7xXmm4Qwq7FRreERno2KRC",
  "application" : "APpJbVTLdEuwGfcxBJvb1qNH",
  "entity" : {
    "title" : null,
    "first_name" : "Amy",
    "last_name" : "Curry",
    "email" : "Amy@gmail.com",
    "business_name" : null,
    "business_type" : null,
    "doing_business_as" : null,
    "phone" : "7145677612",
    "business_phone" : null,
    "personal_address" : {
      "line1" : "741 Douglass St",
      "line2" : "Apartment 7",
      "city" : "San Mateo",
      "region" : "CA",
      "postal_code" : "94114",
      "country" : "USA"
    },
    "business_address" : null,
    "mcc" : null,
    "dob" : null,
    "max_transaction_amount" : 0,
    "amex_mid" : null,
    "discover_mid" : null,
    "url" : null,
    "annual_card_volume" : 0,
    "has_accepted_credit_cards_previously" : false,
    "incorporation_date" : null,
    "principal_percentage_ownership" : null,
    "short_business_name" : null,
    "ownership_type" : null,
    "tax_authority" : null,
    "tax_id_provided" : false,
    "business_tax_id_provided" : false,
    "default_statement_descriptor" : null
  },
  "tags" : {
    "key" : "value"
  },
  "created_at" : "2022-01-27T07:36:41.77Z",
  "updated_at" : "2022-01-27T07:36:41.77Z",
  "_links" : {
    "self" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC"
    },
    "verifications" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/verifications"
    },
    "merchants" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/merchants"
    },
    "settlements" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/settlements"
    },
    "authorizations" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/authorizations"
    },
    "transfers" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/transfers"
    },
    "payment_instruments" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/payment_instruments"
    },
    "associated_identities" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/associated_identities"
    },
    "disputes" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC/disputes"
    },
    "application" : {
      "href" : "https://finix.sandbox-payments-api.com/applications/APpJbVTLdEuwGfcxBJvb1qNH"
    }
  }
}

HTTP Request

POST https://finix.sandbox-payments-api.com/identities

Request Arguments

Field Type Description
first_name string, optional First name
last_name string, optional Last name
email string, optional Email
phone string, optional Phone number
tags object, optional Key value pair for annotating custom metadata (e.g. order numbers)
personal_address object, optional Customers shipping address or billing address (Full description of child attributes below)

Address-object Request Arguments

Field Type Description
line1 string, optional First line of the address (max 35 characters)
line2 string, optional Second line of the address (max 35 characters)
city string, optional City (max 20 characters)
region string, optional 2-letter State code
postal_code string, optional Zip or Postal code (max 7 characters)
country string, optional 3-Letter Country code

Step 2: Add a Payment Instrument for the Sender

warning

Please note that creating cards directly via the API should only be done for testing purposes. You must use the Tokenization hosted fields or javascript client to remain out of PCI scope.

Now that we've created an Identity for our sender, we'll need to tokenize a payment card where funds will be pulled from.

In the API, payment cards are represented by the Payment Instrument resource.

To classify the Payment Instrument as a payment card you'll need to pass PAYMENT_CARD in the type field of your request, and you'll also want to pass the ID of the Identity that you created in the last step via the identity field to properly associate it with your sender.

attention

Including an address when tokenizing a card can lower interchange on credit card transactions.

Copy
Copied
curl https://finix.sandbox-payments-api.com/payment_instruments \
    -H "Content-Type: application/vnd.json+api" \
    -u USte61SqeNkAZnpfavK3fQNG:bd98703c-d72c-458e-8873-4295f5bac713 \
    -d '
	{
	    "name": "Alex Serna",
	    "expiration_year": 2029,
	    "tags": {
	        "card_name": "Business Card"
	    },
	    "number": "4895142232120006",
	    "expiration_month": 12,
	    "address": {
	        "city": "San Francisco",
	        "region": "CA",
	        "postal_code": "94404",
	        "line1": "900 Metro Center Blv",
	        "country": "USA"
	    },
	    "security_code": "022",
	    "type": "PAYMENT_CARD",
	    "identity": "ID7xXmm4Qwq7FRreERno2KRC"
	}'

Example Response:

Copy
Copied
{
  "id" : "PIaHGpBQYDc5fTpNxHgqoKMY",
  "application" : "APpJbVTLdEuwGfcxBJvb1qNH",
  "fingerprint" : "FPRogKWsRQks2HGaau5eGR9AF",
  "tags" : {
    "card_name" : "Business Card"
  },
  "expiration_month" : 12,
  "expiration_year" : 2029,
  "bin" : "489514",
  "last_four" : "0006",
  "brand" : "VISA",
  "card_type" : "UNKNOWN",
  "name" : "Alex Serna",
  "address" : {
    "line1" : "900 Metro Center Blv",
    "line2" : null,
    "city" : "San Francisco",
    "region" : "CA",
    "postal_code" : "94404",
    "country" : "USA"
  },
  "address_verification" : "UNKNOWN",
  "security_code_verification" : "UNKNOWN",
  "created_at" : "2022-01-27T07:36:44.60Z",
  "updated_at" : "2022-01-27T07:36:44.60Z",
  "instrument_type" : "PAYMENT_CARD",
  "type" : "PAYMENT_CARD",
  "currency" : "USD",
  "identity" : "ID7xXmm4Qwq7FRreERno2KRC",
  "_links" : {
    "self" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY"
    },
    "authorizations" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY/authorizations"
    },
    "transfers" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY/transfers"
    },
    "verifications" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY/verifications"
    },
    "application" : {
      "href" : "https://finix.sandbox-payments-api.com/applications/APpJbVTLdEuwGfcxBJvb1qNH"
    },
    "identity" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7xXmm4Qwq7FRreERno2KRC"
    },
    "updates" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY/updates"
    }
  }
}

HTTP Request

POST https://finix.sandbox-payments-api.com/payment_instruments

Request Arguments

Field Type Description
identity string, required ID of the Identity that the card should be associated
type string, required Type of Payment Instrument (for cards input PAYMENT_CARD)
number string, required Primary card account number
security_code string, required The 3-4 digit security code for the card (i.e. CVV code)
expiration_month integer, required Expiration month (e.g. 12 for December)
expiration_year integer, required 4-digit expiration year
name string, optional Full name of the registered card holder
currency string, required 3-letter ISO code designating the currency of the Payment Instruments (e.g. USD, CAD)
address object, required Billing address (Full description of child attributes below)
Note: Including a postal or zip code when tokenizing a card can lower the interchange on credit card transactions

Address-object Request Arguments

Field Type Description
line1 string, optional First line of the address
line2 string, optional Second line of the address
city string, optional City
region string, optional 2-letter State code
postal_code string, required Zip or Postal code
country string, optional 3-Letter Country code

Step 3: Verify Address Verification System (AVS) and CVV

Now that we've associated a payment instrument to a sender, we have the ability to verify whether or not the card has passed AVS and CVV checks. How? By making a request to the Verifications endpoint. The returned Verification resource returns a set of general attributes and details about the card in question (e.g. card type, issuer information). Below you'll see a number of fields and the potential responses.

Copy
Copied
curl https://finix.sandbox-payments-api.com/payment_instruments/PIRp4Cu3fG7DFQPdzhGcePL/verifications \
    -H "Content-Type: application/vnd.json+api" \
    -u USte61SqeNkAZnpfavK3fQNG:bd98703c-d72c-458e-8873-4295f5bac713 \
    -d '
	{
	    "processor": "VISA_V1"
	}'

Example Response:

Copy
Copied
{
  "id" : "VI8KFmppVwQMgCHMJ5pqrECT",
  "application" : "APpJbVTLdEuwGfcxBJvb1qNH",
  "tags" : { },
  "messages" : [ ],
  "raw" : {
    "validation_details" : {
      "systems_trace_audit_number" : "202707000063",
      "error_result" : null,
      "transaction_identifier" : "133121226160779",
      "approval_code" : null,
      "action_code" : "25",
      "response_code" : "5",
      "address_verification_results" : "I",
      "cvv2_result_code" : "P"
    },
    "inquiry_details" : {
      "systems_trace_audit_number" : "202707000063",
      "error_result" : null,
      "visa_network_info" : [ {
        "card_type_code" : "D",
        "billing_currency_code" : 840,
        "billing_currency_minor_digits" : 2,
        "issuer_name" : "Visa Test Bank",
        "card_issuer_country_code" : 840,
        "fast_funds_indicator" : "D",
        "push_funds_block_indicator" : "C",
        "online_gambing_block_indicator" : "N"
      } ],
      "ppgs_network_info" : [ ]
    },
    "general_inquiry_details" : {
      "systems_trace_audit_number" : "202707000063",
      "error_result" : null,
      "card_product_id" : "B",
      "card_product_name" : "Visa Traditional Rewards",
      "card_product_subtype_code" : "",
      "card_product_subtype_description" : "",
      "card_type_code" : "C",
      "card_subtype_code" : "",
      "card_platform_code" : "CN",
      "issuer_name" : "BANCO AGROMERCANTIL DE GUATEMALA S.A.",
      "bin" : "481507",
      "country_code" : "320",
      "status" : {
        "status_code" : "CDI000",
        "status_description" : "Success"
      }
    }
  },
  "processor" : "VISA_V1",
  "state" : "SUCCEEDED",
  "created_at" : "2022-01-27T07:37:33.39Z",
  "updated_at" : "2022-01-27T07:37:35.26Z",
  "trace_id" : "202707000063",
  "payment_instrument" : "PI77BEnaiYZDya1U6T38n72F",
  "merchant" : null,
  "identity" : null,
  "_links" : {
    "self" : {
      "href" : "https://finix.sandbox-payments-api.com/verifications/VI8KFmppVwQMgCHMJ5pqrECT"
    },
    "application" : {
      "href" : "https://finix.sandbox-payments-api.com/applications/APpJbVTLdEuwGfcxBJvb1qNH"
    },
    "payment_instrument" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PI77BEnaiYZDya1U6T38n72F"
    }
  }
}

HTTP Request

POST https://finix.sandbox-payments-api.com/payment_instruments/:PAYMENT_INSTRUMENT_ID/verifications

URL Parameters

Parameter Description
:PAYMENT_INSTRUMENT_ID ID of the Payment Instrument

Request Arguments

Field Type Description
processor string, required The name of the processor, which needs to be: VISA_V1
country string, optional 3-Letter Country code. This attribute is currently only applicable for our Latin America partners.

Address Verification Results (address_verification_results)

Letter Description
D, F, M, Y Address verified
A, B, C, G, I, N, P, R, S, U, W Address not verified
Z Postal/ZIP match, street addresses do not match or street address not included in request

Card Verification 2 Results (cvv2_result_code)

Letter Description
M CVV and expiration verified
N, P, S Either CVV or expiration date is incorrect
U Issuer does not participate in CVV2 service

Card Type (card_type_code)

This one-character code indicates whether the account is credit, debit, prepaid, deferred debit, or charge.

Letter Description
C Credit
D Debit
H Charge Card
P Prepaid
R Deferred Debit

Fasts Funds Indicator (fast_funds_indicator)

Indicates whether or not the card is Fast Funds eligible (i.e. if the funds will settle in 30 mins or less). If not eligible, typically funds will settle within 2 business days.

Letter Description
B Fast Funds eligible for all transactions
D Fast Funds eligible for only domestic transactions
N Not eligible for Fast Funds

Push Funds Indicator (push_funds_block_indicator)

This code indicates if the associated card can receive push-to-card disbursements.

Letter Description
A, B, C Accepts push-to-card payments
N Does not accept push-to-card payments

Online Gambling Block Indicator (online_gambing_block_indicator)

Indicates if the card can receive push-payments for online gambling payouts.

Letter Description
Y Blocked for online gambling payouts
N Not blocked for online gambling payouts

Card Product ID (card_product_id)

A combination of card brand, platform, class and scheme.

Letter Description
A Visa Traditional
AX American Express
B Visa Traditional Rewards
C Visa Signature
D Visa Signature Preferred
DI Discover
DN Diners
E Proprietary ATM
F Visa Classic
G Visa Business
G1 Visa Signature Business
G2 Visa Business Check Card
G3 Visa Business Enhanced
G4 Visa Infinite Business
G5 Visa Business Rewards
I Visa Infinite
I1 Visa Infinite Privilege
I2 Visa UHNW
J3 Visa Healthcare
JC JCB
K Visa Corporate T&E
K1 Visa Government Corporate T&E
L Visa Electron
M MasterCard
N Visa Platinum
N1 Visa Rewards
N2 Visa Select
P Visa Gold
Q Private Label
Q1 Private Label Prepaid
Q2 Private Label Basic
Q3 Private Label Standard
Q4 Private Label Enhanced
Q5 Private Label Specialized
Q6 Private Label Premium
R Proprietary
S Visa Purchasing
S1 Visa Purchasing with Fleet
S2 Visa Government Purchasing
S3 Visa Government Purchasing with Fleet
S4 Visa Commercial Agriculture
S5 Visa Commercial Transport
S6 Visa Commercial Marketplace
U Visa Travel Money
V Visa V PAY

Product Sub-Type (card_product_subtype)

Description of product subtype.

Letter Description
AC Agriculture Maintenance Account
AE Agriculture Debit Account/Electron
AG Agriculture
AI Agriculture Investment Loan
CG Brazil Cargo
CS Construction
DS Distribution
HC Healthcare
LP Visa Large Purchase Advantage
MA Visa Mobile Agent
MB Interoperable Mobile Branchless Banking
MG Visa Mobile General
VA Visa Vale - Supermarket
VF Visa Vale - Fuel
VR Visa Vale - Restaurant

Card Sub-Type (card_subtype_code)

The code for account funding source subtype, such as reloadable and non-reloadable.

Letter Description
N Non-Reloadable
R Reloadable

Step 4: Provision a Sender Account

Now that we've associated a Payment Instrument with the sender's Identity we're ready to provision a Sender account. This is the last step before you can begin pulling from an Identity. Luckily you've already done most of the heavy lifting. Just make one final POST request, and you'll be returned a Merchant resource.

Copy
Copied
curl https://finix.sandbox-payments-api.com/identities/IDqeE5eaMBksiphXMfv3gJZw/merchants \
    -H "Content-Type: application/vnd.json+api" \
    -u USte61SqeNkAZnpfavK3fQNG:bd98703c-d72c-458e-8873-4295f5bac713 \
    -d '
	{
	    "processor": "VISA_V1"
	}'

Example Response:

Copy
Copied
{
  "id" : "MU5zYchdMxxv5QCRS6bVuF8h",
  "application" : "APpJbVTLdEuwGfcxBJvb1qNH",
  "identity" : "IDqeE5eaMBksiphXMfv3gJZw",
  "verification" : "VIhozunYhMu5nPFfwp9VrEts",
  "merchant_profile" : "MPk8QzrrAjGBAm5QD6TrvA2g",
  "processor" : "VISA_V1",
  "processing_enabled" : true,
  "settlement_enabled" : true,
  "gross_settlement_enabled" : false,
  "creating_transfer_from_report_enabled" : true,
  "card_expiration_date_required" : true,
  "card_cvv_required" : false,
  "tags" : { },
  "mcc" : null,
  "mid" : null,
  "merchant_name" : "Ricardo Kline",
  "settlement_funding_identifier" : "UNSET",
  "ready_to_settle_upon" : "RECONCILIATION",
  "fee_ready_to_settle_upon" : "RECONCILIATION",
  "level_two_level_three_data_enabled" : false,
  "created_at" : "2022-01-27T07:36:45.95Z",
  "updated_at" : "2022-01-27T07:36:46.17Z",
  "onboarding_state" : "APPROVED",
  "processor_details" : { },
  "_links" : {
    "self" : {
      "href" : "https://finix.sandbox-payments-api.com/merchants/MU5zYchdMxxv5QCRS6bVuF8h"
    },
    "identity" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/IDqeE5eaMBksiphXMfv3gJZw"
    },
    "verifications" : {
      "href" : "https://finix.sandbox-payments-api.com/merchants/MU5zYchdMxxv5QCRS6bVuF8h/verifications"
    },
    "merchant_profile" : {
      "href" : "https://finix.sandbox-payments-api.com/merchant_profiles/MPk8QzrrAjGBAm5QD6TrvA2g"
    },
    "application" : {
      "href" : "https://finix.sandbox-payments-api.com/applications/APpJbVTLdEuwGfcxBJvb1qNH"
    },
    "verification" : {
      "href" : "https://finix.sandbox-payments-api.com/verifications/VIhozunYhMu5nPFfwp9VrEts"
    }
  }
}

HTTP Request

POST https://finix.sandbox-payments-api.com/identities/identityID/merchants

Request Arguments

Field Type Description
processor string, optional Name of Processor

Step 5: Pull Funds

Now it's time to pull funds from the sender.

Next you'll need to create a Transfer. What's a Transfer? Glad you asked! A Transfer represents any flow of funds either to or from a Payment Instrument. In this case we are pulling from a card.

To create a Transfer we'll simply supply the Payment Instrument ID of the previously tokenized card as the source field. In addition, you'll pass the an operational key which describes the action that you're taking.

You'll also want to store the ID from that Transfer for your records. Transfers can have two possible states SUCCEEDED and FAILED.

When the state of the Transfer updates to SUCCEEDED, you can use Finix Push to Card to push funds to any Payment Instrument.

Copy
Copied
curl https://finix.sandbox-payments-api.com/transfers \
    -H "Content-Type: application/vnd.json+api" \
    -u USte61SqeNkAZnpfavK3fQNG:bd98703c-d72c-458e-8873-4295f5bac713 \
    -d '
	{
	    "currency": "USD",
	    "amount": 20000,
	    "source": "PIaHGpBQYDc5fTpNxHgqoKMY",
	    "operation_key": "PULL_FROM_CARD",
	    "tags": {
	        "order_number": "21DFASJSAKAS"
	    }
	}'

Example Response:

Copy
Copied
{
  "id" : "TRu3LV1eGb7Pk1QDFqFQ3WGb",
  "amount" : 20000,
  "tags" : {
    "order_number" : "21DFASJSAKAS"
  },
  "state" : "SUCCEEDED",
  "trace_id" : "202707000061",
  "currency" : "USD",
  "application" : "APpJbVTLdEuwGfcxBJvb1qNH",
  "source" : "PIaHGpBQYDc5fTpNxHgqoKMY",
  "destination" : null,
  "ready_to_settle_at" : null,
  "externally_funded" : "UNKNOWN",
  "fee" : 0,
  "statement_descriptor" : null,
  "type" : "DEBIT",
  "messages" : [ ],
  "raw" : null,
  "created_at" : "2022-01-27T07:36:49.18Z",
  "updated_at" : "2022-01-27T07:36:50.22Z",
  "idempotency_id" : null,
  "merchant_identity" : "ID7JKYJBGDZf9CbQpfS7tDX7",
  "subtype" : "API",
  "_links" : {
    "application" : {
      "href" : "https://finix.sandbox-payments-api.com/applications/APpJbVTLdEuwGfcxBJvb1qNH"
    },
    "self" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb"
    },
    "merchant_identity" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7JKYJBGDZf9CbQpfS7tDX7"
    },
    "payment_instruments" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb/payment_instruments"
    },
    "reversals" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb/reversals"
    },
    "fees" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb/fees"
    },
    "disputes" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb/disputes"
    },
    "source" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY"
    },
    "fee_profile" : {
      "href" : "https://finix.sandbox-payments-api.com/fee_profiles/FPbDSnEPtaT8Nttxj9NJk7eC"
    }
  }
}

HTTP Request

POST https://finix.sandbox-payments-api.com/transfers

Request Arguments

Field Type Description
source string, required ID of the Payment Instrument where funds will be pulled from
amount integer, required The total amount that will be charged in cents (e.g. 100 cents to charge $1.00)
currency string, required 3-letter ISO code designating the currency of the Transfers (e.g. USD, CAD)
operation_key string, required PULL_FROM_CARD
tags object, optional Key value pair for annotating custom metadata (e.g. order numbers)
country string, optional 3-Letter Country code. This attribute is currently only applicable for our Latin America partners.

Reverse a Pull-from-Card Transfer

A Transfer representing the refund (i.e. reversal) of a previously created Transfer (type DEBIT). The refunded amount may be any value up to the amount of the original Transfer. These specific Transfers are distinguished by their type which return REVERSAL.

A Reversal can have one subtype indicating how it was created:

  • API : Transfer created via an end-user API request (e.g. POST)
Copy
Copied
curl https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb/reversals \
    -H "Content-Type: application/vnd.json+api" \
    -u  USte61SqeNkAZnpfavK3fQNG:bd98703c-d72c-458e-8873-4295f5bac713 \
    -d  '
  {
  "refund_amount" : 100,
  "tags" : {
      "test" : "refund"
    }
  }'

Example Response:

Copy
Copied
{
  "id" : "TRxxadBXPFEB2Ekd4Rznec8k",
  "amount" : 100,
  "tags" : { },
  "state" : "SUCCEEDED",
  "trace_id" : "202707000062",
  "currency" : "USD",
  "application" : "APpJbVTLdEuwGfcxBJvb1qNH",
  "source" : null,
  "destination" : "PIaHGpBQYDc5fTpNxHgqoKMY",
  "ready_to_settle_at" : null,
  "externally_funded" : "UNKNOWN",
  "fee" : 0,
  "statement_descriptor" : "FNX*FINIX",
  "type" : "REVERSAL",
  "messages" : [ ],
  "raw" : null,
  "created_at" : "2022-01-27T07:37:17.90Z",
  "updated_at" : "2022-01-27T07:37:18.56Z",
  "idempotency_id" : null,
  "merchant_identity" : "ID7JKYJBGDZf9CbQpfS7tDX7",
  "subtype" : "API",
  "_links" : {
    "application" : {
      "href" : "https://finix.sandbox-payments-api.com/applications/APpJbVTLdEuwGfcxBJvb1qNH"
    },
    "self" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRxxadBXPFEB2Ekd4Rznec8k"
    },
    "parent" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRu3LV1eGb7Pk1QDFqFQ3WGb"
    },
    "destination" : {
      "href" : "https://finix.sandbox-payments-api.com/payment_instruments/PIaHGpBQYDc5fTpNxHgqoKMY"
    },
    "merchant_identity" : {
      "href" : "https://finix.sandbox-payments-api.com/identities/ID7JKYJBGDZf9CbQpfS7tDX7"
    },
    "payment_instruments" : {
      "href" : "https://finix.sandbox-payments-api.com/transfers/TRxxadBXPFEB2Ekd4Rznec8k/payment_instruments"
    },
    "fee_profile" : {
      "href" : "https://finix.sandbox-payments-api.com/fee_profiles/FPbDSnEPtaT8Nttxj9NJk7eC"
    }
  }
}

HTTP Request

POST https://finix.sandbox-payments-api.com/transfers/:TRANSFER_ID/reversals

URL Parameters

Parameter Description
:TRANSFER_ID ID of the original Transfer

Request Arguments

Field Type Description
refund_amount integer, required The amount of the refund in cents (Must be equal to or less than the amount of the original Transfer)
tags object, optional Key value pair for annotating custom metadata (e.g. order numbers)