Skip to main content

Documentación

Validar los detalles del beneficiario

Verifique sus beneficiarios para recibir desembolsos. | Empresa

Antes de usar un ID de beneficiario al crear un desembolso, Rapyd recomienda que compruebe que no se ha cometido ningún error al crear el ID. Para ello, valide los detalles del beneficiario para el tipo de método de desembolso correspondiente.

Por ejemplo, su servicio de viajes compartidos tiene un sitio web o una aplicación móvil que está registrada en la plataforma Rapyd. Su administrador de nóminas usa la billetera de la empresa para pagar a los conductores. Uno de sus conductores es un empleado al que transfiere un salario mensual de la billetera de la empresa a la cuenta bancaria del conductor.

En este ejemplo, el conductor es el beneficiario del desembolso. El administrador de nóminas quiere evitar volver a introducir los detalles del conductor cada mes. Así que obtuvo un ID para representar al beneficiario, tal como se describe Reutilizar a un beneficiario o remitente. El ID del beneficiario es válido para un método de desembolso con campos obligatorios que coinciden con todos los campos que eran obligatorios cuando se creó el ID. Sin embargo, los campos obligatorios de los métodos de desembolso pueden cambiar con el tiempo.

El administrador de nóminas desea aumentar las probabilidades de que el desembolso se realice correctamente cada mes. Por lo tanto, antes de solicitar el desembolso mensual al conductor, el administrador valida los detalles del beneficiario para el método de desembolso utilizado.

Veamos los aspectos más destacados de su flujo de trabajo.

validating-beneficiary.jpg
  1. En su sitio web, su administrador de nóminas le solicita validar a un beneficiario.

  2. El back-end del sitio web solicita a Rapyd que valide al beneficiario.

  3. Rapyd procesa la validación y envía el resultado al back-end del sitio web.

  4. Su administrador de nóminas recibe el resultado de la validación de su sitio web.

Prerrequisito

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

Cuando el administrador de nóminas solicita la validación del ID del beneficiario del empleado, solicita a Rapyd que valide al beneficiario.

Para eso, utilizar Validar al beneficiario con los siguientes parámetros:

Descripción de los parámetros del cuerpo

Parámetro del cuerpo

Descripción

beneficiary

Introducir el ID del beneficiario que recibió cuando creó el beneficiario para el empleado en su sandbox. Para los fines de esta lección de caso de uso, estamos usando beneficiary_a0345a157ccac51bf4d4a54b388c32ba, que es el ID del beneficiario que creamos en nuestro sandbox.

payout_method_type

Introducir ph_anzbank_bank como tipo de método de desembolso.

sender_country

Introducir GB como el código para el Reino Unido, el país del remitente.

sender_currency

Introducir PHP como el código para los pesos filipinos, la moneda del remitente.

sender_entity_type

Introducir empresa como el tipo de entidad para el remitente.

amount

Introducir 10000 como el monto máximo de desembolso a validar para el empleado.

Solicitud de validar el beneficiario

Solicita a Rapyd que valide al beneficiario.

    • Solicitud

      • // Request URL: POST https://sandboxapi.rapyd.net/v1/payouts/beneficiary/validate
        
        // Message body:
        
        {
                "beneficiary": "beneficiary_a0345a157ccac51bf4d4a54b388c32ba",
                "payout_method_type": "ph_anzbank_bank",
                "sender_country": "GB",
                "sender_currency": "PHP",
                "sender_entity_type": "company",
                "amount": 10000
        }
    • .NET Core

      • using System;
        using System.Text.Json;
        
        namespace RapydApiRequestSample
        {
            class Program
            {
                static void Main(string[] args)
                {
                    try
                    {
        
                        var requestObj = new
                        {
                            beneficiary = "beneficiary_a0345a157ccac51bf4d4a54b388c32ba",
                            payout_method_type = "ph_anzbank_bank",
                            sender_country = "GB",
                            sender_currency = "PHP",
                            sender_entity_type = "company",
                            amount = 10000
                        };
        
                        string request = JsonSerializer.Serialize(requestObj);
        
                        string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/payouts/beneficiary/validate", request);
        
                        Console.WriteLine(result);
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("Error completing request: " + e.Message);
                    }
                }
            }
        }
    • JavaScript

      • const makeRequest = require('<path-to-your-utility-file>/utilities').makeRequest;
        async function main() {
          try {
            const body = {
              beneficiary: 'beneficiary_a0345a157ccac51bf4d4a54b388c32ba',
              payout_method_type: 'ph_anzbank_bank',
              sender_country: 'GB',
              sender_currency: 'PHP',
              sender_entity_type: 'company',
              amount: 10000
            };
            const result = await makeRequest('POST', '/v1/payouts/beneficiary/validate', body);
            console.log(result);
          } catch (error) {
            console.error('Error completing request', error);
          }
        }
    • PHP

      • <?php
        
        $path = $_SERVER['DOCUMENT_ROOT'];
        $path .= "/<path-to-your-utility-file>/utilities.php";
        include($path);
        
        $body = [
            "beneficiary" => "beneficiary_a0345a157ccac51bf4d4a54b388c32ba",
            "payout_method_type" => "ph_anzbank_bank",
            "sender_country" => "GB",
            "sender_currency" => "PHP",
            "sender_entity_type" => "company",
            "amount" => 10000
        ];
        
        try {
            $object = make_request('post', '/v1/payouts/beneficiary/validate', $body);
            var_dump($object);
        } catch (Exception $e) {
            echo "Error: $e";
        }
        ?>
    • Python

      • from pprint import pprint
        
        from utilities import make_request
        
        beneficiary_info = {
            "beneficiary": 'beneficiary_a0345a157ccac51bf4d4a54b388c32ba',
            "payout_method_type": "ph_anzbank_bank",
            "sender_country": "GB",
            "sender_currency": "PHP",
            "sender_entity_type": "company",
            "amount": 10000
        }
        
        results = make_request(method='post',
                               path='/v1/payouts/beneficiary/validate',
                               body=beneficiary_info)
        pprint(results)
Respuesta de validar el beneficiario

Veamos la respuesta.

    • Respuesta

      • {
            "status": {
                "error_code": "",
                "status": "SUCCESS",
                "message": "",
                "response_code": "",
                "operation_id": "63c81cc9-3a36-4907-aeb7-27b4316c6af9"
            },
            "data": {
                "validated": true,
                "beneficiary": {
                    "id": "beneficiary_a0345a157ccac51bf4d4a54b388c32ba",
                    "last_name": "Name",
                    "first_name": "Test",
                    "country": "PH",
                    "entity_type": "individual",
                    "name": "Test Name",
                    "phone_number": "632567000014",
                    "account_number": "006449956988",
                    "currency": "PHP",
                    "identification_type": "international passport",
                    "identification_value": "Z4703384",
                    "bank_name": "Test Name",
                    "category": "bank"
                }
            }
        }

La sección datos de esta respuesta muestra:

  • El valor del campo validated es verdadero, lo que significa que la ID del beneficiario es válida con los parámetros especificados.

  • El id del beneficiario validado es beneficiary_a0345a157ccac51bf4d4a54b388c32ba. Cuando ejecute este ejemplo en su sandbox, obtendrá el ID que ha introducido.

  • Se muestran los campos del objeto «beneficiary» que representa el ID.

Su sitio web puede mostrar los resultados de la validación a su administrador de nóminas.

¿Necesita información técnica más detallada?

¿Desea ver los métodos y objetos de la API de Rapyd que utilizará? Ver Merchant API Reference para obtener más detalles técnicos.