Payment methods

Cancel transfer

Cancel an existing transfer operation. If you don't provide the amount, the platform cancels the total original amount. You can also provide the amount to cancel a total or partial amount.

Refer to the Payment methods guide for additional information.

This endpoint generates a Platform authorization created event.

Note: This is a PCI endpoint, use the https://gw-pci.pismolabs.io environment.

post/payment-methods/v2/transfers/cancel

Request

  • Base URL
    https://sandbox.pismolabs.io
  • URL
    https://sandbox.pismolabs.io/payment-methods/v2/transfers/cancel
  • Auth
    HTTP bearer

Request body

tracking_idstring required

Unique tracking ID for this operation.

original_tracking_idstring required

Tracking ID for the original operation.

amountnumber float

Credit or debit amount.

metadataMetadata

This optional user-defined key-value object field can be used with external operations to provide additional context or supplementary custom information for the operation.

The Pismo platform does not perform any validation or processing on this field but passes this object to the acquirer in transactions involving calls to the acquirer and sends it in the events related to the stream of data produced at the end of the request.

Note: This field must not be used to send Personally Identifiable Information (PII), Payment Card Industry (PCI) data, or any sensitive/regulated information. Metadata fields are intended for operational, non-sensitive data only. For sensitive data, use the specific parameters designed for that purpose. For more information, refer to Get started with Pismo APIs.

Example request

{
  "tracking_id": "0b6995e5-b417-9be4-92b3-3677f4440ebe",
  "original_tracking_id": "249fbd1c-cfcd-48aa-8bcb-1ffe3a5f7978",
  "amount": 100.23,
  "metadata": {
    "any-key": "any-value"
  }
}

Response

Request was processed successfully, existing authorization with the corresponding tracking_id returned.

tracking_idstring

Unique tracking ID for this operation.

response_codestring

Alphanumeric two-character standard card network response code or an alternative custom response code, which provides the precise reason for the success or denial of the operation by the card network, platform, or anti-fraud solution.

denial_codestring

Denial code.

Example response

