Api Documentation

Introdução

Esta seção descreve o SMMARTPAY API de gateway de pagamento.


O SMMARTPAY API is simple to integrate into your company's software. Our API takes cURL requests, has well-formatted URLs, and produces JSON responses.

A API pode ser usada no modo de teste sem afetar seus dados reais. A solicitação é autenticada usando a chave da API, que também estabelece se o pagamento é legítimo ou não. Para o modo de teste basta usar a URL de sandbox e No caso do modo ao vivo use a URL ao vivo da seção Iniciar pagamento .

Moedas suportadas

As moedas suportadas por SMMARTPAY estão listados abaixo.


Moeda Símbolo da moeda
BRL R$
USD R$

Obtenha a chave da API

Como obter a chave da API é explicado nesta parte.


Para acessar o seu SMMARTPAY merchant account, please log in. In case you don't have an account, you can Clique aqui.

Agora vá para o Conta > Configurações > Chave de API a partir do painel do comerciante.

As chaves da API podem ser encontradas lá que é Chave pública e chave secreta. Use estas chaves para iniciar a solicitação de API. A qualquer momento você pode gerar uma nova API tecla clicando Gerar chave de API botão. Lembre-se de não compartilhar essas chaves com ninguém.

Iniciar pagamento

Nesta seção, o procedimento para iniciar o pagamento é explicado.


To begin the payment process, use the sample code provided, and pay close attention to the parameters. The API endpoints mentioned below will need to be used to make the request.

Ponto final ao vivo: https://smmartpay.com/payment/initiate

Ponto final do teste: https://smmartpay.com/test/payment/initiate

Solicitação ao ponto final com os seguintes parâmetros abaixo.

Parâmetro Tipo É necessário Descrição
public_key string (50) obrigatório Sua chave de API pública
identifier string (20) obrigatório O identificador é basicamente para identificar o pagamento do seu lado
currency string (4) obrigatório Código da Moeda, Deve estar em Maiúsculas. ex. USD,EUR
amount decimal obrigatório Valor do pagamento
details string (100) obrigatório Detalhes do seu pagamento ou transação
ipn_url string obrigatório A URL de notificação de pagamento instantâneo
success_url string obrigatório URL de redirecionamento após a confirmação do pagamento
cancel_url string obrigatório URL de redirecionamento para cancelamento de pagamento
site_name string obrigatório Nome do site da sua empresa
site_logo string/url obrigatório Logotipo do site da sua empresa
checkout_theme string obrigatório Tema do formulário de checkout escuro/claro. O tema padrão é claro
Cliente
customer[] variedade obrigatório O cliente deve ser uma matriz
customer.first_name string obrigatório Customer's first name
customer.last_name string obrigatório Customer's last name
customer.email string obrigatório Customer's valid email
customer.mobile string obrigatório Customer's valid mobile
Informações de envio
shipping_info[] variedade opcional shipping_info deve ser um array
shipping_info.address_one string opcional Customer's address one
shipping_info.address_two string opcional Customer's address two
shipping_info.area string opcional Área de entrega do cliente
shipping_info.city string opcional Cidade de envio do cliente
shipping_info.sub_city string opcional Subcidade de entrega do cliente
shipping_info.state string opcional Estado de envio
shipping_info.postcode string opcional CEP de envio
shipping_info.country string opcional País de envio
shipping_info.others string opcional Outras informações
Informações de faturamento
billing_info[] variedade opcional billing_info deve ser uma matriz
billing_info.address_one string opcional Customer's address one
billing_info.address_two string opcional Customer's address two
billing_info.area string opcional Área de faturamento do cliente
billing_info.city string opcional Cidade de faturamento do cliente
billing_info.sub_city string opcional Subcidade de faturamento do cliente
billing_info.state string opcional Estado de faturamento
billing_info.postcode string opcional CEP de cobrança
billing_info.country string opcional País de faturamento
billing_info.others string opcional Outras informações

Valide o pagamento e o IPN.

Esta seção descreve o processo para obter sua notificação de pagamento instantâneo.


