What can we help you with?

Enabling Online Refunds

Overview

What are online refunds?

‘Online refund’ refers to the new refund.authorization messages that Visa and Mastercard merchants can now send to card issuers. These refund authorizations allow merchants to notify customers earlier of a pending refund, and to give card issuers the opportunity to decline a refund. Online refunds are disabled, when possible, for Marqeta customers by default, and will be selectively enabled after coordinating with your Marqeta representative.

Like purchase authorizations, refund authorizations are eventually ‘cleared’ or completed by a refund.authorization.clearing event. That refund authorization clearing is automatically accepted and processed by the Marqeta platform, regardless of your funding model. This is the same way ‘offline’ refunds are currently processed, and there will be no changes to this processing behavior.

Also similar to a purchase authorization, it is possible for a refund authorization to be expired by the issuer (based on the expiration time Marqeta enforces) or reversed (if the merchant sends a reversal message), though this is an edge case. A refund authorization that fails to clear within seven days is unlikely to ever be completed.

What are my options for online refunds?

  1. Leave online refund controls disabled. For Visa programs, online refunds will be automatically approved, and for Mastercard programs, these online refunds are currently being automatically declined.

    For Mastercard programs, merchants will receive a ‘declined’ response for online refund requests, and the merchant can choose to fall-back to using an offline refund, or refund to an alternate payment method. As a result of these declines, Mastercard programs are already receiving refund.authorization decline messages.

    For Visa programs, merchants will automatically receive an ‘approved’ response for online refund requests. Visa programs will not see refund.authorization messages until they are enabled by Marqeta and Visa for your program.


  2. Enable online refunds, and approve refund authorizations by default.

    Marqeta to process refund authorization requests, Marqeta will default to approve all refund authorization requests for cards. As a result of these new refund.authorization approvals, you will begin to see new event types and transaction flows related to the online refund flow.

    Once online refunds are enabled, there are new event types and transaction flows that your platform will need to handle in the webhook messages you receive from Marqeta.


  3. Enable online refunds, and use your JIT funding  gateway to approve or decline refund authorizations.

    Marqeta will forward the online refund request to your gateway, just like JIT funding for authorization requests you will be required to respond within three seconds if you’d like to approve. Otherwise, the refund request will be declined. If the merchant’s refund request is declined the merchant can choose to fall-back to using an offline refund, or they can refund to an alternate payment method.

    Once online refunds are enabled, there are new event types and transaction flows that your platform will need to handle in the webhook messages you receive from Marqeta. 

What am I required to do?

If you choose to enable online refunds, you will need to be aware of the new event types that will be received by your webhook endpoint.

If your Marqeta program is using only pre-funded cards, or uses a Managed JIT funding model, then you will not need to make any changes to accept online refunds. However, you may need to do work for your system to be informed about these events as they are sent through to your webhook endpoint.

If your Marqeta program is using a Gateway JIT funding model, you will be required to respond to a new type of message that will be sent to your JIT funding gateway endpoint or those online refunds will be declined. In addition, you will want to be aware of the new gpa_order_unload object which you will see for refunds, refund authorizations, and refund.authorization reversal/expiration. You can read more about the event types Marqeta sends, and the correlating GPA behavior here: https://www.marqeta.com/docs/core-api/gateway-jit-funding-messages#_the_jit_funding_object

Testing

Support for refund.authorization messages is still being built into our Marqeta Sandbox environment simulation suite. Prepare your gateway endpoint to always approve these refund.authorization requests and conduct your final tests in the production environment.

Please coordinate with your Marqeta customer success contact to make sure that your platform is ready to receive these new online refund messages, and to have online refunds enabled for your environment. If your gateway isn’t able to approve these new refund authorization messages, it will result in those refunds being declined. When the merchant receives a decline for their refund authorization request, they will likely issue an out-of-band refund via store credit, an alternate payment method, or cash. Therefore, it is important that Marqeta only enables online refunds for your environment after you’ve made the supporting changes on your end.

Roll-out

Marqeta will not start sending you the refund authorization messages until your platform is ready to receive them. Until then, a workaround is in place within the Marqeta platform to block refund.authorization messages from being sent to your environment. When refund.authorization messages are blocked on Marqeta’s side, the response sent to the merchant will vary based on the card network used. Visa merchant will receive an approval message as if the refund was successful, while Mastercard merchants will receive a decline message.

When you are ready to receive refund.authorization messages, the first step will be to have it enabled for your environment, after which you will start receiving refund.authorization.clearing webhook messages. Then, we can enable additional refund.authorization webhooks, as well as JIT gateway messages (if applicable). You will want to make sure that your system is able to receive these new refund.authorization event types via webhook, and that you are responding to the refund.authorization message if you have a JIT gateway program.

Because online refund events cannot be simulated, your ability to see refund.authorizations in the system will be determined by merchant adoption/usage. If you need help identifying merchants that may use online refunds to conduct testing, please contact your Customer Success Manager for more information.

Implementation

Supporting online refunds requires some development work if you are currently using a JIT funding gateway to approve/decline transactions in real-time.  If you do not use a JIT funding gateway, and you use a pre-funded or managed JIT funding model, then there is no required development work to approve the refund authorization requests.

Regardless of funding model, there may be work required to receive the new event type (refund.authorization.clearing) at your webhook endpoint that will be sent when online refunds are enabled.

Your platform will only be receiving refund.authorization messages from the Marqeta production environment (simulate functionality in the sandbox environment will be available in the future). As a result, a live test will need to occur before your platform receives all the relevant event types related to the online refund transaction flow.

JIT Gateway

Your gateway is currently configured to respond to authorizations and their corresponding JIT funding requests in order to approve them. A new event type, refund.authorization, will be sent to your JIT Gateway and a response message needs to be returned. Just like with purchase authorizations, refund authorizations must be approved or else the eventual refund.authorization.clearing event will be sent by the merchant (refund will not go through to the original form of payment).

