Khipu Integration

Introduction

Khipu is a payment method operating in Chile, Argentina, Peru, and soon in Mexico and Spain. It allows merchants to collect payments electronically and customers to pay using their bank accounts (Checking, Savings, Electronic Checkbooks, etc.).

Standard use of Khipu requires that the customer authorize the payment on Khipu's website or by installing a mobile app, the Khipu payment terminal.

The Khipu SDK for Android/iOS allows merchants with an app (Android and/or iOS) to embed the payment authorization process directly in their app, thereby reducing friction in the buying process and, consequently, increasing the conversion rate of the entire process.

The Khipu Web SDK allows merchants to embed the payment authorization process on their own website without redirecting the payer to the Khipu website, obtaining the same benefits as in the app case, i.e., reducing friction in the buying process and increasing conversion.

General Schema

schema.png

Normal Prerequisites

  1. Have a merchant account on khipu.com . There are regular billing accounts and "developer mode" accounts. In both, the cycle of creation, authorization, and reconciliation of payment is identical. The difference is that regular accounts use real banks and money while "developer mode" accounts use fictitious ones. We recommend using a "developer mode" account during the development and testing process of the integration and switching to regular account credentials for API access in production.
  2. A server capable of connecting via HTTPS to khipu.com and able to provide a web endpoint (also known as a webhook ) to receive notifications of reconciliation of payments received.

Definition of the Charge to be Made (in the merchant's app)

The merchant must define the type of charge that will be made through the application. This can include a shopping cart, a one-time purchase, or any other mode that the merchant establishes.

Creation of Payment Intent

Payment intent can be created in two ways:

  1. Payment Request : Use the khipu API to create charges and receive payments (v3.0) .
  2. Payment Descriptor : Generated through the Operation Descriptor Generator API (v1.0) .

Both are REST APIs built according to the OpenAPI 3+ specification.

Payment Authorization

Once the payment request has been created and the unique payment identifier is available, this identifier must be transferred to the App. The specific method by which the identifier reaches the App is not detailed in this document, as it depends on the specific implementation of the system.

For more details on the implementation, you can consult the following links:

Receipt of Reconciliation Notification (on the merchant's server)

Once the paying customer has authorized the payment, Khipu will immediately begin the reconciliation and verification process. At the end of this process, Khipu will invoke the notification URL associated with the payment (webhook configured at the time of generating the charge) to send all payment details. This model differs from version 1.3 of the notification API, as it stops sending the notification_token parameter, which then had to be used in a POST request to the payment detail endpoint.

You can find the complete explanation in the section Webhook for notifications.