Para iniciar o pagamento siga o código de exemplo e tenha cuidado com os parâmetros. Você precisará fazer a solicitação com os seguintes endpoints da API.

Ponto final: URL do IPN da sua aplicação comercial.

Método de solicitação: PUBLICAR

Você receberá os seguintes parâmetros abaixo.

Parâmetro Descrição
status Status do pagamento: Efetuado com sucesso.
identificador O identificador é basicamente para identificar o pagamento do seu lado.
assinatura Uma assinatura hash para verificar seu pagamento do seu lado.
dados Os dados contêm algumas informações básicas com encargos, montante, moeda, ID da transação de pagamento, etc.
Iniciar pagamento
<?php
    $parameters = [
        'identifier' => 'DFU80XZIKS',
        'currency' => 'USD',
        'amount' => 11.00,
        'gateway_methods' => [
            // Please write the name of the gateway method you want to use
        ],
        'details' => 'Purchase T-shirt',
        'ipn_url' => 'http://example.com/ipn_url.php',
        'cancel_url' => 'http://example.com/cancel_url.php',
        'success_url' => 'http://example.com/success_url.php',
        'public_key' => 'your_public_key',
        'site_name' => 'your_site_name',
        'site_logo' => 'http://yoursite.com/logo.png',
        'checkout_theme' => 'light',
        'customer'=>[
            'first_name'=>'John',
            'last_name'=>'Doe',
            'email'=>'joan@gmail.com',
            'mobile'=>'12345789',
        ],
        'shipping_info'=>[
            'address_one'=>'',
            'address_two'=>'',
            'area'=>'',
            'city'=>'',
            'sub_city'=>'',
            'state'=>'',
            'postcode'=>'',
            'country'=>'',
            'others'=>'',
        ],
        'billing_info'=>[
            'address_one'=>'',
            'address_two'=>'',
            'area'=>'',
            'city'=>'',
            'sub_city'=>'',
            'state'=>'',
            'postcode'=>'',
            'country'=>'',
            'others'=>'',
        ]
    ];

    $parameters = http_build_query($parameters);

    //live end point
    $url = 'https://smmartpay.com/payment/initiate';

    //test end point
    $url = 'https://smmartpay.com/test/payment/initiate';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POSTFIELDS,  $parameters);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
    curl_close($ch);

?>
Exemplos de respostas
//Error Response.
{
    "status": "error",
    "message": [
        "Invalid api key"
    ]
}

//Success Response.
{
    "status": "success",
    "message": [
        "Payment initiated"
    ],
    "redirect_url": "https://example.com/payment/checkout?payment_trx=eyJpdiI6IkFyNllSNU1lOFdkYTlPTW52cytPNGc9PSIsInZhbHVlIjoiWWowRTRjdzZ1S1BBRm4ydS81OWR1WjdXeFIxcjE1WkZRVE9BcmZYeXpzND0iLCJtYWMiOiJjNDdhODUzYzY2NmZlZGJjZTI5ODQyMmRkYzdjYjRmM2NiNjg4M2RiMWZjN2EyMzFkODI4OWMwYjk3ZWYwNGQwIiwidGFnIjoiIn0%3D"
}
Valide o pagamento e o IPN.
<?php
    //Receive the response parameter
    $status = $_POST['status'];
    $signature = $_POST['signature'];
    $identifier = $_POST['identifier'];
    $data = $_POST['data'];

    // Generate your signature
    $customKey = $data['amount'].$identifier;
    $secret = 'YOUR_SECRET_KEY';
    $mySignature = strtoupper(hash_hmac('sha256', $customKey , $secret));

    $myIdentifier = 'YOUR_GIVEN_IDENTIFIER';

    if($status == "success" && $signature == $mySignature &&  $identifier ==  $myIdentifier){
        //your operation logic
    }
?>

We may use cookies or any other tracking technologies when you visit our website, including any other media form, mobile website, or mobile application related or connected to help customize the Site and improve your experience. saber mais

Permitir