Only the refund authorization is actionable, and requires a response from your JIT gateway. The authorization event will also be received by your webhook endpoint upon completion.

  • refund.authorization (pgfs.refund.authorization)

These online refund events below are not sent to your gateway, as they are not actionable:

  • refund.authorization.clearing
  • refund.authorization.reversal

For more information from our documentation site, you can find “refund.authorization” on the following page:

https://www.marqeta.com/docs/core-api/event-types#_transaction_events

Example funding request

Example funding message that your JIT gateway will be receiving. Similar to ‘normal’, offline refunds, there is no direct association between this refund and the original purchase/clearing. Also note that there is a new pgfs method in the payload.

"jit_funding": {

      "token": "1824bae9-d9a4-4018-a617-c3c7600cb7eb",

      "method": "pgfs.refund.authorization",

      "user_token": "a_user_1",

      "acting_user_token": "a_user_1",

      "amount": 12.34

    }

Example funding response

Your gateway will respond with the expected 200 HTTP status and JSON body containing the jit_funding object. Similar to JIT funding requests for purchase authorizations, the jit_funding in your response will mirror the jit_funding object you originally received.

Please note that the ‘amount’ should always match the original amount requested (there is no partial authorization behavior).

"jit_funding": {

      "token": "1824bae9-d9a4-4018-a617-c3c7600cb7eb",

      "method": "pgfs.refund.authorization",

      "user_token": "a_user_1",

      "acting_user_token": "a_user_1",

      "amount": 12.34

      “tags”: “tag1, tag2”, //optional

      “memo”: “order #1234” //optional

    }

Non-gateway (pre-funded or managed JIT)

If your cards are all prefunded or you use a managed JIT funding model, then online refunds will be automatically approved. There is no work required in this case to support online refund transactions.

Webhooks

Once a refund.authorization is approved, you will receive a webhook message for this event. As with other webhook messages, you can build business logic to trigger customer notifications or pending ledger entries in response to the refund.authorization being received.


These are the new event types you’ll receive in webhooks:

  • refund.authorization
  • refund.authorization.reversal

And these event types will have new content in the request body

  • refund.authorization.clearing
  • authorization.reversal.issuerexpiration

Transaction flow

Refund authorizations can be resolved either by a clearing event, or by a reversal (merchant or issuer initiated). 

Gateway JIT

Refund authorization and clearing

  1. refund.authorization JIT gateway request
  2. refund.authorization JIT gateway response
  3. refund.authorization approval webhook
  4. refund.authorization.clearing webhook

Refund authorization decline

  1. refund.authorization JIT gateway request
  2. refund.authorization JIT gateway response
  3. refund.authorization decline webhook

Refund authorization and reversal

  1. refund.authorization approved webhook
  2. Reversal:
    1. refund.authorization.reversal (merchant initiated)
    2. refund.authorization.reversal.issuerexpiration (MQ expires after default of 8 days)

Prefunded or Managed JIT

Refund authorization and clearing

  1. refund.authorization approved webhook
  2. refund.authorization.clearing webhook

Refund authorization and reversal

  1. refund.authorization approved webhook
  2. Reversal:
    1. refund.authorization.reversal (merchant initiated)
    2. refund.authorization.reversal.issuerexpiration (MQ expires after default of 8 days)

Coordination

  1. Inform your Marqeta Customer Success contact when you have made the appropriate changes to support online refunds. For gateway customers, this means having your platform return an approval response if a refund.authorization is received. All customers need to prepare for the new webhooks and event types that your system will receive.

  2. Your Marqeta Customer Success contact will inform you once:
    1. the appropriate changes have been made within your Marqeta program configuration to enable online refunds
    2. (Visa only) the appropriate changes have been made at the card network so that online refund requests will start to be sent to your Marqeta environment
  3. As online refunds start to be received, please inform your Marqeta contact if you encounter any issues in processing the new events, and we can start the process to rollback changes if needed.

 

Sample transaction data

Transaction Model v2 (default)

The transaction model that your environment is using will dictate the format and labeling of certain fields in the transaction payload. If you’re unsure of which transaction model you’re using, you can look for the presence of the “pos” object - if it’s present then you’re on v2, if it says “poi” instead you’re on v1.

1 Refund authorization approval

1.1 Refund authorization JIT gateway request (Gateway JIT customers only)

{

  "type": "refund.authorization",

  "state": "PENDING",

  "token": "5dcc7053-1cd1-4987-b17a-a7cfd7403f0c",

  "user_token": "r_user_2",

  "acting_user_token": "r_user_2",

  "card_token": "r_card_2",

  "gpa": {

    "currency_code": "USD",

    "ledger_balance": 5760.63,

    "available_balance": 90,

    "credit_balance": 0,

    "pending_credits": 10,

    "balances": {

      "USD": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10

      }

    }

  },

  "created_time": "2020-11-30T19:20:34Z",

  "user_transaction_time": "2020-11-30T19:20:34Z",

  "settlement_date": "2020-11-30T00:00:00Z",

  "request_amount": 30,

  "amount": 30,

  "currency_code": "USD",

  "gpa_order_unload": {

    "token": "bba361db-ebce-4533-bbe7-ec372de56d6b",

    "amount": 30,

    "transaction_token": "c890f484-a436-4450-9653-d75d3cd504c7",

    "state": "PENDING",

    "funding": {

      "amount": 30,

      "source": {

        "type": "programgateway",

        "token": "**********fs_1",

        "active": true,

        "name": "RitzPGFS",

        "is_default_account": false,

        "created_time": "2018-05-09T18:16:07Z",

        "last_modified_time": "2018-05-09T18:16:07Z"

      }

    },

    "funding_source_token": "**********fs_1",

    "jit_funding": {

      "token": "37a21772-3e45-4726-bbbe-c054e43c6955",

      "method": "pgfs.refund.authorization",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "amount": 30

    }

  },

  "network": "VISA",

  "subnetwork": "VISANET",

  "acquirer_fee_amount": 0,

  "acquirer": {

    "institution_country": "840",

    "institution_id_code": "238932796",

    "retrieval_reference_number": "045565101155",

    "system_trace_audit_number": "229289"

  },

  "card_security_code_verification": {

    "type": "CVV1",

    "response": {

      "code": "0000",

      "memo": "Card security code match"

    }

  },

  "cardholder_authentication_data": {

    "verification_result": "not_present"

  },

  "issuer_received_time": "2020-11-30T19:20:34.000Z",

  "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

  "network_reference_id": "0002000361155684951",

  "card_acceptor": {

    "mid": "000999988887777",

    "mcc": "6411",

    "name": "Test Merchant",

    "city": "Test City",

    "country_code": "USA"

  },

  "pos": {

    "pan_entry_mode": "MAG_STRIPE",

    "pin_entry_mode": "TRUE",

    "terminal_id": "TR100000",

    "terminal_attendance": "ATTENDED",

    "card_holder_presence": true,

    "cardholder_authentication_method": "SIGNATURE",

    "card_presence": true,

    "card_data_input_capability": "MAG_STRIPE",

    "partial_approval_capable": true,

    "purchase_amount_only": true,

    "is_recurring": false

  },

  "transaction_metadata": {

    "payment_channel": "OTHER"

  }

}

 

