Dashboard ↗

It is important for you to be able to match transfers on your bank account statements with the transactions they include. This can be difficult because the actual money movement may happen a few days after you capture an invoice. Also, if you use several Payment Service Providers (PSPs) with Smart Router then it may not always be clear which PSP handled which transaction from the bank statement alone.

ProcessOut will fetch reports from your PSPs about money transfers whenever possible to make the task easier. We then match each transfer with its corresponding transactions and create a Payout object with all the details. (Note that a payout in this sense can actually be a positive or a negative amount because refunds and chargebacks are reported in the same way as payments.)

The Payout object is designed to be a convenient abstraction of the different reporting methods that PSPs use. We strive to standardize data mapping across all PSPs, but full compatibility isn’t always possible. A common example of this is when a PSP provides multiple rows referencing the same transaction. In such cases, we may not be able to match these into a single Payout Item row, resulting in multiple rows that reference the same transaction. Contact your ProcessOut account manager if you need further details of how a particular PSP reports their payouts to us.

For any fields that refer to an amount of money (such as amount and fees), you should specify the amount in the major unit of the currency rather than the minor unit (so this would mean dollars rather than cents if the currency is USD, for example).

Testing

We offer reconciliation testing through our sandbox gateway: https://docs.processout.com/docs/testing-in-the-sandbox. This process allows you to use our transaction export file as the source report for reconciliation.

To generate a sandbox payout, follow these steps:

  1. Make few test transactions using our ProcessOut test gateway. To test different scenarios you can use different cards from https://docs.processout.com/docs/testing-in-the-sandbox#test-cards.
  2. Go to the Dashboard and make sure to switch to sandbox mode.
  3. In the transactions view, set the filter to display only transactions processed through the mentioned test gateway.
  4. Click Export to export the transactions and download the file from the Reports section once it is ready.
  5. Upload the downloaded export in the Reports section, selecting the same gateway to process the file.
  6. Within a few minutes, the uploaded report should be processed and payout should be generated, similar to the production one, including webhook sent once payout is created.

Payout attributes

FieldTypeDescription
idstringString value that uniquely identifies the payout.
gateway_configuration_id (Expandable)stringGateway configuration in which the payout was processed.
itemsobjectItems listed in the payout.
See PayoutItem attributes
statusstringStatus of the payout. Can be pending, in-flight, received, canceled or failed.
amountstringAmount of the payout that was wired to your bank.
currencystringCurrency of the payout.
bank_namestringName of the bank to which the payout was issued, if available.
bank_summarystringBank summary of the payout, if available.
sales_transactionsintegerNumber of transactions involved in this payout.
sales_volumestringSum of the values of all transactions involved in this payout.
sales_feesstringSum of the fees of all transactions involved in this payout.
refunds_transactionsintegerNumber of refunds involved in this payout.
refunds_volumestringSum of the values of all refunds involved in this payout.
refunds_feesstringSum of the fees of all refunds involved in this payout.
chargebacks_transactionsintegerNumber of chargebacks involved in this payout.
chargebacks_volumestringSum of the values of all chargebacks involved in this payout.
chargebacks_feesstringSum of the fees of all chargebacks involved in this payout.
metadataobjectMetadata related to the payout, in the form of key-value pairs (string - string).
feesstringSum of all the fees taken by the PSP.
adjustmentsstringAdjustments applied by the PSP to the final payout amount.
reservestringReserve kept by the PSP for the payout.
settled_atdateDate and time when this payout was settled.
created_atdateDate and time when this payout was created.

PayoutItem attributes

FieldTypeDescription
idstringString value that uniquely identifies the payout item.
transaction_id (Expandable)stringTransaction involved in this payout item. Can be null if the item is not linked to a particular transaction, or if it is a transaction that ProcessOut did not handle.
typestringType of the payout item. Can be sale, refund, chargeback, fee, adjustment, reserve.
payment_provider_typestringRaw type of the payout item passed from the report from PSP.
gateway_resource_idstringID used by the PSP to reference this payout item.
amountstringAmount of the payout item (can be negative for a refund).
feesstringFees taken on this specific payout item.
breakdownobjectMore in-depth breakdown of the fees with IC++ support. Currently breakdown object contains: scheme_fee, interchange_fee, gateway_fee, markup_fee, acquirer_fee and other_fee.
metadataobjectMetadata related to the payout item, key-value pair (string - string)
created_atdateDate and time when this payout item was created.

Export

For reconciliation, we offer two types of exports - Payout and Payout Item. Exports can be requested from our dashboard and are generated in CSV format. Exports functionality adds alternative way to reconcile, without the need to use our regular API and use the CSV files instead.

Payout export

Payout export includes multiple payouts and can be triggered from payouts view in reports section of the dashboard. It will include information about all of the payouts from given date range.