{
  "tracking_id": "0b6995e5-b417-9be4-92b3-3677f4440ebe",
  "response_code": "57",
  "denial_code": "DAL",
  "from": {
    "authorization_id": 124,
    "tracking_id": "634c43f2-5b7e-4a80-81c7-e6a7d5edc7fe",
    "account_id": 456,
    "amount": 1000,
    "response_code": "00",
    "denial_code": "PRC",
    "validation_results": [
      {
        "name": "ACCOUNT_ID",
        "status": "APPROVED",
        "reason": "ACCOUNT_ID_PERMITTED",
        "description": "Account ID is permitted.",
        "additional_data": {
          "document_number": "6XXXXXXXXXX9",
          "external_id": "",
          "name": "Marcelito"
        }
      },
      {
        "name": "ORIGINAL_AUTHORIZATION",
        "status": "APPROVED",
        "reason": "ORIGINAL_AUTHORIZATION_APPROVED",
        "description": "Original authorization validation was approved."
      },
      {
        "name": "PROCESSING_CODE",
        "status": "APPROVED",
        "reason": "PROCESSING_CODE_FOUND",
        "description": "Processing code was found."
      },
      {
        "name": "PROCESSING_CODE_TYPE",
        "status": "APPROVED",
        "reason": "PROCESSING_CODE_TYPE_VALID",
        "description": "Processing code has a valid balance impact type."
      },
      {
        "name": "ACCOUNT_LIMITS",
        "status": "APPROVED",
        "reason": "ACCOUNT_LIMITS_FOUND",
        "description": "Account limits were found."
      },
      {
        "name": "ACCOUNT_STATUS",
        "status": "SKIPPED",
        "reason": "ACCOUNT_STATUS_SKIPPED",
        "description": "Account status validation was skipped.",
        "additional_data": {
          "cause": "Cancellations are forced operations and does not need to run this validation"
        }
      },
      {
        "name": "PROGRAM",
        "status": "APPROVED",
        "reason": "PROGRAM_FOUND",
        "description": "Program was found.",
        "additional_data": {
          "program_type": "PRE-PAGO"
        }
      },
      {
        "name": "REMAINING_CANCELLATION_BALANCE",
        "status": "REJECTED",
        "reason": "AUTHORIZATION_ALREADY_CANCELLED",
        "description": "Authorization was already cancelled.",
        "additional_data": {
          "denial_code": "PRC",
          "response_code": "57"
        }
      },
      {
        "name": "RATES",
        "status": "APPROVED",
        "reason": "RATES_APPROVED",
        "description": "Rates calculation was performed."
      },
      {
        "name": "LEDGER",
        "status": "APPROVED",
        "reason": "LEDGER_APPROVED",
        "description": "Ledger was impacted successfully.",
        "additional_data": {
          "dry_run": false,
          "validation_results": null,
          "account_id": 9999,
          "available_amounts": {
            "validation_status": "APPROVED",
            "details": {
              "result": {
                "available_credit_limit": 746847527710892.1,
                "available_installment_limit": -226,
                "available_savings_account_limit": 93477.42,
                "available_withdraw_limit": -175,
                "held_funds": 91.25,
                "additional_funds": 0,
                "overlimit": 2000000,
                "total_overdraft_limit": 0
              }
            }
          }
        },
        "ledger_operation_status": {
          "validation_status": "APPROVED"
        }
      },
      {
        "name": "FLEX_CONTROLS",
        "status": "APPROVED",
        "reason": "FLEX_CONTROLS_APPROVED",
        "description": "Authorization passed flex control evaluation.",
        "additional_data": {
          "dry_run": false,
          "evaluated_controls": [
            {
              "id": "bb975c75-ae31-48e8-ac0b-57c677fdd0e4",
              "name": "Purchase 1 Month credit card",
              "evaluation_result": true,
              "deny_code": "MAX_VALUE_P1M",
              "response_code": "63",
              "max_limit": 200000,
              "accumulated_limit": 135127,
              "available_limit": 64873
            }
          ]
        }
      },
      {
        "name": "AUTHORIZATION",
        "status": "APPROVED",
        "reason": "AUTHORIZATION_CREATED",
        "description": "Authorization was created successfully."
      }
    ]
  },
  "to": {
    "authorization_id": 124,
    "tracking_id": "634c43f2-5b7e-4a80-81c7-e6a7d5edc7fe",
    "account_id": 456,
    "amount": 1000,
    "response_code": "00",
    "denial_code": "PRC",
    "validation_results": [
      {
        "name": "ACCOUNT_ID",
        "status": "APPROVED",
        "reason": "ACCOUNT_ID_PERMITTED",
        "description": "Account ID is permitted.",
        "additional_data": {
          "document_number": "6XXXXXXXXXX9",
          "external_id": "",
          "name": "Marcelito"
        }
      },
      {
        "name": "ORIGINAL_AUTHORIZATION",
        "status": "APPROVED",
        "reason": "ORIGINAL_AUTHORIZATION_APPROVED",
        "description": "Original authorization validation was approved."
      },
      {
        "name": "PROCESSING_CODE",
        "status": "APPROVED",
        "reason": "PROCESSING_CODE_FOUND",
        "description": "Processing code was found."
      },
      {
        "name": "PROCESSING_CODE_TYPE",
        "status": "APPROVED",
        "reason": "PROCESSING_CODE_TYPE_VALID",
        "description": "Processing code has a valid balance impact type."
      },
      {
        "name": "ACCOUNT_LIMITS",
        "status": "APPROVED",
        "reason": "ACCOUNT_LIMITS_FOUND",
        "description": "Account limits were found."
      },
      {
        "name": "ACCOUNT_STATUS",
        "status": "SKIPPED",
        "reason": "ACCOUNT_STATUS_SKIPPED",
        "description": "Account status validation was skipped.",
        "additional_data": {
          "cause": "Cancellations are forced operations and does not need to run this validation"
        }
      },
      {
        "name": "PROGRAM",
        "status": "APPROVED",
        "reason": "PROGRAM_FOUND",
        "description": "Program was found.",
        "additional_data": {
          "program_type": "PRE-PAGO"
        }
      },
      {
        "name": "REMAINING_CANCELLATION_BALANCE",
        "status": "REJECTED",
        "reason": "AUTHORIZATION_ALREADY_CANCELLED",
        "description": "Authorization was already cancelled.",
        "additional_data": {
          "denial_code": "PRC",
          "response_code": "57"
        }
      },
      {
        "name": "RATES",
        "status": "APPROVED",
        "reason": "RATES_APPROVED",
        "description": "Rates calculation was performed."
      },
      {
        "name": "LEDGER",
        "status": "APPROVED",
        "reason": "LEDGER_APPROVED",
        "description": "Ledger was impacted successfully.",
        "additional_data": {
          "dry_run": false,
          "validation_results": null,
          "account_id": 9999,
          "available_amounts": {
            "validation_status": "APPROVED",
            "details": {
              "result": {
                "available_credit_limit": 746847527710892.1,
                "available_installment_limit": -226,
                "available_savings_account_limit": 93477.42,
                "available_withdraw_limit": -175,
                "held_funds": 91.25,
                "additional_funds": 0,
                "overlimit": 2000000,
                "total_overdraft_limit": 0
              }
            }
          }
        },
        "ledger_operation_status": {
          "validation_status": "APPROVED"
        }
      },
      {
        "name": "FLEX_CONTROLS",
        "status": "APPROVED",
        "reason": "FLEX_CONTROLS_APPROVED",
        "description": "Authorization passed flex control evaluation.",
        "additional_data": {
          "dry_run": false,
          "evaluated_controls": [
            {
              "id": "bb975c75-ae31-48e8-ac0b-57c677fdd0e4",
              "name": "Purchase 1 Month credit card",
              "evaluation_result": true,
              "deny_code": "MAX_VALUE_P1M",
              "response_code": "63",
              "max_limit": 200000,
              "accumulated_limit": 135127,
              "available_limit": 64873
            }
          ]
        }
      },
      {
        "name": "AUTHORIZATION",
        "status": "APPROVED",
        "reason": "AUTHORIZATION_CREATED",
        "description": "Authorization was created successfully."
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.