1.2 Refund authorization approval JIT gateway response (Gateway JIT customers only)

{

  "jit_funding": {

    "token": "AzByCxDw-159069214-201130-072034",

    "method": "pgfs.refund.authorization",

    "user_token": "r_user_2",

    "acting_user_token": "r_user_2",

    "amount": 30,

    "memo": "loan_number:159069214"

  }

}

 

1.3 Refund authorization approval webhook payload 

{

  "transactions": [

    {

      "type": "refund.authorization",

      "state": "PENDING",

      "identifier": "3129",

      "token": "5dcc7053-1cd1-4987-b17a-a7cfd7403f0c",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10,

        "impacted_amount": 30,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5760.63,

            "available_balance": 90,

            "credit_balance": 0,

            "pending_credits": 10,

            "impacted_amount": 30

          }

        }

      },

      "duration": 781,

      "created_time": "2020-11-30T19:20:34Z",

      "user_transaction_time": "2020-11-30T19:20:34Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 30,

      "amount": 30,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "approval_code": "384635",

      "response": {

        "code": "0000",

        "memo": "Approved or completed successfully"

      },

      "gpa_order_unload": {

        "token": "bba361db-ebce-4533-bbe7-ec372de56d6b",

        "amount": 30,

        "memo": "loan_number:159069214",

        "created_time": "2020-11-30T19:20:34Z",

        "last_modified_time": "2020-11-30T19:20:34Z",

        "transaction_token": "c890f484-a436-4450-9653-d75d3cd504c7",

        "state": "PENDING",

        "response": {

          "code": "0000",

          "memo": "Approved or completed successfully"

        },

        "funding": {

          "amount": 30,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          },

          "gateway_log": { 

            "order_number": "5dcc7053-1cd1-4987-b17a-a7cfd7403f0c",

            "transaction_id": "AzByCxDw-159069214-201130-072034",

            "message": "Approved or completed successfully",

            "duration": 329,

            "timed_out": false,

            "response": {

              "code": "200",

              "data": {

                "jit_funding": {

                  "token": "AzByCxDw-159069214-201130-072034",

                  "method": "pgfs.refund.authorization",

                  "user_token": "r_user_2",

                  "acting_user_token": "r_user_2",

                  "amount": 30,

                  "memo": "loan_number:159069214"

                }

              }

            }

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": { 

          "token": "37a21772-3e45-4726-bbbe-c054e43c6955",

          "method": "pgfs.refund.authorization",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 30

        }

      },

      "network": "VISA",

      "subnetwork": "VISANET",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "238932796",

        "retrieval_reference_number": "045565101155",

        "system_trace_audit_number": "229289"

      },

      "card_security_code_verification": {

        "type": "CVV1",

        "response": {

          "code": "0000",

          "memo": "Card security code match"

        }

      },

      "cardholder_authentication_data": {

        "verification_result": "not_present"

      },

      "issuer_received_time": "2020-11-30T19:20:34.000Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000361155684951",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "name": "Test Merchant",

        "city": "Test City",

        "country_code": "USA"

      },

      "pos": {

        "pan_entry_mode": "MAG_STRIPE",

        "pin_entry_mode": "TRUE",

        "terminal_id": "TR100000",

        "terminal_attendance": "ATTENDED",

        "card_holder_presence": true,

        "cardholder_authentication_method": "SIGNATURE",

        "card_presence": true,

        "card_data_input_capability": "MAG_STRIPE",

        "partial_approval_capable": true,

        "purchase_amount_only": true,

        "is_recurring": false

      },

      "transaction_metadata": {

        "payment_channel": "OTHER"

      }

    }

  ]

}

 

1.4 Refund authorization clearing webhook payload

