﻿# Transactions

The Transactions endpoint group is the fundamental means of managing purchases and refunds.
Transactions in general are separated into two divisions: **ACH transactions** and **cards transactions**.
**ACH transactions** are payments processed through the ACH (automated clearing house) network.
These are direct bank-to-bank transfers such as debits and credits.
These transactions are typically processed in batches and settle or close within one to two business days.
To complete an ACH (automated clearing house) transaction, see ACH Transactions.
**Card transactions** are payments processed using a credit or debit card.
These are processed through a card network such as Visa or Mastercard, among others.
Card transaction operations support initiating the transaction, retrieving transaction details,
and monitoring transaction status throughout processing.
This processing has additional steps, such as verifying available funds,
possibly declining the transaction request, holding the funds, and finally settling the request.
**Capture**
Capture completes a previously authorized transaction and initiates the transfer of funds.
This endpoint captures the authorized funds and completes the transaction:
`POST {{baseURL}}/pay-api/v1/transactions/capture`
This is an example of the minimal request body.
For example, the original authorization amount was $200.
the `amount` here must be $200.
Any other value will fail the call.
The `transactionId` is the `transactionId` from the Authorization endpoint above.

```json
{
    "amount": "200",
    "transactionId": "2f41c881-7337-45b9-8dba-fa5d9711e2b1"
}
```
Card transactions are separated into two operations: **One-step operations** and **two-step operations**.
**One-step operations** are transactions that authorizes and captures the transaction in a single request.
This allows processing a payment in one step or action by both approving the card and immediately completing the transaction.
This is a common retail situation when the purchase price is finalized and known at the moment of the sale.
**Two-step operations** are transactions that authorize and capture the transaction in separate requests.
Common situations for this are:
* A restaurant or hospitality situation
The initial bill is known and a tip is added later
The initial bill authorized and the funds held for a short while
After the tip is added, the transaction is completed
* An e-commerce or delayed fulfillment situation
The purchase price is known but the customer order has a delay for fulfilment
The purchase price is authorized but the funds are put on hold
The transaction is completed when the item is shipped

 - [One-Step Operations Workflow](https://developer.flute.com/api-reference/transactions/one-step-operations-workflow.md): #### One-Step Operations Workflow The following procedure is for completing a one-step operation. Authenticate Ensure a valid and current API token is available. This is generated from the partner or
 - [Two-Step Operations Workflow](https://developer.flute.com/api-reference/transactions/two-step-operations-workflow.md): #### Two-Step Operations Workflow The following procedure is for completing a two-step operation. Authenticate Ensure a valid and current API token is available. This is generated from the partner or
 - [GET /pay-api/v1/transactions](https://developer.flute.com/api-reference/transactions/flute-v1-get-pay-api-transactions.md): GET {{baseURL}}/pay-api/v1/transactions This endpoint returns a list of transactions details. See Also: To create a transaction, see POST /pay-api/v1/transactions/sale. To retrieve a transaction by ID
 - [GET /pay-api/v1/transactions/{id}](https://developer.flute.com/api-reference/transactions/flute-v1-get-pay-api-transactions-id.md): GET {{baseURL}}/pay-api/v1/transactions/{{transactionId}} This endpoint retrieves a specified transaction details. See Also: To list transactions, see GET /pay-api/v1/transactions. To create a transac
 - [POST /pay-api/v1/transactions/auth](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_auth.md): POST {{baseURL}}/pay-api/v1/transactions/auth This endpoint authorizes a payment transaction. This verifies that the customer's payment method is valid and that sufficient funds or credit are availabl
 - [POST /pay-api/v1/transactions/card-verification](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_card_verification.md): POST {{baseURL}}/pay-api/v1/transactions/card-verification This endpoint verifies a card's details with the issuing bank without charging it. This checks the card against AVS (address verification ser
 - [POST /pay-api/v1/transactions/sale](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_sale.md): POST {{baseURL}}/pay-api/v1/transactions/sale This endpoint completes a transaction in a single step. It combines the two actions of authorizing and capturing a transaction into a single endpoint. Use
 - [POST /pay-api/v1/transactions/capture](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_capture.md): POST {{baseURL}}/pay-api/v1/transactions/capture This endpoint captures a previously authorized transaction. The capture must reference an existing authorized transaction. It intends to convert the au
 - [POST /pay-api/v1/transactions/return](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_return.md): POST {{baseURL}}/pay-api/v1/transactions/return This endpoint refunds or returns funds from an original transaction identifier. This creates a refund transaction that is linked to a specific previous
 - [POST /pay-api/v1/transactions/return/no-reference](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_return_without_reference.md): POST {{baseURL}}/pay-api/v1/transactions/return/no-reference This endpoint refunds or returns funds without a reference. Without a reference means the customer does not have the link to the original t
 - [POST /pay-api/v1/transactions/settle](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_settle.md): POST {{baseURL}}/pay-api/v1/transactions/settle This endpoint settles, or completes, a transaction. A settlement transaction is the step in the payment process when an authorized transaction is finali
 - [POST /pay-api/v1/transactions/void](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_void.md): POST {{baseURL}}/pay-api/v1/transactions/void This endpoint voids or cancels a transaction payment before it is processed or settled. The transaction cannot be voided after it has been captured. See A
 - [POST /pay-api/v1/transactions/tip-adjustment](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_tip_adjustment.md): POST {{baseURL}}/pay-api/v1/transactions/tip-adjustment This endpoint adjusts the tip amount. This must be on a previously authorized transaction before settlement. Typically, the transaction is autho
 - [POST /pay-api/v1/transactions/{id}/send-transaction-receipt-by-sms](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_id_send_transaction_receipt_by_sms.md): POST {{baseURL}}/pay-api/v1/transactions/{{transactionId}}/send-transaction-receipt-by-sms This endpoint sends a transaction receipt to the customer by SMS. See Also: To retrieve a transaction by ID,
 - [GET /pay-api/v1/transactions/calculate-amount](https://developer.flute.com/api-reference/transactions/pay_api_v1_transactions_calculate_amount.md): GET {{baseURL}}/pay-api/v1/transactions/calculate-amount This endpoint calculates transaction amounts. The amounts are based on the merchant's ZCP (zero cost processing) mode. This includes dual pri