Skip to main content

Documentación

Desembolso a tarjeta

Envíe fondos a una tarjeta con Rapyd Disburse. | Empresa

Rapyd facilita la realización de desembolsos a tarjetas. Los casos de uso más comunes incluyen:

  • Desembolso a la tarjeta de un empleado o trabajador

  • Desembolso a una tarjeta para uso de crédito o beneficios

Certificación PCI

Solo los clientes con certificación PCI-DSS pueden manejar información personal identificable relacionada con tarjetas. Este método está disponible únicamente para comercios que hayan firmado un acuerdo especial con Rapyd.

Su plataforma de mejoras para el hogar conecta a clientes con profesionales de servicios domésticos, como plomeros, electricistas y cerrajeros. Usted cobra a los clientes y desembolsa los fondos a los profesionales, descontando sus comisiones.

Su sistema automatizado de cuentas realiza los desembolsos desde una billetera corporativa. La billetera se crea tal como se describe en Crear una billetera de Rapyd.

Uno de los cerrajeros finaliza un trabajo y su sistema de cuentas transfiere un desembolso de 250 USD (dólares estadounidenses) a su tarjeta.

La forma de encontrar los métodos específicos de desembolso a tarjeta que utilizará y los campos requeridos que los beneficiarios deben completar se describe en Cómo funciona.

process-payout-to-card.jpg
  1. El sistema de cuentas solicita a Rapyd que procese el desembolso.

  2. Rapyd procesa el desembolso.

  3. El backend del sitio web recibe la confirmación de Rapyd de que el desembolso se completó.

Los diagramas de secuencia de mensajes a continuación describen cómo se intercambia la información entre Rapyd, el comercio y la red de tarjetas:

Crear desembolso a tarjeta – Beneficiario guardado

create-payout-to-card-with-saved-beneficiary---success.svg

Crear desembolso a tarjeta – Beneficiario nuevo

create-payout-to-card-with-new-beneficiary---success.svg

Requisitos previos

Para ejecutar los ejemplos de este caso de uso, debe crear el siguiente identificador en su propio sandbox:

  • ewallet - Ejecute Crear billetera para la billetera electrónica de la plataforma de mejoras para el hogar. Utilice el ID que reciba en la respuesta.

Encuentre los tipos de métodos de desembolso que utilizará. Consulte Listar tipos de métodos de desembolso.

Identifique los campos requeridos para cada tipo de método de desembolso. Consulte Obtener campos requeridos del desembolso.

Sugerencia

En la respuesta de Obtener campos requeridos del desembolso, el atributo beneficiary_required_fields define los campos obligatorios para el objeto beneficiario. Utilice Validar beneficiario para verificar los campos del beneficiario antes de solicitar un desembolso. Consulte Validación de los detalles del beneficiario.

Su negocio de mejoras para el hogar es el remitente del desembolso y el cerrajero es el beneficiario que recibe los fondos.

Para desembolsar los fondos a la tarjeta del cerrajero, usted solicita a Rapyd que procese el desembolso.

Para ello, utilizará Crear desembolso con los siguientes parámetros.

Descripción de los parámetros

Parámetro del cuerpo

Descripción

ewallet

Ingrese el id de la billetera que recibió cuando creó la billetera corporativa en su sandbox.Para los fines de este caso de uso, se utiliza ewallet_e22fe4e337e26734a96d13a241063a75, que es el ID de la billetera creado en el sandbox.

monto_del_desembolso

Ingrese 250 como el monto recibido por el beneficiario.

tipo_de_método_de_desembolso

Ingrese us_debit_visa_card como el tipo de método de desembolso.

moneda_del_remitente

Ingrese USD como el código de dólares estadounidenses, la moneda del remitente.

país_del_remitente

Ingrese US como el código de Estados Unidos, el país del remitente.

país_del_beneficiario

Ingrese US como el código de Estados Unidos, el país del beneficiario.

moneda_del_desembolso