{

  "transactions": [

    {

      "type": "refund.authorization.clearing",

      "state": "COMPLETION",

      "identifier": "3151",

      "token": "fe26fb40-cba5-4bb8-9e22-9db1e4769699",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "preceding_related_transaction_token": "5dcc7053-1cd1-4987-b17a-a7cfd7403f0c",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5730.63,

        "available_balance": 60,

        "credit_balance": 0,

        "pending_credits": 10,

        "impacted_amount": 30,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5730.63,

            "available_balance": 60,

            "credit_balance": 0,

            "pending_credits": 10,

            "impacted_amount": 30

          }

        }

      },

      "duration": 285,

      "created_time": "2020-11-30T21:01:17Z",

      "user_transaction_time": "2020-11-30T21:01:17Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 30,

      "amount": 30,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "approval_code": "483722",

      "response": {

        "code": "0000",

        "memo": "Approved or completed successfully"

      },

      "gpa_order_unload": {

        "token": "90315f03-4698-4fdc-ae42-78839f320380",

        "amount": 30,

        "created_time": "2020-11-30T21:01:17Z",

        "last_modified_time": "2020-11-30T21:01:17Z",

        "transaction_token": "df2f1d27-8550-4ede-9548-987038f7680b",

        "state": "COMPLETION",

        "response": {

          "code": "0000",

          "memo": "Approved or completed successfully"

        },

        "funding": {

          "amount": 30,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "e7b40750-6863-4191-bb3d-ab1d34811325",

          "method": "pgfs.refund",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 30

        }

      },

      "network": "VISA",

      "subnetwork": "VISANETDEBIT",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "482936304",

        "retrieval_reference_number": "940186423145",

        "system_trace_audit_number": "844988"

      },

      "issuer_received_time": "2020-11-30T21:01:17.049Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000121189035679",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "name": "Test Merchant",

        "city": "Test City",

        "country_code": "USA"

      },

      "pos": {

        "pan_entry_mode": "MAG_STRIPE",

        "pin_entry_mode": "TRUE",

        "terminal_id": "TR100000",

        "terminal_attendance": "ATTENDED",

        "card_holder_presence": true,

        "cardholder_authentication_method": "SIGNATURE",

        "card_presence": true,

        "card_data_input_capability": "MAG_STRIPE",

        "partial_approval_capable": false,

        "purchase_amount_only": false,

        "is_recurring": false

      },

      "transaction_metadata": {

        "payment_channel": "OTHER"

      }

    }

  ]

}



2 Refund authorization decline

 

2.1 Refund authorization request

{

  "type": "refund.authorization",

  "state": "PENDING",

  "token": "4cd9e349-80de-4758-aa51-a14b49694760",

  "user_token": "r_user_2",

  "acting_user_token": "r_user_2",

  "card_token": "r_card_2",

  "gpa": {

    "currency_code": "USD",

    "ledger_balance": 5760.63,

    "available_balance": 90,

    "credit_balance": 0,

    "pending_credits": 10,

    "balances": {

      "USD": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10

      }

    }

  },

  "created_time": "2020-11-30T19:20:34Z",

  "user_transaction_time": "2020-11-30T19:20:34Z",

  "settlement_date": "2020-11-30T00:00:00Z",

  "request_amount": 30,

  "amount": 30,

  "currency_code": "USD",

  "gpa_order_unload": {

    "token": "bba361db-ebce-4533-bbe7-ec372de56d6b",

    "amount": 30,

    "transaction_token": "c890f484-a436-4450-9653-d75d3cd504c7",

    "state": "PENDING",

    "funding": {

      "amount": 30,

      "source": {

        "type": "programgateway",

        "token": "**********fs_1",

        "active": true,

        "name": "RitzPGFS",

        "is_default_account": false,

        "created_time": "2018-05-09T18:16:07Z",

        "last_modified_time": "2018-05-09T18:16:07Z"

      }

    },

    "funding_source_token": "**********fs_1",

    "jit_funding": {

      "token": "37a21772-3e45-4726-bbbe-c054e43c6955",

      "method": "pgfs.refund.authorization",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "amount": 30

    }

  },

  "network": "VISA",

  "subnetwork": "VISANET",

  "acquirer_fee_amount": 0,

  "acquirer": {

    "institution_country": "840",

    "institution_id_code": "238932796",

    "retrieval_reference_number": "045565101155",

    "system_trace_audit_number": "229289"

  },

  "card_security_code_verification": {

    "type": "CVV1",

    "response": {

      "code": "0000",

      "memo": "Card security code match"

    }

  },

  "cardholder_authentication_data": {

    "verification_result": "not_present"

  },

  "issuer_received_time": "2020-11-30T19:20:34.000Z",

  "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

  "network_reference_id": "0002000361155684951",

  "card_acceptor": {

    "mid": "000999988887777",

    "mcc": "6411",

    "name": "Test Merchant",

    "city": "Test City",

    "country_code": "USA"

  },

  "pos": {

    "pan_entry_mode": "MAG_STRIPE",

    "pin_entry_mode": "TRUE",

    "terminal_id": "TR100000",

    "terminal_attendance": "ATTENDED",

    "card_holder_presence": true,

    "cardholder_authentication_method": "SIGNATURE",

    "card_presence": true,

    "card_data_input_capability": "MAG_STRIPE",

    "partial_approval_capable": true,

    "purchase_amount_only": true,

    "is_recurring": false

  },

  "transaction_metadata": {

    "payment_channel": "OTHER"

  }

}


 

2.2 Refund authorization decline JIT gateway response

{

  "jit_funding": {

    "token": "AzByCxDw-154379582-201130-074303",

    "method": "pgfs.refund.authorization",

    "user_token": "r_user_2",

    "acting_user_token": "r_user_2",

    "amount": 30,

    "memo": "loan_number:154379582",

    "decline_reason": "SUSPECTED_FRAUD"

  }

}

 

2.3 Refund authorization decline webhook payload

