### Webhook Listener Implementation Example Source: https://context7.com/evertec/athmovil-webhooks/llms.txt A basic webhook listener implementation that receives and processes ATH Móvil Business webhook events. Your listener must handle HTTP POST requests with JSON content and respond with a 200 status code to acknowledge receipt. ```APIDOC ## Webhook Listener Implementation Example ### Description A basic webhook listener implementation that receives and processes ATH Móvil Business webhook events. Your listener must handle HTTP POST requests with JSON content and respond with a 200 status code to acknowledge receipt. ### Method `POST` ### Endpoint `/webhook` (This is an example endpoint, replace with your actual webhook URL) ### Request Body Accepts JSON payload containing event details. See 'Refund Sent Event Details' for an example structure. ### Request Example (Node.js with Express) ```javascript // Node.js Express webhook listener example const express = require('express'); const app = express(); app.use(express.json()); app.post('/webhook', (req, res) => { const event = req.body; switch (event.transactionType) { case 'payment': console.log(`Payment received: $${event.total} from ${event.name}`); console.log(`Reference: ${event.referenceNumber}`); console.log(`Net amount after fees: $${event.netAmount}`); // Process payment - update order status, send confirmation email break; case 'ECOMMERCE': if (event.status === 'COMPLETED') { console.log(`eCommerce payment completed: ${event.ecommerceId}`); console.log(`Items:`, event.items); // Fulfill order, update inventory } else if (event.status === 'CANCEL') { console.log(`eCommerce payment cancelled: ${event.ecommerceId}`); // Release reserved inventory } break; case 'ecommerce': if (event.status === 'expired') { console.log(`eCommerce payment expired`); // Clean up pending order } break; case 'donation': console.log(`Donation received: $${event.total} from ${event.name}`); // Send thank you message, update donor records break; case 'refund': console.log(`Refund processed: $${event.total} to ${event.name}`); console.log(`Reference: ${event.referenceNumber}`); // Update order status, notify customer break; case 'simulated': console.log('Simulated test event received - webhook configured correctly'); break; default: console.log(`Unknown event type: ${event.transactionType}`); } // Always respond with 200 to acknowledge receipt res.status(200).send('OK'); }); app.listen(3000, () => { console.log('Webhook listener running on port 3000'); }); ``` ### Response #### Success Response (200) - **OK** (string) - Acknowledges successful receipt of the webhook event. ``` -------------------------------- ### Node.js Express Webhook Listener Example Source: https://context7.com/evertec/athmovil-webhooks/llms.txt A basic Node.js Express application to listen for and process ATH Móvil Business webhook events. Ensure your listener responds with a 200 status code to acknowledge receipt. ```javascript // Node.js Express webhook listener example const express = require('express'); const app = express(); app.use(express.json()); app.post('/webhook', (req, res) => { const event = req.body; switch (event.transactionType) { case 'payment': console.log(`Payment received: $${event.total} from ${event.name}`); console.log(`Reference: ${event.referenceNumber}`); console.log(`Net amount after fees: $${event.netAmount}`); // Process payment - update order status, send confirmation email break; case 'ECOMMERCE': if (event.status === 'COMPLETED') { console.log(`eCommerce payment completed: ${event.ecommerceId}`); console.log(`Items:`, event.items); // Fulfill order, update inventory } else if (event.status === 'CANCEL') { console.log(`eCommerce payment cancelled: ${event.ecommerceId}`); // Release reserved inventory } break; case 'ecommerce': if (event.status === 'expired') { console.log(`eCommerce payment expired`); // Clean up pending order } break; case 'donation': console.log(`Donation received: $${event.total} from ${event.name}`); // Send thank you message, update donor records break; case 'refund': console.log(`Refund processed: $${event.total} to ${event.name}`); console.log(`Reference: ${event.referenceNumber}`); // Update order status, notify customer break; case 'simulated': console.log('Simulated test event received - webhook configured correctly'); break; default: console.log(`Unknown event type: ${event.transactionType}`); } // Always respond with 200 to acknowledge receipt res.status(200).send('OK'); }); app.listen(3000, () => { console.log('Webhook listener running on port 3000'); }); ``` -------------------------------- ### Simulated Payment Event Structure Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Example structure of a simulated payment event payload received by your webhook listener for testing purposes. ```APIDOC ## Event Payload Structure: Simulated Payment ### Description This is an example of the JSON payload structure for a simulated payment event. It includes transaction details, customer information, and itemized data. ### Response Example ```json { "transactionType": "simulated", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "3.00", "tax": "1.00", "subtotal": "2.00", "fee": "0.06", "netAmount": "0.94", "totalRefundedAmount": "0.00", "metadata1": "This is metadata1", "metadata2": "This is metadata2", "items": [ { "quantity": "1", "tax": "1.00", "metadata": "metadata test", "name": "First Item", "description": "This is a description.", "price": "0.00" }, { "quantity": "1", "tax": "1.00", "metadata": "metadata test", "name": "Second Item", "description": "This is another description.", "price": "1.00" } ] } ``` ``` -------------------------------- ### Payment Received Event Structure Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Example structure of a payment received event payload received by your webhook listener. ```APIDOC ## Event Payload Structure: Payment Received ### Description This is an example of the JSON payload structure for a standard payment received event. It includes transaction details, customer information, and amounts. ### Response Example ```json { "transactionType": "payment", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "1.00", "tax": "0.00", "subtotal": "0.00", "fee": "0.06", "netAmount": "0.94", "totalRefundedAmount": "0.00", "metadata1": "", "metadata2": "", "items": [] } ``` ``` -------------------------------- ### Standard Payment Received Event Payload Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Example JSON structure for a successful standard payment event notification. ```json { "transactionType": "payment", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "1.00", "tax": "0.00", "subtotal": "0.00", "fee": "0.06", "netAmount": "0.94", "totalRefundedAmount": "0.00", "metadata1": "", "metadata2": "", "items": [] } ``` -------------------------------- ### Simulated Payment Event Payload Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This is an example of the JSON content received when a simulated payment event occurs. It includes transaction details, customer information, and itemized data. ```javascript { "transactionType" : "simulated", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "3.00", "tax" : "1.00", "subtotal" : "2.00", "fee" : "0.06", "netAmount" : "0.94", "totalRefundedAmount" : "0.00", "metadata1" : "This is metadata1", "metadata2" : "This is metadata2", "items" : [ { "quantity" : "1", "tax" : "1.00", "metadata" : "metadata test", "name" : "First Item", "description" : "This is a description.", "price" : "0.00" }, { "quantity" : "1", "tax" : "1.00", "metadata" : "metadata test", "name" : "Second Item", "description" : "This is another description.", "price" : "1.00" } ] } ``` -------------------------------- ### Subscribe to Webhook Events via cURL Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Registers a listener URL and configures event subscriptions using the ATH Móvil Business API. ```bash curl -X POST https://www.athmovil.com/transactions/webhook/post \ -H "Content-Type: application/json" \ -d '{ "publicToken": "your_public_api_token", "privateToken": "your_private_api_token", "listenerURL": "https://your.website.com/webhook", "paymentReceivedEvent": true, "refundSentEvent": true, "donationReceivedEvent": true, "ecommercePaymentReceivedEvent": true, "ecommercePaymentCancelledEvent": true, "ecommercePaymentExpiredEvent": true }' ``` -------------------------------- ### Subscribe to Webhook Events Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Programmatically register your webhook listener URL and configure event subscriptions. Requires your public and private API tokens. ```APIDOC ## POST /transactions/webhook/post ### Description Subscribes a listener URL to receive real-time notifications for various ATH Móvil Business events. ### Method POST ### Endpoint https://www.athmovil.com/transactions/webhook/post ### Parameters #### Request Body - **publicToken** (string) - Required - Your public API token. - **privateToken** (string) - Required - Your private API token. - **listenerURL** (string) - Required - The HTTPS URL where webhook events will be sent. - **paymentReceivedEvent** (boolean) - Optional - Subscribe to payment received events. - **refundSentEvent** (boolean) - Optional - Subscribe to refund sent events. - **donationReceivedEvent** (boolean) - Optional - Subscribe to donation received events. - **ecommercePaymentReceivedEvent** (boolean) - Optional - Subscribe to eCommerce payment received events. - **ecommercePaymentCancelledEvent** (boolean) - Optional - Subscribe to eCommerce payment cancelled events. - **ecommercePaymentExpiredEvent** (boolean) - Optional - Subscribe to eCommerce payment expired events. ### Request Example ```json { "publicToken": "your_public_api_token", "privateToken": "your_private_api_token", "listenerURL": "https://your.website.com/webhook", "paymentReceivedEvent": true, "refundSentEvent": true, "donationReceivedEvent": true, "ecommercePaymentReceivedEvent": true, "ecommercePaymentCancelledEvent": true, "ecommercePaymentExpiredEvent": true } ``` ``` -------------------------------- ### POST /transactions/webhook/post Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md Registers a webhook listener URL to receive notifications for specific business events. ```APIDOC ## POST /transactions/webhook/post ### Description Subscribes a webhook listener to specific events by providing authentication tokens and the listener URL. ### Method POST ### Endpoint https://www.athmovil.com/transactions/webhook/post ### Request Body - **publicToken** (string) - Required - Public API key of the Business account - **privateToken** (string) - Required - Private API key of the Business account - **listenerURL** (string) - Required - The URL of your server that listens for incoming HTTP POST notifications - **paymentReceivedEvent** (boolean) - Optional - Subscribe to payment received events - **refundSentEvent** (boolean) - Optional - Subscribe to refund sent events - **donationReceivedEvent** (boolean) - Optional - Subscribe to donation received events - **ecommercePaymentReceivedEvent** (boolean) - Optional - Subscribe to ecommerce payment received events - **ecommercePaymentCancelledEvent** (boolean) - Optional - Subscribe to ecommerce payment cancelled events - **ecommercePaymentExpiredEvent** (boolean) - Optional - Subscribe to ecommerce payment expired events ### Request Example { "publicToken": "kfejhbagflbkjlfbhnfbbf", "privateToken": "oiehfikjhesikjhnfiksf", "listenerURL": "https://your.website.com/webhook", "paymentReceivedEvent": true, "refundSentEvent": true, "donationReceivedEvent": true, "ecommercePaymentReceivedEvent": true, "ecommercePaymentCancelledEvent": true, "ecommercePaymentExpiredEvent": true } ``` -------------------------------- ### Subscribe to Webhooks via Web Service Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md Use this JSON payload to subscribe your webhook listener to events by making a POST request to the specified endpoint. Configure events by setting their respective fields to true or false. ```javascript { "publicToken": "kfejhbagflbkjlfbhnfbbf", "privateToken": "oiehfikjhesikjhnfiksf", "listenerURL": "https://your.website.com/webhook", "paymentReceivedEvent": true, "refundSentEvent": true, "donationReceivedEvent": true, "ecommercePaymentReceivedEvent": true, "ecommercePaymentCancelledEvent": true, "ecommercePaymentExpiredEvent": true } ``` -------------------------------- ### Payment Received Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This webhook is triggered when a payment is successfully received. ```APIDOC ## POST /evertec/athmovil-webhooks/payment/received ### Description Receives notifications when a payment is successfully completed. ### Method POST ### Endpoint `/evertec/athmovil-webhooks/payment/received` ### Request Body - **transactionType** (string) - The type of transaction (e.g., 'payment'). - **status** (string) - The status of the transaction (e.g., 'completed'). - **date** (string) - The date and time of the event. - **referenceNumber** (string) - The reference number for the transaction. - **dailyTransactionID** (string) - The ID of the daily transaction. - **name** (string) - The name of the customer. - **phoneNumber** (string) - The customer's phone number. - **email** (string) - The customer's email address. - **message** (string) - Any message associated with the event. - **total** (string) - The total amount of the transaction. - **tax** (string) - The total tax amount. - **subtotal** (string) - The subtotal of the transaction. - **fee** (string) - The transaction fee. - **netAmount** (string) - The net amount of the transaction. - **totalRefundedAmount** (string) - The total amount refunded. - **metadata1** (string) - Custom metadata field 1. - **metadata2** (string) - Custom metadata field 2. - **items** (array) - List of items in the transaction (typically empty for simple payments). ### Request Example ```json { "transactionType" : "payment", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "1.00", "tax" : "0.00", "subtotal" : "0.00", "fee" : "0.06", "netAmount" : "0.94", "totalRefundedAmount" : "0.00", "metadata1" : "", "metadata2" : "", "items" : [] } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the webhook reception. #### Response Example ```json { "received": true } ``` ``` -------------------------------- ### Refund Sent Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This webhook is triggered when a refund has been successfully processed. ```APIDOC ## POST /evertec/athmovil-webhooks/refund/sent ### Description Receives notifications when a refund transaction is completed. ### Method POST ### Endpoint `/evertec/athmovil-webhooks/refund/sent` ### Request Body - **transactionType** (string) - The type of transaction (e.g., 'refund'). - **status** (string) - The status of the transaction (e.g., 'completed'). - **date** (string) - The date and time of the event. - **referenceNumber** (string) - The reference number for the transaction. - **dailyTransactionID** (string) - The ID of the daily transaction. - **name** (string) - The name of the customer receiving the refund. - **phoneNumber** (string) - The customer's phone number. - **email** (string) - The customer's email address. - **message** (string) - Any message associated with the event. - **total** (string) - The total amount of the refund. - **tax** (string) - The total tax amount. - **subtotal** (string) - The subtotal of the refund. - **fee** (string) - The fee associated with the refund (often 0). - **netAmount** (string) - The net amount of the refund. - **totalRefundedAmount** (string) - The total amount refunded. - **metadata1** (string) - Custom metadata field 1. - **metadata2** (string) - Custom metadata field 2. - **items** (array) - List of items associated with the refund (if applicable). ### Request Example ```json { "transactionType" : "refund", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "1.00", "tax" : "0.00", "subtotal" : "0.00", "fee" : "0.00", "netAmount" : "0.00", "totalRefundedAmount" : "0.00", "metadata1" : "", "metadata2" : "", "items" : [] } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the webhook reception. #### Response Example ```json { "received": true } ``` ``` -------------------------------- ### Payment Received Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This webhook event signifies a completed payment transaction. It includes details about the payer, transaction amount, and any associated metadata. ```json { "transactionType" : "payment", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "1.00", "tax" : "0.00", "subtotal" : "0.00", "fee" : "0.06", "netAmount" : "0.94", "totalRefundedAmount" : "0.00", "metadata1" : "", "metadata2" : "", "items" : [] } ``` -------------------------------- ### Refund Sent Event Structure Source: https://context7.com/evertec/athmovil-webhooks/llms.txt This JSON object represents the structure of a 'refund' event sent by ATH Móvil Business. It includes transaction details, customer information, and refund amounts. ```json { "transactionType": "refund", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "1.00", "tax": "0.00", "subtotal": "0.00", "fee": "0.00", "netAmount": "0.00", "totalRefundedAmount": "0.00", "metadata1": "", "metadata2": "", "items": [] } ``` -------------------------------- ### Refund Sent Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This webhook indicates that a refund has been successfully processed. It includes transaction details and the refunded amount. ```json { "transactionType" : "refund", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "1.00", "tax" : "0.00", "subtotal" : "0.00", "fee" : "0.00", "netAmount" : "0.00", "totalRefundedAmount" : "0.00", "metadata1" : "", "metadata2" : "", "items" : [] } ``` -------------------------------- ### Refund Sent Event Details Source: https://context7.com/evertec/athmovil-webhooks/llms.txt This event is sent when a refund is processed from your ATH Móvil Business account. It includes the original transaction reference and customer information, allowing you to update your records and notify customers about successful refund processing. ```APIDOC ## Refund Sent Event ### Description This event is sent when a refund is processed from your ATH Móvil Business account. It includes the original transaction reference and customer information, allowing you to update your records and notify customers about successful refund processing. ### Event Payload Structure ```json { "transactionType": "refund", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "1.00", "tax": "0.00", "subtotal": "0.00", "fee": "0.00", "netAmount": "0.00", "totalRefundedAmount": "0.00", "metadata1": "", "metadata2": "", "items": [] } ``` ### Fields - **transactionType** (string) - The type of transaction, 'refund' in this case. - **status** (string) - The status of the refund, e.g., 'completed'. - **date** (string) - The date and time the refund was processed. - **referenceNumber** (string) - The unique reference number for the transaction. - **dailyTransactionID** (string) - The transaction ID for the day. - **name** (string) - The name of the customer. - **phoneNumber** (string) - The phone number of the customer. - **email** (string) - The email address of the customer. - **message** (string) - An optional message associated with the refund. - **total** (string) - The total amount of the refund. - **tax** (string) - The tax amount associated with the refund. - **subtotal** (string) - The subtotal amount of the refund. - **fee** (string) - The fee associated with the refund. - **netAmount** (string) - The net amount of the refund. - **totalRefundedAmount** (string) - The total amount refunded. - **metadata1** (string) - Custom metadata field 1. - **metadata2** (string) - Custom metadata field 2. - **items** (array) - An array of items associated with the refund (if applicable). ``` -------------------------------- ### Donation Received Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This webhook is triggered when a donation is successfully received. ```APIDOC ## POST /evertec/athmovil-webhooks/donation/received ### Description Receives notifications when a donation is successfully completed. ### Method POST ### Endpoint `/evertec/athmovil-webhooks/donation/received` ### Request Body - **transactionType** (string) - The type of transaction (e.g., 'donation'). - **status** (string) - The status of the transaction (e.g., 'completed'). - **date** (string) - The date and time of the event. - **referenceNumber** (string) - The reference number for the transaction. - **dailyTransactionID** (string) - The ID of the daily transaction. - **name** (string) - The name of the donor. - **phoneNumber** (string) - The donor's phone number. - **email** (string) - The donor's email address. - **message** (string) - Any message associated with the event. - **total** (string) - The total amount of the donation. - **tax** (string) - The total tax amount. - **subtotal** (string) - The subtotal of the donation. - **fee** (string) - The transaction fee. - **netAmount** (string) - The net amount of the donation. - **totalRefundedAmount** (string) - The total amount refunded. - **metadata1** (string) - Custom metadata field 1. - **metadata2** (string) - Custom metadata field 2. - **items** (array) - List of items in the transaction (typically empty for donations). ### Request Example ```json { "transactionType" : "donation", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "1.00", "tax" : "0.00", "subtotal" : "0.00", "fee" : "0.06", "netAmount" : "0.94", "totalRefundedAmount" : "0.00", "metadata1" : "", "metadata2" : "", "items" : [] } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the webhook reception. #### Response Example ```json { "received": true } ``` ``` -------------------------------- ### Donation Received Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This event is triggered upon receiving a donation. It contains information similar to a standard payment, including donor details and the donation amount. ```json { "transactionType" : "donation", "status" : "completed", "date" : "2020-01-01 12:00:00.0", "referenceNumber" : "000000-00000000abcd", "dailyTransactionID" : "0001", "name" : "Valeria Herrero", "phoneNumber" : "7871234567", "email" : "email@example.com", "message" : "This is a message.", "total" : "1.00", "tax" : "0.00", "subtotal" : "0.00", "fee" : "0.06", "netAmount" : "0.94", "totalRefundedAmount" : "0.00", "metadata1" : "", "metadata2" : "", "items" : [] } ``` -------------------------------- ### Donation Received Event Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Triggered when a business account receives a donation through ATH Móvil. ```APIDOC ## Donation Received Event ### Description This event is triggered when your business account receives a donation through ATH Móvil. Donations follow the same structure as payments but are identified by the "donation" transaction type, useful for non-profit organizations or businesses accepting voluntary contributions. ### Response Example { "transactionType": "donation", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "1.00", "tax": "0.00", "subtotal": "0.00", "fee": "0.06", "netAmount": "0.94", "totalRefundedAmount": "0.00", "metadata1": "", "metadata2": "", "items": [] } ``` -------------------------------- ### eCommerce Payment Cancelled Event Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Triggered when an end user cancels the web payment process. ```APIDOC ## eCommerce Payment Cancelled Event ### Description This event is triggered when an end user cancels the web payment process. Note that this event is only sent for web cancellations; payments cancelled through the iOS or Android integration do not trigger this event. ### Response Example { "businessName": "ATH Business Test", "dailyTransactionId": "", "date": "2025-05-01 11:03:31", "ecommerceId": "66b341b7-269d-11f0-a8c9-b15654eb8c8b", "email": "", "fee": 0.0, "isNonProfit": false, "items": [ { "description": "Prueba de items", "formattedPrice": "", "metadata": "prueba metadata", "name": "Nombre de arreglo", "price": 2, "quantity": 3, "sku": "", "tax": 1 } ], "message": "", "metadata1": "Prueba1.1", "metadata2": "Prueba2.2", "name": "", "netAmount": 0, "phoneNumber": 0, "referenceNumber": "", "referenceTransactionId": "8a36d69a8c36c011018ce97681e203d0", "status": "CANCEL", "subTotal": 1, "tax": 1.0, "total": 1, "totalRefundedAmount": 0, "transactionDate": "", "transactionType": "ECOMMERCE" } ``` -------------------------------- ### eCommerce Payment Completed Event Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Triggered when an eCommerce payment is successfully completed, providing transaction details and item information. ```APIDOC ## eCommerce Payment Completed Event ### Description This event is sent when an eCommerce payment is successfully completed. It includes additional eCommerce-specific fields such as the ecommerceId, businessName, and detailed item information with SKUs for order fulfillment. ### Response Example { "businessName": "ATH Business Test", "dailyTransactionId": "0001", "date": "2025-05-01 11:02:21", "ecommerceId": "34231295-269d-11f0-a323-6f23e0bf3a42", "email": "", "fee": 0.0, "isNonProfit": false, "items": [ { "description": "Prueba de items", "formattedPrice": "", "metadata": "prueba metadata", "name": "Nombre de arreglo", "price": 2, "quantity": 3, "sku": "", "tax": 1 } ], "message": "", "metadata1": "Prueba1.1", "metadata2": "Prueba2.2", "name": "", "netAmount": 1.0, "phoneNumber": 0, "referenceNumber": "1024264030-8a36d6ba967ef82501968c5eb7376349", "referenceTransactionId": "8a36d69a8c36c011018ce97681e203d0", "status": "COMPLETED", "subTotal": 1, "tax": 1.0, "total": 1, "totalRefundedAmount": 0, "transactionDate": "2025-05-01 11:02:19", "transactionType": "ECOMMERCE" } ``` -------------------------------- ### eCommerce Payment Cancelled Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This event is triggered when a customer cancels the web payment process for an e-commerce transaction. It is not sent for cancellations made through iOS or Android integrations. ```APIDOC ## POST /evertec/athmovil-webhooks/ecommerce/cancelled ### Description Receives notifications when an e-commerce payment is cancelled by the end-user on the web. ### Method POST ### Endpoint `/evertec/athmovil-webhooks/ecommerce/cancelled` ### Request Body - **businessName** (string) - The name of the business. - **dailyTransactionId** (string) - The ID of the daily transaction. - **date** (string) - The date and time of the event. - **ecommerceId** (string) - The unique identifier for the e-commerce transaction. - **email** (string) - The customer's email address. - **fee** (number) - The transaction fee. - **isNonProfit** (boolean) - Indicates if the business is non-profit. - **items** (array) - List of items in the transaction. - **description** (string) - Description of the item. - **formattedPrice** (string) - Formatted price of the item. - **metadata** (string) - Metadata associated with the item. - **name** (string) - Name of the item. - **price** (number) - Price of the item. - **quantity** (number) - Quantity of the item. - **sku** (string) - Stock Keeping Unit of the item. - **tax** (number) - Tax applied to the item. - **message** (string) - Any message associated with the event. - **metadata1** (string) - Custom metadata field 1. - **metadata2** (string) - Custom metadata field 2. - **name** (string) - The name of the customer. - **netAmount** (number) - The net amount of the transaction. - **phoneNumber** (number) - The customer's phone number. - **referenceNumber** (string) - The reference number for the transaction. - **referenceTransactionId** (string) - The reference transaction ID. - **status** (string) - The status of the transaction (e.g., 'CANCEL'). - **subTotal** (number) - The subtotal of the transaction. - **tax** (number) - The total tax amount. - **total** (number) - The total amount of the transaction. - **totalRefundedAmount** (number) - The total amount refunded. - **transactionDate** (string) - The date of the transaction. - **transactionType** (string) - The type of transaction (e.g., 'ECOMMERCE'). ### Request Example ```json { "businessName": "ATH Business Test", "dailyTransactionId": "", "date": "2025-05-01 11:03:31", "ecommerceId": "66b341b7-269d-11f0-a8c9-b15654eb8c8b", "email": "", "fee": 0.0, "isNonProfit": false, "items": [ { "description": "Prueba de items", "formattedPrice": "", "metadata": "prueba metadata", "name": "Nombre de arreglo", "price": 2, "quantity": 3, "sku": "", "tax": 1 } ], "message": "", "metadata1": "Prueba1.1", "metadata2": "Prueba2.2", "name": "", "netAmount": 0, "phoneNumber": 0, "referenceNumber": "", "referenceTransactionId": "8a36d69a8c36c011018ce97681e203d0", "status": "CANCEL", "subTotal": 1, "tax": 1.0, "total": 1, "totalRefundedAmount": 0, "transactionDate": "", "transactionType": "ECOMMERCE" } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the webhook reception. #### Response Example ```json { "received": true } ``` ``` -------------------------------- ### eCommerce Payment Completed Event Payload Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This JSON structure represents a completed eCommerce payment event. It includes business details, transaction identifiers, and itemized purchase information. ```javascript { "businessName": "ATH Business Test", "dailyTransactionId": "0001", "date": "2025-05-01 11:02:21", "ecommerceId": "34231295-269d-11f0-a323-6f23e0bf3a42", "email": "", "fee": 0.0, "isNonProfit": false, "items": [ { "description": "Prueba de items", "formattedPrice": "", "metadata": "prueba metadata", "name": "Nombre de arreglo", "price": 2, "quantity": 3, "sku": "", "tax": 1 } ], "message": "", "metadata1": "Prueba1.1", "metadata2": "Prueba2.2", "name": "", "netAmount": 1.0, "phoneNumber": 0, "referenceNumber": "1024264030-8a36d6ba967ef82501968c5eb7376349", "referenceTransactionId": "8a36d69a8c36c011018ce97681e203d0", "status": "COMPLETED", "subTotal": 1, "tax": 1.0, "total": 1, "totalRefundedAmount": 0, "transactionDate": "2025-05-01 11:02:19", "transactionType": "ECOMMERCE" } ``` -------------------------------- ### eCommerce Payment Cancelled Webhook Source: https://github.com/evertec/athmovil-webhooks/blob/main/README.md This event is triggered when an end-user cancels an eCommerce payment on the web. Payments cancelled via iOS or Android integrations do not generate this event. ```json { "businessName": "ATH Business Test", "dailyTransactionId": "", "date": "2025-05-01 11:03:31", "ecommerceId": "66b341b7-269d-11f0-a8c9-b15654eb8c8b", "email": "", "fee": 0.0, "isNonProfit": false, "items": [ { "description": "Prueba de items", "formattedPrice": "", "metadata": "prueba metadata", "name": "Nombre de arreglo", "price": 2, "quantity": 3, "sku": "", "tax": 1 } ], "message": "", "metadata1": "Prueba1.1", "metadata2": "Prueba2.2", "name": "", "netAmount": 0, "phoneNumber": 0, "referenceNumber": "", "referenceTransactionId": "8a36d69a8c36c011018ce97681e203d0", "status": "CANCEL", "subTotal": 1, "tax": 1.0, "total": 1, "totalRefundedAmount": 0, "transactionDate": "", "transactionType": "ECOMMERCE" } ``` -------------------------------- ### Donation Received Event Payload Source: https://context7.com/evertec/athmovil-webhooks/llms.txt Triggered when a donation is received, identified by the 'donation' transaction type. ```json { "transactionType": "donation", "status": "completed", "date": "2020-01-01 12:00:00.0", "referenceNumber": "000000-00000000abcd", "dailyTransactionID": "0001", "name": "Valeria Herrero", "phoneNumber": "7871234567", "email": "email@example.com", "message": "This is a message.", "total": "1.00", "tax": "0.00", "subtotal": "0.00", "fee": "0.06", "netAmount": "0.94", "totalRefundedAmount": "0.00", "metadata1": "", "metadata2": "", "items": [] } ```