Ingrese USD como el código de dólares estadounidenses, la moneda recibida por el beneficiario.

tipo_de_entidad_del_remitente

Ingrese empresa como el tipo de entidad del remitente.

tipo_de_entidad_del_beneficiario

Ingrese individual como el tipo de entidad del beneficiario.

beneficiario

Ingrese un objeto beneficiario que contenga los campos requeridos listados en la respuesta de 'Obtener campos requeridos del desembolso'. Para este ejemplo, ingrese:

  • correo electrónico - testemployee@rapyd.net

  • número_de_tarjeta - 4111111111111111

  • mes_de_expiración_de_la_tarjeta - 10

  • año_de_expiración_de_la_tarjeta - 20

  • nombre - Prueba

  • apellido- Empleado

descripción

Ingrese Desembolso a tarjeta como la descripción de la transacción de desembolso.

Solicitud de creación de desembolso

Usted solicita a Rapyd que procese el desembolso de 250 USD (dólares estadounidenses) hacia la tarjeta del cerrajero.

    • Solicitud

      • // Request URL: POST https://sandboxapi.rapyd.net/v1/payouts
        
        // Message body:
        {
            "ewallet": "ewallet_e22fe4e337e26734a96d13a241063a75",
            "payout_amount": 250,
            "payout_method_type": "us_debit_visa_card",
            "sender_currency": "USD",
            "sender_country": "US",
            "beneficiary_country": "US",
            "payout_currency": "USD",
            "sender_entity_type": "company",
            "beneficiary_entity_type": "individual",
            "beneficiary": {
                "email": "testemployee@rapyd.net",
                "card_number": "4111111111111111",
                "card_expiration_month": "10",
                "card_expiration_year": "20",
                "first_name": "Test",
                "last_name": "Employee"
            },    
            "description": "Payout to card"
        }
    • .NET Core

      • using System;
        using System.Text.Json;
        
        namespace RapydApiRequestSample
        {
            class Program
            {
                static void Main(string[] args)
                {
                    try
                    {
        
                        var requestObj = new
                        {
                            ewallet = "ewallet_e22fe4e337e26734a96d13a241063a75",
                            payout_amount = 250,
                            payout_method_type = "us_visa_card",
                            sender_currency = "USD",
                            sender_country = "US",
                            beneficiary_country = "US",
                            payout_currency = "USD",
                            sender_entity_type = "company",
                            beneficiary_entity_type = "individual",
                            beneficiary = new
                            {
                                email = "johndoe@rapyd.net",
                                card_number = "4111111111111111",
                                card_expiration_month = "10",
                                card_expiration_year = "20",
                                first_name = "John",
                                last_name = "Doe"
                            },
                            description = "Payout to card"
        
                        };
        
                        string request = JsonSerializer.Serialize(requestObj);
        
                        string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/payouts", request);
        
                        Console.WriteLine(result);
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("Error completing request: " + e.Message);
                    }
                }
            }
        }
    • JavaScript

      • const makeRequest = require('../../../../../Utilities/JS/utilities').makeRequest;
        async function main() {
          try {
            const body = {
              ewallet: 'ewallet_e22fe4e337e26734a96d13a241063a75',
              payout_amount: 250,
              payout_method_type: 'us_visa_card',
              sender_currency: 'USD',
              sender_country: 'US',
              beneficiary_country: 'US',
              payout_currency: 'USD',
              sender_entity_type: 'company',
              beneficiary_entity_type: 'individual',
              beneficiary: {
                email: 'johndoe@rapyd.net',
                card_number: '4111111111111111',
                card_expiration_month: '10',
                card_expiration_year: '20',
                first_name: 'John',
                last_name: 'Doe'
              },
              description: 'Payout to card'
            };
            const result = await makeRequest('POST', '/v1/payouts', body);
            console.log(result);
          } catch (error) {
            console.error('Error completing request', error);
          }
        }
    • PHP

      • <?php
        
        $path = $_SERVER['DOCUMENT_ROOT'];
        $path .= "/code_race_2020/Utilities/PHP/utilities.php";
        include($path);
        
        $body = [
            'ewallet' => "ewallet_e22fe4e337e26734a96d13a241063a75",
            "payout_amount" => 250,
            "payout_method_type" => "us_visa_card",
            "sender_currency" => "USD",
            "sender_country" => "US",
            "beneficiary_country" => "US",
            "payout_currency" => "USD",
            "sender_entity_type" => "company",
            "beneficiary_entity_type" => "individual",
            "beneficiary" => array(
                "email" => "johndoe@rapyd.net",
                "card_number" => "4111111111111111",
                "card_expiration_month" => "10",
                "card_expiration_year" => "20",
                "first_name" => "John",
                "last_name" => "Doe"
            ),
            "description" => "Payout to card"
        ];
        
        try {
            $object = make_request('post', '/v1/payouts', $body);
            var_dump($object);
        } catch (Exception $e) {
            echo "Error: $e";
        }
        ?>
    • Python

      • from pprint import pprint
        
        from utilities import make_request
        
        payout_body = {
            "ewallet": "ewallet_e22fe4e337e26734a96d13a241063a75",
            "payout_amount": 250,
            "payout_method_type": "us_visa_card",
            "sender_currency": "USD",
            "sender_country": "US",
            "beneficiary_country": "US",
            "payout_currency": "USD",
            "sender_entity_type": "company",
            "beneficiary_entity_type": "individual",
            "beneficiary": {
                "email": "johndoe@rapyd.net",
                "card_number": "4111111111111111",
                "card_expiration_month": "10",
                "card_expiration_year": "20",
                "first_name": "John",
                "last_name": "Doe"
            },
            "description": "Payout to card"
        }
        result = make_request(method='post', path='/v1/payouts', body=payout_body)
        pprint(result)