{

  "transactions": [

    {

      "type": "refund.authorization",

      "state": "DECLINED",

      "identifier": "3131",

      "token": "4cd9e349-80de-4758-aa51-a14b49694760",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5760.63,

            "available_balance": 90,

            "credit_balance": 0,

            "pending_credits": 10

          }

        }

      },

      "duration": 547,

      "created_time": "2020-11-30T19:43:03Z",

      "user_transaction_time": "2020-11-30T19:43:03Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 30,

      "amount": 30,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "response": {

        "code": "1837",

        "memo": "Corresponding JIT Refund Failure"

      },

      "gpa_order_unload": {

        "token": "90a851ef-be23-4844-87d0-d0a7318e6319",

        "amount": 30,

        "created_time": "2020-11-30T19:43:03Z",

        "last_modified_time": "2020-11-30T19:43:03Z",

        "transaction_token": "ceb88d1c-fbfd-4952-bafc-e77bfef32e31",

        "state": "ERROR",

        "response": {

          "code": "1878",

          "memo": "Corresponding JIT Load Failure"

        },

        "funding": {

          "amount": 30,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          },

          "gateway_log": {

            "order_number": "4cd9e349-80de-4758-aa51-a14b49694760",

            "message": "Unable to parse: {\"jit_funding\":{\"token\":\"AzByCxDw-154379582-201130-074303\",\"method\":\"pgfs.refund.authorization\",\"user_token\":\"r_user_2\",\"acting_user_token\":\"r_user_2\",\"amount\":30,\"memo\":\"loan_number:154379582\",\"decline_reason\":\"SUSPECTED_FRAUD\"}}",

            "duration": 324,

            "timed_out": false,

            "response": {

              "code": "200"

            }

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "0b058486-b14f-44ce-b605-b75566f6da24",

          "method": "pgfs.refund.authorization",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 30

        }

      },

      "network": "VISA",

      "subnetwork": "VISANET",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "385460208",

        "retrieval_reference_number": "601096773885",

        "system_trace_audit_number": "649930"

      },

      "card_security_code_verification": {

        "type": "CVV1",

        "response": {

          "code": "0000",

          "memo": "Card security code match"

        }

      },

      "cardholder_authentication_data": {

        "verification_result": "not_present"

      },

      "issuer_received_time": "2020-11-30T19:43:03.283Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000682064736817",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "name": "Test Merchant",

        "city": "Test City",

        "country_code": "USA"

      },

      "pos": {

        "pan_entry_mode": "MAG_STRIPE",

        "pin_entry_mode": "TRUE",

        "terminal_id": "TR100000",

        "terminal_attendance": "ATTENDED",

        "card_holder_presence": true,

        "cardholder_authentication_method": "SIGNATURE",

        "card_presence": true,

        "card_data_input_capability": "MAG_STRIPE",

        "partial_approval_capable": true,

        "purchase_amount_only": true,

        "is_recurring": false

      },

      "transaction_metadata": {

        "payment_channel": "OTHER"

      }

    }

  ]

}

 

3 Refund authorization reversal

 

3.1 Refund authorization reversal webhook payload

{

  "transactions": [

    {

      "type": "refund.authorization.reversal",

      "state": "CLEARED",

      "identifier": "3145",

      "token": "5aac7639-7753-49f5-b541-b1e7a3dadb45",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "preceding_related_transaction_token": "db783590-24e8-4379-bc00-cf75b8391035",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10,

        "impacted_amount": -30,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5760.63,

            "available_balance": 90,

            "credit_balance": 0,

            "pending_credits": 10,

            "impacted_amount": -30

          }

        }

      },

      "duration": 152,

      "created_time": "2020-11-30T20:37:25Z",

      "user_transaction_time": "2020-11-30T20:36:45Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 30,

      "amount": 30,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "response": {

        "code": "0000",

        "memo": "Approved or completed successfully"

      },

      "gpa_order_unload": {

        "token": "ddb9d4fb-8acf-4c3a-b455-ab2a19a0871c",

        "amount": 30,

        "memo": "loan_number:1970901086",

        "created_time": "2020-11-30T20:36:46Z",

        "last_modified_time": "2020-11-30T20:37:25Z",

        "transaction_token": "9c99538a-bebf-46d3-a9d3-04e71016e256",

        "state": "REVERSED",

        "response": {

          "code": "0000",

          "memo": "Approved or completed successfully"

        },

        "funding": {

          "amount": 30,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "df7ed9f8-5f9b-4b60-b4b2-f611655a5142",

          "method": "pgfs.refund.authorization.reversal",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 30,

          "original_jit_funding_token": "AzByCxDw-1970901086-201130-083646"

        }

      },

      "network": "VISA",

      "subnetwork": "VISANET",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "150942502",

        "retrieval_reference_number": "437708268526",

        "system_trace_audit_number": "901256"

      },

      "issuer_received_time": "2020-11-30T20:37:25.197Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000745815605613",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "name": "Test Merchant",

        "city": "Test City",

        "country_code": "USA"

      },

      "pos": {

        "pan_entry_mode": "MAG_STRIPE",

        "pin_entry_mode": "TRUE",

        "terminal_id": "TR100000",

        "terminal_attendance": "ATTENDED",

        "card_holder_presence": true,

        "cardholder_authentication_method": "SIGNATURE",

        "card_presence": true,

        "card_data_input_capability": "MAG_STRIPE",

        "partial_approval_capable": false,

        "purchase_amount_only": false,

        "is_recurring": false

      },

      "transaction_metadata": {

        "payment_channel": "OTHER"

      }

    }

  ]

}




Transaction Model v1

 

1 Refund authorization approval (transaction model v1)

1.1 Refund authorization request (transaction model v1)

