---
title: "Simulate Payin Completion/Cancellation"
method: PATCH
path: "/payin/simulate"
tags: ["Payin"]
---

# Simulate Payin Completion/Cancellation

`PATCH /payin/simulate`

## Request

- Base URL: `https://api.finmo.net/v1`
- URL: `https://api.finmo.net/v1/payin/simulate`
- Auth: HTTP basic

Use this Method in the sandbox to simulate the completion or cancellation of a Payin , i.e., funds deposited, charged to the customer, or cancellation of the Payin.

The Payin must be in a ```PENDING``` status to complete or cancel it. Upon successful execution, the Payin status updates to ```COMPLETED``` or ```CANCELLED```. If the Payin is not in a ```PENDING``` status or if you attempt to complete an already completed or cancelled Payin, a ```406``` error will be returned.

## Request body

- object
  - `amount` integer: Use this to provide transaction amount in case of partial payment. The number of decimal place will be different for each currency according to ISO 4217
  - `currency` string: Transaction currency in case of partial payment
  - `payin_id` string, required: Payin reference (payin_*)
  - `status` 'COMPLETED' | 'CANCELLED', required: COMPLETED or CANCELLED

## Response `200`

OK

- object
  - `data` object
    - `additional_data` object
      - `bank_reference_id` string
    - `advanced_redirect_url` string, uri, nullable
    - `amount` integer
    - `cancelled_at` string, date-time, nullable
    - `checkout_id` string, nullable
    - `created_at` string, date-time
    - `credit_wallet_id` string
    - `credit_wallet_transaction_id` string
    - `currency` string
    - `customer_id` string, nullable
    - `description` string
    - `expire_at` string, date-time
    - `expired_at` string, date-time, nullable
    - `fees_currency` string
    - `fees_including_tax` number
    - `fees_wallet_id` string
    - `fees_wallet_transaction_id` string
    - `fees_without_tax` number
    - `is_cancellable` boolean
    - `is_chargeable` boolean
    - `is_completely_refunded` boolean
    - `is_fees_charged` boolean
    - `is_multiple_refund_allowed` boolean
    - `is_over_refundable` boolean
    - `is_paid` boolean
    - `is_partially_paid` boolean
    - `is_partially_refundable` boolean
    - `is_reconciled` boolean
    - `is_refund_initiated` boolean
    - `is_refundable` boolean
    - `metadata` object
      - `any-custom-ref` string
    - `org_id` string
    - `organization_reference_id` string, nullable
    - `paid_amount` integer
    - `paid_at` string, date-time
    - `paid_currency` string
    - `pay_code` object
      - `text` string
    - `payin_id` string
    - `payin_method_category` string
    - `payin_method_description` string
    - `payin_method_name` string
    - `payin_method_param` object
      - `payid_reference` string
    - `payin_type` string
    - `reciept_email` string
    - `redirect_url` string, uri, nullable
    - `refund_amount_completed` string, nullable
    - `refund_amount_requested` string, nullable
    - `refund_currency_completed` string, nullable
    - `refund_currency_requested` string, nullable
    - `refund_status` string, nullable
    - `sender_party_detail` object
      - `account_holder_name` string
      - `account_number` string
      - `bsb` string
      - `payment_reference_id` string
      - `sender_description` string
      - `sender_reference` string
    - `status` string
    - `tax_on_fees` number
    - `transaction_id` string
    - `updated_at` string, date-time
    - `virtual_account_id` string, nullable
    - `webhook_url` string, uri, nullable
  - `request_id` string
  - `request_time` string, date-time
  - `status_code` integer
  - `status_text` string
  - `success` boolean

## Other responses

- `404`: Not Found
- `406`: Not Acceptable

## Changes

- **2026-11-03** `39e5e5ab5c3a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/finmo/apis/finmo-api/changes/payin/simulate/patch.md)

---

[API](https://skmtc.dev/finmo/apis/finmo-api.md) - [All operations](https://skmtc.dev/finmo/apis/finmo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/finmo/apis/finmo-api/revisions/39e5e5ab5c3a?raw)