Respuesta de creación del desembolso

Echemos un vistazo a la respuesta.

    • Respuesta

      • {
            "status": {
                "error_code": "",
                "status": "SUCCESS",
                "message": "",
                "response_code": "",
                "operation_id": "abccbd6f-ddc2-4884-887c-aefa94526a7c"
            },
            "data": {
                "id": "payout_9600f264f394314fd178ba9eae689005",
                "payout_type": "card",
                "payout_method_type": "us_debit_visa_card",
                "amount": 250,
                "payout_currency": "USD",
                "sender_amount": 250,
                "sender_currency": "USD",
                "status": "Completed",
                "sender_country": "US",
                "sender": {
                    "id": "sender_afb24391ce4649619c4e9830abfa2f11",
                    "country": "US",
                    "entity_type": "company",
                    "currency": "USD"
                },
                "beneficiary_country": "US",
                "beneficiary": {
                    "id": "beneficiary_022ce7183dcc8eb93ffa80933a50ecd3",
                    "last_name": "Employee",
                    "first_name": "Test",
                    "country": "US",
                    "entity_type": "individual",
                    "name": "Test Employee",
                    "currency": "USD",
                    "email": "testemployee@rapyd.net",
                    "card_expiration_year": "20",
                    "card_expiration_month": "10",
                    "card_number": "1111"
                },
              
        //      ...      
              
                "ewallets": [
                    {
                        "ewallet_id": "ewallet_e22fe4e337e26734a96d13a241063a75",
                        "amount": 250,
                        "percent": 100 
                    }
                ],
              
        //      ...      
              
                "description": "Payout to card",
                "created_at": 1580029824,
              
        //      ...      
              
            }
        }

Además de los valores de los parámetros que ingresó en la solicitud, la sección datos de esta respuesta muestra lo siguiente:

  • El tipo de desembolso es tarjeta.

  • El monto del desembolso es 250.

  • La moneda_del_desembolso es USD.

  • El estado es Completado. Esto significa que el beneficiario recibió los fondos del desembolso.