{

  "type": "refund.authorization",

  "state": "PENDING",

  "token": "13aeef75-b9ea-4427-843f-c76a8b8899d9",

  "user_token": "r_user_2",

  "acting_user_token": "r_user_2",

  "card_token": "r_card_2",

  "gpa": {

    "currency_code": "USD",

    "ledger_balance": 5760.63,

    "available_balance": 90,

    "credit_balance": 0,

    "pending_credits": 10,

    "balances": {

      "USD": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10

      }

    }

  },

  "created_time": "2020-11-30T20:12:49Z",

  "user_transaction_time": "2020-11-30T20:12:49Z",

  "settlement_date": "2020-11-30T00:00:00Z",

  "request_amount": 20,

  "amount": 20,

  "currency_code": "USD",

  "gpa_order_unload": {

    "token": "6bbb1169-7080-46fc-a8fd-801fd56758e4",

    "amount": 20,

    "transaction_token": "9b82ebfc-b2f8-4c9b-9bf5-b1f6b2411015",

    "state": "PENDING",

    "funding": {

      "amount": 20,

      "source": {

        "type": "programgateway",

        "token": "**********fs_1",

        "active": true,

        "name": "RitzPGFS",

        "is_default_account": false,

        "created_time": "2018-05-09T18:16:07Z",

        "last_modified_time": "2018-05-09T18:16:07Z"

      }

    },

    "funding_source_token": "**********fs_1",

    "jit_funding": {

      "token": "4b717779-e2ce-4252-98d7-eb5b6bb36bcb",

      "method": "pgfs.refund.authorization",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "amount": 20

    }

  },

  "network": "VISA",

  "subnetwork": "VISANET",

  "acquirer_fee_amount": 0,

  "acquirer": {

    "institution_country": "840",

    "institution_id_code": "162620044",

    "retrieval_reference_number": "382593949939",

    "system_trace_audit_number": "400749"

  },

  "card_security_code_verification": {

    "type": "CVV1",

    "response": {

      "code": "0000",

      "memo": "Card security code match"

    }

  },

  "cardholder_authentication_data": {

    "verification_result": "not_present"

  },

  "issuer_received_time": "2020-11-30T20:12:49.647Z",

  "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

  "network_reference_id": "0002000410212901579",

  "card_acceptor": {

    "mid": "000999988887777",

    "mcc": "6411",

    "network_mid": "000999988887777",

    "name": "Test Merchant",

    "city": "Test City",

    "country": "USA",

    "poi": {

      "tid": "TR100000",

      "partial_approval_capable": "1",

      "cardholder_presence": "1",

      "card_presence": "1",

      "channel": "OTHER",

      "processing_type": "MAGSTRIPE",

      "pin_present": "false"

    }

  }

}

 

1.2 Refund authorization approval JIT gateway response (transaction model v1)

{

  "jit_funding": {

    "token": "AzByCxDw-1605231119-201130-081250",

    "method": "pgfs.refund.authorization",

    "user_token": "r_user_2",

    "acting_user_token": "r_user_2",

    "amount": 20,

    "memo": "loan_number:1605231119"

  }

}

 

1.3 Refund authorization approval webhook payload (transaction model v1)

{

  "transactions": [

    {

      "type": "refund.authorization",

      "state": "PENDING",

      "identifier": "3135",

      "token": "13aeef75-b9ea-4427-843f-c76a8b8899d9",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10,

        "impacted_amount": 20,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5760.63,

            "available_balance": 90,

            "credit_balance": 0,

            "pending_credits": 10,

            "impacted_amount": 20

          }

        }

      },

      "duration": 1000,

      "created_time": "2020-11-30T20:12:49Z",

      "user_transaction_time": "2020-11-30T20:12:49Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 20,

      "amount": 20,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "approval_code": "568129",

      "response": {

        "code": "0000",

        "memo": "Approved or completed successfully"

      },

      "gpa_order_unload": {

        "token": "6bbb1169-7080-46fc-a8fd-801fd56758e4",

        "amount": 20,

        "memo": "loan_number:1605231119",

        "created_time": "2020-11-30T20:12:50Z",

        "last_modified_time": "2020-11-30T20:12:50Z",

        "transaction_token": "9b82ebfc-b2f8-4c9b-9bf5-b1f6b2411015",

        "state": "PENDING",

        "response": {

          "code": "0000",

          "memo": "Approved or completed successfully"

        },

        "funding": {

          "amount": 20,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          },

          "gateway_log": {

            "order_number": "13aeef75-b9ea-4427-843f-c76a8b8899d9",

            "transaction_id": "AzByCxDw-1605231119-201130-081250",

            "message": "Approved or completed successfully",

            "duration": 319,

            "timed_out": false,

            "response": {

              "code": "200",

              "data": {

                "jit_funding": {

                  "token": "AzByCxDw-1605231119-201130-081250",

                  "method": "pgfs.refund.authorization",

                  "user_token": "r_user_2",

                  "acting_user_token": "r_user_2",

                  "amount": 20,

                  "memo": "loan_number:1605231119"

                }

              }

            }

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "4b717779-e2ce-4252-98d7-eb5b6bb36bcb",

          "method": "pgfs.refund.authorization",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 20

        }

      },

      "network": "VISA",

      "subnetwork": "VISANET",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "162620044",

        "retrieval_reference_number": "382593949939",

        "system_trace_audit_number": "400749"

      },

      "card_security_code_verification": {

        "type": "CVV1",

        "response": {

          "code": "0000",

          "memo": "Card security code match"

        }

      },

      "cardholder_authentication_data": {

        "verification_result": "not_present"

      },

      "issuer_received_time": "2020-11-30T20:12:49.647Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000410212901579",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "network_mid": "000999988887777",

        "mcc_groups": [

          "NONE"

        ],

        "name": "Test Merchant",

        "city": "Test City",

        "country": "USA",

        "poi": {

          "tid": "TR100000",

          "partial_approval_capable": "1",

          "cardholder_presence": "1",

          "card_presence": "1",

          "channel": "OTHER",

          "processing_type": "MAGSTRIPE",

          "pin_present": "false"

        }

      },

      "is_recurring": false

    }

  ]

}

 

1.4 Refund authorization clearing webhook payload (transaction model v1)