Columns available in this export:

FieldTypeDescription
idstringString value that uniquely identifies the payout.
gateway_configuration_idstringID of the gateway configuration the payout was processed in.
gateway_resource_idstringID used by the PSP to reference the payout.
statusstringStatus of the payout. Can be pending, in-flight, received, canceled or failed.
amountstringAmount of the payout that was wired to your bank.
currencystringCurrency of the payout.
bank_namestringName of the bank to which the payout was issued, if available.
bank_summarystringBank summary of the payout, if available.
sales_transactionsintegerNumber of transactions involved in this payout.
sales_volumestringSum of the values of all transactions involved in this payout.
sales_feesstringSum of the values of all transaction fees involved in this payout.
refunds_transactionsintegerNumber of refunds involved in this payout.
refunds_volumestringSum of the values of all refunds involved in this payout.
refunds_feesstringSum of the values of all refund fees involved in this payout.
chargebacks_transactionsintegerNumber of chargebacks involved in this payout.
chargebacks_volumestringSum of the values of all chargebacks involved in this payout.
chargebacks_feesstringSum of the values of all chargeback fees involved in this payout.
feesstringFees taken by the PSP.
adjustmentsstringAdjustments applied by the PSP to the final payout amount.
reservestringReserve kept by the PSP for the payout.
metadataobjectMetadata related to the payout, in the form of key-value pairs (string - string).
created_atdateDate and time when this payout was created.
settled_atdateDate and time when this payout was settled.

Payout Item export

Payout Item export includes all of the data regarding single payout and can be triggered from single payout view in reports section of the dashboard. Each row will contain single payout item columns along with some useful data for reconciliation, like transaction related fields.

By setting up SFTP details for the project, you can enable automatic Payout Item export and upload to your SFTP server after each payout is created. This can be useful as an alternative way to connect to our reconciliation system - instead of fetching this data from our API, you can process each object from the SFTP server as soon as it is uploaded.

Columns available in this export (note the dots in some of the column names - they mimic objects structure in our API responses):

FieldTypeDescription
idstringID of the payout item.
payout_idstringID of the payout. Value will be the same across all rows.
transaction_idstringID of the transaction, to which the payout item was matched.
transaction.namestringName of the matched transaction.
transaction.customer_idstringID of the customer assigned to the matched transaction.
typestringType of the payout item. Can be sale, refund, chargeback, fee, adjustment, reserve.
gateway_resource_idstringID used by the PSP to reference this payout item.
amountstringAmount of the payout item (can be negative for a refund).
feesstringFees taken on this specific payout item.
metadataobjectMetadata related to the payout item, key-value pair (string - string).
transaction.metadataobjectMetadata related to the matched transaction, key-value pair (string - string).
created_atdateDate and time when this payout item was created.
payout.amountstringAmount of the whole payout.
payout.currencystringCurrency of the payout.
payout.bank_summarystringBank summary of the payout, if available.
payout.created_atdateDate and time when this payout was created.
payout.settled_atdateDate and time when this payout was settled.
payout.gateway_configuration.idstringID of the gateway configuration the payout was processed in.
payout.gateway_configuration.metadataobjectMetadata related to the gateway configuration, key-value pair (string - string).
payment_provider_typestringRaw type used by the PSP for this payout item.
breakdown.scheme_feestringScheme fee part of the fee breakdown for this payout item.
breakdown.interchange_feestringInterchange fee part of the fee breakdown for this payout item.
breakdown.gateway_feestringGateway fee part of the fee breakdown for this payout item.
breakdown.markup_feestringMarkup fee part of the fee breakdown for this payout item.
breakdown.acquirer_feestringAcquirer fee part of the fee breakdown for this payout item.
breakdown.other_feestringOther fee part of the fee breakdown for this payout item.
transaction.invoice.idstringID of the invoice linked to the matched transaction.
transaction.invoice.order_idstringOrder ID from the invoice linked to the matched transaction.
transaction.currencystringCurrency of the matched transaction.
transaction.payment_typestringPayment type used, from the matched transaction.
transaction.gateway_namestringGateway name used, from the matched transaction.
transaction.error_codestringError code (if error occurred), from the matched transaction.
transaction.statusstringStatus of the matched transaction.
transaction.card.iinstringIIN of the card used during payment.
transaction.card.typestringType of the card used during payment.
transaction.card.categorystringCategory of the card used during payment.
transaction.card.schemestringScheme of the card used during payment.
matched_operationobjectSingle matched operation with fields - id, currency, amount, has_failed, type, created_at, gateway_operation_id and metadata. Note that this column is filled only if we could match payout item to particular operation.
related_operationslist of objectsAll related operations to the payout item. Format is list of operations and fields are the same as in matched_operation. Can be useful for reconciliation, if there was no exact matched_operation found.