PHP code example of saulmoralespa / wompi-api-php

1. Go to this page and download the library: Download saulmoralespa/wompi-api-php library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

saulmoralespa / wompi-api-php example snippets


// ... please, add composer autoloader first
ent;

$keyPrivate = "your_keyprivate";
$keyPublic = "your_keypublic";
$keyIntegrety = "your_keyIntegrety";

//instance class Client

$wompi = new Client($keyPrivate, $keyPublic, $keyIntegrety);

//for sandbox
$wompi->sandbox();

$data = [
    "number" => "4242424242424242",
    "exp_month" => "06",
    "exp_year" => "29",
    "cvc" => "123",
    "card_holder" => "Pedro Pérez"
];

try {
$response = $wompi->cardToken($data);
$token = $response[ 'data' ]['id'];
} catch(\Exception $exception) {

}

$data = [
    "phone_number" => "3178034732"
];

try {
$response = $wompi->nequiToken($data);
$token = $response[ 'data' ]['id'];
} catch(\Exception $exception) {

}

$data = [
    "type_document" => "CC",
    "number_document" => "1122233",
    "product_number" => "3991111111"
];

try {
$response = $this->wompi->daviplataToken($data);
$token = $response[ 'data' ]['id'];
} catch(\Exception $exception) {

}

$data = [
    "type_document" => "CC",
    "number_document" => "1122233",
    "product_number" => "3991111111",
    "redirect_url" => "https://www.bancolombia.com",
    "type_auth" => "TOKEN" // or TRANSACTION
];

try {
$response = $this->wompi->bancolombiaToken($data);
$token = $response[ 'data' ]['id'];
} catch(\Exception $exception) {

}

try {
$token = "";
$response = $this->wompi->getStatusSubscriptionNequi($token);
} catch (\Exception $exception) {

}

try {
$token = "";
$response = $this->wompi->getStatusSubscriptionDaviplata($token);
} catch (\Exception $exception) {

}

try {
$token = "";
$response = $this->wompi->getStatusSubscriptionBancolombia($token);
} catch (\Exception $exception) {

}

try {
$type = "CARD"; //NEQUI, CARD, DAVIPLATA, BANCOLOMBIA_TRANSFER
$token = "";
$acceptanceTokens = $this->wompi->getAcceptanceTokens();
$data = [
    "customer_email" => "[email protected]",
    "type" => $type,
    "token" => $token,
    "payment_description" => "Descripción de la suscripción creada",
    "acceptance_token" => $acceptanceTokens[ 'data' ][ "presigned_acceptance" ][ "acceptance_token" ],
    "accept_personal_auth" => $acceptanceTokens[ 'data' ][ "presigned_personal_data_auth" ][ "acceptance_token" ]
];
$response = $this->wompi->createSource($data);
} catch (\Exception $exception) {

}

try {
$sourceId = 12344;
$data = [
    "amount_in_cents" => 4990000,
    "currency" => "COP",
    "customer_email" => "[email protected]",
    "payment_method" =>  [
        "installments" => 1
    ],
    "reference" => (string)time(),
    "payment_source_id" => $sourceId,
    "recurrent" => true // optional
];
$response = $this->wompi->transaction($data);
} catch (\Exception $exception) {

}

try {
$sourceId = 13345;
$data = [
    "amount_in_cents" => 6000000,
    "currency" => "COP",
    "customer_email" => "[email protected]",
    "reference" => (string)time(),
    "payment_source_id" => $sourceId
];

$response = $this->wompi->transaction($data);
} catch (\Exception $exception) {

}

try {
$data = [
    "name" => "Pago de arriendo edificio Lombardía - AP 505",
    "description" => "Arriendo mensual", // Descripción del pago
    "single_use" => false, // `false` current caso de que el link de pago pueda recibir múltiples transacciones APROBADAS o `true` si debe dejar de aceptar transacciones después del primer pago APROBADO
    "collect_shipping" => false, // Si deseas que el cliente inserte su información de envío current el checkout, o no
    "currency" => "COP",
    "amount_in_cents" => 500000
];
$response = $this->wompi->createPaymentLink($data);
} catch (\Exception $exception) {

}

try {
$id = "ID_PAYMENT_LINK";
$response = $this->wompi->getPaymentLink($id);
} catch (\Exception $exception) {

}