{

  "transactions": [

    {

      "type": "refund.authorization.clearing",

      "state": "COMPLETION",

      "identifier": "3153",

      "token": "399a72af-789e-4d48-a59c-749ff8856699",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "preceding_related_transaction_token": "13aeef75-b9ea-4427-843f-c76a8b8899d9",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5730.63,

        "available_balance": 60,

        "credit_balance": 0,

        "pending_credits": 10,

        "impacted_amount": 20,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5730.63,

            "available_balance": 60,

            "credit_balance": 0,

            "pending_credits": 10,

            "impacted_amount": 20

          }

        }

      },

      "duration": 221,

      "created_time": "2020-11-30T21:12:05Z",

      "user_transaction_time": "2020-11-30T21:12:05Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 20,

      "amount": 20,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "approval_code": "197605",

      "response": {

        "code": "0000",

        "memo": "Approved or completed successfully"

      },

      "gpa_order_unload": {

        "token": "5558e734-899d-4922-96ae-0e3737641ac1",

        "amount": 20,

        "created_time": "2020-11-30T21:12:05Z",

        "last_modified_time": "2020-11-30T21:12:05Z",

        "transaction_token": "6abade61-94ec-46f8-b846-7cfd51a9899f",

        "state": "COMPLETION",

        "response": {

          "code": "0000",

          "memo": "Approved or completed successfully"

        },

        "funding": {

          "amount": 20,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "fae8b118-feab-4c60-bf86-30f806252124",

          "method": "pgfs.refund",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 20

        }

      },

      "network": "VISA",

      "subnetwork": "VISANETDEBIT",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "814018808",

        "retrieval_reference_number": "382593949939",

        "system_trace_audit_number": "149178"

      },

      "issuer_received_time": "2020-11-30T21:12:05.270Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000163571158233",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "network_mid": "000999988887777",

        "mcc_groups": [

          "NONE"

        ],

        "name": "Test Merchant",

        "city": "Test City",

        "country": "USA",

        "poi": {

          "tid": "TR100000",

          "partial_approval_capable": "0",

          "cardholder_presence": "1",

          "card_presence": "1",

          "channel": "OTHER",

          "processing_type": "MAGSTRIPE",

          "pin_present": "false"

        }

      },

      "is_recurring": false

    }

  ]

}

 

2 Refund authorization decline (transaction model v1)

2.1 Refund authorization JIT gateway request (transaction model v1)

{

  "type": "refund.authorization",

  "state": "PENDING",

  "token": "9d46a00a-7732-47a8-8107-081d2790071e",

  "user_token": "r_user_2",

  "acting_user_token": "r_user_2",

  "card_token": "r_card_2",

  "gpa": {

    "currency_code": "USD",

    "ledger_balance": 5760.63,

    "available_balance": 90,

    "credit_balance": 0,

    "pending_credits": 10,

    "balances": {

      "USD": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10

      }

    }

  },

  "created_time": "2020-11-30T20:04:58Z",

  "user_transaction_time": "2020-11-30T20:04:58Z",

  "settlement_date": "2020-11-30T00:00:00Z",

  "request_amount": 20,

  "amount": 20,

  "currency_code": "USD",

  "gpa_order_unload": {

    "token": "54bb4845-2c0f-47c7-85b4-e384972a615e",

    "amount": 20,

    "transaction_token": "31d0c977-6d5f-4f43-90d2-e2a27fe2aa33",

    "state": "PENDING",

    "funding": {

      "amount": 20,

      "source": {

        "type": "programgateway",

        "token": "**********fs_1",

        "active": true,

        "name": "RitzPGFS",

        "is_default_account": false,

        "created_time": "2018-05-09T18:16:07Z",

        "last_modified_time": "2018-05-09T18:16:07Z"

      }

    },

    "funding_source_token": "**********fs_1",

    "jit_funding": {

      "token": "fe1a572a-e7d2-46f9-99b3-27f0485836ec",

      "method": "pgfs.refund.authorization",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "amount": 20

    }

  },

  "network": "VISA",

  "subnetwork": "VISANET",

  "acquirer_fee_amount": 0,

  "acquirer": {

    "institution_country": "840",

    "institution_id_code": "924049349",

    "retrieval_reference_number": "115623887170",

    "system_trace_audit_number": "939729"

  },

  "card_security_code_verification": {

    "type": "CVV1",

    "response": {

      "code": "0000",

      "memo": "Card security code match"

    }

  },

  "cardholder_authentication_data": {

    "verification_result": "not_present"

  },

  "issuer_received_time": "2020-11-30T20:04:58.642Z",

  "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

  "network_reference_id": "0002000206894909222",

  "card_acceptor": {

    "mid": "000999988887777",

    "mcc": "6411",

    "network_mid": "000999988887777",

    "name": "Test Merchant",

    "city": "Test City",

    "country": "USA",

    "poi": {

      "tid": "TR100000",

      "partial_approval_capable": "1",

      "cardholder_presence": "1",

      "card_presence": "1",

      "channel": "OTHER",

      "processing_type": "MAGSTRIPE",

      "pin_present": "false"

    }

  }

}

 

2.2 Refund authorization decline JIT gateway response (transaction model v1)

{

  "jit_funding": {

    "token": "AzByCxDw-2070438477-201130-080459",

    "method": "pgfs.refund.authorization",

    "user_token": "r_user_2",

    "acting_user_token": "r_user_2",

    "amount": 20,

    "memo": "loan_number:2070438477",

    "decline_reason": "SUSPECTED_FRAUD"

  }

}

 

2.3 Refund authorization decline webhook payload (transaction model v1)

{

  "transactions": [

    {

      "type": "refund.authorization",

      "state": "DECLINED",

      "identifier": "3133",

      "token": "9d46a00a-7732-47a8-8107-081d2790071e",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5760.63,

            "available_balance": 90,

            "credit_balance": 0,

            "pending_credits": 10

          }

        }

      },

      "duration": 801,

      "created_time": "2020-11-30T20:04:58Z",

      "user_transaction_time": "2020-11-30T20:04:58Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 20,

      "amount": 20,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "response": {

        "code": "1837",

        "memo": "Corresponding JIT Refund Failure"

      },

      "gpa_order_unload": {

        "token": "006d599b-4932-4d36-95dc-58f3ff89fc4a",

        "amount": 20,

        "created_time": "2020-11-30T20:04:59Z",

        "last_modified_time": "2020-11-30T20:04:59Z",

        "transaction_token": "2a801b60-61d4-4dc4-8605-9f65d89669fb",

        "state": "ERROR",

        "response": {

          "code": "1878",

          "memo": "Corresponding JIT Load Failure"

        },

        "funding": {

          "amount": 20,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          },

          "gateway_log": {

            "order_number": "9d46a00a-7732-47a8-8107-081d2790071e",

            "message": "Unable to parse: {\"jit_funding\":{\"token\":\"AzByCxDw-2070438477-201130-080459\",\"method\":\"pgfs.refund.authorization\",\"user_token\":\"r_user_2\",\"acting_user_token\":\"r_user_2\",\"amount\":20,\"memo\":\"loan_number:2070438477\",\"decline_reason\":\"SUSPECTED_FRAUD\"}}",

            "duration": 367,

            "timed_out": false,

            "response": {

              "code": "200"

            }

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "fe1a572a-e7d2-46f9-99b3-27f0485836ec",

          "method": "pgfs.refund.authorization",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 20

        }

      },

      "network": "VISA",

      "subnetwork": "VISANET",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "924049349",

        "retrieval_reference_number": "115623887170",

        "system_trace_audit_number": "939729"

      },

      "card_security_code_verification": {

        "type": "CVV1",

        "response": {

          "code": "0000",

          "memo": "Card security code match"

        }

      },

      "cardholder_authentication_data": {

        "verification_result": "not_present"

      },

      "issuer_received_time": "2020-11-30T20:04:58.642Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000206894909222",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "network_mid": "000999988887777",

        "name": "Test Merchant",

        "city": "Test City",

        "country": "USA",

        "poi": {

          "tid": "TR100000",

          "partial_approval_capable": "1",

          "cardholder_presence": "1",

          "card_presence": "1",

          "channel": "OTHER",

          "processing_type": "MAGSTRIPE",

          "pin_present": "false"

        }

      },

      "is_recurring": false

    }

  ]

}

 

3 Refund authorization reversal (transaction model v1)

3.1 Refund authorization reversal webhook payload (transaction model v1)

{

  "transactions": [

    {

      "type": "refund.authorization.reversal",

      "state": "CLEARED",

      "identifier": "3139",

      "token": "8df01ccc-384a-4d53-8785-0a91f727b09a",

      "user_token": "r_user_2",

      "acting_user_token": "r_user_2",

      "card_token": "r_card_2",

      "preceding_related_transaction_token": "13aeef75-b9ea-4427-843f-c76a8b8899d9",

      "gpa": {

        "currency_code": "USD",

        "ledger_balance": 5760.63,

        "available_balance": 90,

        "credit_balance": 0,

        "pending_credits": 10,

        "impacted_amount": -20,

        "balances": {

          "USD": {

            "currency_code": "USD",

            "ledger_balance": 5760.63,

            "available_balance": 90,

            "credit_balance": 0,

            "pending_credits": 10,

            "impacted_amount": -20

          }

        }

      },

      "duration": 205,

      "created_time": "2020-11-30T20:34:06Z",

      "user_transaction_time": "2020-11-30T20:12:49Z",

      "settlement_date": "2020-11-30T00:00:00Z",

      "request_amount": 20,

      "amount": 20,

      "issuer_interchange_amount": 0,

      "currency_code": "USD",

      "response": {

        "code": "0000",

        "memo": "Approved or completed successfully"

      },

      "gpa_order_unload": {

        "token": "6bbb1169-7080-46fc-a8fd-801fd56758e4",

        "amount": 20,

        "memo": "loan_number:1605231119",

        "created_time": "2020-11-30T20:12:50Z",

        "last_modified_time": "2020-11-30T20:34:07Z",

        "transaction_token": "e16b18fb-5531-4e84-b2c4-d542de1061ef",

        "state": "REVERSED",

        "response": {

          "code": "0000",

          "memo": "Approved or completed successfully"

        },

        "funding": {

          "amount": 20,

          "source": {

            "type": "programgateway",

            "token": "**********fs_1",

            "active": true,

            "name": "RitzPGFS",

            "is_default_account": false,

            "created_time": "2018-05-09T18:16:07Z",

            "last_modified_time": "2018-05-09T18:16:07Z"

          }

        },

        "funding_source_token": "**********fs_1",

        "jit_funding": {

          "token": "b9a9cad6-1c5f-448c-a159-ea59ed659fc5",

          "method": "pgfs.refund.authorization.reversal",

          "user_token": "r_user_2",

          "acting_user_token": "r_user_2",

          "amount": 20,

          "original_jit_funding_token": "AzByCxDw-1605231119-201130-081250"

        }

      },

      "network": "VISA",

      "subnetwork": "VISANET",

      "acquirer_fee_amount": 0,

      "acquirer": {

        "institution_country": "840",

        "institution_id_code": "287401561",

        "retrieval_reference_number": "382593949939",

        "system_trace_audit_number": "351108"

      },

      "issuer_received_time": "2020-11-30T20:34:06.876Z",

      "issuer_payment_node": "a469a427c3cb67400bdec07314619ebe",

      "network_reference_id": "0002000218068690902",

      "card_acceptor": {

        "mid": "000999988887777",

        "mcc": "6411",

        "network_mid": "000999988887777",

        "mcc_groups": [

          "NONE"

        ],

        "name": "Test Merchant",

        "city": "Test City",

        "country": "USA",

        "poi": {

          "tid": "TR100000",

          "partial_approval_capable": "0",

          "cardholder_presence": "1",

          "card_presence": "1",

          "channel": "OTHER",

          "processing_type": "MAGSTRIPE",

          "pin_present": "false"

        }

      },

      "is_recurring": false

    }

  ]

}



Thanks for the feedback
Thanks for the feedback
Was this article helpful?

We've recieved your feedback.

Contact Developer Support
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.